• Home
  • History
  • Annotate
  • only in /external/clang/test/CXX/lex/
History log of /external/clang/test/CXX/lex/
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
c50ffca69af980af021384e087a81ae2ff7b9e26 08-Oct-2013 Richard Smith <richard-llvm@metafoo.co.uk> Add a triple to unbreak buildbots where size_t is not 'unsigned long'.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@192140 91177308-0d34-0410-b5e6-96231b3b80d8
ex.literal/lex.ext/p5.cpp
ex.literal/lex.ext/p7.cpp
b328e29173d15baf3f44ccdc9c310ee741caaaf7 07-Oct-2013 Richard Smith <richard-llvm@metafoo.co.uk> Add support for WG21 N3599 (literal operator template for strings) as a GNU
extension. The GCC folks have decided to support this even though the standard
committee have not yet approved this feature.

Patch by Hristo Venev!


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@192128 91177308-0d34-0410-b5e6-96231b3b80d8
ex.literal/lex.ext/p11.cpp
ex.literal/lex.ext/p12.cpp
ex.literal/lex.ext/p5.cpp
ex.literal/lex.ext/p7.cpp
b3da613977f6b77dee2b382eeff5713168a4ca18 23-Jul-2013 Eli Friedman <eli.friedman@gmail.com> Integers which are too large should be an error.

Switch some warnings over to errors which should never have been warnings
in the first place. (Also, a minor fix to the preprocessor rules for
integer literals while I'm here.)

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@186903 91177308-0d34-0410-b5e6-96231b3b80d8
ex.literal/lex.ext/p3.cpp
dca97dd5dab315e82be6dad0d90c51b030bea531 17-Jan-2013 Richard Smith <richard-llvm@metafoo.co.uk> Test that we correctly handle reversion of line splicing etc in raw string
literals. As suggested by Sean Silva.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@172694 91177308-0d34-0410-b5e6-96231b3b80d8
ex.pptoken/p3-0x.cpp
30cddaec99fa6c3207613efdaedbb51dd8d70c77 28-Nov-2012 Richard Smith <richard-llvm@metafoo.co.uk> Teach Lexer::getSpelling about raw string literals. Specifically, if a raw
string literal needs cleaning (because it contains line-splicing in the
encoding prefix or in the ud-suffix), do not clean the section between the
double-quotes -- that's the "raw" bit!


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@168776 91177308-0d34-0410-b5e6-96231b3b80d8
ex.literal/lex.ext/p5.cpp
8e8fb3be5bd78f0564444eca02b404566a5f3b5d 19-Oct-2012 Andy Gibbs <andyg1001@hotmail.co.uk> Prior to adding the new "expected-no-diagnostics" directive to VerifyDiagnosticConsumer, make the necessary adjustment to 580 test-cases which will henceforth require this new directive.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@166280 91177308-0d34-0410-b5e6-96231b3b80d8
ex.literal/lex.ccon/p1.cpp
ex.trigraph/p3.cpp
26b75c07317a3b50a8a00a1623e3ef38af1d8349 09-Mar-2012 Richard Smith <richard-llvm@metafoo.co.uk> Improve diagnostics for UCNs referring to control characters and members of the
basic source character set in C++98. Add -Wc++98-compat diagnostics for same in
literals in C++11. Extend such support to cover string literals as well as
character literals, and mark N2170 as done.

This seems too minor to warrant a release note to me. Let me know if you disagree.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152444 91177308-0d34-0410-b5e6-96231b3b80d8
ex.charset/p2-cxx11.cpp
ex.charset/p2-cxx98.cpp
15debc31f27e35acd9fa1956cefc0294f4e13cb1 09-Mar-2012 Benjamin Kramer <benny.kra@googlemail.com> Harden test for 32 bit platforms, where size_t is unsigned int (not unsigned long).

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152404 91177308-0d34-0410-b5e6-96231b3b80d8
ex.literal/lex.ext/p2.cpp
36f5cfe4df32af6c5fe01228102512996f566f9d 09-Mar-2012 Richard Smith <richard-llvm@metafoo.co.uk> Support for raw and template forms of numeric user-defined literals,
and lots of tidying up.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152392 91177308-0d34-0410-b5e6-96231b3b80d8
ex.literal/lex.ext/p2.cpp
ex.literal/lex.ext/p3.cpp
ex.literal/lex.ext/p4.cpp
ex.literal/lex.ext/p5.cpp
ex.literal/lex.ext/p6.cpp
ex.literal/lex.ext/p7.cpp
e093404ee9fc6fc169304b51ec2f78ffafef16b9 09-Mar-2012 Richard Smith <richard-llvm@metafoo.co.uk> Remove a test FIXME for a case which is already fixed.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152349 91177308-0d34-0410-b5e6-96231b3b80d8
ex.literal/lex.ext/p10.cpp
2fb4ae36825ca3a0cbe7e845c5747062870066be 08-Mar-2012 Richard Smith <richard-llvm@metafoo.co.uk> Implement C++11 [lex.ext]p10 for string and character literals: a ud-suffix not
starting with an underscore is ill-formed.

Since this rule rejects programs that were using <inttypes.h>'s macros, recover
from this error by treating the ud-suffix as a separate preprocessing-token,
with a DefaultError ExtWarn. The approach of treating such cases as two tokens
is under discussion for standardization, but is in any case a conforming
extension and allows existing codebases to keep building while the committee
makes up its mind.

Reword the warning on the definition of literal operators not starting with
underscores (which are, strangely, legal) to more explicitly state that such
operators can't be called by literals. Remove the special-case diagnostic for
hexfloats, since it was both triggering in the wrong cases and incorrect.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152287 91177308-0d34-0410-b5e6-96231b3b80d8
ex.literal/lex.ext/p1.cpp
ex.literal/lex.ext/p10.cpp
9fcce65e7e1307b5b8da9be13e4092d6bb94dc1d 07-Mar-2012 Richard Smith <richard-llvm@metafoo.co.uk> AST representation for user-defined literals, plus just enough of semantic
analysis to make the AST representation testable. They are represented by a
new UserDefinedLiteral AST node, which is a sugared CallExpr. All semantic
properties, including full CodeGen support, are achieved for free by this
representation.

UserDefinedLiterals can never be dependent, so no custom instantiation
behavior is required. They are mangled as if they were direct calls to the
underlying literal operator. This matches g++'s apparent behavior (but not its
actual mangling, which is broken for literal-operator-ids).

