Index: clang/lib/Frontend/InitPreprocessor.cpp =================================================================== --- clang/lib/Frontend/InitPreprocessor.cpp +++ clang/lib/Frontend/InitPreprocessor.cpp @@ -594,7 +594,7 @@ Builder.defineMacro("__cpp_designated_initializers", "201707L"); Builder.defineMacro("__cpp_impl_three_way_comparison", "201907L"); //Builder.defineMacro("__cpp_modules", "201907L"); - //Builder.defineMacro("__cpp_using_enum", "201907L"); + Builder.defineMacro("__cpp_using_enum", "201907L"); } // C++2b features. if (LangOpts.CPlusPlus2b) Index: clang/test/Lexer/cxx-features.cpp =================================================================== --- clang/test/Lexer/cxx-features.cpp +++ clang/test/Lexer/cxx-features.cpp @@ -98,8 +98,7 @@ #error "wrong value for __cpp_modules" #endif -#if check(using_enum, 0, 0, 0, 0, 0, 0) -// FIXME: 201907 in C++20 +#if check(using_enum, 0, 0, 0, 0, 201907, 201907) #error "wrong value for __cpp_using_enum" #endif Index: clang/www/cxx_status.html =================================================================== --- clang/www/cxx_status.html +++ clang/www/cxx_status.html @@ -1205,7 +1205,7 @@ using enum P1099R5 - No + Clang 13 Class template argument deduction for aggregates