Problems building with extern inline functions in winebase.h

Mike Bond mbond at
Fri Aug 17 09:31:23 CDT 2001

On Thu, Aug 16, 2001 at 10:37:39AM -0700, Alexandre Julliard wrote:
> This patch should fix the build failure, though it doesn't explain why
> gcc doesn't inline such a simple function.

This indeed allow me to build. My guess is that gcc-2.96 won't inline
anything in a debug build. The suggestion about 'static inline' instead
of 'extern inline' worked right up until it got to the file that actually
implemented the various functions in question, at which point the
compiler complained about the two definitions not matching, one being
static the other not. My guess as to why the 'static inline' would work
is that while it would still not actually inline it in a debug build,
it is providing a static implementation to each file that includes
winbase.h. This is horrible bloat for debug builds as many files that
do not need it will get those functions anyway. It would still be nice
if there could be a way to inline those various functions in a more
generic way so anything built against winelib outside of the scheduler
could take advantage of the inlining, but I really don't see, the way
inline is being interpreted in 2.96, that this could be done.


More information about the wine-devel mailing list