Cherry-pick to XFA: Fix some clang warnings with -Wmissing-braces in pdfium.
Clang warns if there are missing braces around a subobject
initializer. The most common idiom that triggers this is:
STRUCT s = {0};
if the first field of STRUCT is itself a struct. This can
be more simply written as:
STRUCT s = {};
which also prevents the warning from firing.
Other instances of the warning have been fixed by adding
braces where appropriate.
R=brucedawson@chromium.org
Review URL: https://codereview.chromium.org/1213523004.
diff --git a/third_party/BUILD.gn b/third_party/BUILD.gn
index 549df8a..44d5e75 100644
--- a/third_party/BUILD.gn
+++ b/third_party/BUILD.gn
@@ -95,10 +95,18 @@
}
source_set("fx_lcms2") {
+ config("fx_lcms2_warnings") {
+ if (is_clang) {
+ # cmslut.cc is sloppy with aggregate initialization. Version 2.7 of this
+ # library doesn't appear to have this problem.
+ cflags = [ "-Wno-missing-braces" ]
+ }
+ }
configs -= [ "//build/config/compiler:chromium_code" ]
configs += [
"//build/config/compiler:no_chromium_code",
"//third_party/pdfium:pdfium_config",
+ ":fx_lcms2_warnings",
]
sources = [
"lcms2-2.6/include/lcms2.h",
diff --git a/third_party/third_party.gyp b/third_party/third_party.gyp
index ff65771..98ec814 100644
--- a/third_party/third_party.gyp
+++ b/third_party/third_party.gyp
@@ -137,6 +137,11 @@
],
}],
],
+ 'variables': {
+ 'clang_warning_flags': [
+ '-Wno-missing-braces',
+ ],
+ },
},
{
'target_name': 'fx_libjpeg',