[Bug fortran/32795] allocatable components are nullified prematurely

pault at gcc dot gnu dot org gcc-bugzilla@gcc.gnu.org
Sat Nov 29 20:45:00 GMT 2008



------- Comment #17 from pault at gcc dot gnu dot org  2008-11-29 20:43 -------
Subject: Bug 32795

Author: pault
Date: Sat Nov 29 20:42:22 2008
New Revision: 142284

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=142284
Log:
2008-11-24  Paul Thomas  <pault@gcc.gnu.org>

        PR fortran/34820
        * trans-expr.c (gfc_conv_function_call): Remove all code to
        deallocate intent out derived types with allocatable
        components.
        (gfc_trans_assignment_1): An assignment from a scalar to an
        array of derived types with allocatable components, requires
        a deep copy to each array element and deallocation of the
        converted rhs expression afterwards.
        * trans-array.c : Minor whitespace.
        * trans-decl.c (init_intent_out_dt): Add code to deallocate
        allocatable components of derived types with intent out.
        (generate_local_decl): If these types are unused, set them
        referenced anyway but allow the uninitialized warning.

        PR fortran/34143
        * trans-expr.c (gfc_trans_subcomponent_assign): If a conversion
        expression has a null data pointer argument, nullify the
        allocatable component.

        PR fortran/32795
        * trans-expr.c (gfc_trans_subcomponent_assign): Only nullify
        the data pointer if the source is not a variable.

2008-11-24  Paul Thomas  <pault@gcc.gnu.org>

        PR fortran/34820
        * gfortran.dg/alloc_comp_constructor_6.f90 : New test.
        * gfortran.dg/alloc_comp_basics_1.f90 : Reduce expected refs to
        'builtin_free' from 24 to 18.

        PR fortran/34143
        * gfortran.dg/alloc_comp_constructor_5.f90 : New test.

        PR fortran/32795
        * gfortran.dg/alloc_comp_constructor_4.f90 : New test.

Added:
   
branches/gcc-4_3-branch/gcc/testsuite/gfortran.dg/alloc_comp_auto_array_2.f90
   
branches/gcc-4_3-branch/gcc/testsuite/gfortran.dg/alloc_comp_constructor_4.f90
   
branches/gcc-4_3-branch/gcc/testsuite/gfortran.dg/alloc_comp_constructor_5.f90
   
branches/gcc-4_3-branch/gcc/testsuite/gfortran.dg/alloc_comp_constructor_6.f90
Modified:
    branches/gcc-4_3-branch/gcc/fortran/ChangeLog
    branches/gcc-4_3-branch/gcc/fortran/trans-array.c
    branches/gcc-4_3-branch/gcc/fortran/trans-decl.c
    branches/gcc-4_3-branch/gcc/fortran/trans-expr.c
    branches/gcc-4_3-branch/gcc/testsuite/ChangeLog
    branches/gcc-4_3-branch/gcc/testsuite/gfortran.dg/alloc_comp_basics_1.f90


-- 


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



More information about the Gcc-bugs mailing list