On Wed, 20 Sep 2017, Nathan Sidwell wrote:
> > You can use the gcc_assert mentioned in the previous email on GCC
> > bootstrap/regtest to find examples. For me, the following example breaks
> > (no
> > command line flags needed, just bare 'cc1plus t.i'):
> >
> > struct
> > {
> > int a, b, c, d;
> > union
> > {
> > int e;
> > };
> > } s;
> >
> > 1436 gcc_assert (DECL_SOURCE_LOCATION (a) != DECL_SOURCE_LOCATION (b));
>
> Where are these two decls for the same type being generated? The bug seems to
> be there.
Don't ask me, I'm not a C++ frontend maintainer ;)
The patch in the opening message of this thread doesn't affect functionality
and is required to unblock qsort checking work. Can I install it on trunk?
If anyone wants to investigate how such decls appear in the first place, that
can be done independently of this patch.
Thanks.
Alexander