[flang-commits] [flang] [flang] Updated the parsing structure of some OpenAcc constructs to give better/more uniform inspection (PR #138076)

Peter Klausler via flang-commits flang-commits at lists.llvm.org
Tue May 6 13:15:00 PDT 2025


================
@@ -5324,14 +5352,19 @@ struct OpenACCDeclarativeConstruct {
 };
 
 // OpenACC directives enclosing do loop
-EMPTY_CLASS(AccEndLoop);
+struct AccEndLoop {
+  WRAPPER_CLASS_BOILERPLATE(AccEndLoop, Verbatim);
+  CharBlock source;
+};
+
 struct OpenACCLoopConstruct {
   TUPLE_CLASS_BOILERPLATE(OpenACCLoopConstruct);
   OpenACCLoopConstruct(AccBeginLoopDirective &&a)
       : t({std::move(a), std::nullopt, std::nullopt}) {}
   std::tuple<AccBeginLoopDirective, std::optional<DoConstruct>,
       std::optional<AccEndLoop>>
       t;
+  CharBlock source;
----------------
klausler wrote:

Why do you need a `source` data member that covers an entire construct?

https://github.com/llvm/llvm-project/pull/138076


More information about the flang-commits mailing list