diff --git a/flang/lib/Optimizer/HLFIR/IR/HLFIRDialect.cpp b/flang/lib/Optimizer/HLFIR/IR/HLFIRDialect.cpp --- a/flang/lib/Optimizer/HLFIR/IR/HLFIRDialect.cpp +++ b/flang/lib/Optimizer/HLFIR/IR/HLFIRDialect.cpp @@ -11,6 +11,7 @@ //===----------------------------------------------------------------------===// #include "flang/Optimizer/HLFIR/HLFIRDialect.h" +#include "flang/Optimizer/Dialect/FIRDialect.h" #include "flang/Optimizer/Dialect/FIRType.h" #include "flang/Optimizer/HLFIR/HLFIROps.h" #include "mlir/IR/Builders.h" @@ -37,6 +38,8 @@ #define GET_OP_LIST #include "flang/Optimizer/HLFIR/HLFIROps.cpp.inc" >(); + // ensure the context has also loaded FIR types + getContext()->loadDialect(); } // `expr` `<` `*` | bounds (`x` bounds)* `:` type [`?`] `>`