llvm-project/flang/test/Lower/extent_triplets.f90
Valentin Clement d7697c175d
[flang] Avoid segfault when defining op is not a fir::Convert
The previous code made the assumption that the defining
operation is a fir::ConvertOp without checking. This results in
segmentation fault in code like the added test.

Reviewed By: jeanPerier

Differential Revision: https://reviews.llvm.org/D129077
2022-07-04 16:03:02 +02:00

12 lines
364 B
Fortran

! RUN: bbc -emit-fir %s -o - | FileCheck %s
program test_extent_from_triplet
implicit none
integer, parameter:: n = 3
INTEGER a(n), b(n), i
a = (/ 1, 2, 3 /)
b = (/ (sum(a(1:i)), i=1, n) /)
end program
! CHECK: %{{.*}} = fir.embox %{{.*}}(%{{.*}}) [%{{.*}}] : (!fir.ref<!fir.array<3xi32>>, !fir.shape<1>, !fir.slice<1>) -> !fir.box<!fir.array<?xi32>>