diff options
Diffstat (limited to 'clang/lib/AST/StmtPrinter.cpp')
-rw-r--r-- | clang/lib/AST/StmtPrinter.cpp | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/clang/lib/AST/StmtPrinter.cpp b/clang/lib/AST/StmtPrinter.cpp index 836f192aeb1..ecf8ed751f5 100644 --- a/clang/lib/AST/StmtPrinter.cpp +++ b/clang/lib/AST/StmtPrinter.cpp @@ -1052,6 +1052,9 @@ void StmtPrinter::VisitPseudoObjectExpr(PseudoObjectExpr *Node) { void StmtPrinter::VisitAtomicExpr(AtomicExpr *Node) { const char *Name = 0; switch (Node->getOp()) { + case AtomicExpr::Init: + Name = "__atomic_init("; + break; case AtomicExpr::Load: Name = "__atomic_load("; break; @@ -1094,7 +1097,8 @@ void StmtPrinter::VisitAtomicExpr(AtomicExpr *Node) { PrintExpr(Node->getVal2()); OS << ", "; } - PrintExpr(Node->getOrder()); + if (Node->getOp() != AtomicExpr::Init) + PrintExpr(Node->getOrder()); if (Node->isCmpXChg()) { OS << ", "; PrintExpr(Node->getOrderFail()); |