> The problem here is that we're trying to compare the TYPE_FIELDS of
> two variants of an incomplete type, which doesn't make sense; we
> shouldn't expect TYPE_FIELDS of an incomplete type to be meaningful.
> 
> Tested x86_64-pc-linux-gnu.  OK for trunk?

> commit c6f5cd55d0bbebc2fa46628ebb8fdec2a44abf3a
> Author: Jason Merrill <ja...@redhat.com>
> Date:   Wed Nov 25 10:47:03 2015 -0500
> 
>       PR middle-end/66214
>     
>       * tree.c (gimple_canonical_types_compatible_p) [RECORD_TYPE]:
>       Don't try to compare the fields of incomplete types.

This makes sense to me.  I would still add a check that incomplete types have to
TYPE_FIELDS during LTO so we are sure that all types are either completed or
have no fields at all once the frontends are done.

Honza

Reply via email to