File tree Expand file tree Collapse file tree 1 file changed +7
-3
lines changed Expand file tree Collapse file tree 1 file changed +7
-3
lines changed Original file line number Diff line number Diff line change @@ -474,9 +474,13 @@ bool DummyDataObject::IsPassedByDescriptor(bool isBindC) const {
474
474
// Need to pass dynamic type info in a descriptor.
475
475
return true ;
476
476
} else if (const auto *derived{GetDerivedTypeSpec (type.type ())}) {
477
- if (const semantics::Scope *scope = derived->scope ()) {
478
- // Need to pass length type parameters in a descriptor if any.
479
- return scope->IsDerivedTypeWithLengthParameter ();
477
+ if (!derived->parameters ().empty ()) {
478
+ for (const auto ¶m : derived->parameters ()) {
479
+ if (param.second .isLen ()) {
480
+ // Need to pass length type parameters in a descriptor.
481
+ return true ;
482
+ }
483
+ }
480
484
}
481
485
} else if (isBindC && type.type ().IsAssumedLengthCharacter ()) {
482
486
// Fortran 2018 18.3.6 point 2 (5)
You can’t perform that action at this time.
0 commit comments