------- Comment #15 from manu at gcc dot gnu dot org 2009-08-04 09:22 ------- Testcase in comment #9 does not produce any output anymore.
Testcase in comment #10 produces: /home/manuel/src/pr15179.C:8:18: error: type A<yn> is not derived from type B<yn> /home/manuel/src/pr15179.C:8:23: error: expected ; before Type Testcase in comment #14 produces: /home/manuel/src/pr15179-3.C: At global scope: /home/manuel/src/pr15179-3.C:22:23: error: expected constructor, destructor, or type conversion before & token It seems to me that there is a tentative parse of a type in cp_parser_decl_specifier_seq, that fails, and then we end up trying to parse something else until it fails completely. For the typedef testcases, the code in cp_parser_decl_specifier_seq could just directly parse the complete typedef and return, because only a type can follow typedef. For the non-typedef testcase, it is less clear how to handle a failure to parse a type, since that may actually mean we are looking at something else. I don't really know where the "failure" happens. That would need more debugging that I have time to do now. Any help appreciated. -- manu at gcc dot gnu dot org changed: What |Removed |Added ---------------------------------------------------------------------------- Known to fail| |4.4.0 Last reconfirmed|2005-05-08 17:34:10 |2009-08-04 09:22:11 date| | http://gcc.gnu.org/bugzilla/show_bug.cgi?id=15179