Commit deb2861
authored
[flang] Allow for equivalent types in non-TBP defined I/O (#158755)
Non-extensible derived type -- those with SEQUENCE or BIND(C) -- are
allowed as monomorphic "dtv" dummy arguments to defined I/O subroutines.
Fortran's type rules admit structural equivalence for these types, and
it's possible that I/O might be attempted in a scope using a
non-extensible type that's equivalent to a non-type-bound generic
interface's specific procedure's "dtv" dummy argument's type, but not
defined in the same place.
Fixes #158673.
This is an IBM Fortran test case that doesn't need to be duplicated in
LLVM.1 parent 8fb02fa commit deb2861
1 file changed
+25
-5
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1385 | 1385 | | |
1386 | 1386 | | |
1387 | 1387 | | |
1388 | | - | |
1389 | | - | |
1390 | | - | |
| 1388 | + | |
| 1389 | + | |
| 1390 | + | |
| 1391 | + | |
| 1392 | + | |
| 1393 | + | |
| 1394 | + | |
| 1395 | + | |
| 1396 | + | |
| 1397 | + | |
| 1398 | + | |
| 1399 | + | |
| 1400 | + | |
| 1401 | + | |
| 1402 | + | |
| 1403 | + | |
| 1404 | + | |
| 1405 | + | |
| 1406 | + | |
| 1407 | + | |
| 1408 | + | |
1391 | 1409 | | |
1392 | 1410 | | |
1393 | | - | |
| 1411 | + | |
| 1412 | + | |
1394 | 1413 | | |
1395 | 1414 | | |
1396 | 1415 | | |
| |||
1454 | 1473 | | |
1455 | 1474 | | |
1456 | 1475 | | |
1457 | | - | |
| 1476 | + | |
| 1477 | + | |
1458 | 1478 | | |
1459 | 1479 | | |
1460 | 1480 | | |
| |||
0 commit comments