summaryrefslogtreecommitdiffstats
path: root/clang/test/SemaTemplate/dependent-names.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Weaken an assertion that isn't true for invalid input.Nico Weber2015-01-301-0/+5
| | | | llvm-svn: 227540
* PR19936: Fix a really dumb bug where we would profile dependent operator* ↵Richard Smith2014-06-051-0/+15
| | | | | | expressions incorrectly. llvm-svn: 210296
* Revert "Don't require -re suffix on -verify directives with regexes."Alp Toker2013-12-141-2/+2
| | | | | | | | | | 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-2/+2
| | | | | | Differential Revision: http://llvm-reviews.chandlerc.com/D2392 llvm-svn: 197295
* Change semantics of regex expectations in the diagnostic verifierHans Wennborg2013-12-111-2/+2
| | | | | | | | | | | | | | | | | | | | | | | 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
* Don't suggest putting 'operator new' or 'operator delete' in a namespace to ↵Richard Smith2013-06-121-0/+12
| | | | | | fix a two-phase lookup issue. That's not permitted. llvm-svn: 183874
* Implement DR85: Redeclaration of member is forbiddenDavid Majnemer2013-06-111-1/+0
| | | | | | | Disallow the existence of a declaration of a member class that isn't a forward declaration before it's definition. llvm-svn: 183722
* Don't treat a non-deduced 'auto' type as being type-dependent. Instead, thereRichard Smith2013-04-301-1/+20
| | | | | | | | are now two distinct canonical 'AutoType's: one is the undeduced 'auto' placeholder type, and the other is a deduced-but-dependent type. All deduced-to-a-non-dependent-type cases are still non-canonical. llvm-svn: 180789
* PR14695: Fix assert from bad cast<>. Not every namespace is a NamespaceDecl; ↵Richard Smith2012-12-221-0/+9
| | | | | | it might instead be a TranslationUnitDecl. llvm-svn: 170976
* When filtering the list of associated namespaces so that we don't suggest peopleNick Lewycky2012-11-131-0/+14
| | | | | | | add functions to namespace 'std', also filter out namespaces with '__' anywhere in the name. llvm-svn: 167786
* Rework my implementation of circular-reference finding to not useDouglas Gregor2012-11-101-0/+3
| | | | | | | CXXRecordDecl::forallBases, which does *not* do what I need. Fixes the failure introduced in r167651. llvm-svn: 167668
* Diagnostic circular inheritance involving dependent base classes. WeDouglas Gregor2012-11-101-2/+21
| | | | | | | would have diagnosed this at instantiation time anyway, if only we didn't hang on all of these test cases. Fixes <rdar://problem/12629723> llvm-svn: 167651
* When resolving default template arguments, it should be done in the ↵Argyrios Kyrtzidis2012-04-251-0/+32
| | | | | | | | | | declaration context of the template what we are going to instantiate. Fixes various crashes of rdar://11242625 & http://llvm.org/PR11421. llvm-svn: 155576
* Update all tests other than Driver/std.cpp to use -std=c++11 rather thanRichard Smith2011-10-131-1/+1
| | | | | | -std=c++0x. Patch by Ahmed Charles! llvm-svn: 141900
* Fix PR10187: when diagnosing a two-phase-lookup-related failure, don't ↵Richard Smith2011-06-261-0/+30
| | | | | | assert that any names we find are valid candidates for the call. llvm-svn: 133898
* Hyphenate "argument-dependent".Jay Foad2011-06-141-6/+6
| | | | llvm-svn: 132989
* Fix PR10053: Improve diagnostics and error recovery for code which some ↵Richard Smith2011-06-051-1/+134
| | | | | | compilers incorrectly accept due to a lack of proper support for two-phase name lookup. llvm-svn: 132672
* Improve our handling of the current instantiation for qualifiedDouglas Gregor2011-02-041-0/+27
| | | | | | | | | | | | | | id-expression, e.g., CurrentClass<T>::member Previously, if CurrentClass<T> was dependent and not complete, we would treat it as a dependent-scoped declaration reference expression, even if CurrentClass<T> referred to the current instantiation. Fixes PR8966 and improves type checking of templates. llvm-svn: 124867
* Turn access control on by default in -cc1.John McCall2010-04-091-0/+4
| | | | | | | | Remove -faccess-control from -cc1; add -fno-access-control. Make the driver pass -fno-access-control by default. Update a bunch of tests to be correct under access control. llvm-svn: 100880
* Shift things around so that it's easier to recover from a missingJohn McCall2009-12-161-2/+1
| | | | | | | | | function in a C++ call using an arbitrary call-expression type. Actually exploit this to fix the recovery implemented earlier. The diagnostic is still iffy, though. llvm-svn: 91538
* Introduce a centralized routine in Sema for diagnosing failed lookups (whenJohn McCall2009-12-161-0/+15
| | | | | | | | | used as expressions). In dependent contexts, try to recover by doing a lookup in previously-dependent base classes. We get better diagnostics out, but unfortunately the recovery fails: we need to turn it into a method call expression, not a bare call expression. Thus this is still a WIP. llvm-svn: 91525
* Update tests to use %clang_cc1 instead of 'clang-cc' or 'clang -cc1'.Daniel Dunbar2009-12-151-1/+1
| | | | | | | | | - 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
* Fix some major problems dealing with dependently-qualified names in implicitJohn McCall2009-11-241-0/+70
| | | | | | member-reference contexts. Fixes some clang-on-clang asserts. llvm-svn: 89796
* Fix PR4365.Anders Carlsson2009-06-121-0/+16
llvm-svn: 73240
OpenPOWER on IntegriCloud