C99 inlines

Andrew Reilly andrew-freebsd at areilly.bpc-users.org
Mon Mar 9 06:28:04 PDT 2009


On Sun, Mar 08, 2009 at 03:09:24AM -0400, David Schultz wrote:
> My main motivation is that currently there's no easy way to use
> non-static inline functions that works with both gcc and other
> compilers.

Please pardon my ignorance: what *is* non-static inline
behaviour?  I've only ever used static inlines myself: they're
the only sort that make sense (to me), in the world of standard
C static compilation and linkage.  What happens elsewhen?  Does
the compiler generate a "real" function with an exportable name
that can be linked-to?  Why would you want to do that, when
that's what perfectly ordinary functions do?  I can't imagine an
extern inline meaning anything useful unless one can do
LLVM-style link-time optimization.  Is that on the cards?

> Furthermore, even GNU wants to move to using the C99
> semantics by default. Once that happens, continuing to be
> dependent upon the old GNU inline semantics is likely to cause
> porting headaches.

Well, we don't want to be depending on non-standard semantics,
if we can help it.  Sure.  Are we?  Where?

Cheers,

-- 
Andrew



More information about the freebsd-arch mailing list