diff --git a/gcc/cp/decl.c b/gcc/cp/decl.c index 822874ecb458d4b093639733d100f3ad78f9368c..80849a0a3cf95b0c31c3343419ea702806757810 100644 --- a/gcc/cp/decl.c +++ b/gcc/cp/decl.c @@ -6214,9 +6214,9 @@ start_decl (declarator, declspecs, initialized, attributes, prefix_attributes) } /* cp_finish_decl sets DECL_EXTERNAL if DECL_IN_AGGR_P is set. */ - if (DECL_LANG_SPECIFIC (decl)) - DECL_IN_AGGR_P (decl) = 0; - if (DECL_USE_TEMPLATE (decl) || CLASSTYPE_USE_TEMPLATE (context)) + DECL_IN_AGGR_P (decl) = 0; + if ((DECL_LANG_SPECIFIC (decl) && DECL_USE_TEMPLATE (decl)) + || CLASSTYPE_USE_TEMPLATE (context)) SET_DECL_TEMPLATE_SPECIALIZATION (decl); /* Stupid stupid stupid stupid (jason 7/21/95) */