================ @@ -993,11 +993,18 @@ MacroArgs *Preprocessor::ReadMacroCallArgumentList(Token &MacroName, // If the macro contains the comma pasting extension, the diagnostic // is suppressed; we know we'll get another diagnostic later. if (!MI->hasCommaPasting()) { - // C++20 allows this construct, but standards before C++20 and all C - // standards do not allow the construct (we allow it as an extension). - Diag(Tok, getLangOpts().CPlusPlus20 - ? diag::warn_cxx17_compat_missing_varargs_arg - : diag::ext_missing_varargs_arg); + // C++20 and C23 allow this construct, but standards before that + // do not (we allow it as an extension). ---------------- shafik wrote:
CC @AaronBallman should we add a standard quote like we normally do for C++? It looks like it should be 6.10.5 p12. It took me a but to remember in C they are referred to as *variable arguments* and not variadic like in C++. https://github.com/llvm/llvm-project/pull/84520 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits