BUG: SystemABI C_LONG and C_LONGLONG are the same
maurizio.cimadamore at oracle.com
Mon May 18 11:09:25 UTC 2020
On 18/05/2020 11:57, Ty Young wrote:
> In order to drop attributes you need to know which attributes to drop
> though, right? If someone is marking a layout with their own
> attributes willy nilly this may be impossible unless they provide the
> key strings. I also think it's a bit dangerous simply because they
> could mark a layout with the attributes but have the values be
> invalid. I can already see someone using a `long` layout that has an
> attribute "class" that points to byte.class.
> The only way I can think of solving this is by introducing
> "ContableGroup". You could then have a method that strips a layout of
> all attributes but those within the supplied group. Doing this also
> has the added benefit that a signature could be added to validate who
> the attributes belong to.
I believe we are in overthinking territory. Why would you want to
compare layouts _and_ discard only few attributes but not all? My
suspicion is that you would simply want to check if some layout is e.g.
the layout for a NativeLong - in which case (by far) the easiest way to
do that is to add a layout attribute which says
(carrier=NativeLong.class) and then just check for that (e.g. w/o doing
a full blown layout comparison).
More information about the panama-dev