[tint][cmake] Pass -Wno-gnu-zero-variadic-macro-arguments
This warning is raised with -Weverything when using a macro containing
`blah, ##__VA_ARGS__`.
All compilers we care about supports this already. It's also supported
as part of the standard with C++20.
Use this in the RUN_TRANSFORM() macro to remove a common argument.
Change-Id: If686bb53520de3b50649b9dcfda90659484dbf8d
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/163241
Reviewed-by: dan sinclair <dsinclair@chromium.org>
Commit-Queue: Ben Clayton <bclayton@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
diff --git a/src/tint/CMakeLists.txt b/src/tint/CMakeLists.txt
index e82aa47..208a231 100644
--- a/src/tint/CMakeLists.txt
+++ b/src/tint/CMakeLists.txt
@@ -87,10 +87,11 @@
-Wno-c++98-compat
-Wno-c++98-compat-pedantic
-Wno-format-pedantic
+ -Wno-gnu-zero-variadic-macro-arguments
-Wno-poison-system-directories
-Wno-return-std-move-in-c++11
- -Wno-unknown-warning-option
-Wno-undefined-var-template
+ -Wno-unknown-warning-option
-Wno-unsafe-buffer-usage
-Wno-used-but-marked-unused
-Weverything
diff --git a/src/tint/lang/msl/writer/raise/raise.cc b/src/tint/lang/msl/writer/raise/raise.cc
index 2f817a6..b0cfe52 100644
--- a/src/tint/lang/msl/writer/raise/raise.cc
+++ b/src/tint/lang/msl/writer/raise/raise.cc
@@ -44,24 +44,24 @@
namespace tint::msl::writer::raise {
Result<SuccessType> Raise(core::ir::Module& module, const Options& options) {
-#define RUN_TRANSFORM(name, ...) \
- do { \
- auto result = name(__VA_ARGS__); \
- if (!result) { \
- return result; \
- } \
+#define RUN_TRANSFORM(name, ...) \
+ do { \
+ auto result = name(module, ##__VA_ARGS__); \
+ if (!result) { \
+ return result; \
+ } \
} while (false)
ExternalTextureOptions external_texture_options{};
RemapperData remapper_data{};
PopulateRemapperAndMultiplanarOptions(options, remapper_data, external_texture_options);
- RUN_TRANSFORM(core::ir::transform::BindingRemapper, module, remapper_data);
+ RUN_TRANSFORM(core::ir::transform::BindingRemapper, remapper_data);
{
core::ir::transform::BinaryPolyfillConfig binary_polyfills{};
binary_polyfills.int_div_mod = true;
binary_polyfills.bitshift_modulo = true; // crbug.com/tint/1543
- RUN_TRANSFORM(core::ir::transform::BinaryPolyfill, module, binary_polyfills);
+ RUN_TRANSFORM(core::ir::transform::BinaryPolyfill, binary_polyfills);
}
{
@@ -72,35 +72,34 @@
core_polyfills.first_trailing_bit = true;
core_polyfills.insert_bits = core::ir::transform::BuiltinPolyfillLevel::kClampOrRangeCheck;
core_polyfills.texture_sample_base_clamp_to_edge_2d_f32 = true;
- RUN_TRANSFORM(core::ir::transform::BuiltinPolyfill, module, core_polyfills);
+ RUN_TRANSFORM(core::ir::transform::BuiltinPolyfill, core_polyfills);
}
// polyfills.sign_int = true;
{
core::ir::transform::ConversionPolyfillConfig conversion_polyfills;
conversion_polyfills.ftoi = true;
- RUN_TRANSFORM(core::ir::transform::ConversionPolyfill, module, conversion_polyfills);
+ RUN_TRANSFORM(core::ir::transform::ConversionPolyfill, conversion_polyfills);
}
if (!options.disable_robustness) {
core::ir::transform::RobustnessConfig config{};
- RUN_TRANSFORM(core::ir::transform::Robustness, module, config);
+ RUN_TRANSFORM(core::ir::transform::Robustness, config);
}
- RUN_TRANSFORM(core::ir::transform::MultiplanarExternalTexture, module,
- external_texture_options);
+ RUN_TRANSFORM(core::ir::transform::MultiplanarExternalTexture, external_texture_options);
if (!options.disable_workgroup_init) {
- RUN_TRANSFORM(core::ir::transform::ZeroInitWorkgroupMemory, module);
+ RUN_TRANSFORM(core::ir::transform::ZeroInitWorkgroupMemory);
}
// PreservePadding must come before DirectVariableAccess.
- RUN_TRANSFORM(core::ir::transform::PreservePadding, module);
+ RUN_TRANSFORM(core::ir::transform::PreservePadding);
- RUN_TRANSFORM(core::ir::transform::VectorizeScalarMatrixConstructors, module);
+ RUN_TRANSFORM(core::ir::transform::VectorizeScalarMatrixConstructors);
// DemoteToHelper must come before any transform that introduces non-core instructions.
- RUN_TRANSFORM(core::ir::transform::DemoteToHelper, module);
+ RUN_TRANSFORM(core::ir::transform::DemoteToHelper);
return Success;
}