summaryrefslogtreecommitdiff
path: root/gcc/testsuite/gfortran.dg/iso_fortran_env_1.f90
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/testsuite/gfortran.dg/iso_fortran_env_1.f90')
-rw-r--r--gcc/testsuite/gfortran.dg/iso_fortran_env_1.f9044
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" } }