aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/MC/MCDisassembler/Disassembler.cpp
diff options
context:
space:
mode:
authorRichard Smith <richard@metafoo.co.uk>2020-01-06 17:16:29 -0800
committerRichard Smith <richard@metafoo.co.uk>2020-01-06 17:24:29 -0800
commit907cefe721437fa8950c1b6c1c028038b175f921 (patch)
tree681bd08696a5f318722817b83694f9827ec2ee77 /llvm/lib/MC/MCDisassembler/Disassembler.cpp
parente93b1ffc8490d943690726370a0e9277fd78520d (diff)
downloadllvm-907cefe721437fa8950c1b6c1c028038b175f921.zip
llvm-907cefe721437fa8950c1b6c1c028038b175f921.tar.gz
llvm-907cefe721437fa8950c1b6c1c028038b175f921.tar.bz2
Always deduce the lengths of contained parameter packs when deducing a
pack expansion. Previously, if all parameter / argument pairs for a pack expansion deduction were non-deduced contexts, we would not deduce the arity of the pack, and could end up deducing a different arity (leading to failures during substitution) or defaulting to an arity of 0 (leading to bad diagnostics about passing the wrong number of arguments to a variadic function). Instead, we now always deduce the arity for all involved packs any time we deduce a pack expansion. This will result in less substitution happening in some cases, which could avoid non-SFINAEable errors, and should generally improve the quality of diagnostics when passing initializer lists to variadic functions.
Diffstat (limited to 'llvm/lib/MC/MCDisassembler/Disassembler.cpp')
0 files changed, 0 insertions, 0 deletions