/cp
commitd8d6736fe135c7d02017c570173bd30462efac40
authorpaolo <paolo@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 3 Jul 2018 21:03:51 +0000 (3 21:03 +0000)
committerpaolo <paolo@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 3 Jul 2018 21:03:51 +0000 (3 21:03 +0000)
treedacfba87beb457d2ccd0472b01945d853d49b6d2
parent3f792b2e473c7635367768be1fba8c40f1732cfc
/cp
2018-07-03  Paolo Carlini  <paolo.carlini@oracle.com>

* decl.c (min_location): New.
(smallest_type_quals_location): Use the latter.
(check_concept_fn): Use DECL_SOURCE_LOCATION.
(grokdeclarator): Use accurate locations in a number of error
messages involving ds_thread, ds_storage_class, ds_virtual,
ds_constexpr, ds_typedef and ds_friend; exploit min_location.

/testsuite
2018-07-03  Paolo Carlini  <paolo.carlini@oracle.com>

* g++.dg/other/locations1.C: New.
* g++.dg/tls/locations1.C: Likewise.
* g++.dg/diagnostic/virtual-constexpr.C: Likewise.
* g++.dg/diagnostic/virtual-static.C: Likewise.
* g++.dg/concepts/fn-concept2.C: Test the locations too.
* g++.dg/cpp0x/constexpr-virtual5.C: Likewise.
* g++.dg/cpp0x/pr51463.C: Likewise.
* g++.dg/other/typedef1.C: Likewise.
* g++.dg/parse/dtor13.C: Likewise.
* g++.dg/template/error44.C: Likewise.
* g++.dg/template/typedef4.C: Likewise.
* g++.dg/template/typedef5.C: Likewise.
* g++.dg/tls/diag-2.C: Likewise.
* g++.old-deja/g++.brendan/crash11.C: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@262358 138bc75d-0d04-0410-961f-82ee72b054a4
17 files changed:
gcc/cp/ChangeLog
gcc/cp/decl.c
gcc/testsuite/ChangeLog
gcc/testsuite/g++.dg/concepts/fn-concept2.C
gcc/testsuite/g++.dg/cpp0x/constexpr-virtual5.C
gcc/testsuite/g++.dg/cpp0x/pr51463.C
gcc/testsuite/g++.dg/diagnostic/virtual-constexpr.C [new file with mode: 0644]
gcc/testsuite/g++.dg/diagnostic/virtual-static.C [new file with mode: 0644]
gcc/testsuite/g++.dg/other/locations1.C [new file with mode: 0644]
gcc/testsuite/g++.dg/other/typedef1.C
gcc/testsuite/g++.dg/parse/dtor13.C
gcc/testsuite/g++.dg/template/error44.C
gcc/testsuite/g++.dg/template/typedef4.C
gcc/testsuite/g++.dg/template/typedef5.C
gcc/testsuite/g++.dg/tls/diag-2.C
gcc/testsuite/g++.dg/tls/locations1.C [new file with mode: 0644]
gcc/testsuite/g++.old-deja/g++.brendan/crash11.C