summaryrefslogtreecommitdiff
path: root/gcc/testsuite/gfortran.dg/allocate_with_arrayspec_1.f90
blob: 686b612408a640fde43f027687cdc68e7dda976a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
! { dg-do run }
! { dg-options "-fdump-tree-original" }

MODULE mo_test

  integer :: n = 0
CONTAINS

  FUNCTION nquery()
    INTEGER :: nquery
    WRITE (0,*) "hello!"
    n = n + 1
    nquery = n
  END FUNCTION nquery

END MODULE mo_test


! ----------------------------------------------------------------------
! MAIN PROGRAM
! ----------------------------------------------------------------------
PROGRAM example
   USE mo_test
   INTEGER, ALLOCATABLE :: query_buf(:)
   ALLOCATE(query_buf(nquery()))
   if (n /= 1 .or. size(query_buf) /= n) call abort()
END PROGRAM example

! { dg-final { scan-tree-dump-times "nquery" 5 "original" } }