diff options
| author | Bruno Ricci <riccibrun@gmail.com> | 2018-08-16 10:33:36 +0000 |
|---|---|---|
| committer | Bruno Ricci <riccibrun@gmail.com> | 2018-08-16 10:33:36 +0000 |
| commit | 08672ecef9122d4aa1e96cada56e4ed8c7019908 (patch) | |
| tree | 76070f6c0f2396030564ba5cbbccc3da378e80a8 /clang/lib | |
| parent | e3b87c3df5df9b0472e761e4e772d3d3853995f6 (diff) | |
| download | bcm5719-llvm-08672ecef9122d4aa1e96cada56e4ed8c7019908.tar.gz bcm5719-llvm-08672ecef9122d4aa1e96cada56e4ed8c7019908.zip | |
[AST] Pack the unsigned of SubstTemplateTypeParmPackType into Type
The bit-fields of Type have enough space for the member
unsigned NumArgs of SubstTemplateTypeParmPackType.
Reviewed By: erichkeane
Differential Revision: https://reviews.llvm.org/D50713
llvm-svn: 339861
Diffstat (limited to 'clang/lib')
| -rw-r--r-- | clang/lib/AST/Type.cpp | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/clang/lib/AST/Type.cpp b/clang/lib/AST/Type.cpp index bd1ac3c5aaf..7dc01b2f2f3 100644 --- a/clang/lib/AST/Type.cpp +++ b/clang/lib/AST/Type.cpp @@ -3285,11 +3285,12 @@ SubstTemplateTypeParmPackType(const TemplateTypeParmType *Param, QualType Canon, const TemplateArgument &ArgPack) : Type(SubstTemplateTypeParmPack, Canon, true, true, false, true), - Replaced(Param), - Arguments(ArgPack.pack_begin()), NumArguments(ArgPack.pack_size()) {} + Replaced(Param), Arguments(ArgPack.pack_begin()) { + SubstTemplateTypeParmPackTypeBits.NumArgs = ArgPack.pack_size(); +} TemplateArgument SubstTemplateTypeParmPackType::getArgumentPack() const { - return TemplateArgument(llvm::makeArrayRef(Arguments, NumArguments)); + return TemplateArgument(llvm::makeArrayRef(Arguments, getNumArgs())); } void SubstTemplateTypeParmPackType::Profile(llvm::FoldingSetNodeID &ID) { |

