forked from OSchip/llvm-project
![]() accurate diagnostics. For test/Lexer/comments.c we now emit: int x = 000000080; /* expected-error {{invalid digit}} */ ^ constants.c:7:4: error: invalid digit '8' in octal constant 00080; /* expected-error {{invalid digit}} */ ^ The last line is due to an escaped newline. The full line looks like: int y = 0000\ 00080; /* expected-error {{invalid digit}} */ Previously, we emitted: constants.c:4:9: error: invalid digit '8' in octal constant int x = 000000080; /* expected-error {{invalid digit}} */ ^ constants.c:6:9: error: invalid digit '8' in octal constant int y = 0000\ ^ which isn't too bad, but the new way is better for the user, regardless of whether there is an escaped newline or not. All the other lexer-related diagnostics should switch over to using AdvanceToTokenCharacter where appropriate. Help wanted :). This implements test/Lexer/constants.c. llvm-svn: 39906 |
||
---|---|---|
.. | ||
HeaderSearch.cpp | ||
IdentifierTable.cpp | ||
Lexer.cpp | ||
LiteralSupport.cpp | ||
MacroExpander.cpp | ||
MacroInfo.cpp | ||
Makefile | ||
PPExpressions.cpp | ||
Pragma.cpp | ||
Preprocessor.cpp | ||
ScratchBuffer.cpp |