diff options
author | Richard Smith <richard-llvm@metafoo.co.uk> | 2012-06-22 23:59:08 +0000 |
---|---|---|
committer | Richard Smith <richard-llvm@metafoo.co.uk> | 2012-06-22 23:59:08 +0000 |
commit | 9f728cd37476c6588b06d241fa778d2df6e277da (patch) | |
tree | 965ea3e9b41377c7f80546cb2658e898d312c3f0 /lib/Lex | |
parent | 10f77ad7fc5e5cf3f37a9b14ff5843468b8b84d2 (diff) |
Minor improvements to some C99 variadic-macro-related diagnostics.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159054 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Lex')
-rw-r--r-- | lib/Lex/PPMacroExpansion.cpp | 8 | ||||
-rw-r--r-- | lib/Lex/TokenLexer.cpp | 6 |
2 files changed, 8 insertions, 6 deletions
diff --git a/lib/Lex/PPMacroExpansion.cpp b/lib/Lex/PPMacroExpansion.cpp index a5337867b1..c6aabde03e 100644 --- a/lib/Lex/PPMacroExpansion.cpp +++ b/lib/Lex/PPMacroExpansion.cpp @@ -487,10 +487,12 @@ MacroArgs *Preprocessor::ReadFunctionLikeMacroArgs(Token &MacroName, } else if (MI->isVariadic() && (NumActuals+1 == MinArgsExpected || // A(x, ...) -> A(X) (NumActuals == 0 && MinArgsExpected == 2))) {// A(x,...) -> A() - // Varargs where the named vararg parameter is missing: ok as extension. - // #define A(x, ...) - // A("blah") + // Varargs where the named vararg parameter is missing: OK as extension. + // #define A(x, ...) + // A("blah") Diag(Tok, diag::ext_missing_varargs_arg); + Diag(MI->getDefinitionLoc(), diag::note_macro_here) + << MacroName.getIdentifierInfo(); // Remember this occurred, allowing us to elide the comma when used for // cases like: diff --git a/lib/Lex/TokenLexer.cpp b/lib/Lex/TokenLexer.cpp index 81c9d0ab7a..0f1004f2b2 100644 --- a/lib/Lex/TokenLexer.cpp +++ b/lib/Lex/TokenLexer.cpp @@ -252,9 +252,9 @@ void TokenLexer::ExpandFunctionArguments() { const Token *ArgToks = ActualArgs->getUnexpArgument(ArgNo); unsigned NumToks = MacroArgs::getArgLength(ArgToks); if (NumToks) { // Not an empty argument? - // If this is the GNU ", ## __VA_ARG__" extension, and we just learned - // that __VA_ARG__ expands to multiple tokens, avoid a pasting error when - // the expander trys to paste ',' with the first token of the __VA_ARG__ + // If this is the GNU ", ## __VA_ARGS__" extension, and we just learned + // that __VA_ARGS__ expands to multiple tokens, avoid a pasting error when + // the expander trys to paste ',' with the first token of the __VA_ARGS__ // expansion. if (PasteBefore && ResultToks.size() >= 2 && ResultToks[ResultToks.size()-2].is(tok::comma) && |