> Please ignore the original patch, which is wrong. New patch updated,
> passed regression test.
+ for (i = next_discriminator_location - min_discriminator_location - 1;
+ i >= 0 && LOCATION_LINE (discriminator_location_locations[i]) ==
+ LOCATION_LINE (locus) &&
+ discriminator_locat
Please ignore the original patch, which is wrong. New patch updated,
passed regression test.
Dehao
On Wed, Jul 3, 2013 at 1:00 PM, Dehao Chen wrote:
> On Wed, Jul 3, 2013 at 11:25 AM, Cary Coutant wrote:
>>
>> > - locus = location_with_discriminator (
>> > - locus, next_discriminator_for_
On Wed, Jul 3, 2013 at 11:25 AM, Cary Coutant wrote:
>
> > - locus = location_with_discriminator (
> > - locus, next_discriminator_for_locus (locus));
> > + discriminator = next_discriminator_for_locus (locus);
> >
> > - if (block != NULL)
> > -locus = COMBINE_LOCATION_DATA (line_table
> - locus = location_with_discriminator (
> - locus, next_discriminator_for_locus (locus));
> + discriminator = next_discriminator_for_locus (locus);
>
> - if (block != NULL)
> -locus = COMBINE_LOCATION_DATA (line_table, locus, block);
> -
>for (gsi = gsi_start_bb (bb); !gsi_end_p (
This patch fixes the discriminator assignments for stmts. It used to
apply a signle locus for everything, which is not right (will
invalidate locus for macro expansion).
Bootstrapped and passed regression test.
OK for google-4_8?
Thanks,
Dehao
Index: gcc/input.c