@@ -657,33 +657,36 @@ TYPE_PARSER(construct<OmpEndAtomic>(startOmpLine >> "END ATOMIC"_tok))
657657
658658// OMP ATOMIC [MEMORY-ORDER-CLAUSE-LIST] READ [MEMORY-ORDER-CLAUSE-LIST]
659659TYPE_PARSER(" ATOMIC" >>
660- construct<OmpAtomicRead>(Parser<OmpAtomicClauseList>{} / maybe(" ," _tok),
661- verbatim(" READ" _tok), Parser<OmpAtomicClauseList>{} / endOmpLine,
662- statement (assignmentStmt), maybe(Parser<OmpEndAtomic>{} / endOmpLine)))
660+ sourced (construct<OmpAtomicRead>(
661+ Parser<OmpAtomicClauseList>{} / maybe(" ," _tok), verbatim(" READ" _tok),
662+ Parser<OmpAtomicClauseList>{} / endOmpLine, statement(assignmentStmt),
663+ maybe(Parser<OmpEndAtomic>{} / endOmpLine))))
663664
664665// OMP ATOMIC [MEMORY-ORDER-CLAUSE-LIST] CAPTURE [MEMORY-ORDER-CLAUSE-LIST]
665666TYPE_PARSER(" ATOMIC" >>
666- construct<OmpAtomicCapture>(Parser<OmpAtomicClauseList>{} / maybe( " , " _tok),
667- verbatim( " CAPTURE " _tok), Parser<OmpAtomicClauseList>{} / endOmpLine ,
668- statement (assignmentStmt) , statement(assignmentStmt),
669- Parser<OmpEndAtomic>{} / endOmpLine))
667+ sourced ( construct<OmpAtomicCapture>(
668+ Parser<OmpAtomicClauseList>{} / maybe( " , " _tok), verbatim( " CAPTURE " _tok) ,
669+ Parser<OmpAtomicClauseList>{} / endOmpLine , statement(assignmentStmt),
670+ statement(assignmentStmt), Parser<OmpEndAtomic>{} / endOmpLine) ))
670671
671672// OMP ATOMIC [MEMORY-ORDER-CLAUSE-LIST] UPDATE [MEMORY-ORDER-CLAUSE-LIST]
672673TYPE_PARSER(" ATOMIC" >>
673- construct<OmpAtomicUpdate>(Parser<OmpAtomicClauseList>{} / maybe(" ," _tok),
674- verbatim(" UPDATE" _tok), Parser<OmpAtomicClauseList>{} / endOmpLine,
675- statement (assignmentStmt), maybe(Parser<OmpEndAtomic>{} / endOmpLine)))
674+ sourced (construct<OmpAtomicUpdate>(
675+ Parser<OmpAtomicClauseList>{} / maybe(" ," _tok), verbatim(" UPDATE" _tok),
676+ Parser<OmpAtomicClauseList>{} / endOmpLine, statement(assignmentStmt),
677+ maybe(Parser<OmpEndAtomic>{} / endOmpLine))))
676678
677679// OMP ATOMIC [atomic-clause-list]
678- TYPE_PARSER(construct<OmpAtomic>(verbatim(" ATOMIC" _tok),
680+ TYPE_PARSER(sourced( construct<OmpAtomic>(verbatim(" ATOMIC" _tok),
679681 Parser<OmpAtomicClauseList>{} / endOmpLine, statement(assignmentStmt),
680- maybe(Parser<OmpEndAtomic>{} / endOmpLine)))
682+ maybe(Parser<OmpEndAtomic>{} / endOmpLine))))
681683
682684// OMP ATOMIC [MEMORY-ORDER-CLAUSE-LIST] WRITE [MEMORY-ORDER-CLAUSE-LIST]
683685TYPE_PARSER(" ATOMIC" >>
684- construct<OmpAtomicWrite>(Parser<OmpAtomicClauseList>{} / maybe(" ," _tok),
685- verbatim(" WRITE" _tok), Parser<OmpAtomicClauseList>{} / endOmpLine,
686- statement (assignmentStmt), maybe(Parser<OmpEndAtomic>{} / endOmpLine)))
686+ sourced (construct<OmpAtomicWrite>(
687+ Parser<OmpAtomicClauseList>{} / maybe(" ," _tok), verbatim(" WRITE" _tok),
688+ Parser<OmpAtomicClauseList>{} / endOmpLine, statement(assignmentStmt),
689+ maybe(Parser<OmpEndAtomic>{} / endOmpLine))))
687690
688691// Atomic Construct
689692TYPE_PARSER(construct<OpenMPAtomicConstruct>(Parser<OmpAtomicRead>{}) ||
0 commit comments