commit 9474a87e99bfacf0b8dfc9dc4c1218d39666a850
Author: Jason Merrill <jason@redhat.com>
Date: Wed May 25 16:53:25 2011 -0400
PR c++/48599
* decl.c (create_array_type_for_decl): Complain about array of auto.
@@ -7974,6 +7974,12 @@ create_array_type_for_decl (tree name, tree type, tree size)
if (type == error_mark_node || size == error_mark_node)
return error_mark_node;
+ /* 8.3.4/1: If the type of the identifier of D contains the auto
+ type-specifier, the program is ill-formed. */
+ if (pedantic && type_uses_auto (type))
+ pedwarn (input_location, OPT_pedantic,
+ "declaration of %qD as array of %<auto%>", name);
+
/* If there are some types which cannot be array elements,
issue an error-message and return. */
switch (TREE_CODE (type))
new file mode 100644
@@ -0,0 +1,5 @@
+// PR c++/48599
+// { dg-options "-std=c++0x -pedantic-errors" }
+
+int v[1];
+auto (*p)[1] = &v; // { dg-error "array of .auto" }