* decl.c (type_dependent_init_p): Check the type of a CONSTRUCTOR.
From-SVN: r245592
2017-02-19 Jason Merrill <jason@redhat.com>
+ PR c++/79607 - ICE with T{} initializer
+ * decl.c (type_dependent_init_p): Check the type of a CONSTRUCTOR.
+
PR c++/79566 - elaborated-type-specifier in range for
* parser.c (cp_parser_simple_declaration): Fix check for type
definition.
else if (TREE_CODE (init) == CONSTRUCTOR)
/* A brace-enclosed initializer, e.g.: int i = { 3 }; ? */
{
+ if (dependent_type_p (TREE_TYPE (init)))
+ return true;
+
vec<constructor_elt, va_gc> *elts;
size_t nelts;
size_t i;
--- /dev/null
+// PR c++/79607
+// { dg-do compile { target c++11 } }
+
+template<typename T> struct A
+{
+ static const int i = int{T{}};
+};
+
+A<int> a;