File tree 3 files changed +24
-0
lines changed
src/tools/compiletest/src
3 files changed +24
-0
lines changed Original file line number Diff line number Diff line change @@ -116,6 +116,7 @@ const KNOWN_DIRECTIVE_NAMES: &[&str] = &[
116
116
"incremental" ,
117
117
"known-bug" ,
118
118
"llvm-cov-flags" ,
119
+ "max-llvm-major-version" ,
119
120
"min-cdb-version" ,
120
121
"min-gdb-version" ,
121
122
"min-lldb-version" ,
Original file line number Diff line number Diff line change @@ -1518,6 +1518,20 @@ fn ignore_llvm(config: &Config, line: &str) -> IgnoreDecision {
1518
1518
) ,
1519
1519
} ;
1520
1520
}
1521
+ } else if let Some ( version_string) =
1522
+ config. parse_name_value_directive ( line, "max-llvm-major-version" )
1523
+ {
1524
+ let max_version = extract_llvm_version ( & version_string) ;
1525
+ // Ignore if actual major version is larger than the maximum required major version.
1526
+ if actual_version. major > max_version. major {
1527
+ return IgnoreDecision :: Ignore {
1528
+ reason : format ! (
1529
+ "ignored when the LLVM version ({actual_version}) is newer than major\
1530
+ version {}",
1531
+ max_version. major
1532
+ ) ,
1533
+ } ;
1534
+ }
1521
1535
} else if let Some ( version_string) =
1522
1536
config. parse_name_value_directive ( line, "min-system-llvm-version" )
1523
1537
{
Original file line number Diff line number Diff line change @@ -265,6 +265,15 @@ fn llvm_version() {
265
265
266
266
let config: Config = cfg ( ) . llvm_version ( "10.0.0" ) . build ( ) ;
267
267
assert ! ( !check_ignore( & config, "//@ min-llvm-version: 9.0" ) ) ;
268
+
269
+ let config: Config = cfg ( ) . llvm_version ( "19.0.0" ) . build ( ) ;
270
+ assert ! ( !check_ignore( & config, "//@ max-llvm-major-version: 19" ) ) ;
271
+
272
+ let config: Config = cfg ( ) . llvm_version ( "19.1.2" ) . build ( ) ;
273
+ assert ! ( !check_ignore( & config, "//@ max-llvm-major-version: 19" ) ) ;
274
+
275
+ let config: Config = cfg ( ) . llvm_version ( "20.0.0" ) . build ( ) ;
276
+ assert ! ( check_ignore( & config, "//@ max-llvm-major-version: 19" ) ) ;
268
277
}
269
278
270
279
#[ test]
You can’t perform that action at this time.
0 commit comments