@@ -155,17 +155,17 @@ class DefaultWarnNoWerror {
155155}
156156class DefaultRemark { Severity DefaultSeverity = SEV_Remark; }
157157
158- // C++ compatibility warnings
158+ // C++ compatibility warnings.
159159multiclass CXXCompat<
160160 string message,
161- bit default_ignore,
162161 int std_ver,
162+ bit ext_warn = true,
163163 string std_ver_override = ""#std_ver> {
164164 // 'X is a C++YZ extension'.
165165 def compat_pre_cxx#std_ver#_#NAME :
166166 Diagnostic<!strconcat(message, " a C++", std_ver_override, " extension"),
167167 CLASS_EXTENSION,
168- !if(default_ignore, SEV_Ignored, SEV_Warning )>,
168+ !if(ext_warn, SEV_Warning, SEV_Ignored )>,
169169 InGroup<!cast<DiagGroup>("CXX"#std_ver)>;
170170
171171 // 'X is incompatible with C++98' (if std_ver == 11).
@@ -180,23 +180,23 @@ multiclass CXXCompat<
180180 DefaultIgnore;
181181}
182182
183- multiclass CXX11Compat<string message, bit default_ignore = false >
184- : CXXCompat<message, default_ignore, 11 >;
183+ multiclass CXX11Compat<string message, bit ext_warn = true >
184+ : CXXCompat<message, 11, ext_warn >;
185185
186- multiclass CXX14Compat<string message, bit default_ignore = false >
187- : CXXCompat<message, default_ignore, 14 >;
186+ multiclass CXX14Compat<string message, bit ext_warn = true >
187+ : CXXCompat<message, 14, ext_warn >;
188188
189- multiclass CXX17Compat<string message, bit default_ignore = false >
190- : CXXCompat<message, default_ignore, 17 >;
189+ multiclass CXX17Compat<string message, bit ext_warn = true >
190+ : CXXCompat<message, 17, ext_warn >;
191191
192- multiclass CXX20Compat<string message, bit default_ignore = false >
193- : CXXCompat<message, default_ignore, 20 >;
192+ multiclass CXX20Compat<string message, bit ext_warn = true >
193+ : CXXCompat<message, 20, ext_warn >;
194194
195- multiclass CXX23Compat<string message, bit default_ignore = false >
196- : CXXCompat<message, default_ignore, 23 >;
195+ multiclass CXX23Compat<string message, bit ext_warn = true >
196+ : CXXCompat<message, 23, ext_warn >;
197197
198- multiclass CXX26Compat<string message, bit default_ignore = false >
199- : CXXCompat<message, default_ignore, 26 , "2c">;
198+ multiclass CXX26Compat<string message, bit ext_warn = true >
199+ : CXXCompat<message, 26, ext_warn , "2c">;
200200
201201// Definitions for Diagnostics.
202202include "DiagnosticASTKinds.td"
0 commit comments