* tree.c (cp_cannot_inline_fn): Check for "inline" before
instantiation.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@67783
138bc75d-0d04-0410-961f-
82ee72b054a4
+2003-06-11 Mark Mitchell <mark@codesourcery.com>
+
+ PR c++/11131
+ * tree.c (cp_cannot_inline_fn): Check for "inline" before
+ instantiation.
+
2003-06-10 Jason Merrill <jason@redhat.com>
PR c++/10968
if (DECL_TEMPLATE_INFO (fn)
&& TI_PENDING_TEMPLATE_FLAG (DECL_TEMPLATE_INFO (fn)))
{
+ /* Don't instantiate functions that are not going to be
+ inlined. */
+ if (!DECL_INLINE (DECL_TEMPLATE_RESULT
+ (template_for_substitution (fn))))
+ return 1;
fn = *fnp = instantiate_decl (fn, /*defer_ok=*/0);
if (TI_PENDING_TEMPLATE_FLAG (DECL_TEMPLATE_INFO (fn)))
return 1;
}
- if (!DECL_INLINE (fn))
- return 1;
-
if (flag_really_no_inline
&& lookup_attribute ("always_inline", DECL_ATTRIBUTES (fn)) == NULL)
return 1;