diff options
author | Martin Sebor <msebor@redhat.com> | 2019-12-17 23:53:07 +0000 |
---|---|---|
committer | Martin Sebor <msebor@gcc.gnu.org> | 2019-12-17 16:53:07 -0700 |
commit | e8f1ade269a39ea86a76a2440818e1512ed480ee (patch) | |
tree | 6e3d510dd85b3c1cd750eb1e46594fa5374f03e0 /gcc/ada/gcc-interface/decl.c | |
parent | 54ba911fd1670654d494f238d83e337a4aeb0cb4 (diff) | |
download | gcc-e8f1ade269a39ea86a76a2440818e1512ed480ee.zip gcc-e8f1ade269a39ea86a76a2440818e1512ed480ee.tar.gz gcc-e8f1ade269a39ea86a76a2440818e1512ed480ee.tar.bz2 |
PR c++/61339 - add warning for mismatch between struct and class
gcc/c-family/ChangeLog:
PR c++/61339
* c.opt (-Wmismatched-tags, -Wredundant-tags): New options.
gcc/cp/ChangeLog:
PR c++/61339
* parser.c (cp_parser_maybe_warn_enum_key): New function.
(class_decl_loc_t): New class.
(cp_parser_elaborated_type_specifier): Call
cp_parser_maybe_warn_enum_key.
(cp_parser_class_head): Call cp_parser_check_class_key.
(cp_parser_check_class_key): Add arguments. Call class_decl_loc_t::add.
(c_parse_file): Call class_decl_loc_t::diag_mismatched_tags.
gcc/testsuite/ChangeLog:
PR c++/61339
* g++.dg/warn/Wmismatched-tags.C: New test.
* g++.dg/warn/Wredundant-tags.C: New test.
* g++.dg/pch/Wmismatched-tags.C: New test.
* g++.dg/pch/Wmismatched-tags.Hs: New test header.
gcc/ChangeLog:
PR c++/61339
* doc/invoke.texi (-Wmismatched-tags, -Wredundant-tags): Document
new C++ options.
From-SVN: r279480
Diffstat (limited to 'gcc/ada/gcc-interface/decl.c')
0 files changed, 0 insertions, 0 deletions