Index: clang/lib/Lex/PPDirectives.cpp =================================================================== --- clang/lib/Lex/PPDirectives.cpp +++ clang/lib/Lex/PPDirectives.cpp @@ -2394,7 +2394,7 @@ diag::ext_variadic_macro); // OpenCL v1.2 s6.9.e: variadic macros are not supported. - if (LangOpts.OpenCL) { + if (LangOpts.OpenCL && !LangOpts.OpenCLCPlusPlus) { Diag(Tok, diag::ext_pp_opencl_variadic_macros); }