diff options
Diffstat (limited to 'clang/lib/Serialization/ASTWriterStmt.cpp')
-rw-r--r-- | clang/lib/Serialization/ASTWriterStmt.cpp | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/clang/lib/Serialization/ASTWriterStmt.cpp b/clang/lib/Serialization/ASTWriterStmt.cpp index 5382b4af922..942485f209c 100644 --- a/clang/lib/Serialization/ASTWriterStmt.cpp +++ b/clang/lib/Serialization/ASTWriterStmt.cpp @@ -297,6 +297,18 @@ void ASTStmtWriter::VisitMSAsmStmt(MSAsmStmt *S) { Code = serialization::STMT_MSASM; } +void ASTStmtWriter::VisitMSLateParsedCompoundStmt(MSLateParsedCompoundStmt *S) { + VisitStmt(S); + Record.push_back(S->tokens().size()); + Record.AddSourceLocation(S->getLocStart()); + Record.AddSourceLocation(S->getLocEnd()); + Record.AddString(S->getStringRepresentation()); + for (auto &Tok : S->tokens()) + Writer.AddToken(Tok, Record.getRecordData()); + + Code = serialization::STMT_MS_LATE_PARSED_COMPOUND; +} + void ASTStmtWriter::VisitCoroutineBodyStmt(CoroutineBodyStmt *S) { // FIXME: Implement coroutine serialization. llvm_unreachable("unimplemented"); |