summaryrefslogtreecommitdiff
path: root/gcc/testsuite/gfortran.dg/volatile9.f90
blob: e7cba6b07240fe0489381f3e2b2a4e0b2a118349 (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
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
! Check for valid VOLATILE uses
!
! Contributed by Steven Correll.
!
! PR fortran/30520

! { dg-do compile }
 
  function f() result(fr)
    integer, volatile :: fr
    fr = 5
  end function f 

  module mod13
    implicit none
    integer :: v13
  end module mod13 

  module mod13a
   use mod13
   implicit none
   volatile :: v13
   real :: v14
  contains
   subroutine s13()
     volatile :: v13
     volatile :: v14
   end subroutine s13 
  end module mod13a 

  module mod13b
   use mod13a
   implicit none
   volatile :: v13
  end module mod13b 


  subroutine s14()
    use mod13a
    implicit none
    volatile :: v13
  end subroutine s14 

! { dg-final { cleanup-modules "mod13 mod13a mod13b" } }