switch to amber-spec-experts, because it's about the binary representation of a 
Record in the classfile.

----- Mail original -----
> De: "Maurizio Cimadamore" <maurizio.cimadam...@oracle.com>
> À: "Harold David Seigel" <harold.sei...@oracle.com>, "amber-dev" 
> <amber-...@openjdk.java.net>
> Envoyé: Jeudi 10 Octobre 2019 22:03:23
> Objet: Re: Class.getRecordComponent() javadoc doesn't specify its behavior if 
> the accessor of a record component is not
> present

> It's the usual question: do we fail when we access things reflectively
> that don't seem to be there (either fully or partially) ? Or do we
> silently ignore?
> 
> I know that we have examples of both; for instance, nestmates went the
> 'throw an exception' path if a member of the nest cannot be found; but
> annotations went a different path, and annotations that are not found
> are simply discarded.
> 
> One might argue that annotations are 'metadata' so less crucial than
> properties such as record component-ness or nestmate-ness. But still
> there's a choice.
> 
> And, whatever we do, we should probably be consistent with any kind of
> error that could popup when parsing the record component attribute, such
> as illegal modifiers and such. But, I guess for missing annotations on a
> record component we should be consistent with the rest of the JDK, and
> just drop them on the floor.

Technically a record component as no modifier, and yes this worry me a bit 
because it's not very future proof,
we may decide to add null/non-null keywords later, that said, we can still use 
a new attribute (an attribute of the record component) for that.

> 
> Maurizio

Rémi

Reply via email to