On Wed, 12.06.13 13:02, Jan Janssen (medhe...@web.de) wrote: > Hi, > > I just tried compiling with -Og and I get these compiler errors. > Those don't appear with any other optimization level, so I'm > suspecting a compiler but here. But since I'm no C expert, I thought > it would be best if I share this here to see if I'm right about this > or whether this just shows some subtle bug in the code. > > This is on a up-to-date arch box (gcc 4.8.1) and "make clean" > run before trying to compile. > > Jan > > --- > CC src/shared/util.lo > src/shared/util.c: In function 'safe_atod': > src/shared/util.c:383:16: warning: 'd' may be used uninitialized in > this function [-Wmaybe-uninitialized] > *ret_d = (double) d;
Seems your gcc is confused by our RUN_WITH_LOCALE() magic macro, because it contains a for() loop that it thinks might not be run, but actually always is. I added an initialization that should make sure the warning goes away. > ^ > In file included from /usr/include/fcntl.h:296:0, > from src/shared/util.c:35: > In function 'open', > inlined from 'open_terminal' at src/shared/util.c:1834:20: > /usr/include/bits/fcntl2.h:50:24: error: call to > '__open_missing_mode' declared with attribute error: open with > O_CREAT in second argument needs 3 arguments > __open_missing_mode (); Hmm, gcc is confused if we invoke open() with no mode argument but flags seeded from a variable. Added a work-around for this. > In file included from /usr/include/fcntl.h:296:0, > from src/shared/util.c:35: > In function 'openat', > inlined from 'xopendirat' at src/shared/util.c:3478:13: > /usr/include/bits/fcntl2.h:126:26: error: call to > '__openat_missing_mode' declared with attribute error: openat with > O_CREAT in third argument needs 4 arguments > __openat_missing_mode (); Same here. > ^ > src/shared/util.c: In function 'create_tmp_dir': > src/shared/util.c:5718:12: warning: 'd' may be used uninitialized in > this function [-Wmaybe-uninitialized] > dt = strjoin(d, "/tmp", NULL); Your gcc also doesn't like our RUN_WITH_UMASK macro either, also fixed. Lennart -- Lennart Poettering - Red Hat, Inc. _______________________________________________ systemd-devel mailing list systemd-devel@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/systemd-devel