Straightforward change.

Tested x86_64-pc-linux-gnu, applying to trunk.

commit c11146bdabc5961956adfe00bef8e60657c60fa6
Author: Jason Merrill <ja...@redhat.com>
Date:   Tue Mar 1 20:52:24 2016 -0500

    	PR c++/70036
    
    	* parser.c (cp_parser_requires_clause): Call
    	check_for_bare_parameter_packs.

diff --git a/gcc/cp/parser.c b/gcc/cp/parser.c
index 53decdc..535052f 100644
--- a/gcc/cp/parser.c
+++ b/gcc/cp/parser.c
@@ -24206,6 +24206,8 @@ cp_parser_requires_clause (cp_parser *parser)
   ++processing_template_decl;
   tree expr = cp_parser_binary_expression (parser, false, false,
 					   PREC_NOT_OPERATOR, NULL);
+  if (check_for_bare_parameter_packs (expr))
+    expr = error_mark_node;
   --processing_template_decl;
   return expr;
 }
diff --git a/gcc/testsuite/g++.dg/concepts/variadic3.C b/gcc/testsuite/g++.dg/concepts/variadic3.C
new file mode 100644
index 0000000..f980e99
--- /dev/null
+++ b/gcc/testsuite/g++.dg/concepts/variadic3.C
@@ -0,0 +1,8 @@
+// PR c++/70036
+// { dg-do compile { target c++14 } }
+// { dg-options "-fconcepts" }
+
+template <class T> concept bool C = true;
+
+template <class... T>
+void f(T...) requires C<T>;	// { dg-error "parameter pack" }

Reply via email to