This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
template functions not inlined
- From: Dan Nicolaescu <dann at ics dot uci dot edu>
- To: gcc at gcc dot gnu dot org
- Date: Sat, 31 Jan 2004 20:43:44 -0800
- Subject: template functions not inlined
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?