]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
re PR c++/38485 (GCC can't parse a parenthesized comma in a template-id within a...
authorJason Merrill <jason@redhat.com>
Thu, 18 Dec 2008 15:54:59 +0000 (10:54 -0500)
committerJason Merrill <jason@gcc.gnu.org>
Thu, 18 Dec 2008 15:54:59 +0000 (10:54 -0500)
        PR c++/38485
        * parser.c (cp_parser_token_starts_cast_expression): An EOF
        can't start a cast-expression.

From-SVN: r142815

gcc/cp/ChangeLog
gcc/cp/parser.c
gcc/testsuite/ChangeLog
gcc/testsuite/g++.dg/parse/defarg13.C [new file with mode: 0644]

index 2c681c0edbc4bdf04c7d2187b9af7a04fce0c4a8..00415ecb92d22399b2793eca0ff7727231a39db6 100644 (file)
@@ -1,3 +1,9 @@
+2008-12-18  Jason Merrill  <jason@redhat.com>
+
+       PR c++/38485
+       * parser.c (cp_parser_token_starts_cast_expression): An EOF
+       can't start a cast-expression.
+
 2008-12-17  Jason Merrill  <jason@redhat.com>
 
        * semantics.c (describable_type): New function.
index 79be488028f2a8b1dfe4f80bad1ac31889407c39..400f36cc290139d5fa33343c7cb8a26882e8c4bc 100644 (file)
@@ -5953,6 +5953,7 @@ cp_parser_token_starts_cast_expression (cp_token *token)
     case CPP_XOR:
     case CPP_OR:
     case CPP_OR_OR:
+    case CPP_EOF:
       return false;
 
       /* '[' may start a primary-expression in obj-c++.  */
index 83063037de9dadc699e9088fed5797511b0c607f..4756cd1792ed78f82a42d7e92bb107ca926d5f5b 100644 (file)
@@ -1,3 +1,8 @@
+2008-12-18  Jason Merrill  <jason@redhat.com>
+
+       PR c++/38485
+       * g++.dg/parse/defarg13.C: New test.
+
 2008-12-18  Kenneth Zadeck <zadeck@naturalbridge.com>
 
        PR rtl-optimization/37922
diff --git a/gcc/testsuite/g++.dg/parse/defarg13.C b/gcc/testsuite/g++.dg/parse/defarg13.C
new file mode 100644 (file)
index 0000000..27c6db5
--- /dev/null
@@ -0,0 +1,8 @@
+// PR c++/38485
+
+template <class Key, class T>
+class QMap { };
+
+class XMLConfigurations {
+  void translateToOther(QMap<int, int> match = (QMap<int, int>()));
+};