aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
Diffstat (limited to 'gcc')
-rw-r--r--gcc/fortran/ChangeLog5
-rw-r--r--gcc/fortran/expr.c2
-rw-r--r--gcc/testsuite/ChangeLog5
-rw-r--r--gcc/testsuite/gfortran.dg/cray_pointers_6.f9012
4 files changed, 23 insertions, 1 deletions
diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog
index 7d86235..a312507 100644
--- a/gcc/fortran/ChangeLog
+++ b/gcc/fortran/ChangeLog
@@ -1,3 +1,8 @@
+2006-03-31 Asher Langton <langton2@llnl.gov>
+
+ PR fortran/25358
+ *expr.c (gfc_check_assign): Allow cray pointee to be assumes-size.
+
2006-03-30 Paul Thomas <paulthomas2@wanadoo.fr>
Bud Davis <bdavis9659@sbcglobal.net>
diff --git a/gcc/fortran/expr.c b/gcc/fortran/expr.c
index 8362f53..dfbbed2 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 79fb94c..80d1d7f 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,8 @@
+2006-03-31 Asher Langton <langton2@llnl.gov>
+
+ PR fortran/25358
+ gfortran.dg/cray_pointers_6.f90: New test.
+
2006-03-30 Jerry DeLisle <jvdelisle@gcc.gnu.org>
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 0000000..f89f880
--- /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