aboutsummaryrefslogtreecommitdiff
path: root/lib/Sema
diff options
context:
space:
mode:
Diffstat (limited to 'lib/Sema')
-rw-r--r--lib/Sema/SemaStmt.cpp3
-rw-r--r--lib/Sema/TreeTransform.h4
2 files changed, 5 insertions, 2 deletions
diff --git a/lib/Sema/SemaStmt.cpp b/lib/Sema/SemaStmt.cpp
index 4612930d45..718a7e6b53 100644
--- a/lib/Sema/SemaStmt.cpp
+++ b/lib/Sema/SemaStmt.cpp
@@ -2748,13 +2748,14 @@ StmtResult Sema::ActOnAsmStmt(SourceLocation AsmLoc, bool IsSimple,
}
StmtResult Sema::ActOnMSAsmStmt(SourceLocation AsmLoc,
+ SmallVectorImpl<Token> &AsmToks,
std::string &AsmString,
SourceLocation EndLoc) {
// MS-style inline assembly is not fully supported, so emit a warning.
Diag(AsmLoc, diag::warn_unsupported_msasm);
MSAsmStmt *NS =
- new (Context) MSAsmStmt(Context, AsmLoc, AsmString, EndLoc);
+ new (Context) MSAsmStmt(Context, AsmLoc, AsmToks, AsmString, EndLoc);
return Owned(NS);
}
diff --git a/lib/Sema/TreeTransform.h b/lib/Sema/TreeTransform.h
index 0dd9d9c191..71af263642 100644
--- a/lib/Sema/TreeTransform.h
+++ b/lib/Sema/TreeTransform.h
@@ -1185,9 +1185,10 @@ public:
/// By default, performs semantic analysis to build the new statement.
/// Subclasses may override this routine to provide different behavior.
StmtResult RebuildMSAsmStmt(SourceLocation AsmLoc,
+ SmallVectorImpl<Token> &AsmToks,
std::string &AsmString,
SourceLocation EndLoc) {
- return getSema().ActOnMSAsmStmt(AsmLoc, AsmString, EndLoc);
+ return getSema().ActOnMSAsmStmt(AsmLoc, AsmToks, AsmString, EndLoc);
}
/// \brief Build a new Objective-C \@try statement.
@@ -5611,6 +5612,7 @@ StmtResult
TreeTransform<Derived>::TransformMSAsmStmt(MSAsmStmt *S) {
// No need to transform the asm string literal.
return getDerived().RebuildMSAsmStmt(S->getAsmLoc(),
+ S->getAsmToks(),
*S->getAsmString(),
S->getEndLoc());
}