On 3/21/20 5:59 PM, Martin Sebor wrote:
+ /* Diagnose class/struct/union mismatches. IS_DECLARATION is false + for alias definition. */ + bool decl_class = (is_declaration + && cp_parser_declares_only_class_p (parser)); cp_parser_check_class_key (parser, key_loc, tag_type, type, false, cp_parser_declares_only_class_p (parser));
Don't you need to use the new variable? Don't your testcases exercise this?
+ /* When TYPE is the use of an implicit specialization of a previously + declared template set TYPE_DECL to the type of the primary template + for the specialization and look it up in CLASS2LOC below. For uses + of explicit or partial specializations TYPE_DECL already points to + the declaration of the specialization. + IS_USE is clear so that the type of an implicit instantiation rather + than that of a partial specialization is determined. */ + type_decl = TREE_TYPE (type_decl); + if (TREE_CODE (type_decl) != TEMPLATE_DECL) + type_decl = TYPE_MAIN_DECL (type_decl);
The comment is no longer relevant to the code. The remaining code also seems like it would have no effect; we already know type_decl is TYPE_MAIN_DECL (type).
Jason