diff options
author | Richard Smith <richard@metafoo.co.uk> | 2020-06-18 17:45:55 -0700 |
---|---|---|
committer | Richard Smith <richard@metafoo.co.uk> | 2020-06-18 17:52:13 -0700 |
commit | c36b03e32556a966e584386ac7dbb110bc7e4bc5 (patch) | |
tree | 6f87721e4f7c1ed6f187f57179a5558e8c7cd4a6 /llvm/lib/Target/WebAssembly/Disassembler/WebAssemblyDisassembler.cpp | |
parent | 9dda41e43327fd73ed9a7cc205ef0e222cc8726e (diff) | |
download | llvm-c36b03e32556a966e584386ac7dbb110bc7e4bc5.zip llvm-c36b03e32556a966e584386ac7dbb110bc7e4bc5.tar.gz llvm-c36b03e32556a966e584386ac7dbb110bc7e4bc5.tar.bz2 |
The type of a reference to a non-type template parameter pack should
not be a pack expansion type.
Using a pack expansion type for a pack declaration makes sense, but
general expressions should never have pack expansion types. If we have a
pack `T *...V`, then the type of `V` is the type `T *`, which contains
an unexpanded pack, and is a pointer type.
This allows us to better diagnose issues where a template is invalid due
to some non-dependent portion of a dependent type of a non-type template
parameter pack.
Diffstat (limited to 'llvm/lib/Target/WebAssembly/Disassembler/WebAssemblyDisassembler.cpp')
0 files changed, 0 insertions, 0 deletions