Dmitri Gribenko
7bde858705
Convert ad-hoc `int array[expr ? -1 : 1]' assertions
...
in test/SemaCXX/nullptr.cpp to static_assert
llvm-svn: 150579
2012-02-15 13:30:53 +00:00
Richard Smith
ab44d9b321
constexpr: evaluation support for nullptr comparisons.
...
llvm-svn: 150521
2012-02-14 22:35:28 +00:00
Richard Smith
98a0a49fbf
Pending clear answer from WG21 on whether core issue 903 is intended to apply to
...
C++11 or just C++17, restrict the set of null pointer constants in C++11 mode
back to those which were considered null in C++98.
llvm-svn: 150510
2012-02-14 21:38:30 +00:00
Richard Smith
9ca5c42582
Update all tests other than Driver/std.cpp to use -std=c++11 rather than
...
-std=c++0x. Patch by Ahmed Charles!
llvm-svn: 141900
2011-10-13 22:29:44 +00:00
Douglas Gregor
80af31397a
Audit and finish the implementation of C++0x nullptr, fixing two
...
minor issues along the way:
- Non-type template parameters of type 'std::nullptr_t' were not
permitted.
- We didn't properly introduce built-in operators for nullptr ==,
!=, <, <=, >=, or > as candidate functions .
To my knowledge, there's only one (minor but annoying) part of nullptr
that hasn't been implemented: catching a thrown 'nullptr' as a pointer
or pointer-to-member, per C++0x [except.handle]p4.
llvm-svn: 131813
2011-05-21 23:15:46 +00:00
Anders Carlsson
6774b1f1c1
Add -fcxx-exceptions to all tests that use C++ exceptions.
...
llvm-svn: 126599
2011-02-28 00:40:07 +00:00
Anders Carlsson
479d6f51e3
Pass -fexceptions to all tests that use try/catch/throw.
...
llvm-svn: 126037
2011-02-19 19:23:03 +00:00
Chandler Carruth
9c9127eace
Fix a missed case in the NULL operand to conditional operator
...
diagnostics.
Patch by Stephen Hines.
llvm-svn: 125998
2011-02-19 00:13:59 +00:00
Chandler Carruth
a8bea4b90e
Initial steps to improve diagnostics when there is a NULL and
...
a non-pointer on the two sides of a conditional expression.
Patch by Stephen Hines and Mihai Rusu.
llvm-svn: 125995
2011-02-18 23:54:50 +00:00
Anders Carlsson
3fd50319d3
Don't warn when matching %p to nullptr.
...
llvm-svn: 118344
2010-11-06 14:58:53 +00:00
Anders Carlsson
e981a8c231
Expressions of type std::nullptr_t can be used as sentinels.
...
llvm-svn: 118276
2010-11-05 15:21:33 +00:00
Anders Carlsson
7da7cc568f
Implement [over.ics.rank]p4: A conversion that does not convert an std::nullptr_t to bool is better than one than does.
...
llvm-svn: 118269
2010-11-05 00:12:09 +00:00
Anders Carlsson
a95069c52f
It's OK to use nullptr in relational operators if the other side is a null pointer constant.
...
llvm-svn: 118234
2010-11-04 03:17:43 +00:00
Daniel Dunbar
53c9ac30f9
tests: Use -ffreestanding when including stdint.h, to avoid platform dependencies.
...
llvm-svn: 113301
2010-09-07 22:54:28 +00:00
Eli Friedman
7827520ce8
Initialization improvements: addition of string initialization and a few
...
small bug fixes in SemaInit, switch over SemaDecl to use it more often, and
change a bunch of diagnostics which are different with the new initialization
code.
llvm-svn: 91767
2009-12-19 08:11:05 +00:00
Daniel Dunbar
8fbe78f6fc
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).
llvm-svn: 91446
2009-12-15 20:14:24 +00:00
Sebastian Redl
576fd424df
Implement C++0x nullptr.
...
llvm-svn: 71405
2009-05-10 18:38:11 +00:00