[flang] Accept polymorphic component element in storage_size
[llvm-project.git] / flang / test / Semantics / data15.f90
blob4c42a33320bfc392940d030af8e82ad78e752219
1 ! RUN: %flang_fc1 -fdebug-dump-symbols %s 2>&1 | FileCheck %s
2 ! Verify initialization extension: integer with logical, logical with integer
3 ! CHECK: d (InDataStmt) size=20 offset=40: ObjectEntity type: LOGICAL(4) shape: 1_8:5_8 init:[LOGICAL(4)::transfer(-2_8,.false._4),transfer(-1_8,.false._4),.false._4,.true._4,transfer(2_8,.false._4)]
4 ! CHECK: j (InDataStmt) size=8 offset=60: ObjectEntity type: INTEGER(4) shape: 1_8:2_8 init:[INTEGER(4)::0_4,1_4]
5 ! CHECK: x, PARAMETER size=20 offset=0: ObjectEntity type: LOGICAL(4) shape: 1_8:5_8 init:[LOGICAL(4)::transfer(-2_8,.false._4),transfer(-1_8,.false._4),.false._4,.true._4,transfer(2_8,.false._4)]
6 ! CHECK: y, PARAMETER size=20 offset=20: ObjectEntity type: INTEGER(4) shape: 1_8:5_8 init:[INTEGER(4)::-2_4,-1_4,0_4,1_4,2_4]
7 program main
8 logical, parameter :: x(5) = [ -2, -1, 0, 1, 2 ]
9 integer, parameter :: y(5) = x
10 logical :: d(5)
11 integer :: j(2)
12 data d / -2, -1, 0, 1, 2 /
13 data j / .false., .true. /
14 end