llvm-project/clang/test/CXX/drs
Richard Smith d1446017f3 DR458: Search template parameter scopes in the right order.
C++ unqualified name lookup searches template parameter scopes
immediately after finishing searching the entity the parameters belong
to. (Eg, for a class template, you search the template parameter scope
after looking in that class template and its base classes and before
looking in the scope containing the class template.) This is complicated
by the fact that scope lookup within a template parameter scope looks in
a different sequence of places prior to reaching the end of the
declarator-id in the template declaration.

We used to approximate the proper lookup rule with a hack in the scope /
decl context walk inside name lookup. Now we instead compute the lookup
parent for each template parameter scope.

In order to get this right, we now make sure to enter a distinct Scope
for each template parameter scope, and make sure to re-enter the
enclosing class scopes properly when handling delay-parsed regions
within a class.
2020-06-23 17:14:33 -07:00
..
dr0xx.cpp PR23029 / C++ DR2233: Allow expanded parameter packs to follow 2020-06-02 13:48:59 -07:00
dr1xx.cpp PR23029 / C++ DR2233: Allow expanded parameter packs to follow 2020-06-02 13:48:59 -07:00
dr2xx.cpp Add -std=c++20 flag, replace C++2a with C++20 throughout the Clang 2020-02-18 16:16:37 -08:00
dr3xx.cpp [AST] Dont invalide VarDecl even the default initializaiton is failed. 2020-04-14 12:58:48 +02:00
dr4xx.cpp DR458: Search template parameter scopes in the right order. 2020-06-23 17:14:33 -07:00
dr5xx.cpp DR674, PR38883, PR40238: Qualified friend lookup should look for a 2019-01-07 06:00:46 +00:00
dr6xx.cpp Add -std=c++20 flag, replace C++2a with C++20 throughout the Clang 2020-02-18 16:16:37 -08:00
dr7xx.cpp Undo removal of test for dr777. 2020-06-02 14:19:42 -07:00
dr9xx.cpp [clang][NFC] Mark CWG 974 and 1814 (default argument in a... 2020-06-13 13:49:07 +01:00
dr10xx.cpp When substituting previously-checked template arguments into a template 2018-03-08 01:07:33 +00:00
dr11xx.cpp
dr12xx.cpp DR1213: Ignore implicit conversions when determining if an operand of an 2018-06-27 20:29:32 +00:00
dr13xx.cpp Always deduce the lengths of contained parameter packs when deducing a 2020-01-06 17:24:29 -08:00
dr14xx.cpp [clang][NFC] Mark CWG 1443 (Default arguments and non-static data members)... 2020-06-13 13:59:54 +01:00
dr15xx.cpp Fix parsing of enum-base to follow C++11 rules. 2020-05-08 19:32:00 -07:00
dr16xx.cpp When diagnosing an ambiguity, only note the candidates that contribute 2019-10-24 14:58:29 -07:00
dr17xx.cpp DR1753: Don't permit x.NS::~T() as a pseudo-destructor name. 2020-01-24 18:53:50 -08:00
dr18xx.cpp [clang][NFC] Mark CWG 974 and 1814 (default argument in a... 2020-06-13 13:49:07 +01:00
dr19xx.cpp Fix parsing of enum-base to follow C++11 rules. 2020-05-08 19:32:00 -07:00
dr20xx.cpp [clang] CWG 2082 and 2346: loosen the restrictions on parameters and local variables in default arguments. 2020-06-11 12:41:08 +01:00
dr21xx.cpp Fix parsing of enum-base to follow C++11 rules. 2020-05-08 19:32:00 -07:00
dr22xx.cpp PR23029 / C++ DR2233: Allow expanded parameter packs to follow 2020-06-02 13:48:59 -07:00
dr23xx.cpp [clang] CWG 2082 and 2346: loosen the restrictions on parameters and local variables in default arguments. 2020-06-11 12:41:08 +01:00
dr118.cpp
dr158.cpp
dr412.cpp
dr1748.cpp