test for inner and anon class

Werner Dietl wdietl at gmail.com
Tue Jun 4 23:55:36 PDT 2013

Hi Steve, Jon,

that URL doesn't work for me from outside Oracle, so I was expecting
somebody on the inside to push it.
I tried
but there doesn't seem to be a mapping there.

cu, WMD.

On Fri, May 24, 2013 at 1:48 PM, Steve Sides <steve.sides at oracle.com> wrote:
> On 5/23/2013 6:05 PM, Jonathan Gibbons wrote:
>> On 05/23/2013 05:55 PM, Steve Sides wrote:
>>> Hi Werner,
>>>  I updated the test I had for Inner and anonymous classes. It has been
>>> blocked by a few bugs (listed @bug) which are now fixed.
>>> However, as I started enabling the tests I ran in to a couple more. The
>>> test is here,
>>> http://cr.openjdk.java.net/~ssides/8015323/
>>> but it will fail due to these two
>>> 8015323 If class InnerAnnon is instantiated, type annotations on ia_m1()
>>> are incorrectly written to classfile.
>>> 8015257 A type annotation with ElementTypes TYPE_USE and FIELD placed on
>>> type
>>> argument is placed on the ctor if repeated and on the field if not
>>> repeated.
>>> There is currently an @ignore on the test as I wasn't sure which repo
>>> this might want to go into, and if in tl/langtools it should have the
>>> ignore.
>>> The affect parts of the test are noted in the generated test sources(if
>>> you comment out all the next lines, it'll pass).
>>> The 8015323 scenario used to crash, not they're written incorrectly.
>>> 8015727 used to not write to classfile at all if repeated, not it just
>>> writes incorrectly.
>>> The test case is a little clunky looking, but it found several bugs and I
>>> found it runs faster and is very easy to diagnose and narrow down a test
>>> case.
>>> -steve
>> Steve,
>> Nice test.
>> I don't know if it would ease maintenance, but one suggestion might be to
>> move the testsource string into a separate file, called something like
>> testsource.template, and then read it into a String use java.nio.file.Files
>> API.  I know normally we keep the template within the main source file, but
>> this template is getting pretty long.   Anyway, just a suggestion, for your
>> ease-of-use. Your call.
>> -- Jon
> I put the source in a template file. I created a new webrev for it since
> it's not checked in anywhere yet.
> http://sqeweb.us.oracle.com/coretools/ssides/webrevs/8015323.1/webrev.01/
> As is, it does not have @ignore and it fails with the buggy lines having
> comments above them in the template.
> -steve


More information about the type-annotations-dev mailing list