http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39333
--- Comment #27 from Rafał Mużyło <galtgendo at o2 dot pl> 2011-09-11 03:40:16 UTC --- Created attachment 25238 --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=25238 prepocessed code of possibly related failure in gcc 4.6.1 OK, I'm not sure if comments from 24 on have anything to do with the original problem, but... https://bugs.gentoo.org/show_bug.cgi?id=365015 There you'll find an interesting testcase, that I've reduced to just this much preprocessed code - it fails with '-O1', succeeds with '-O2'. To be exact, it succeeds with '-O1 -fipa-cp'. What's more, it also succeeds, if '__attribute__ ((__always_inline__))' is removed. The exact failure: Using built-in specs. COLLECT_GCC=gcc-4.6.1 COLLECT_LTO_WRAPPER=/usr/libexec/gcc/i686-pc-linux-gnu/4.6.1/lto-wrapper Target: i686-pc-linux-gnu Configured with: /mnt/workbox/builds/portage/sys-devel/gcc-4.6.1-r1/work/gcc-4.6.1/configure --prefix=/usr --bindir=/usr/i686-pc-linux-gnu/gcc-bin/4.6.1 --includedir=/usr/lib/gcc/i686-pc-linux-gnu/4.6.1/include --datadir=/usr/share/gcc-data/i686-pc-linux-gnu/4.6.1 --mandir=/usr/share/gcc-data/i686-pc-linux-gnu/4.6.1/man --infodir=/usr/share/gcc-data/i686-pc-linux-gnu/4.6.1/info --with-gxx-include-dir=/usr/lib/gcc/i686-pc-linux-gnu/4.6.1/include/g++-v4 --host=i686-pc-linux-gnu --build=i686-pc-linux-gnu --disable-altivec --disable-fixed-point --with-ppl --with-cloog --disable-ppl-version-check --with-cloog-include=/usr/include/cloog-ppl --enable-lto --enable-nls --without-included-gettext --with-system-zlib --disable-werror --enable-secureplt --disable-multilib --enable-libmudflap --disable-libssp --enable-libgomp --with-python-dir=/share/gcc-data/i686-pc-linux-gnu/4.6.1/python --enable-checking=release --disable-libgcj --with-arch=i686 --enable-objc-gc --enable-languages=c,c++,objc,fortran --enable-shared --enable-threads=posix --enable-__cxa_atexit --enable-clocale=gnu --with-bugurl=http://bugs.gentoo.org/ --with-pkgversion='Gentoo 4.6.1-r1 p1.0, pie-0.4.5' --disable-libstdcxx-pch Thread model: posix gcc version 4.6.1 (Gentoo 4.6.1-r1 p1.0, pie-0.4.5) COLLECT_GCC_OPTIONS='-v' '-Wall' '-O1' '-c' '-o' 'fprintf-bug0-4.6.o' '-save-temps' '-mtune=generic' '-march=i686' /usr/libexec/gcc/i686-pc-linux-gnu/4.6.1/cc1 -fpreprocessed fprintf-bug0-4.6.i -quiet -dumpbase fprintf-bug0-4.6.i -mtune=generic -march=i686 -auxbase-strip fprintf-bug0-4.6.o -O1 -Wall -version -o fprintf-bug0-4.6.s GNU C (Gentoo 4.6.1-r1 p1.0, pie-0.4.5) version 4.6.1 (i686-pc-linux-gnu) compiled by GNU C version 4.6.1, GMP version 5.0.2, MPFR version 3.0.1-p4, MPC version 0.8.2 GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072 GNU C (Gentoo 4.6.1-r1 p1.0, pie-0.4.5) version 4.6.1 (i686-pc-linux-gnu) compiled by GNU C version 4.6.1, GMP version 5.0.2, MPFR version 3.0.1-p4, MPC version 0.8.2 GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072 Compiler executable checksum: 5f6717c7397ac8a8888626933ce7eb52 fprintf-bug0-4.6.i: In function ‘write_cfg’: fprintf-bug0-4.6.i:71:1: sorry, unimplemented: inlining failed in call to ‘fprintf’: indirect function call with a yet undetermined callee fprintf-bug0-4.6.i:78:7: sorry, unimplemented: called from here