<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Issue</th>
<td>
<a href=https://github.com/llvm/llvm-project/issues/60250>60250</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>
move_alloc does not support polymorphic or unlimited polymorphic descriptors
</td>
</tr>
<tr>
<th>Labels</th>
<td>
flang:ir
</td>
</tr>
<tr>
<th>Assignees</th>
<td>
</td>
</tr>
<tr>
<th>Reporter</th>
<td>
clementval
</td>
</tr>
</table>
<pre>
The `RUNTIME_CHECK` is too restrictive for polymorphic and unlimited polymorphic descriptor.
```fortran
module move_alloc_issue
type p1
end type
type, extends(p1) :: p2
integer, allocatable :: i
end type
contains
subroutine sub1
class(*), allocatable :: up
Call inner1
contains
subroutine inner1
type(p2), allocatable :: tp2
allocate(tp2)
allocate(tp2%i)
call move_alloc(tp2, up)
end subroutine
end subroutine
end module
program test
use move_alloc_issue
call sub1()
end program
```
```
fatal Fortran runtime error(./dummy.f90:18): Internal error: RUNTIME_CHECK(to.type() == from.type()) failed at llvm-project/flang/runtime/allocatable.cpp(48)
./run_and_check.sh: line 14: 36287 Aborted ./a.out
```
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJyEVFGvqzYM_jXhxRoKoVB44IH1XLSraXuY7p6rAKbNFhKUmKOdfz8FqKDVObqoKsT-4s_-7ER6r24GsWLZryx7i-RMd-uqTuOIht6ljlrbf1Q_7ggs53_9_eeP7398u15--3b5neUclAeyFhx6cqoj9Y4wWAeT1R-jddNddSBND7PRalSE_ZOnR985NZF1MeNvjNfbf87X32AdOWlW62j7WSOM9h2vUmvbXZX3M65OAPqYEKZkW6LpF8vRy8QF8D9C03smiilhogSW1iytYRIPIIAyhDd0Ab3QSJKtxgdSfUrQWUNSGX-sAsDPrbMzKYPhM9kpOi19yIGJmonyC6Z52jdcpNagjEGXPFM8EwfogfS4YVOgmMTXjHSUAR6IsIvWbavz1Z6p3bc8Xch279MDdwklHZFBwz3dg7CvxmBb27-uJ2dvTo5A6OkRbvZfzsaSz9KBIHm5x9zivEzdp6O4LgdJUkOzjiW42ZAaEdA565goYiaafh7Hj3goOUvrZGFLa_huCJ2RekOmNTyfI1GQjbcGrVP5xtI3GJwdD-bgGaTS2IMk0Pp9_GVy9h_siIlm0NLcmGi2nJhoDg2Ou2liojjt1ccr9CpNf-3u2P0b-3vIS4e5SU7hM81FcYa6tS4c29cnBJCxnelFp6iv0r5MSxlhleTnU5YlmSiie1Vg0bZZkWUpT_PyPHB-TvJzkg_DUGZDJiJVCS5SnogTLxPBz3GZt6dcJmnXlq0ckjM7cRyl0nEoPbbuFi1NrnIuMh5p2aL2yy0mxKpGWivHhAi3mqsWvdr55tmJa-XJ72FIkcZqHx7oLXowlsDP02QdPV1a1v30NvPR7HR1J5p8OFqiYaK5KbrPbdzZkYkmUG-vQw-XcjwTzVLR_wEAAP__7mS0ng">