Re: [RFA 4/6] Change dwarf2_cu::method_info to be a std::vector

Simon Marchi
2018-01-17T17:29:58Z

On 2018-01-17 12:15, Tom Tromey wrote:
>>>>>> "Simon" == Simon Marchi <simon.marchi@ericsson.com> writes:
>
> Simon> On 2018-01-05 07:26 PM, Tom Tromey wrote:
>>> This changes the type of dwarf2_cu::method_info and fixes up the
>>> uses.
>>> In order to remove cleanups from process_full_comp_unit and
>>> process_full_type_unit, psymtab_include_file_name also had to be
>>> changed to avoid leaving dangling cleanups.
>
> Simon> That seems ok, but I don't completely understand what's
> happening.
>
> Simon> Can you clarify how
> process_full_comp_unit/process_full_type_unit are
> Simon> related to psymtab_include_file_name? I don't see how the later
> gets
> Simon> called by the formers.
>
> The call chain looks like this:
>
> process_full_comp_unit
> -> process_die
> -> read_file_scope
> -> handle_DW_AT_stmt_list
> -> dwarf_decode_lines
> -> psymtab_include_file_name
>
> What happened formerly is that process_full_comp_unit installed an
> outer
> cleanup, and then psymtab_include_file_name took advantage of that by
> leaving some dangling cleanups.

Ok, thanks for the clarification. The patch LGTM.

Simon