diff options
Diffstat (limited to 'gcc/testsuite/gfortran.dg/iso_fortran_env_1.f90')
-rw-r--r-- | gcc/testsuite/gfortran.dg/iso_fortran_env_1.f90 | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/gcc/testsuite/gfortran.dg/iso_fortran_env_1.f90 b/gcc/testsuite/gfortran.dg/iso_fortran_env_1.f90 new file mode 100644 index 000000000..dfcf49bf9 --- /dev/null +++ b/gcc/testsuite/gfortran.dg/iso_fortran_env_1.f90 @@ -0,0 +1,44 @@ +! { dg-do run } +module iso_fortran_env + real :: x +end module iso_fortran_env + +subroutine bar + use , intrinsic :: iso_fortran_env + implicit none + + if (file_storage_size /= 8) call abort + if (character_storage_size /= 8) call abort + if (all (numeric_storage_size /= [ 8, 16, 32, 64, 128])) call abort + if (input_unit /= 5) call abort + if (output_unit /= 6) call abort + if (error_unit /= 0) call abort + if (iostat_end /= -1) call abort + if (iostat_eor /= -2) call abort +end + +subroutine bar2 + use , intrinsic :: iso_fortran_env, only : file_storage_size, & + character_storage_size, numeric_storage_size, input_unit, output_unit, & + error_unit, iostat_end, iostat_eor + implicit none + + if (file_storage_size /= 8) call abort + if (character_storage_size /= 8) call abort + if (all (numeric_storage_size /= [ 8, 16, 32, 64, 128])) call abort + if (input_unit /= 5) call abort + if (output_unit /= 6) call abort + if (error_unit /= 0) call abort + if (iostat_end /= -1) call abort + if (iostat_eor /= -2) call abort +end + +program test + use , intrinsic :: iso_fortran_env, uu => output_unit + implicit none + + if (input_unit /= 5 .or. uu /= 6) call abort + call bar + call bar2 +end +! { dg-final { cleanup-modules "iso_fortran_env" } } |