Fix internal error on library-level type extended locally
authorEric Botcazou <ebotcazou@adacore.com>
Mon, 7 Dec 2020 09:48:06 +0000 (10:48 +0100)
committerEric Botcazou <ebotcazou@adacore.com>
Mon, 7 Dec 2020 09:48:06 +0000 (10:48 +0100)
commit67c4d1c7addc88c2d133731cf81ffad7d50fa8b9
treeef65a492ce3d80d8aeb7316514183dc173300441
parent6a1e04b2f0c28d46e193d30aac00a32ba850bf0a
Fix internal error on library-level type extended locally

The compiler aborts on the local extension of a tagged type declared
at library level, with a progenitor given by an interface type having
a primitive that is a homograph of a primitive of the tagged type.

gcc/ada/ChangeLog:
* gcc-interface/trans.c (maybe_make_gnu_thunk): Return false if the
target is local and thunk and target do not have the same context.
gcc/ada/gcc-interface/trans.c