[Bug debug/49262] 3-yr-old infinite loop in dwarf2out.c

jakub at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Mon Jul 4 21:11:00 GMT 2011


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

--- Comment #5 from Jakub Jelinek <jakub at gcc dot gnu.org> 2011-07-04 21:08:00 UTC ---
Author: jakub
Date: Mon Jul  4 21:07:57 2011
New Revision: 175827

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=175827
Log:
    Backported from mainline
    2011-06-06  Jakub Jelinek  <jakub@redhat.com>

    PR debug/49262
    * dwarf2out.c (native_encode_initializer): Decrement count in each
    iteration.

    2011-06-30  Jakub Jelinek  <jakub@redhat.com>

    PR fortran/49540
    * gfortran.h (gfc_constructor): Add repeat field.
    * trans-array.c (gfc_conv_array_initializer): Handle repeat > 1.
    * array.c (current_expand): Add repeat field.
    (expand_constructor): Copy repeat.
    * constructor.c (node_free, node_copy, gfc_constructor_get,
    gfc_constructor_lookup): Handle repeat field.
    (gfc_constructor_lookup_next, gfc_constructor_remove): New functions.
    * data.h (gfc_assign_data_value): Add mpz_t * argument.
    (gfc_assign_data_value_range): Removed.
    * constructor.h (gfc_constructor_advance): Removed.
    (gfc_constructor_lookup_next, gfc_constructor_remove): New prototypes.
    * data.c (gfc_assign_data_value): Add REPEAT argument, handle it and
    also handle overwriting a range with a single entry.
    (gfc_assign_data_value_range): Removed.
    * resolve.c (check_data_variable): Adjust gfc_assign_data_value
    call.  Use gfc_assign_data_value instead of
    gfc_assign_data_value_expr.

    * gfortran.dg/pr49540-1.f90: New test.
    * gfortran.dg/pr49540-2.f90: New test.

Added:
    branches/gcc-4_6-branch/gcc/testsuite/gfortran.dg/pr49540-1.f90
    branches/gcc-4_6-branch/gcc/testsuite/gfortran.dg/pr49540-2.f90
Modified:
    branches/gcc-4_6-branch/gcc/ChangeLog
    branches/gcc-4_6-branch/gcc/dwarf2out.c
    branches/gcc-4_6-branch/gcc/fortran/ChangeLog
    branches/gcc-4_6-branch/gcc/fortran/array.c
    branches/gcc-4_6-branch/gcc/fortran/constructor.c
    branches/gcc-4_6-branch/gcc/fortran/constructor.h
    branches/gcc-4_6-branch/gcc/fortran/data.c
    branches/gcc-4_6-branch/gcc/fortran/data.h
    branches/gcc-4_6-branch/gcc/fortran/gfortran.h
    branches/gcc-4_6-branch/gcc/fortran/resolve.c
    branches/gcc-4_6-branch/gcc/fortran/trans-array.c
    branches/gcc-4_6-branch/gcc/testsuite/ChangeLog



More information about the Gcc-bugs mailing list