diff --git a/flang-rt/lib/runtime/assign.cpp b/flang-rt/lib/runtime/assign.cpp index 86aeeaa88f2d1..bf67b5dc8b645 100644 --- a/flang-rt/lib/runtime/assign.cpp +++ b/flang-rt/lib/runtime/assign.cpp @@ -330,6 +330,7 @@ RT_API_ATTRS void Assign(Descriptor &to, const Descriptor &from, } flags &= ~NeedFinalization; toElementBytes = to.ElementBytes(); // may have changed + toDerived = toAddendum ? toAddendum->derivedType() : nullptr; } } if (toDerived && (flags & CanBeDefinedAssignment)) {