diff options
Diffstat (limited to 'gcc/testsuite/gfortran.dg/common_11.f90')
-rw-r--r-- | gcc/testsuite/gfortran.dg/common_11.f90 | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/gcc/testsuite/gfortran.dg/common_11.f90 b/gcc/testsuite/gfortran.dg/common_11.f90 new file mode 100644 index 000000000..ec01515cb --- /dev/null +++ b/gcc/testsuite/gfortran.dg/common_11.f90 @@ -0,0 +1,30 @@ +! { dg-do compile } +! +! PR fortran/34658 +! +! Check for more COMMON constrains +! +block data + implicit none + integer :: x, a ! { dg-warning "Initialized variable 'a' at .1. is in a blank COMMON" } + integer :: y = 5, b = 5 ! { dg-warning "Initialized variable 'b' at .1. is in a blank COMMON" } + data x/5/, a/5/ + common // a, b + common /a/ x, y +end block data + +subroutine foo() + implicit none + type t + sequence + integer :: i = 5 + end type t + type(t) x ! { dg-error "may not have default initializer" } + common // x +end subroutine foo + +program test + implicit none + common /a/ I ! { dg-warning "in COMMON but only in BLOCK DATA initialization" } + integer :: I = 43 +end program test |