35 lines
622 B
Plaintext
35 lines
622 B
Plaintext
! { dg-do run }
|
|
! { dg-options "-std=f2008 -fall-intrinsics" }
|
|
|
|
! Basic Fortran 2008 BLOCK construct test.
|
|
|
|
PROGRAM main
|
|
IMPLICIT NONE
|
|
INTEGER :: i
|
|
|
|
i = 42
|
|
|
|
! Empty block.
|
|
BLOCK
|
|
END BLOCK
|
|
|
|
! Block without local variables but name.
|
|
BLOCK
|
|
IF (i /= 42) CALL abort ()
|
|
i = 5
|
|
END BLOCK
|
|
IF (i /= 5) CALL abort ()
|
|
|
|
! Named block with local variable and nested block.
|
|
myblock: BLOCK
|
|
INTEGER :: i
|
|
i = -1
|
|
BLOCK
|
|
IF (i /= -1) CALL abort ()
|
|
i = -2
|
|
END BLOCK
|
|
IF (i /= -2) CALL abort ()
|
|
END BLOCK myblock ! Matching end-label.
|
|
IF (i /= 5) CALL abort ()
|
|
END PROGRAM main
|