diff options
author | David Majnemer <david.majnemer@gmail.com> | 2014-03-05 18:55:38 +0000 |
---|---|---|
committer | David Majnemer <david.majnemer@gmail.com> | 2014-03-05 18:55:38 +0000 |
commit | f27217ffaff36ec12419e86713ee534c374bf2c5 (patch) | |
tree | af315f3b29171138b0dff4c653bb35258f76a259 /clang/lib/Sema/SemaDecl.cpp | |
parent | 7f4a52eaee2e97d55664e07c1d9a76797e512ba9 (diff) | |
download | bcm5719-llvm-f27217ffaff36ec12419e86713ee534c374bf2c5.tar.gz bcm5719-llvm-f27217ffaff36ec12419e86713ee534c374bf2c5.zip |
AST: Remove layering violation with Sema
Scope lives in Sema and cannot be used in AST. Shuffle things around.
llvm-svn: 202993
Diffstat (limited to 'clang/lib/Sema/SemaDecl.cpp')
-rw-r--r-- | clang/lib/Sema/SemaDecl.cpp | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/clang/lib/Sema/SemaDecl.cpp b/clang/lib/Sema/SemaDecl.cpp index 71a79b22616..9870ab1e542 100644 --- a/clang/lib/Sema/SemaDecl.cpp +++ b/clang/lib/Sema/SemaDecl.cpp @@ -3168,7 +3168,8 @@ static void HandleTagNumbering(Sema &S, const TagDecl *Tag, Scope *TagScope) { return; MangleNumberingContext &MCtx = S.Context.getManglingNumberContext(Tag->getParent()); - S.Context.setManglingNumber(Tag, MCtx.getManglingNumber(Tag, TagScope)); + S.Context.setManglingNumber( + Tag, MCtx.getManglingNumber(Tag, TagScope->getMSLocalManglingNumber())); return; } @@ -3177,7 +3178,9 @@ static void HandleTagNumbering(Sema &S, const TagDecl *Tag, Scope *TagScope) { if (MangleNumberingContext *MCtx = S.getCurrentMangleNumberContext(Tag->getDeclContext(), ManglingContextDecl)) { - S.Context.setManglingNumber(Tag, MCtx->getManglingNumber(Tag, TagScope)); + S.Context.setManglingNumber( + Tag, + MCtx->getManglingNumber(Tag, TagScope->getMSLocalManglingNumber())); } } @@ -3816,7 +3819,7 @@ Decl *Sema::BuildAnonymousStructOrUnion(Scope *S, DeclSpec &DS, if (MangleNumberingContext *MCtx = getCurrentMangleNumberContext(NewVD->getDeclContext(), ManglingContextDecl)) { - Context.setManglingNumber(NewVD, MCtx->getManglingNumber(NewVD, S)); + Context.setManglingNumber(NewVD, MCtx->getManglingNumber(NewVD, S->getMSLocalManglingNumber())); Context.setStaticLocalNumber(NewVD, MCtx->getStaticLocalNumber(NewVD)); } } @@ -5482,7 +5485,8 @@ Sema::ActOnVariableDeclarator(Scope *S, Declarator &D, DeclContext *DC, if (MangleNumberingContext *MCtx = getCurrentMangleNumberContext(NewVD->getDeclContext(), ManglingContextDecl)) { - Context.setManglingNumber(NewVD, MCtx->getManglingNumber(NewVD, S)); + Context.setManglingNumber( + NewVD, MCtx->getManglingNumber(NewVD, S->getMSLocalManglingNumber())); Context.setStaticLocalNumber(NewVD, MCtx->getStaticLocalNumber(NewVD)); } } |