diff options
author | Benjamin Kramer <benny.kra@googlemail.com> | 2015-04-02 12:43:31 +0000 |
---|---|---|
committer | Benjamin Kramer <benny.kra@googlemail.com> | 2015-04-02 12:43:31 +0000 |
commit | 3ebba5237ee09ae4e5b2e2d39bda87d664a0f3b7 (patch) | |
tree | cbf52bcf0df26fea3b1ef8cd2a46bf706eec8fae /clang/lib | |
parent | 1d4ffd74c167467b7659d560d3f7b150fd931fbb (diff) | |
download | bcm5719-llvm-3ebba5237ee09ae4e5b2e2d39bda87d664a0f3b7.tar.gz bcm5719-llvm-3ebba5237ee09ae4e5b2e2d39bda87d664a0f3b7.zip |
Partially revert "Replace custom alignment enforcement with LLVM_ALIGNAS."
MSVC 2013 can't even parse __declspec(align(sizeof(foo))). We'll have to
wait until MSVC 2015 for this.
This partially reverts commit r233911.
llvm-svn: 233912
Diffstat (limited to 'clang/lib')
-rw-r--r-- | clang/lib/AST/Decl.cpp | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/clang/lib/AST/Decl.cpp b/clang/lib/AST/Decl.cpp index b4410538f76..3efd24f21f9 100644 --- a/clang/lib/AST/Decl.cpp +++ b/clang/lib/AST/Decl.cpp @@ -3103,11 +3103,13 @@ FunctionDecl::setDependentTemplateSpecialization(ASTContext &Context, DependentFunctionTemplateSpecializationInfo:: DependentFunctionTemplateSpecializationInfo(const UnresolvedSetImpl &Ts, const TemplateArgumentListInfo &TArgs) - : NumTemplates(Ts.size()), NumArgs(TArgs.size()), - AngleLocs(TArgs.getLAngleLoc(), TArgs.getRAngleLoc()) { + : AngleLocs(TArgs.getLAngleLoc(), TArgs.getRAngleLoc()) { static_assert(sizeof(*this) % llvm::AlignOf<void *>::Alignment == 0, "Trailing data is unaligned!"); + d.NumTemplates = Ts.size(); + d.NumArgs = TArgs.size(); + FunctionTemplateDecl **TsArray = const_cast<FunctionTemplateDecl**>(getTemplates()); for (unsigned I = 0, E = Ts.size(); I != E; ++I) |