On Sat, 2010-05-01 at 10:01 -0700, Ian Lance Taylor wrote: > Jörg Leis <joerg@xxxxxxxxxxxxx> writes: > > > A related question: Is it expected that in C99-mode GCC might not be > > able to compile a program because of the use of an inline function? I > > defined an inline function like this: > > > > inline int do() > > { > > // ... > > } > > C99 mode should support inline functions just fine. If you are having > trouble, show us the complete test case and tell us what happens. > Also the version of gcc makes a difference; full support for C99 > inline functions was first in gcc 4.3. > > Ian The problem seemed to have gone for a while, but I have a test case now: inline int f() { return 5; } extern inline int f(); With gcc -std=c99 -c test.c it compiles just fine and emits the an externally callable definition of f. However, with LTO, gcc -std=c99 -flto -c test.c the function f is not emitted. The GCC version is "gcc (GCC) 4.5.0 20100610 (prerelease)". Jörg