]> gcc.gnu.org Git - gcc.git/commit
re PR c++/22252 (pragma interface/implementation still break synthesized methods)
authorMark Mitchell <mark@codesourcery.com>
Fri, 9 Sep 2005 18:56:16 +0000 (18:56 +0000)
committerMark Mitchell <mmitchel@gcc.gnu.org>
Fri, 9 Sep 2005 18:56:16 +0000 (18:56 +0000)
commit1ef0df4745a48b0ba491b460c041cfb720f0de46
treec630c6970630810e37f3912ce9d87453754b14fc
parent7aba8abebf67491594a3b6274d441bcbf47d894b
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
gcc/cp/ChangeLog
gcc/cp/decl.c
gcc/cp/decl2.c
gcc/cp/pt.c
gcc/cp/semantics.c
gcc/testsuite/ChangeLog
gcc/testsuite/g++.dg/ext/interface1.C [new file with mode: 0644]
gcc/testsuite/g++.dg/ext/interface1.h [new file with mode: 0644]
gcc/testsuite/g++.dg/ext/interface1a.cc [new file with mode: 0644]
This page took 0.055254 seconds and 5 git commands to generate.