aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMikael Morin <mikael@gcc.gnu.org>2011-10-18 15:05:30 +0000
committerMikael Morin <mikael@gcc.gnu.org>2011-10-18 15:05:30 +0000
commit66b23e9399d1c49181218a444efdbabea15d4308 (patch)
tree8d07441ccca1775d66d9df11b716dfc9b70761ff
parent6cab5e07b00571596966f764d7d37c6b58bbcdca (diff)
downloadgcc-66b23e9399d1c49181218a444efdbabea15d4308.zip
gcc-66b23e9399d1c49181218a444efdbabea15d4308.tar.gz
gcc-66b23e9399d1c49181218a444efdbabea15d4308.tar.bz2
re PR fortran/50420 ([Coarray] lcobound doesn't accept coarray subcomponents)
PR fortran/50420 * check.c (dim_corank_check): Use gfc_get_corank to get corank. From-SVN: r180148
-rw-r--r--gcc/fortran/ChangeLog5
-rw-r--r--gcc/fortran/check.c4
2 files changed, 6 insertions, 3 deletions
diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog
index 2b3ca85..57522e7 100644
--- a/gcc/fortran/ChangeLog
+++ b/gcc/fortran/ChangeLog
@@ -1,6 +1,11 @@
2011-10-18 Mikael Morin <mikael@gcc.gnu.org>
PR fortran/50420
+ * check.c (dim_corank_check): Use gfc_get_corank to get corank.
+
+2011-10-18 Mikael Morin <mikael@gcc.gnu.org>
+
+ PR fortran/50420
* trans-intrinsic.c (walk_coarray): Change AR_ELEMENT to AR_SECTION.
PR fortran/50420
diff --git a/gcc/fortran/check.c b/gcc/fortran/check.c
index 66e661b..eb8b3e1 100644
--- a/gcc/fortran/check.c
+++ b/gcc/fortran/check.c
@@ -511,7 +511,6 @@ dim_check (gfc_expr *dim, int n, bool optional)
static gfc_try
dim_corank_check (gfc_expr *dim, gfc_expr *array)
{
- gfc_array_ref *ar;
int corank;
gcc_assert (array->expr_type == EXPR_VARIABLE);
@@ -519,8 +518,7 @@ dim_corank_check (gfc_expr *dim, gfc_expr *array)
if (dim->expr_type != EXPR_CONSTANT)
return SUCCESS;
- ar = gfc_find_array_ref (array);
- corank = ar->as->corank;
+ corank = gfc_get_corank (array);
if (mpz_cmp_ui (dim->value.integer, 1) < 0
|| mpz_cmp_ui (dim->value.integer, corank) > 0)