------- Comment #10 from domob at gcc dot gnu dot org  2010-08-19 16:02 -------
Subject: Bug 29785

Author: domob
Date: Thu Aug 19 16:02:30 2010
New Revision: 163377

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=163377
Log:
2010-08-19  Daniel Kraft  <d...@domob.eu>

        PR fortran/29785
        PR fortran/45016
        * trans.h (struct gfc_se): New flag `byref_noassign'.
        * trans-array.h (gfc_conv_shift_descriptor_lbound): New method.
        (gfc_conv_array_extent_dim), (gfc_conv_descriptor_size): New methods.
        * expr.c (gfc_check_pointer_assign): Allow bounds and rank remapping
        and check for compile-time errors with those.
        * trans-decl.c (trans_associate_var): Use new routine
        `gfc_conv_shift_descriptor_lbound' instead of doing it manually.
        * trans-array.c (gfc_conv_shift_descriptor_lbound): New method.
        (gfc_conv_array_extent_dim), (gfc_conv_descriptor_size): New methods.
        (gfc_array_init_size): Use new `gfc_conv_array_extent_dim'.
        (gfc_conv_expr_descriptor): Handle new flag `byref_noassign'.
        * trans-expr.c (gfc_trans_pointer_assignment): Handle bounds and
        rank remapping for assignment.

2010-08-19  Daniel Kraft  <d...@domob.eu>

        PR fortran/29785
        PR fortran/45016
        * gfortran.dg/pointer_assign_5.f90: Remove 'not implemented' error.
        * gfortran.dg/pointer_remapping_1.f90: New test.
        * gfortran.dg/pointer_remapping_2.f03: New test.
        * gfortran.dg/pointer_remapping_3.f08: New test.
        * gfortran.dg/pointer_remapping_4.f03: New test.
        * gfortran.dg/pointer_remapping_5.f08: New test.
        * gfortran.dg/pointer_remapping_6.f08: New test.

Added:
    trunk/gcc/testsuite/gfortran.dg/pointer_remapping_1.f90
    trunk/gcc/testsuite/gfortran.dg/pointer_remapping_2.f03
    trunk/gcc/testsuite/gfortran.dg/pointer_remapping_3.f08
    trunk/gcc/testsuite/gfortran.dg/pointer_remapping_4.f03
    trunk/gcc/testsuite/gfortran.dg/pointer_remapping_5.f08
    trunk/gcc/testsuite/gfortran.dg/pointer_remapping_6.f08
Modified:
    trunk/gcc/fortran/ChangeLog
    trunk/gcc/fortran/expr.c
    trunk/gcc/fortran/trans-array.c
    trunk/gcc/fortran/trans-array.h
    trunk/gcc/fortran/trans-decl.c
    trunk/gcc/fortran/trans-expr.c
    trunk/gcc/fortran/trans.h
    trunk/gcc/testsuite/ChangeLog
    trunk/gcc/testsuite/gfortran.dg/pointer_assign_5.f90


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29785

Reply via email to