It's hard to make the example to regenerate the error. For the small test, it works well both Linux g++ and Mac OS X g++.
But the real OpenAccess source code which is around 40M of source code in total. The Mac OS X g++ code doens't seem like to make the function inlined whereas Linux g++ always does. I hope to find a compiler flag which forces the Mac OS X g++ always generates the inline. Thanks. Ulrich Eckhardt wrote: > [EMAIL PROTECTED] wrote: > > The real problem is that even after I declared the class functions as > > inline, and even after forcing it to alwasy be a inline function, it > > doesn't look like it becomes a inline function under the Mac OS X. > > > > template<class T> > > inline void __attribute__((always_inline)) > > SPtr<T>::createInstance(const char *classID, > > IBase *reserved) > > { > > Hmmm, using __attribute((always_inline)) is like shooting with cannons on > birds, the simple inline should do the job. I just tried something like > what you did and couldn't reproduce the error. I guess we are not doing > the same things, so I suggest you boil this down to a testcase. In your > first posting you had one already, but after fixing the missing inlines, > it should compile and link, so I wonder what the difference to the real > program is. > > Uli > > [another fullquote environmentally friendly discarded] > -- > http://gcc.gnu.org/faq.html > http://parashift.com/c++-faq-lite/ _______________________________________________ help-gplusplus mailing list help-gplusplus@gnu.org http://lists.gnu.org/mailman/listinfo/help-gplusplus