aboutsummaryrefslogtreecommitdiff
path: root/gcc/testsuite/gfortran.dg/pr70409.f90
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/testsuite/gfortran.dg/pr70409.f90')
-rw-r--r--gcc/testsuite/gfortran.dg/pr70409.f9023
1 files changed, 23 insertions, 0 deletions
diff --git a/gcc/testsuite/gfortran.dg/pr70409.f90 b/gcc/testsuite/gfortran.dg/pr70409.f90
new file mode 100644
index 00000000000..0372f6e9632
--- /dev/null
+++ b/gcc/testsuite/gfortran.dg/pr70409.f90
@@ -0,0 +1,23 @@
+! { dg-do run }
+! PR fortran/70409
+! Contriubted by Harald Anlauf <anlauf at gmx dot de>
+program foo
+ integer, parameter :: huge_1 = huge(0_1)
+ character( huge_1 ), parameter :: x = 'abc'
+ character( huge(0_1) ), parameter :: y = 'abc'
+ character( huge(0_1)+0 ), parameter :: z = 'abcdef'
+ character( huge(0_1) ) :: a = 'abc'
+ integer, parameter :: huge_2 = huge(0_2)
+ character( huge_2 ), parameter :: u = 'abc'
+ character( huge(0_2) ), parameter :: v = 'abc'
+ character(int(huge(0_2),4)), parameter :: w = 'abcdef'
+ character( huge(0_2) ) :: b = 'abc'
+ if (len(x) /= huge_1) stop 1
+ if (len(y) /= huge_1) stop 2
+ if (len(z) /= huge_1) stop 3
+ if (len(a) /= huge_1) stop 4
+ if (len(u) /= huge_2) stop 5
+ if (len(v) /= huge_2) stop 6
+ if (len(w) /= huge_2) stop 7
+ if (len(b) /= huge_2) stop 8
+end program foo