diff options
Diffstat (limited to 'flang/lib/Lower/Bridge.cpp')
| -rw-r--r-- | flang/lib/Lower/Bridge.cpp | 4 | 
1 files changed, 4 insertions, 0 deletions
diff --git a/flang/lib/Lower/Bridge.cpp b/flang/lib/Lower/Bridge.cpp index 6e72987..0f4b39a 100644 --- a/flang/lib/Lower/Bridge.cpp +++ b/flang/lib/Lower/Bridge.cpp @@ -4876,6 +4876,10 @@ private:        mlir::Value shape = builder->genShape(loc, lbounds, extents);        rhsBox = fir::ReboxOp::create(*builder, loc, lhsBoxType, rhsBox, shape,                                      /*slice=*/mlir::Value{}); +    } else if (fir::isClassStarType(lhsBoxType) && +               !fir::ConvertOp::canBeConverted(rhsBoxType, lhsBoxType)) { +      rhsBox = fir::ReboxOp::create(*builder, loc, lhsBoxType, rhsBox, +                                    mlir::Value{}, mlir::Value{});      }      return rhsBox;    }  | 
