summaryrefslogtreecommitdiffstats
path: root/clang/test/CXX/drs
Commit message (Collapse)AuthorAgeFilesLines
...
* Move DR532 test where it belongs.Nikola Smiljanic2014-06-031-0/+16
| | | | llvm-svn: 210064
* Revert "Fix the undefined-but-used odr-use marker (DR48)"Alp Toker2014-06-011-3/+4
| | | | | | | | Wrong patch got committed (this one isn't ready for prime time). This reverts commit r209996. llvm-svn: 209997
* Fix the undefined-but-used odr-use marker (DR48)Alp Toker2014-06-011-4/+3
| | | | | | | | | | | | | We should treat tentative definitions as undefined for the purpose of ODR-use linkage checking. This broke somewhere around r149731 when tests were disabled. Note that test coverage for these diagnostics is generally lacking due to a separate issue (PR19910: Don't suppress unused/undefined warnings when there are errors). llvm-svn: 209996
* Sema: Implement DR244David Majnemer2014-05-211-4/+9
| | | | | | | | | | | | | | | | Summary: Naming the destructor using a typedef-name for the class-name is well-formed. This fixes PR19620. Reviewers: rsmith, doug.gregor Subscribers: cfe-commits Differential Revision: http://reviews.llvm.org/D3583 llvm-svn: 209319
* Correct incoherent function versus function template partial ordering for ↵Richard Smith2014-05-171-1/+9
| | | | | | conversion operators (the comparison could claim that two conversion operators are both better than each other). Actually implement DR495, rather than passing its test by chance because the declarations happened to be in the "lucky" order. llvm-svn: 209054
* clang/test/CXX/drs/dr4xx.cpp: Use env(1) to satisfy lit internal runner.NAKAMURA Takumi2014-05-121-3/+3
| | | | llvm-svn: 208532
* disable asan's detect_stack_use_after_return when running CXX/drs/dr4xx.cpp ↵Kostya Serebryany2014-05-121-3/+3
| | | | | | (temporary workaround for PR19722); This should make the asan bootstrap bot green again llvm-svn: 208521
* Revert "Sema: Implement DR244"David Majnemer2014-05-031-2/+3
| | | | | | | | This was accidentally committed. This reverts commit r207892. llvm-svn: 207893
* Sema: Implement DR244David Majnemer2014-05-031-3/+2
| | | | | | | | | Naming the destructor using a typedef-name for the class-name is well-formed. This fixes PR19620. llvm-svn: 207892
* Sema: Implement DR477David Majnemer2014-04-301-3/+3
| | | | | | | | | | | | Summary: Friend declarations shouldn't mention explicit or virtual. Reviewers: rsmith Subscribers: cfe-commits Differential Revision: http://reviews.llvm.org/D3562 llvm-svn: 207682
* Tests for DR501-525.Richard Smith2014-04-132-1/+182
| | | | llvm-svn: 206123
* More tests for DR1.Richard Smith2014-04-011-2/+18
| | | | llvm-svn: 205339
* Add failing testcase for DR305. Looks like we didn't implement the resolutionRichard Smith2014-04-011-1/+20
| | | | | | here in the simple-template-id case. llvm-svn: 205273
* Sema: Implement DR317David Majnemer2014-03-301-5/+5
| | | | | | | | | | | | | | | Summary: Declaring a function as inline after it has been defined is in violation of [dcl.fct.spec]p4. The program would get a strong definition instead of getting a function with linkonce_odr linkage. Reviewers: rsmith CC: cfe-commits Differential Revision: http://llvm-reviews.chandlerc.com/D3220 llvm-svn: 205129
* Tests for dr475-dr500.Richard Smith2014-03-302-0/+364
| | | | llvm-svn: 205127
* Tests for DR450-475.Richard Smith2014-03-191-0/+230
| | | | llvm-svn: 204217
* Remove 'REQUIRES: LP64' from these tests and use a more targeted fix.Richard Smith2014-03-182-4/+5
| | | | llvm-svn: 204096
* Remove unused variable from test.Richard Smith2014-03-171-1/+1
| | | | llvm-svn: 204051
* clang/test/CXX/drs: Add "REQUIRES:LP64" to a couple of tests in r204033. ↵NAKAMURA Takumi2014-03-172-0/+2
| | | | | | [PR8833] llvm-svn: 204038
* Tests for DR400-450.Richard Smith2014-03-172-0/+589
| | | | llvm-svn: 204033
* Tests for DR389-399.Richard Smith2014-03-131-0/+238
| | | | llvm-svn: 203771
* DR1346: a parenthesized braced-init-list cannot be used as the initializer whenRichard Smith2014-03-121-0/+29
| | | | | | performing auto type deduction. llvm-svn: 203683
* Tests for DR381-388.Richard Smith2014-03-111-0/+102
| | | | llvm-svn: 203549
* Replace "can not" with "cannot" in diagnostics messages.Ismail Pazarbasi2014-03-071-4/+4
| | | | llvm-svn: 203302
* Tests for DR370-380.Richard Smith2014-03-051-0/+108
| | | | | | | Also promote a couple of Warnings on ill-formed code found by this testing to ExtWarns. llvm-svn: 203021
* Add tests for newly-resolved core issues <= 370.Richard Smith2014-03-044-2/+81
| | | | llvm-svn: 202889
* [Win32 ABI] Defer operator delete checks until vtable is marked usedHans Wennborg2014-02-241-24/+3
| | | | | | | | | | We were previously checking at every destructor declaration, but that was a bit excessive. Since the deleting destructor is emitted with the vtable, do the check when the vtable is marked used. Differential Revision: http://llvm-reviews.chandlerc.com/D2851 llvm-svn: 202046
* Implement DR577David Majnemer2014-02-191-4/+1
| | | | | | | | DR18 previously forebode typedefs to be used as parameter types if they were of type 'void'. DR577 allows 'void' to be used as a function parameter type regardless from where it came. llvm-svn: 201631
* PR13110: Add a -Wignored-qualifiers warning when ignoring a const, volatile, orRichard Smith2014-02-191-4/+4
| | | | | | _Atomic qualifier applied to a reference type. llvm-svn: 201620
* Tests for DR351-370, plus update DR status page to match the latest core ↵Richard Smith2014-02-101-0/+264
| | | | | | issue list. llvm-svn: 201106
* DR101, PR12770: If a function is declared in the same context as aRichard Smith2014-02-061-1/+3
| | | | | | | | using-declaration, and they declare the same function (either because the using-declaration is in the same namespace as the declaration it imports, or because they're both extern "C"), they do not conflict. llvm-svn: 200897
* Tests for DR331-350.Richard Smith2014-02-031-0/+197
| | | | llvm-svn: 200678
* Implement DR329. We already did the right thing here in C++98 mode, but r104014Richard Smith2014-02-032-23/+7
| | | | | | (which implemented the DR) was disabled in C++11. llvm-svn: 200673
* Tests for DR321-330.Richard Smith2014-02-031-0/+85
| | | | llvm-svn: 200672
* Tests for DR301-320.Richard Smith2014-02-031-1/+220
| | | | llvm-svn: 200671
* PR17052 / DR1560 (+DR1550): In a conditional expression between a glvalue and aRichard Smith2014-01-271-0/+20
| | | | | | | throw-expression, the result is also a glvalue and isn't unnecessarily coerced to a prvalue. llvm-svn: 200189
* Remove the -cxx-abi command-line flag.Hans Wennborg2014-01-141-6/+6
| | | | | | | | | | | | | | | This makes the C++ ABI depend entirely on the target: MS ABI for -win32 triples, Itanium otherwise. It's no longer possible to do weird combinations. To be able to run a test with a specific ABI without constraining it to a specific triple, new substitutions are added to lit: %itanium_abi_triple and %ms_abi_triple can be used to get the current target triple adjusted to the desired ABI. For example, if the test suite is running with the i686-pc-win32 target, %itanium_abi_triple will expand to i686-pc-mingw32. Differential Revision: http://llvm-reviews.chandlerc.com/D2545 llvm-svn: 199250
* Update tests in preparation for using the MS ABI for Win32 targetsHans Wennborg2014-01-131-7/+28
| | | | | | | | | | In preparation for making the Win32 triple imply MS ABI mode, make all tests pass in this mode, or make them use the Itanium mode explicitly. Differential Revision: http://llvm-reviews.chandlerc.com/D2401 llvm-svn: 199130
* Revert "Don't require -re suffix on -verify directives with regexes."Alp Toker2013-12-141-1/+1
| | | | | | | | | | This patch was submitted to the list for review and didn't receive a LGTM. (In fact one explicit objection and one query were raised.) This reverts commit r197295. llvm-svn: 197299
* Don't require -re suffix on -verify directives with regexes.Hans Wennborg2013-12-141-1/+1
| | | | | | Differential Revision: http://llvm-reviews.chandlerc.com/D2392 llvm-svn: 197295
* Change semantics of regex expectations in the diagnostic verifierHans Wennborg2013-12-111-1/+1
| | | | | | | | | | | | | | | | | | | | | | | Previously, a line like // expected-error-re {{foo}} treats the entirety of foo as a regex. This is inconvenient when matching type names containing regex characters. For example, to match "void *(class test8::A::*)(void)" inside such a regex, one would have to type "void \*\(class test8::A::\*\)\(void\)". This patch changes the semantics of expected-error-re to only treat the parts of the directive wrapped in double curly braces as regexes. This avoids the escaping problem and leads to nicer patterns for those cases; see e.g. the change to test/Sema/format-strings-scanf.c. (The balanced search for closing }} of a directive also makes us handle the full directive in test\SemaCXX\constexpr-printing.cpp:41 and :53.) Differential Revision: http://llvm-reviews.chandlerc.com/D2388 llvm-svn: 197092
* Implement DR1460: fix handling of default initializers in unions; don't allowRichard Smith2013-12-101-0/+196
| | | | | | | | | more than one such initializer in a union, make mem-initializers override default initializers for other union members, handle anonymous unions with anonymous struct members better. Fix a couple of semi-related bugs exposed by the tests for same. llvm-svn: 196892
* Implement DR482: namespace members can be redeclared with a qualified nameRichard Smith2013-12-052-4/+37
| | | | | | | | | | within their namespace, and such a redeclaration isn't required to be a definition any more. Update DR status page to say Clang 3.4 instead of SVN and add new Clang 3.5 category (but keep Clang 3.4 yellow for now). llvm-svn: 196481
* Fix several crash-on-invalids when using template-ids that aren'tRichard Smith2013-12-041-1/+26
| | | | | | simple-template-ids (eg, 'operator+<int>') in weird places. llvm-svn: 196333
* Fix buildbot.Richard Smith2013-11-261-1/+1
| | | | llvm-svn: 195703
* Fix test failure on targets where size_t is unsigned int.Richard Smith2013-11-251-1/+1
| | | | llvm-svn: 195673
* Tests for core issues 270-300.Richard Smith2013-11-252-4/+300
| | | | llvm-svn: 195626
* Provide better diagnostic wording for initializers on staticHans Wennborg2013-11-211-3/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | data member definitions when the variable has an initializer in its declaration. For the following code: struct S { static const int x = 42; }; const int S::x = 42; This patch changes the diagnostic from: a.cc:4:14: error: redefinition of 'x' const int S::x = 42; ^ a.cc:2:20: note: previous definition is here static const int x = 42; ^ to: a.cc:4:18: error: static data member 'x' already has an initializer const int S::x = 42; ^ a.cc:2:24: note: previous initialization is here static const int x = 42; ^ Differential Revision: http://llvm-reviews.chandlerc.com/D2235 llvm-svn: 195306
* clang/test/CXX/drs/dr2xx.cpp: Suppress this for targeting LLP64 due to ↵NAKAMURA Takumi2013-11-181-0/+3
| | | | | | | | | | | | __SIZE_TYPE__. Line 559: 'long long' is a C++11 extension Line 566: 'long long' is a C++11 extension Line 674: 'long long' is a C++11 extension See also PR13819. llvm-svn: 195005
* Tests for core issues 251-270.Richard Smith2013-11-181-0/+193
| | | | llvm-svn: 194989
OpenPOWER on IntegriCloud