[Patch, Fortran] PR59440 - Fix ICE in dwarf2out in forcing the DIE creation - by setting DECL_IGNORED_P to 0

Jakub Jelinek jakub@redhat.com
Thu Dec 12 07:33:00 GMT 2013


On Thu, Dec 12, 2013 at 08:25:15AM +0100, Tobias Burnus wrote:
> A rather simple patch to ensure that the die is generated. Without,
> one runs into an ICE. That's a follow up to my namelist debug patch
> (and the ICE is caused by it).
> 
> Build on x86-64-gnu-linux and lightly tested. Full regtest currently
> running.
> OK for the trunk, when it succeeds?

> 2013-12-12  Tobias Burnus  <burnus@net-b.de>
> 
> 	PR fortran/59440
> 	* trans-decl.c (generate_namelist_decl): Ensure debug DIE
> 	is created by setting DECL_IGNORED_P to 0.
> 
> 2013-12-12  Tobias Burnus  <burnus@net-b.de>
> 
> 	PR fortran/59440
> 	* gfortran.dg/namelist_83.f90: New.
> 	* gfortran.dg/namelist_83_2.f90: New.

Ok.

> --- a/gcc/fortran/trans-decl.c
> +++ b/gcc/fortran/trans-decl.c
> @@ -4164,6 +4164,7 @@ generate_namelist_decl (gfc_symbol * sym)
>  	  nml->sym->attr.referenced = 1;
>  	  nml->sym->backend_decl = gfc_get_symbol_decl (nml->sym);
>  	}
> +      DECL_IGNORED_P (nml->sym->backend_decl) = 0;
>        CONSTRUCTOR_APPEND_ELT (nml_decls, NULL_TREE, nml->sym->backend_decl);
>      }
>  
> +module mo_t_datum
> +  implicit none
> +  integer :: qbit_conv = 0
> +end module mo_t_datum
> +
> +! { dg-final { cleanup-modules "gfcbug126" } }

Shouldn't this be
! { dg-final { cleanup-modules "mo_t_datum gfcbug126" } }
though?

	Jakub



More information about the Gcc-patches mailing list