aboutsummaryrefslogtreecommitdiffstats
path: root/gcc-4.8/gcc/testsuite/gfortran.dg/array_constructor_18.f90
diff options
context:
space:
mode:
Diffstat (limited to 'gcc-4.8/gcc/testsuite/gfortran.dg/array_constructor_18.f90')
-rw-r--r--gcc-4.8/gcc/testsuite/gfortran.dg/array_constructor_18.f9019
1 files changed, 19 insertions, 0 deletions
diff --git a/gcc-4.8/gcc/testsuite/gfortran.dg/array_constructor_18.f90 b/gcc-4.8/gcc/testsuite/gfortran.dg/array_constructor_18.f90
new file mode 100644
index 000000000..c78976839
--- /dev/null
+++ b/gcc-4.8/gcc/testsuite/gfortran.dg/array_constructor_18.f90
@@ -0,0 +1,19 @@
+! { dg-do compile }
+! Tests the fix for PR32875, in which the character length for the
+! array constructor would get lost in simplification and would lead
+! the error 'Not Implemented: complex character array constructor'.
+!
+! Contributed by Joost VandeVondele <jv244@cam.ac.uk>
+!
+ call foo ((/(S1(i),i=1,3,-1)/)) ! { dg-warning "will be executed zero times" }
+CONTAINS
+ FUNCTION S1(i)
+ CHARACTER(LEN=1) :: S1
+ INTEGER :: I
+ S1="123456789"(i:i)
+ END FUNCTION S1
+ subroutine foo (chr)
+ character(1) :: chr(:)
+ print *, chr
+ end subroutine
+END