Fix and enable -Wgnu-anonymous-struct

Bug: dawn:394
Change-Id: I7753b7daff2beaeb67fe6cbb54b002ddbe077f6f
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/20701
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Stephen White <senorblanco@chromium.org>
Reviewed-by: Austin Eng <enga@chromium.org>
diff --git a/src/common/BUILD.gn b/src/common/BUILD.gn
index 0d55996..67370d1 100644
--- a/src/common/BUILD.gn
+++ b/src/common/BUILD.gn
@@ -114,7 +114,6 @@
 
     # Flags for -pedantic warnings that haven't been fixed yet.
     cflags += [
-      "-Wno-gnu-anonymous-struct",
       "-Wno-gnu-zero-variadic-macro-arguments",
       "-Wno-language-extension-token",
       "-Wno-microsoft-enum-value",
diff --git a/third_party/gn/glm/BUILD.gn b/third_party/gn/glm/BUILD.gn
index 205be21..4bbbf9d 100644
--- a/third_party/gn/glm/BUILD.gn
+++ b/third_party/gn/glm/BUILD.gn
@@ -22,7 +22,10 @@
   # GLM tries to suppress the warning for clang but gets confused by clang-cl
   # and thinks it is MSVC.
   if (is_win && is_clang) {
-    cflags = [ "-Wno-nested-anon-types" ]
+    cflags = [
+      "-Wno-gnu-anonymous-struct",
+      "-Wno-nested-anon-types",
+    ]
   }
 }
 source_set("glm") {