diff options
author | Paolo Carlini <paolo.carlini@oracle.com> | 2019-05-10 18:00:52 +0000 |
---|---|---|
committer | Paolo Carlini <paolo@gcc.gnu.org> | 2019-05-10 18:00:52 +0000 |
commit | 67254b50a63b1a1095762fefef801a6a53ccece5 (patch) | |
tree | 540205394d161f37d0d26a2060b88df3b3c9d06e /gcc | |
parent | 7bdc7e0661dae954b919416882d5a9064a202614 (diff) | |
download | gcc-67254b50a63b1a1095762fefef801a6a53ccece5.zip gcc-67254b50a63b1a1095762fefef801a6a53ccece5.tar.gz gcc-67254b50a63b1a1095762fefef801a6a53ccece5.tar.bz2 |
decl.c (grokvardecl): Use an accurate location in error message about main as a global variable.
/cp
2019-05-10 Paolo Carlini <paolo.carlini@oracle.com>
* decl.c (grokvardecl): Use an accurate location in error message
about main as a global variable.
/testsuite
2019-05-10 Paolo Carlini <paolo.carlini@oracle.com>
* g++.dg/diagnostic/main1.C: New.
From-SVN: r271070
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/cp/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/cp/decl.c | 3 | ||||
-rw-r--r-- | gcc/testsuite/ChangeLog | 4 | ||||
-rw-r--r-- | gcc/testsuite/g++.dg/diagnostic/main1.C | 1 |
4 files changed, 12 insertions, 1 deletions
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index 4b245a2..33614ef 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,5 +1,10 @@ 2019-05-10 Paolo Carlini <paolo.carlini@oracle.com> + * decl.c (grokvardecl): Use an accurate location in error message + about main as a global variable. + +2019-05-10 Paolo Carlini <paolo.carlini@oracle.com> + * call.c (build_call_a): Use FUNC_OR_METHOD_TYPE_P. * cp-gimplify.c (cp_fold): Likewise. * cp-objcp-common.c (cp_type_dwarf_attribute): Likewise. diff --git a/gcc/cp/decl.c b/gcc/cp/decl.c index 300c2db..a776f8f 100644 --- a/gcc/cp/decl.c +++ b/gcc/cp/decl.c @@ -9477,7 +9477,8 @@ grokvardecl (tree type, if (DECL_NAME (decl) && MAIN_NAME_P (DECL_NAME (decl)) && scope == global_namespace) - error ("cannot declare %<::main%> to be a global variable"); + error_at (DECL_SOURCE_LOCATION (decl), + "cannot declare %<::main%> to be a global variable"); /* Check that the variable can be safely declared as a concept. Note that this also forbids explicit specializations. */ diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index ac85d09..165df13 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,7 @@ +2019-05-10 Paolo Carlini <paolo.carlini@oracle.com> + + * g++.dg/diagnostic/main1.C: New. + 2019-05-10 Marek Polacek <polacek@redhat.com> PR c++/78010 - bogus -Wsuggest-override warning on final function. diff --git a/gcc/testsuite/g++.dg/diagnostic/main1.C b/gcc/testsuite/g++.dg/diagnostic/main1.C new file mode 100644 index 0000000..6bb0d78 --- /dev/null +++ b/gcc/testsuite/g++.dg/diagnostic/main1.C @@ -0,0 +1 @@ +int main __attribute__((unused)); // { dg-error "5:cannot declare" } |