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
http://cr.openjdk.java.net/~ssides/8015323.1/webrev.01/
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
--
http://www.google.com/profiles/wdietl
More information about the type-annotations-dev
mailing list