1. 18 Dec, 2019 39 commits
  2. 17 Dec, 2019 1 commit
    • PR c++/61339 - add warning for mismatch between struct and class · e8f1ade2
      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
      Martin Sebor committed