llvm-project/clang/lib/Index
Hans Wennborg 8ba442bc21 Revert "Following up on PR48517, fix handling of template arguments that refer"
Combined with 'da98651 - Revert "DR2064:
decltype(E) is only a dependent', this change (5a391d3) caused verifier
errors when building Chromium. See https://crbug.com/1168494#c1 for a
reproducer.

Additionally it reverts changes that were dependent on this one, see
below.

> Following up on PR48517, fix handling of template arguments that refer
> to dependent declarations.
>
> Treat an id-expression that names a local variable in a templated
> function as being instantiation-dependent.
>
> This addresses a language defect whereby a reference to a dependent
> declaration can be formed without any construct being value-dependent.
> Fixing that through value-dependence turns out to be problematic, so
> instead this patch takes the approach (proposed on the core reflector)
> of allowing the use of pointers or references to (but not values of)
> dependent declarations inside value-dependent expressions, and instead
> treating template arguments as dependent if they evaluate to a constant
> involving such dependent declarations.
>
> This ends up affecting a bunch of OpenMP tests, due to OpenMP
> imprecisely handling instantiation-dependent constructs, bailing out
> early instead of processing dependent constructs to the extent possible
> when handling the template.
>
> Previously committed as 8c1f2d15b8, and
> reverted because a dependency commit was reverted.

This reverts commit 5a391d38ac.

It also restores clang/test/SemaCXX/coroutines.cpp to its state before
da986511fb.

Revert "[c++20] P1907R1: Support for generalized non-type template arguments of scalar type."

> Previously committed as 9e08e51a20, and
> reverted because a dependency commit was reverted. This incorporates the
> following follow-on commits that were also reverted:
>
> 7e84aa1b81 by Simon Pilgrim
> ed13d8c667 by me
> 95c7b6cadb by Sam McCall
> 430d5d8429 by Dave Zarzycki

This reverts commit 4b574008ae.

Revert "[msabi] Mangle a template argument referring to array-to-pointer decay"

> [msabi] Mangle a template argument referring to array-to-pointer decay
> applied to an array the same as the array itself.
>
> This follows MS ABI, and corrects a regression from the implementation
> of generalized non-type template parameters, where we "forgot" how to
> mangle this case.

This reverts commit 18e093faf7.
2021-01-20 15:55:35 +01:00
..
CMakeLists.txt Index: Remove unused internal header SimpleFormatContext.h, NFC 2020-12-04 15:10:27 -08:00
CommentToXML.cpp Avoid including FileManager.h from SourceManager.h 2020-03-11 13:53:12 -07:00
FileIndexRecord.cpp [clang][nearly-NFC] Remove some superfluous uses of NamedDecl::getNameAsString 2020-08-05 13:54:37 +01:00
FileIndexRecord.h [clang][index-while-building][NFC] FileIndexRecord - Comments, replace auto with type 2019-02-27 21:48:02 +00:00
IndexBody.cpp [clang] Traverse init-captures while indexing 2020-09-22 02:32:09 -04:00
IndexDecl.cpp [clangd] Don't traverse the AST within uninteresting files during indexing 2020-05-26 10:27:28 +02:00
IndexSymbol.cpp [clang][Index] Introduce a TemplateParm SymbolKind 2020-02-14 13:20:34 +01:00
IndexTypeSourceInfo.cpp [clang] Do not consider the template arguments of bases to be bases themselves 2020-09-01 19:18:03 -04:00
IndexingAction.cpp [clangd] Fix crash-bug in preamble indexing when using modules. 2020-08-20 14:19:52 +02:00
IndexingContext.cpp [clang][Index] Fix the incomplete instantiations in libindex. 2020-02-20 14:42:30 +01:00
IndexingContext.h [clang][Index] Enable indexing of Template Type Parameters behind a flag 2019-02-21 09:52:33 +00:00
USRGeneration.cpp Revert "Following up on PR48517, fix handling of template arguments that refer" 2021-01-20 15:55:35 +01:00