llvm-project/clang/test
Corentin Jabot 3784e8ccfb [Clang] Fix Unevaluated Lambdas
Unlike other types, when lambdas are instanciated,
they are recreated from scratch.
When an unevaluated lambdas appear in the type of a function,
parameter it is instanciated in the wrong declaration context,
as parameters are transformed before the function.

To support lambda in function parameters, we try to
compute whether they are dependant without looking at the
declaration context.

This is a short term stopgap solution to avoid clang
iceing. A better fix might be to inject some kind of
transparent declaration with correctly computed dependency
for function parameters, variable templates, etc.

Fixes https://github.com/llvm/llvm-project/issues/50376
Fixes https://github.com/llvm/llvm-project/issues/51414
Fixes https://github.com/llvm/llvm-project/issues/51416
Fixes https://github.com/llvm/llvm-project/issues/51641
Fixes https://github.com/llvm/llvm-project/issues/54296

Reviewed By: aaron.ballman

Differential Revision: https://reviews.llvm.org/D121532
2022-03-25 19:16:45 +01:00
..
APINotes
ARCMT Use functions with prototypes when appropriate; NFC 2022-02-17 15:33:50 -05:00
AST [clang] Produce a "multiversion" annotation in textual AST output. 2022-03-21 13:39:44 -04:00
ASTMerge Use functions with prototypes when appropriate; NFC 2022-02-09 09:11:49 -05:00
Analysis [OpenMP] Initial parsing/sema for the 'omp target parallel loop' construct 2022-03-24 09:19:00 -07:00
CXX [Clang][NFC] Cleanup dcl.constexpr/p3 tests 2022-03-23 15:37:48 +01:00
ClangScanDeps Revert "[clang][deps] NFC: De-duplicate clang-cl tests" 2022-03-24 18:10:08 +00:00
CodeCompletion Use functions with prototypes when appropriate; NFC 2022-02-09 09:11:49 -05:00
CodeGen [Clang,TBAA] Use pattern for metadata reference in test. 2022-03-25 18:12:39 +00:00
CodeGenCUDA [CUDA][HIP] Fix hostness check with -fopenmp 2022-03-24 15:19:47 -04:00
CodeGenCUDASPIRV [CUDA][SPIRV] Assign global address space to CUDA kernel arguments 2022-02-24 20:51:43 -08:00
CodeGenCXX DebugInfo: Classify noreturn function types as non-reconstructible 2022-03-24 18:53:14 +00:00
CodeGenCoroutines [Clang] Rename `disable-noundef-analysis` flag to `-[no-]enable-noundef-analysis` 2022-02-18 17:02:41 +09:00
CodeGenHIP [HIPSPV] Fix literals are mapped to Generic address space 2022-02-05 17:26:52 -05:00
CodeGenObjC Add -Wno-strict-prototypes to C tests; NFC 2022-02-24 15:30:30 -05:00
CodeGenObjCXX [Clang] Rename `disable-noundef-analysis` flag to `-[no-]enable-noundef-analysis` 2022-02-18 17:02:41 +09:00
CodeGenOpenCL [AMDGPU] Support gfx940 smfmac instructions 2022-03-24 12:40:42 -07:00
CodeGenOpenCLCXX [OpenCL] Add support of __opencl_c_device_enqueue feature macro. 2022-01-27 14:25:59 +03:00
CodeGenSYCL [SYCL] Disallow explicit casts between mismatching address spaces 2022-02-07 11:57:30 +03:00
Coverage Add -Wno-strict-prototypes to C tests; NFC 2022-02-24 15:30:30 -05:00
CoverageMapping [InstrProfiling] No runtime hook for unused funcs 2022-03-25 17:03:03 +00:00
Driver [AVR] Add more devices 2022-03-25 01:43:41 +00:00
ExtractAPI [clang][extract-api] Enable processing of multiple headers 2022-03-23 19:05:19 +00:00
FixIt [Clang] Support multiple attributes in a single pragma 2022-03-18 12:20:41 +00:00
Format
Frontend [clang][driver] Disable non-functional --version option for clang -cc1 2022-03-25 19:04:27 +01:00
Headers [CodeGen] Inline _byteswap_* builtins. 2022-03-16 16:18:51 -07:00
Import
Index [clang] Remove stdint.h include from a test 2022-03-21 14:30:12 -04:00
Integration Use functions with prototypes when appropriate; NFC 2022-02-09 17:16:10 -05:00
InterfaceStubs Use functions with prototypes when appropriate; NFC 2022-02-09 17:16:10 -05:00
Interpreter
Layout
Lexer [Clang][C++2b] P2242R3: Non-literal variables [...] in constexpr 2022-03-22 19:51:19 +01:00
LibClang
Misc [AVR] Add more devices 2022-03-25 01:43:41 +00:00
Modules [C++20][Modules][HU 1/5] Introduce header units as a module type. 2022-03-25 09:17:14 +00:00
OpenMP [OpenMP] Replace device kernel linkage with weak_odr 2022-03-25 11:29:15 -04:00
PCH [Clang] Work with multiple pragmas weak before definition 2022-03-24 20:17:49 -04:00
Parser [clang] Improve diagnostic for reopened inline namespace 2022-03-23 22:30:45 +01:00
ParserSYCL
Preprocessor [clang][lex] Fix failures with Microsoft header search rules 2022-03-23 14:49:17 +01:00
Profile Revert "Revert "Revert "[misexpect] Re-implement MisExpect Diagnostics""" 2022-03-18 00:21:33 +00:00
Refactor Use functions with prototypes when appropriate; NFC 2022-02-12 07:25:06 -05:00
Rewriter Use functions with prototypes when appropriate; NFC 2022-02-12 07:25:06 -05:00
Sema Fix a bug where an extended vector of __fp16 was being converted to a 2022-03-24 18:06:10 -07:00
SemaCUDA [CUDA][HIP] Fix hostness check with -fopenmp 2022-03-24 15:19:47 -04:00
SemaCXX [Clang] Fix Unevaluated Lambdas 2022-03-25 19:16:45 +01:00
SemaObjC Clang `unused-but-set-variable` warnings should not apply to `__attribute__((objc_precise_lifetime))` Objective-C pointers 2022-02-24 14:26:05 -08:00
SemaObjCXX Revert "[clang] roll-forward "[clang] Mark `trivial_abi` types as "trivially relocatable""." 2022-03-23 04:54:00 -07:00
SemaOpenCL [AMDGPU] Support gfx940 smfmac instructions 2022-03-24 12:40:42 -07:00
SemaOpenCLCXX [OpenCL] Add support of __opencl_c_device_enqueue feature macro. 2022-01-27 14:25:59 +03:00
SemaSYCL [SYCL] Disallow explicit casts between mismatching address spaces 2022-02-07 11:57:30 +03:00
SemaTemplate [clang] Propagate requires-clause from constructor template to implicit deduction guide 2022-03-25 02:46:22 -04:00
TableGen
Templight [Templight] Don't display empty strings for names of unnamed template parameters 2022-01-24 16:37:11 +01:00
Tooling
Unit Use lit_config.substitute instead of foo % lit_config.params everywhere 2022-03-16 09:57:41 +01:00
VFS Use functions with prototypes when appropriate; NFC 2022-02-12 07:25:06 -05:00
clang-rename
utils/update_cc_test_checks Reapply [Utils] Fix %S substitution 2022-03-21 15:15:34 +01:00
.clang-format
CMakeLists.txt Reapply [pseudo] Move pseudoparser from clang to clang-tools-extra" 2022-03-16 01:10:55 +01:00
TestRunner.sh
cxx-sections.data
lit.cfg.py [clang][deps] Create lit substitution for deps-to-rsp 2022-03-23 15:42:10 +01:00
lit.site.cfg.py.in Use lit_config.substitute instead of foo % lit_config.params everywhere 2022-03-16 09:57:41 +01:00
make_test_dirs.pl