User-defined *string* literals are now fully-operational, but the semantic
analysis is quite hacky and needs more work. No other forms of user-defined
literal are created yet, but the AST support for them is present.

This patch committed after midnight because we had already hit the quota for
new kinds of literal yesterday.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152211 91177308-0d34-0410-b5e6-96231b3b80d8
ex.literal/lex.ext/p10.cpp
ex.literal/lex.ext/p8.cpp
ex.literal/lex.ext/p9.cpp
d4f9f9dfdfa36f2e45c2ad0f4be304737d0f7f64 05-Mar-2012 Richard Smith <richard-llvm@metafoo.co.uk> More tests for r152012.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152013 91177308-0d34-0410-b5e6-96231b3b80d8
ex.literal/lex.ext/p10.cpp
ex.literal/lex.ext/p8.cpp
ex.literal/lex.ext/p9.cpp
5cc2c6eb67b6e5361bbe96f79b519fd62ec666d6 05-Mar-2012 Richard Smith <richard-llvm@metafoo.co.uk> Lexing support for user-defined literals. Currently these lex as the same token
kinds as the underlying string literals, and we silently drop the ud-suffix;
those issues will be fixed by subsequent patches.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152012 91177308-0d34-0410-b5e6-96231b3b80d8
ex.literal/lex.ext/p1.cpp
762bb9d0ad20320b9f97a841dce57ba5e8e48b07 14-Oct-2011 Richard Smith <richard-llvm@metafoo.co.uk> Update all tests other than Driver/std.cpp to use -std=c++11 rather than
-std=c++0x. Patch by Ahmed Charles!


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@141900 91177308-0d34-0410-b5e6-96231b3b80d8
ex.literal/lex.ccon/p1.cpp
ex.literal/lex.ext/p1.cpp
ex.pptoken/p3-0x.cpp
1155c42e7b1b4e401bb0a331a6d715d637958c75 31-Aug-2011 Douglas Gregor <dgregor@apple.com> Allow C99 hexfloats in C++0x mode. This change resolves the standards
collision between C99 hexfloats and C++0x user-defined literals by
giving C99 hexfloats precedence. Also, warning about user-defined
literals that conflict with hexfloats and those that have names that
are reserved by the implementation. Fixes <rdar://problem/9940194>.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@138839 91177308-0d34-0410-b5e6-96231b3b80d8
ex.literal/lex.ext/p1.cpp
53afad5ebbfd47e932405af5b93177ea0d68e3f4 29-Jul-2011 Douglas Gregor <dgregor@apple.com> This patch makes the string/character literal tests run in C,
C++98/03, and C++0x mode, from Craig Topper!


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@136443 91177308-0d34-0410-b5e6-96231b3b80d8
ex.literal/lex.ccon/p1.cpp
5cee1195584fa8672253139c86e922daeda69b9e 27-Jul-2011 Douglas Gregor <dgregor@apple.com> Add support for C++0x unicode string and character literals, from Craig Topper!


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@136210 91177308-0d34-0410-b5e6-96231b3b80d8
ex.literal/lex.ccon/p1.cpp
87a1e19735a27d84edc2ac1331c040e2fb4c3b1a 14-Apr-2011 Richard Smith <richard-llvm@metafoo.co.uk> Implement C++0x [lex.pptoken]p3's handling of <::.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@129525 91177308-0d34-0410-b5e6-96231b3b80d8
ex.pptoken/p3-0x.cpp
136b0cd75c37895ed0e00dee5b06c55c5b1d8199 03-Feb-2010 Eli Friedman <eli.friedman@gmail.com> Fix for PR6220: compute the correct type for multicharacter literals.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95228 91177308-0d34-0410-b5e6-96231b3b80d8
ex.literal/lex.ccon/p1.cpp
a5728872c7702ddd09537c95bc3cbd20e1f2fb09 15-Dec-2009 Daniel Dunbar <daniel@zuster.org> Update tests to use %clang_cc1 instead of 'clang-cc' or 'clang -cc1'.
- This is designed to make it obvious that %clang_cc1 is a "test variable"
which is substituted. It is '%clang_cc1' instead of '%clang -cc1' because it
can be useful to redefine what gets run as 'clang -cc1' (for example, to set
a default target).

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@91446 91177308-0d34-0410-b5e6-96231b3b80d8
ex.trigraph/p1.cpp
ex.trigraph/p2.cpp
ex.trigraph/p3.cpp
95190d00d54a493d9030908599feb073a7bb1d93 23-Aug-2009 Daniel Dunbar <daniel@zuster.org> Tests for C++ lex.trigraph, patch by Mats!

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@79841 91177308-0d34-0410-b5e6-96231b3b80d8
ex.trigraph/p1.cpp
ex.trigraph/p2.cpp
ex.trigraph/p3.cpp