This improves the diagnostics messages in case we're using initial
declarations in the for loop, but we're not using C99 or newer standard;
in this case we shouldn't forget about =c11 and =gnu11, where the
initial declaration is fine as well.

Ok for trunk?

2013-06-17  Marek Polacek  <pola...@redhat.com>

        PR c/57630
        * c-decl.c (check_for_loop_decls): Improve diagnostics messages.

--- gcc/c/c-decl.c.mp2  2013-06-17 11:23:18.007191155 +0200
+++ gcc/c/c-decl.c      2013-06-17 11:32:47.410472006 +0200
@@ -8503,11 +8503,12 @@ check_for_loop_decls (location_t loc, bo
         the C99 for loop scope.  This doesn't make much sense, so don't
         allow it.  */
       error_at (loc, "%<for%> loop initial declarations "
-               "are only allowed in C99 mode");
+               "are only allowed in C99 or C11 mode");
       if (hint)
        {
          inform (loc,
-                 "use option -std=c99 or -std=gnu99 to compile your code");
+                 "use option -std=c99, -std=gnu99, -std=c11 or -std=gnu11 "
+                 "to compile your code");
          hint = false;
        }
       return NULL_TREE;

        Marek

Reply via email to