[flang] Accept polymorphic component element in storage_size
[llvm-project.git] / flang / test / Semantics / unpack.f90
blob32c313dc0ae6fa91219f8961fd6fe53477d7db61
1 ! RUN: %python %S/test_errors.py %s %flang_fc1
2 ! UNPACK() intrinsic function error tests
3 program test_unpack
4 integer, dimension(2) :: vector = [343, 512]
5 logical, dimension(2, 2) :: mask = &
6 reshape([.true., .false., .true., .false.], [2, 2])
7 integer, dimension(2, 2) :: field = reshape([1, 2, 3, 4, 5, 6], [2, 2])
8 integer, dimension(2, 1) :: bad_field = reshape([1, 2], [2, 1])
9 integer :: scalar_field
10 integer, dimension(2, 2) :: result
11 result = unpack(vector, mask, field)
12 !ERROR: Dimension 2 of 'mask=' argument has extent 2, but 'field=' argument has extent 1
13 result = unpack(vector, mask, bad_field)
14 result = unpack(vector, mask, scalar_field)
15 end program