<table border="1" cellspacing="0" cellpadding="8">
    <tr>
        <th>Issue</th>
        <td>
            <a href=https://github.com/llvm/llvm-project/issues/82210>82210</a>
        </td>
    </tr>

    <tr>
        <th>Summary</th>
        <td>
            [Flang] Compilation error for pointer variable of cray pointer declared in derived type
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
            flang:frontend
      </td>
    </tr>

    <tr>
      <th>Assignees</th>
      <td>
      </td>
    </tr>

    <tr>
      <th>Reporter</th>
      <td>
          ohno-fj
      </td>
    </tr>
</table>

<pre>
    ```
Version of flang-new : 19.0.0(730f498c961f29691a605028f9b1cd6d9e232460)
```

A pointer variable in `cray pointer` declared in `derived type` results in a compilation error.  
Gfortran and ifort can compile and execute successfully.

The following are the test program, Flang-new, Gfortran and ifort compilation/execution result.

snggm407_3.f90:
```fortran
module m1
  integer,target::a(2,2)=reshape((/(k,k=1,4)/),(/2,2/))
  type x1
     integer w(2,2)
     integer w2
  end type x1
  type (x1)::v
contains
  subroutine s(i)
    integer,pointer::f(:,:)
    type (x1)::vp
    pointer(ip,vp)
    ip=loc(v)
    allocate(f(2,2));f=a
  end subroutine s
end module m1

program main
  use m1
  v%w=a
  call s(1)
  write(6,*) "v%w = ", v%w
end program main
```

```
$ flang-new snggm407_3.f90
error: Semantic errors in snggm407_3.f90
./snggm407_3.f90:12:16: error: Type of Cray pointee 'vp' is a derived type that is neither SEQUENCE nor BIND(C)
      pointer(ip,vp)
                 ^^
$
```

```
$ gfortran snggm407_3.f90 -fcray-pointer; ./a.out
 v%w =            1           2           3           4
$
```

```
$ ifort -diag-disable=10448 snggm407_3.f90; ./a.out
 v%w =            1           2           3           4
$
```

</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJy8VUuP46gT_zSVSykWLr8POaSdzl__y0irmd3ritjYYYaABTjd_e1X2Hk46ZZWu4e1EIYqqF-9qOLOyV4LsYHsBbLdio_-aOzGHLVZdz9XB9N-bCBnl8F2wLZ_COuk0Wg67BTX_VqLN4Rki3EVsYgBlUXCurQqmyqPO6ryKuY5yxiVXXWImzZvK0EJpTkDqmaRTwjzvMXBSO2FxTO3kh-UQKkRctZY_nHlQc6wFY3iVrQXdiusPIsW_ccgAtsKNyrvApdjY06DVNwHA4S1xkbwmkDJwrgtJvj_dcZ6yzVy3aIMG2y4vggQE1W8i2b0At3YNMK5blTqI1qa8OMosDNKmTepe-RWoD8K9MJ5HKzpLT8B1bi_ejFsvoK96wy0n0GD_rNhD4BO9_0pZcWfSdRVDJLtk38vwmfqybSjEniK5y1i8GgvLFDtue2FD_eTLQcqCaimEK5kZ4U78kEAldPYA5W_gOpfkOxioDoNpwK1AqrnE5fLM626goXw4PsNG2_w-LYE_IJNV6LQ7bOYaQtUvseTtkH_88xrjPZcanc96caDNaOXWqADKuUD2N0T1zybRHXBoGQbLAvz4sJXuMOdfZVCpRyA6vPwiDZAslOmASrPDwyulGm4D87ulk4JEC8dJDu-dMWDRRM9UJ-iPM-X7MMTl_oqYnTLXDgDZW9LhIYrNXkqXqj4ZuWkXT4FO7gEgWi6i5DswiYk9SzsptJn9C8LwDOR0kXBecr0WXZ40KESfRcnrr1s5ic-Pf2vzkdA-08vJqYw5UHMTd6PEF3TYX2vPCHaRYhjgdIhx2XVQX_kPpC1kP4oLH5__e3312_1K2pj8eX_33ZAZf2Y3X-TIg8fZK9hXL3yz1zYXwvMo-W47kJdXd_y_QWDe3hkRn9R4x7WxRcv1rRYJ4t1-i9VncvfupW8X7fShRYQqgxL0_I5nv-huqt2k7RVUvGV2MQFKxOisihXx00SE8-ytOxSUeVNw3NeFgWVedcWcVMk2UpuiFHKKK5YzoosjxpWlPGBCoqLjhHjkDJx4lJFSp1PkbH9Sjo3ik1JFLOV4geh3NSpiaaXEEqSNdoL3YaXlu1WdhOurg9j7yBlSjrv7sK89Grq9FPHgWyH9XM7xM7Yz33XdLhsug8dd5n4q9GqzdH7wU31cQ-076U_joeoMSegfdDk8lsP1vwUjQfaTzY6oP1k5l8BAAD__47xYwo">