+2008-09-23 Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/37580
+ * expr.c (gfc_check_pointer_assign): Add checks for pointer
+ remapping.
+
2008-09-22 Jerry DeLisle <jvdelisle@gcc.gnu.org
PR fortran/37498
if (ref->type == REF_COMPONENT && ref->u.c.component->attr.pointer)
pointer = 1;
+
+ if (ref->type == REF_ARRAY && ref->next == NULL)
+ {
+ if (ref->u.ar.type == AR_FULL)
+ break;
+
+ if (ref->u.ar.type != AR_SECTION)
+ {
+ gfc_error ("Expected bounds specification for '%s' at %L",
+ lvalue->symtree->n.sym->name, &lvalue->where);
+ return FAILURE;
+ }
+
+ if (gfc_notify_std (GFC_STD_F2003,"Fortran 2003: Bounds "
+ "specification for '%s' in pointer assignment "
+ "at %L", lvalue->symtree->n.sym->name,
+ &lvalue->where) == FAILURE)
+ return FAILURE;
+
+ gfc_error ("Pointer bounds remapping at %L is not yet implemented "
+ "in gfortran", &lvalue->where);
+ /* TODO: See PR 29785. Add checks that all lbounds are specified and
+ either never or always the upper-bound; strides shall not be
+ present. */
+ return FAILURE;
+ }
}
if (check_intent_in && lvalue->symtree->n.sym->attr.intent == INTENT_IN)
+2008-09-23 Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/37580
+ * gfortran.dg/pointer_assign_5.f90: New test.
+ * gfortran.dg/pointer_assign_6.f90: New test.
+
2008-09-22 David Daney <ddaney@avtrex.com>
PR target/37593
--- /dev/null
+! { dg-do compile }
+! PR fortran/37580
+!
+program test
+implicit none
+real, pointer :: ptr1(:), ptr2(:)
+ptr1(1) => ptr2 ! { dg-error "Expected bounds specification" }
+ptr1(1:) => ptr2 ! { dg-error "not yet implemented in gfortran" }
+end program test
--- /dev/null
+! { dg-do compile }
+! { dg-options "-std=f95" }
+! PR fortran/37580
+!
+program test
+implicit none
+real, pointer :: ptr1(:), ptr2(:)
+ptr1(1:) => ptr2 ! { dg-error "Fortran 2003: Bounds specification" }
+end program test