xref: /llvm-project/flang/test/Semantics/data20.f90 (revision 4739c883fdc1ddb22b51502dbde177410663dee3)
1*4739c883SPeter Klausler! RUN: %flang_fc1 -fdebug-dump-symbols %s 2>&1 | FileCheck %s
2*4739c883SPeter Klausler! Verify that allocatable components have explicit NULL() initializers
3*4739c883SPeter Klausler! when converted from DATA statements
4*4739c883SPeter Klausler!CHECK: x1 (InDataStmt) size=32 offset=0: ObjectEntity type: TYPE(t) init:t(a=NULL(),n=1_4)
5*4739c883SPeter Klausler!CHECK: x2 (InDataStmt) size=64 offset=32: ObjectEntity type: TYPE(t) shape: 1_8:2_8 init:[t::t(a=NULL(),n=2_4),t(a=NULL(),n=3_4)]
6*4739c883SPeter Klausler!CHECK: x3 (InDataStmt) size=64 offset=96: ObjectEntity type: TYPE(t2) init:t2(b=[t::t(a=NULL(),n=4_4),t(a=NULL(),n=5_4)])
7*4739c883SPeter Klauslerprogram main
8*4739c883SPeter Klausler  type t
9*4739c883SPeter Klausler    real, allocatable :: a
10*4739c883SPeter Klausler    integer n
11*4739c883SPeter Klausler  end type
12*4739c883SPeter Klausler  type t2
13*4739c883SPeter Klausler    type(t) b(2)
14*4739c883SPeter Klausler  end type
15*4739c883SPeter Klausler  type(t) x1, x2(2)
16*4739c883SPeter Klausler  type(t2) x3
17*4739c883SPeter Klausler  data x1%n/1/, x2(:)%n/2, 3/, x3%b(:)%n/4, 5/
18*4739c883SPeter Klauslerend
19