summaryrefslogtreecommitdiffstats
path: root/clang/lib
diff options
context:
space:
mode:
authorBruno Ricci <riccibrun@gmail.com>2018-08-16 10:33:36 +0000
committerBruno Ricci <riccibrun@gmail.com>2018-08-16 10:33:36 +0000
commit08672ecef9122d4aa1e96cada56e4ed8c7019908 (patch)
tree76070f6c0f2396030564ba5cbbccc3da378e80a8 /clang/lib
parente3b87c3df5df9b0472e761e4e772d3d3853995f6 (diff)
downloadbcm5719-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.cpp7
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) {
OpenPOWER on IntegriCloud