@@ -517,6 +517,12 @@ def _test_stds_impl(self, testdir: str, compiler: 'Compiler') -> None:
517517 has_cpp20 = (compiler .get_id () not in {'clang' , 'gcc' } or
518518 compiler .get_id () == 'clang' and _clang_at_least (compiler , '>=10.0.0' , None ) or
519519 compiler .get_id () == 'gcc' and version_compare (compiler .version , '>=10.0.0' ))
520+ has_cpp2b = (compiler .get_id () not in {'clang' , 'gcc' } or
521+ compiler .get_id () == 'clang' and _clang_at_least (compiler , '>=12.0.0' , None ) or
522+ compiler .get_id () == 'gcc' and version_compare (compiler .version , '>=12.2.0' ))
523+ has_cpp23 = (compiler .get_id () not in {'clang' , 'gcc' } or
524+ compiler .get_id () == 'clang' and _clang_at_least (compiler , '>=17.0.0' , None ) or
525+ compiler .get_id () == 'gcc' and version_compare (compiler .version , '>=12.2.0' ))
520526 has_c18 = (compiler .get_id () not in {'clang' , 'gcc' } or
521527 compiler .get_id () == 'clang' and _clang_at_least (compiler , '>=8.0.0' , '>=11.0' ) or
522528 compiler .get_id () == 'gcc' and version_compare (compiler .version , '>=8.0.0' ))
@@ -533,6 +539,10 @@ def _test_stds_impl(self, testdir: str, compiler: 'Compiler') -> None:
533539 continue
534540 elif '++20' in v and not has_cpp20 :
535541 continue
542+ elif '++2b' in v and not has_cpp2b :
543+ continue
544+ elif '++23' in v and not has_cpp23 :
545+ continue
536546 # now C
537547 elif '17' in v and not has_cpp2a_c17 :
538548 continue
0 commit comments