diff options
author | Mark Mitchell <mark@codesourcery.com> | 2005-09-09 18:56:16 +0000 |
---|---|---|
committer | Mark Mitchell <mmitchel@gcc.gnu.org> | 2005-09-09 18:56:16 +0000 |
commit | 1ef0df4745a48b0ba491b460c041cfb720f0de46 (patch) | |
tree | c630c6970630810e37f3912ce9d87453754b14fc /gcc/cp/pt.c | |
parent | 7aba8abebf67491594a3b6274d441bcbf47d894b (diff) | |
download | gcc-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.c | 2 |
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; |