On 28/07/16 19:57, Paul Benedict wrote: > Alex, I thank you for repeating the explanation again, but I find your > definition hard to accept. To me, something that's synthetic is > manufactured. If the compiler automatically shims my class file with an > export to "java.base", that sounds pretty synthetic/manufactured to me. I > view that as a separate and unrelated issue to what's mandated. Why do you > believe you must bring in the knowledge of implicitness/explicitness into > your synthetic definition? > > I thought you wanted to retain the difference between what a user specified > and what something else specified? The something else here would be the JLS > or compiler.
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 Subtext: however determined you might be to pin a logical tail on the donkey of ACC_SYNTHETIC history and legacy is probaby agin ye. 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