>       What's interesting is that even when the new lib
>       calls a() and b(), the new lib runs the OLD code.
>       This seemed surprising to me, even for the 'inline' method!

Yup - though I think that's "normal"; the build *usually* emits a
callable version of the inline function if it thinks that *something*
might call it externally, even though it inlines the body in the places
that it sees it being called, and that's the version you are seeing
called here.

Note that the way that linux and win32 handle dynamic linking are
different, so the results you see are probably not consistent across
platforms, which may introduce some oddities?


>       So apparently in this way, inline methods really aren't
>       'inline'; the run time linker can still force the lib
>       to call the older method code. I guess that ensures
>       'consistency' at least.

Well, the code is (probably) inlined in all the "obvious" places, but
the compiler/linker may still emit an actual implementation too...




SELEX Galileo Ltd
Registered Office: Sigma House, Christopher Martin Road, Basildon, Essex SS14 
3EL
A company registered in England & Wales.  Company no. 02426132
********************************************************************
This email and any attachments are confidential to the intended
recipient and may also be privileged. If you are not the intended
recipient please delete it from your system and notify the sender.
You should not copy it or use it for any purpose nor disclose or
distribute its contents to any other person.
********************************************************************

_______________________________________________
fltk-dev mailing list
fltk-dev@easysw.com
http://lists.easysw.com/mailman/listinfo/fltk-dev

Reply via email to