Mercurial > hg > CbC > CbC_gcc
view gcc/testsuite/gfortran.dg/select_type_25.f90 @ 152:2b5abeee2509
update gcc11
author | anatofuz |
---|---|
date | Mon, 25 May 2020 07:50:57 +0900 |
parents | 04ced10e8804 |
children |
line wrap: on
line source
! { dg-do compile } ! { dg-options "-fcoarray=single" } ! ! PR fortran/51605 ! subroutine one() type t end type t ! (a) Invalid (was ICEing before) class(t), target :: p1 ! { dg-error "must be dummy, allocatable or pointer" } class(t), pointer :: p2 select type(p1) type is(t) p2 => p1 class is(t) p2 => p1 end select end subroutine one subroutine two() type t end type t class(t), allocatable, target :: p1 ! (b) Valid class(t), pointer :: p2 select type(p1) type is(t) p2 => p1 class is(t) p2 => p1 end select end subroutine two subroutine three() type t end type t class(t), allocatable :: p1 ! (c) Invalid as not TARGET class(t), pointer :: p2 select type(p1) type is(t) p2 => p1 ! { dg-error "Pointer assignment target is neither TARGET nor POINTER" } class is(t) p2 => p1 ! { dg-error "Pointer assignment target is neither TARGET nor POINTER" } end select end subroutine three subroutine four() type t end type t class(t), pointer :: p1 ! (d) Valid class(t), pointer :: p2 select type(p1) type is(t) p2 => p1 class is(t) p2 => p1 end select end subroutine four subroutine caf(x) type t end type t class(t) :: x[*] select type(x) type is(t) end select end subroutine caf