W dniu 24.09.2015 o 14:01, Timo Sirainen pisze:
On 24 Sep 2015, at 13:43, Marcin Mirosław <marcin@mejor.pl> wrote:
W dniu 23.09.2015 o 15:30, Timo Sirainen pisze:
http://dovecot.org/releases/2.2/rc/dovecot-2.2.19.rc1.tar.gz http://dovecot.org/releases/2.2/rc/dovecot-2.2.19.rc1.tar.gz.sig
A lot of changes since v2.2.18, so here's a release candidate first. If no bugs are reported, I'm planning on making the final release sometimes this week. The most interesting new features here are the imap-hibernate process, quota count backend and director/proxy improvements.
Hi! I'm getting compilation error using clang:
guid.c:106:2: error: array size is negative buffer_create_from_data(&buf, guid_r, GUID_128_SIZE); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ./buffer.h:23:8: note: expanded from macro 'buffer_create_from_data' (void)COMPILE_ERROR_IF_TRUE(__builtin_object_size((d),3) < ((s)?(s):1)); \
What happens if in src/lib/buffer.h line 23 you change the __builtin_object_size((d),3) to __builtin_object_size((d),1)? Does it work?
Yes, it works. Now dovecot-2.2.19.rc1 compiles fine.
Thanks, Marcin
P.S. Is such warnings something you care?
clang -DHAVE_CONFIG_H -I. -I../.. -I../../src/lib -I../../src/lib-settings -I../../src/lib-master -DPKG_RUNDIR=\""/var/run/dovecot"\" -DPKG_STATEDIR=\""/var/lib/dovecot"\" -DPKG_LIBEXECDIR=\""/usr/libexec/dovecot"\" -DBINDIR=\""/usr/bin"\" -std=gnu99 -O2 -march=native -Wall -W -Wmissing-prototypes -Wmissing-declarations -Wpointer-arith -Wchar-subscripts -Wformat=2 -Wbad-function-cast -Wno-duplicate-decl-specifier -Wstrict-aliasing=2 -c -o sd-daemon.o sd-daemon.c sd-daemon.c:56:19: warning: implicit declaration of function 'getenv' is invalid in C99 [-Wimplicit-function-declaration] if (!(e = getenv("LISTEN_PID"))) { ^ sd-daemon.c:56:17: warning: incompatible integer to pointer conversion assigning to 'const char *' from 'int' [-Wint-conversion] if (!(e = getenv("LISTEN_PID"))) { ^ ~~~~~~~~~~~~~~~~~~~~ sd-daemon.c:62:13: warning: implicit declaration of function 'strtoul' is invalid in C99 [-Wimplicit-function-declaration] l = strtoul(e, &p, 10); ^ sd-daemon.c:80:17: warning: incompatible integer to pointer conversion assigning to 'const char *' from 'int' [-Wint-conversion] if (!(e = getenv("LISTEN_FDS"))) { ^ ~~~~~~~~~~~~~~~~~~~~ sd-daemon.c:119:17: warning: implicit declaration of function 'unsetenv' is invalid in C99 [-Wimplicit-function-declaration] unsetenv("LISTEN_PID"); ^ sd-daemon.c:342:17: warning: incompatible integer to pointer conversion assigning to 'const char *' from 'int' [-Wint-conversion] if (!(e = getenv("NOTIFY_SOCKET"))) ^ ~~~~~~~~~~~~~~~~~~~~~~~ sd-daemon.c:411:9: warning: implicit declaration of function 'free' is invalid in C99 [-Wimplicit-function-declaration] free(p); ^ 7 warnings generated.