Flag missing with "requires java.base"?

Paul Benedict pbenedict at apache.org
Tue Aug 2 17:12:46 UTC 2016

Correct me if wrong, but it seems there is no universal way to flag
something as compiler/tool generated. My take away from Alex's comments is
that ACC_SYNTHETIC is very much concerned with implicitness/explicitness...
but why? I still don't understand why it *must* be concerned anything like
that. I'd just like to state that definition sounds overloaded to me.

Furthermore, I think the definition of ACC_MANDATED is overloaded too. If
the JLS mandates a construct, it must be in the class file -- yet why does
the means matter? I prose the flag should mean no more than a mandate. It's
mandated so it must exist -- how it got there is irrelevant to me with
regard to this flag.

So doesn't anyone (Alex? Andrew?) find value in universally specifying
something was generated? That's what I thought ACC_SYNTHETIC could be used
for. If there is pushback on this idea, is there a universal way that I
have neglected to see?


On Mon, Aug 1, 2016 at 6:51 AM, Andrew Dinn <adinn at redhat.com> wrote:

> On 29/07/16 19:34, Alex Buckley wrote:
> > On 7/29/2016 12:48 AM, Andrew Dinn wrote:
> >> It might be worth pointing out at this stage in the discussion that
> >> ACC_SYNTHETIC was never given a hard and fast meaning whose logic
> >> transcends the vagaries of what javac decided to use it for -- citation,
> >> Neal Gafter in a thread I was involved in many years ago on the meaning
> >> of this term:
> >>
> >> Said definition:
> >>
> >>
> http://mail.openjdk.java.net/pipermail/compiler-dev/2010-August/002257.html
> >>
> >>
> >> and explanation:
> >>
> >>
> http://mail.openjdk.java.net/pipermail/compiler-dev/2010-August/002258.html
> >>
> >
> > On the contrary, Neal and I agree on the hard and fast meaning of
> > ACC_SYNTHETIC. The second link says:
>   ...
> Well, it's rather a moot point as to whether it is you and Neal or, as I
> phrased it, "the vagaries of what javac decided to use [SYNTHETIC] for"
> that constitutes the determining factor since obviously javac didn't
> really 'decide' anything except by way of proxy for those who informed
> it's construction as a piece of code.
> My point was not that ACC_SYNTHETIC did not have a determinate meaning
> (which is what you seem to take me as saying) rather that the decision
> as to what it means was made within the scope of what javac wanted to do
> with this property and that said meaning is not up for grabs for some
> external program to freight with its own semantic content. That is
> precisely (yes, I do mean precisely) what my exchange with Neal
> established.
> regards,
> Andrew Dinn
> -----------
> Senior Principal Software Engineer
> Red Hat UK Ltd
> Registered in England and Wales under Company Registration No. 03798903
> Directors: Michael Cunningham, Michael ("Mike") O'Neill, Eric Shander

More information about the jigsaw-dev mailing list