llvm-project/clang/lib
Richard Smith 4ae5ec8268 Improve support for 'decltype(auto)' in template template parameter matching.
A 'decltype(auto)' parameter can match any other kind of non-type template
parameter, so should be usable in place of any other parameter in a template
template argument. The standard is sadly extremely unclear on how this is
supposed to work, but this seems like the obviously-correct result.

It's less clear whether an 'auto' parameter should be able to match
'decltype(auto)', since the former cannot be used if the latter turns out to be
used for a reference type, but if we disallow that then consistency suggests we
should also disallow 'auto' matching 'T' for the same reason, defeating
intended use cases of the feature.

llvm-svn: 295866
2017-02-22 20:01:55 +00:00
..
ARCMigrate Reapply "IntrusiveRefCntPtr -> std::shared_ptr for CompilerInvocationBase and CodeCompleteConsumer" 2017-01-06 19:49:01 +00:00
AST Remove superfluous initializer. 2017-02-22 14:32:39 +00:00
ASTMatchers Move VariantMatcher's Payload to std::shared_ptr rather than IntrusiveRefCntPtr 2017-01-05 18:51:54 +00:00
Analysis Make helpers static. NFC. 2017-02-11 12:21:17 +00:00
Basic Hook up OpenBSD AArch64 support 2017-02-21 23:13:09 +00:00
CodeGen Call the correct @llvm.objectsize. 2017-02-22 02:35:51 +00:00
Driver Driver: inline a single caller of a function (NFC) 2017-02-19 21:50:40 +00:00
Edit Fix problems in "[OpenCL] Enabling the usage of CLK_NULL_QUEUE as compare operand." 2016-12-23 14:55:49 +00:00
Format [clang-format] Remove unused member variables from BreakableToken 2017-02-21 10:54:50 +00:00
Frontend [c++1z] Mark constexpr lambdas as done on status page and start advertising 2017-02-21 23:58:29 +00:00
FrontendTool unique_ptrify createDriverOptTable 2017-01-13 17:34:15 +00:00
Headers [X86][XOP] Fix type conversion warning in vpcmov generic implementations. 2017-02-18 23:47:34 +00:00
Index [index] Improvde how we handle synthesized ObjC properties and the associated ivars. 2017-02-17 04:49:41 +00:00
Lex Fix for pr31836 - pp_nonportable_path on absolute paths: broken delimiters 2017-02-21 22:30:55 +00:00
Parse PR24440: Do not silently discard a fold-expression appearing as the operand of a cast-expression. 2017-02-15 19:57:10 +00:00
Rewrite [analyzer] Re-apply r283092, attempt no.4, chunk no.4 (last) 2016-10-07 19:25:10 +00:00
Sema Improve support for 'decltype(auto)' in template template parameter matching. 2017-02-22 20:01:55 +00:00
Serialization Fix 'control reaches end of non-void function' warning 2017-02-22 13:21:24 +00:00
StaticAnalyzer [analyzer] Revert 295545. There are buildbot failures. 2017-02-18 16:31:35 +00:00
Tooling clang-format: Make GetStyle return Expected<FormatStyle> instead of FormatStyle 2017-01-17 00:12:27 +00:00
CMakeLists.txt