template functions not inlined
Dan Nicolaescu
dann@ics.uci.edu
Sun Feb 1 06:12:00 GMT 2004
The following trivial example shows that template functions defined at
the top level are not inlined by any version of gcc.
template<typename T> int func (T t) { return 25; }
void bar(void) { func (17); }
Intel's compiler inlines func into bar.
Dan Berlin investigated this a bit, and the cause is
cp/tree.c:2058-2064 which in turn is caused by varasm.c:4909
Is there any reason for that code to be the right thing to do
for the above example?
More information about the Gcc
mailing list