aboutsummaryrefslogtreecommitdiff
path: root/gcc/cp/pt.c
diff options
context:
space:
mode:
authorMark Mitchell <mark@codesourcery.com>2005-09-09 18:56:16 +0000
committerMark Mitchell <mmitchel@gcc.gnu.org>2005-09-09 18:56:16 +0000
commit1ef0df4745a48b0ba491b460c041cfb720f0de46 (patch)
treec630c6970630810e37f3912ce9d87453754b14fc /gcc/cp/pt.c
parent7aba8abebf67491594a3b6274d441bcbf47d894b (diff)
downloadgcc-1ef0df4745a48b0ba491b460c041cfb720f0de46.zip
gcc-1ef0df4745a48b0ba491b460c041cfb720f0de46.tar.gz
gcc-1ef0df4745a48b0ba491b460c041cfb720f0de46.tar.bz2
re PR c++/22252 (pragma interface/implementation still break synthesized methods)
PR c++/22252 * decl.c (start_preparsed_function): Do not pay attention to #pragma interface for implicitly-defined methods. * decl2.c (cp_finish_file): Do not complain about uses of inline functions that have bodies, even if we decided not to emit the body in this translation unit. * semantics.c (note_decl_for_pch): Do not mess with linkage. (expand_or_defer_fn): Make inline, non-template functions COMDAT at this point. PR c++/22252 * g++.dg/ext/interface1.C: New test. * g++.dg/ext/interface1.h: Likewise. * g++.dg/ext/interface1a.cc: Likewise. From-SVN: r104103
Diffstat (limited to 'gcc/cp/pt.c')
-rw-r--r--gcc/cp/pt.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/gcc/cp/pt.c b/gcc/cp/pt.c
index d6ab9df..f78da93 100644
--- a/gcc/cp/pt.c
+++ b/gcc/cp/pt.c
@@ -5939,8 +5939,8 @@ tsubst_template_arg (tree t, tree args, tsubst_flags_t complain, tree in_decl)
tf_error, /*in_decl=*/NULL_TREE,
/*function_p=*/false);
processing_template_decl = saved_processing_template_decl;
+ r = fold (r);
}
- r = fold (r);
}
}
return r;