aboutsummaryrefslogtreecommitdiff
path: root/gcc/cp
diff options
context:
space:
mode:
authorPaolo Carlini <paolo.carlini@oracle.com>2016-05-23 19:24:22 +0000
committerPaolo Carlini <paolo@gcc.gnu.org>2016-05-23 19:24:22 +0000
commitd6c9a06fcfc524fef362795cc40dbdffe1ca8b6c (patch)
tree180adbdfd15a70bd3ab894a8263ff295be84efda /gcc/cp
parent396a1d10b3822a6da4794309a28ce3b1ea309325 (diff)
downloadgcc-d6c9a06fcfc524fef362795cc40dbdffe1ca8b6c.zip
gcc-d6c9a06fcfc524fef362795cc40dbdffe1ca8b6c.tar.gz
gcc-d6c9a06fcfc524fef362795cc40dbdffe1ca8b6c.tar.bz2
re PR c++/69095 (internal compiler error: in dependent_type_p, at cp/pt.c:19399)
/cp 2016-05-22 Paolo Carlini <paolo.carlini@oracle.com> PR c++/69095 * parser.c (cp_parser_default_argument): Call check_for_bare_parameter_packs. (cp_parser_late_parsing_default_args): Likewise. /testsuite 2016-05-22 Paolo Carlini <paolo.carlini@oracle.com> PR c++/69095 * g++.dg/cpp0x/variadic168.C: New. From-SVN: r236610
Diffstat (limited to 'gcc/cp')
-rw-r--r--gcc/cp/ChangeLog5
-rw-r--r--gcc/cp/parser.c3
2 files changed, 8 insertions, 0 deletions
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog
index e6f4ac9..764754d 100644
--- a/gcc/cp/ChangeLog
+++ b/gcc/cp/ChangeLog
@@ -1,5 +1,10 @@
2016-05-23 Paolo Carlini <paolo.carlini@oracle.com>
+ PR c++/69095
+ * parser.c (cp_parser_initializer): Use check_for_bare_parameter_packs.
+
+2016-05-23 Paolo Carlini <paolo.carlini@oracle.com>
+
* pt.c (check_for_bare_parameter_packs): Improve error message
location for expressions.
diff --git a/gcc/cp/parser.c b/gcc/cp/parser.c
index 076e7f3..a68a510 100644
--- a/gcc/cp/parser.c
+++ b/gcc/cp/parser.c
@@ -20800,6 +20800,9 @@ cp_parser_initializer (cp_parser* parser, bool* is_direct_init,
init = error_mark_node;
}
+ if (check_for_bare_parameter_packs (init))
+ init = error_mark_node;
+
return init;
}