cp:
authornathan <nathan@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 2 Jun 2005 17:52:28 +0000 (17:52 +0000)
committernathan <nathan@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 2 Jun 2005 17:52:28 +0000 (17:52 +0000)
commitb7102079323b3455213f43aaad2607e801d5dec2
treea0248ab483fa16d5d61e52a91d59af7f8fbedf6f
parente0538d44fb4aa740c0d91d24ee52261582521c67
cp:
PR c++/21280
* Make-lang.in (method.o): Add diagnostic.h
* decl.c (start_preparsed_function): Use decl's location for file
info.
* decl2.c (cp_finish_file): Set input_location before synthesizing
a function.
(mark_used): When deferring a synthesized function, save current
location.  Do not set function's location when actually
synthesizing it.
* method.c: #include diagnostic.h.
(synthesize_method): Set the functions source location.  Show
needed location if errors are emitted.
testsuite:
PR c++/21280
* g++.dg/opt/interface2.h: New.
* g++.dg/opt/interface2.C: New.
* g++.dg/init/ctor4.C: Adjust error lines.
* g++.old-deja/g++.bob/inherit2.C: Likewise.
* g++.old-deja/g++.bugs/900205_04.C: Likewise.
* g++.old-deja/g++.jason/opeq3.C: Likewise.
* g++.old-deja/g++.pt/assign1.C: Likewise.
* g++.old-deja/g++.pt/crash20.C: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@100500 138bc75d-0d04-0410-961f-82ee72b054a4
14 files changed:
gcc/cp/ChangeLog
gcc/cp/Make-lang.in
gcc/cp/decl.c
gcc/cp/decl2.c
gcc/cp/method.c
gcc/testsuite/ChangeLog
gcc/testsuite/g++.dg/init/ctor4.C
gcc/testsuite/g++.dg/opt/interface2.C [new file with mode: 0644]
gcc/testsuite/g++.dg/opt/interface2.h [new file with mode: 0644]
gcc/testsuite/g++.old-deja/g++.bob/inherit2.C
gcc/testsuite/g++.old-deja/g++.bugs/900205_04.C
gcc/testsuite/g++.old-deja/g++.jason/opeq3.C
gcc/testsuite/g++.old-deja/g++.pt/assign1.C
gcc/testsuite/g++.old-deja/g++.pt/crash20.C