OSDN Git Service

PR c++/26114, c++/26115
[pf3gnuchains/gcc-fork.git] / gcc / cp / class.c
index 3f48fae..0edade8 100644 (file)
@@ -2935,7 +2935,8 @@ check_field_decls (tree t, tree *access_decls,
             members.  */
          TYPE_HAS_COMPLEX_ASSIGN_REF (t) = 1;
 
-         if (! TYPE_HAS_CONSTRUCTOR (t) && CLASSTYPE_NON_AGGREGATE (t))
+         if (! TYPE_HAS_CONSTRUCTOR (t) && CLASSTYPE_NON_AGGREGATE (t)
+             && extra_warnings)
            warning (OPT_Wextra, "non-static reference %q+#D in class without a constructor", x);
        }
 
@@ -2981,7 +2982,8 @@ check_field_decls (tree t, tree *access_decls,
             members.  */
          TYPE_HAS_COMPLEX_ASSIGN_REF (t) = 1;
 
-         if (! TYPE_HAS_CONSTRUCTOR (t) && CLASSTYPE_NON_AGGREGATE (t))
+         if (! TYPE_HAS_CONSTRUCTOR (t) && CLASSTYPE_NON_AGGREGATE (t)
+             && extra_warnings)
            warning (OPT_Wextra, "non-static const member %q+#D in class without a constructor", x);
        }
       /* A field that is pseudo-const makes the structure likewise.  */