aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorErik Edelmann <eedelman@gcc.gnu.org>2006-10-24 17:01:30 +0000
committerErik Edelmann <eedelman@gcc.gnu.org>2006-10-24 17:01:30 +0000
commitb9703d9852e08e9b3b52b9d6eba428bbf15d6532 (patch)
treee1f3f0994d4a37f0dcd792ac9391d5a685d66786 /gcc
parent6d4d216adde8fbb57427a1192120fa1ff50fbdb3 (diff)
downloadgcc-b9703d9852e08e9b3b52b9d6eba428bbf15d6532.zip
gcc-b9703d9852e08e9b3b52b9d6eba428bbf15d6532.tar.gz
gcc-b9703d9852e08e9b3b52b9d6eba428bbf15d6532.tar.bz2
re PR fortran/29393 (Vector subscript rejected)
fortran/ 2006-10-24 Erik Edelmann <eedelman@gcc.gnu.org> PR fortran/29393 * expr.c (simplify_parameter_variable): Keep rank of original expression. Testsuite/ 2006-10-24 Erik Edelmann <eedelman@gcc.gnu.org> PR fortran/29393 * gfortran.dg/initialize_2.f90: New. From-SVN: r118008
Diffstat (limited to 'gcc')
-rw-r--r--gcc/fortran/ChangeLog6
-rw-r--r--gcc/fortran/expr.c2
-rw-r--r--gcc/testsuite/ChangeLog5
-rw-r--r--gcc/testsuite/gfortran.dg/initialization_2.f907
4 files changed, 20 insertions, 0 deletions
diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog
index 630ffe0..0d29f46 100644
--- a/gcc/fortran/ChangeLog
+++ b/gcc/fortran/ChangeLog
@@ -1,3 +1,9 @@
+2006-10-24 Erik Edelmann <eedelman@gcc.gnu.org>
+
+ PR fortran/29393
+ * expr.c (simplify_parameter_variable): Keep rank of original
+ expression.
+
2006-10-23 Rafael Avila de Espindola <rafael.espindola@gmail.com>
* Make-lang.in (f951$(exeext)): Depend on and link with attribs.o.
diff --git a/gcc/fortran/expr.c b/gcc/fortran/expr.c
index 2bf980c..1f51fd0 100644
--- a/gcc/fortran/expr.c
+++ b/gcc/fortran/expr.c
@@ -1363,6 +1363,8 @@ simplify_parameter_variable (gfc_expr * p, int type)
if (e == NULL)
return FAILURE;
+ e->rank = p->rank;
+
/* Do not copy subobject refs for constant. */
if (e->expr_type != EXPR_CONSTANT && p->ref != NULL)
e->ref = copy_ref (p->ref);
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 5ed77bf..87c2154 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,8 @@
+2006-10-24 Erik Edelmann <eedelman@gcc.gnu.org>
+
+ PR fortran/29393
+ * gfortran.dg/initialize_2.f90: New.
+
2006-10-24 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
* gcc.dg/torture/builtin-math-2.c: New test.
diff --git a/gcc/testsuite/gfortran.dg/initialization_2.f90 b/gcc/testsuite/gfortran.dg/initialization_2.f90
new file mode 100644
index 0000000..d5de859
--- /dev/null
+++ b/gcc/testsuite/gfortran.dg/initialization_2.f90
@@ -0,0 +1,7 @@
+! { dg-do compile }
+! PR 29393: Ranks of PARAMETER-lhs in initializations
+ integer, parameter :: A(-3:7,2)=0
+ integer, parameter, dimension(3) :: V = (/ 2, 4, 6 /)
+ integer, parameter, dimension(3) :: B = A(V,1)
+ integer, parameter, dimension(3) :: C = A(0:2,1)
+end