From f0d0757e92c7cb506ca4ea509319df440b7f1d57 Mon Sep 17 00:00:00 2001 From: Asher Langton Date: Sat, 1 Apr 2006 00:04:46 +0000 Subject: [PATCH] re PR fortran/25358 (vector assignment to assumed-size Cray Pointee error) 2006-03-31 Asher Langton PR fortran/25358 *expr.c (gfc_check_assign): Allow cray pointee to be assumes-size. 2006-03-31 Asher Langton PR fortran/25358 gfortran.dg/cray_pointers_6.f90: New test. From-SVN: r112594 --- gcc/fortran/ChangeLog | 5 +++++ gcc/fortran/expr.c | 2 +- gcc/testsuite/ChangeLog | 5 +++++ gcc/testsuite/gfortran.dg/cray_pointers_6.f90 | 12 ++++++++++++ 4 files changed, 23 insertions(+), 1 deletion(-) create mode 100644 gcc/testsuite/gfortran.dg/cray_pointers_6.f90 diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog index 7d862357abf..a312507d01f 100644 --- a/gcc/fortran/ChangeLog +++ b/gcc/fortran/ChangeLog @@ -1,3 +1,8 @@ +2006-03-31 Asher Langton + + PR fortran/25358 + *expr.c (gfc_check_assign): Allow cray pointee to be assumes-size. + 2006-03-30 Paul Thomas Bud Davis diff --git a/gcc/fortran/expr.c b/gcc/fortran/expr.c index 8362f5336fc..dfbbed24563 100644 --- a/gcc/fortran/expr.c +++ b/gcc/fortran/expr.c @@ -1894,7 +1894,7 @@ gfc_check_assign (gfc_expr * lvalue, gfc_expr * rvalue, int conform) if (sym->attr.cray_pointee && lvalue->ref != NULL - && lvalue->ref->u.ar.type != AR_ELEMENT + && lvalue->ref->u.ar.type == AR_FULL && lvalue->ref->u.ar.as->cp_was_assumed) { gfc_error ("Vector assignment to assumed-size Cray Pointee at %L" diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 79fb94cc24f..80d1d7f6d84 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2006-03-31 Asher Langton + + PR fortran/25358 + gfortran.dg/cray_pointers_6.f90: New test. + 2006-03-30 Jerry DeLisle PR libgfortran/26890 diff --git a/gcc/testsuite/gfortran.dg/cray_pointers_6.f90 b/gcc/testsuite/gfortran.dg/cray_pointers_6.f90 new file mode 100644 index 00000000000..f89f88092e5 --- /dev/null +++ b/gcc/testsuite/gfortran.dg/cray_pointers_6.f90 @@ -0,0 +1,12 @@ +! { dg-do compile } +! { dg-options "-fcray-pointer" } +! PR fortran/25358 +subroutine adw_set + implicit none + real*8 Adw_xabcd_8(*) + pointer(Adw_xabcd_8_ , Adw_xabcd_8) + common/ Adw / Adw_xabcd_8_ + integer n + Adw_xabcd_8(1:n) = 1 + return +end subroutine adw_set -- 2.30.2