diff --git a/include/clang/Basic/DiagnosticLexKinds.td b/include/clang/Basic/DiagnosticLexKinds.td index 77090e92929f46b0cf2a13febc49ececebfb5137..e6b2394dc5e28859299bdbeebe44d9fd2672d856 100644 --- a/include/clang/Basic/DiagnosticLexKinds.td +++ b/include/clang/Basic/DiagnosticLexKinds.td @@ -157,10 +157,8 @@ def ext_unknown_escape : ExtWarn<"unknown escape sequence '\\%0'">, def err_invalid_decimal_digit : Error<"invalid digit '%0' in decimal constant">; def err_invalid_binary_digit : Error<"invalid digit '%0' in binary constant">; def err_invalid_octal_digit : Error<"invalid digit '%0' in octal constant">; -def err_invalid_suffix_integer_constant : Error< - "invalid suffix '%0' on integer constant">; -def err_invalid_suffix_float_constant : Error< - "invalid suffix '%0' on floating constant">; +def err_invalid_suffix_constant : Error< + "invalid suffix '%0' on %select{integer|floating}1 constant">; def warn_cxx11_compat_digit_separator : Warning< "digit separators are incompatible with C++ standards before C++14">, InGroup<CXXPre14Compat>, DefaultIgnore; diff --git a/lib/Lex/LiteralSupport.cpp b/lib/Lex/LiteralSupport.cpp index 1a1b281bd914d6e4fcf0a901d1962a42447db846..6a112d63b0c20391bc88c02eae6f806b04c9cf8b 100644 --- a/lib/Lex/LiteralSupport.cpp +++ b/lib/Lex/LiteralSupport.cpp @@ -680,9 +680,8 @@ NumericLiteralParser::NumericLiteralParser(StringRef TokSpelling, // Report an error if there are any. PP.Diag(PP.AdvanceToTokenCharacter(TokLoc, SuffixBegin - ThisTokBegin), - isFPConstant ? diag::err_invalid_suffix_float_constant : - diag::err_invalid_suffix_integer_constant) - << StringRef(SuffixBegin, ThisTokEnd-SuffixBegin); + diag::err_invalid_suffix_constant) + << StringRef(SuffixBegin, ThisTokEnd-SuffixBegin) << isFPConstant; hadError = true; return; }