Re: [PATCH] Enhance array types debug info. for Ada

2014-12-01 Thread Pierre-Marie de Rodat
On 12/01/2014 04:37 PM, Jakub Jelinek wrote: for an unexpected type? Yes: placeholder expressions are supposed only to refer to the type allowed by the context. I updated the message to talk about the context and I added another one for the (invalid) case when want_address == 0. I meant that

Re: [PATCH] Enhance array types debug info. for Ada

2014-12-01 Thread Jakub Jelinek
On Mon, Dec 01, 2014 at 04:29:05PM +0100, Pierre-Marie de Rodat wrote: > >>+ expansion_failed (loc, NULL_RTX, > >>+ "PLACEHOLDER_EXPR for a unexpected type"); > > > >for an unexpected type? > > Yes: placeholder expressions are supposed only to refer to the type allowed > by t

Re: [PATCH] Enhance array types debug info. for Ada

2014-12-01 Thread Pierre-Marie de Rodat
On 11/26/2014 06:42 PM, Jakub Jelinek wrote: Replace implicitely with implicitly in the whole patch. Oops! Done. + If CONTEXT is NULL, the behavior is the same as if the context_type field + was NULL_TREE. */ as if both context_type and base_decl were NULL_TREE? Absolutely: done. +

Re: [PATCH] Enhance array types debug info. for Ada

2014-11-26 Thread Jakub Jelinek
On Wed, Oct 08, 2014 at 09:05:30PM +0200, Pierre-Marie de Rodat wrote: > gcc/ > * dwarf2out.h (struct array_descr_info): Remove the base_decl field. > * dwarf2out.c (enum dw_scalar_form): New. > (struct loc_descr_context): New. > (add_scalar_info): New. > (add_bound_in

Re: [PATCH] Enhance array types debug info. for Ada

2014-10-08 Thread Pierre-Marie de Rodat
On 10/07/2014 10:29 AM, Jakub Jelinek wrote: But isn't there a risk that you will have PLACEHOLDER_EXPRs (likely for Ada only) in some trees not constructed by the langhook? I mean, DW_OP_push_object_address isn't meaningful in all DWARF contexts, in some it is forbidden, in others there is reall

Re: [PATCH] Enhance array types debug info. for Ada

2014-10-07 Thread Jakub Jelinek
On Tue, Oct 07, 2014 at 10:08:23AM +0200, Pierre-Marie de Rodat wrote: > >>gcc/fortran/ > >>* trans-types.c (gfc_get_array_descr_info): Use PLACEHOLDER_EXPR nodes > >>instead of VAR_DECL ones in type-related expressions. Remove base_decl > >>initialization. > > > >Ugh, I must say I don

Re: [PATCH] Enhance array types debug info. for Ada

2014-10-07 Thread Pierre-Marie de Rodat
Jakub, First, thank you very much for reviewing this set of patches. I think it's better to start with an answer to your last mail: On 10/03/2014 11:20 AM, Jakub Jelinek wrote: What kind of more complex expressions do you need and why? GNAT can produce array types that make sense only as par

Re: [PATCH] Enhance array types debug info. for Ada

2014-10-03 Thread Jakub Jelinek
On Fri, Oct 03, 2014 at 11:18:48AM +0200, Jakub Jelinek wrote: > > gcc/fortran/ > > * trans-types.c (gfc_get_array_descr_info): Use PLACEHOLDER_EXPR nodes > > instead of VAR_DECL ones in type-related expressions. Remove base_decl > > initialization. > > Ugh, I must say I don't like PL

Re: [PATCH] Enhance array types debug info. for Ada

2014-10-03 Thread Jakub Jelinek
On Wed, Sep 03, 2014 at 10:36:21AM +0200, Pierre-Marie de Rodat wrote: > --- a/gcc/dwarf2out.c > +++ b/gcc/dwarf2out.c > @@ -17359,18 +17359,36 @@ static void > gen_descr_array_type_die (tree type, struct array_descr_info *info, > dw_die_ref context_die) > { > - dw_die_re

[PATCH] Enhance array types debug info. for Ada

2014-09-03 Thread Pierre-Marie de Rodat
Hi! I'm currently working on improving the debug information output for GNAT (the Ada frontend in GCC), which currently uses non-standard DWARF to describe complex types. Lately, I focused on debug information for arrays and the attached inter-dependent patches are an attempt to do so: - t