8015470: (ann) IncompleteAnnotationException does not need to call toString
David Holmes
david.holmes at oracle.com
Wed May 29 01:31:16 UTC 2013
On 28/05/2013 11:08 PM, Remi Forax wrote:
> On 05/28/2013 02:48 PM, David Holmes wrote:
>> Sorry it didn't register that getName() already returns a String -
>> hence the toString() is redundant - but minimally so.
>>
>> David
>
> The second call to toString() also performs an implicit nullcheck
> (elementName can not be null).
> So if we have to fix something, it's only to remove the call to
> toString() after the call to getName().
Good catch Remi!
Otavio: I don't want to dissuade you from getting involved but as Remi
indicates your suggested change becomes simply
- super(annotationType.getName().toString() +
+ super(annotationType.getName() +
and this is such a minor change to interpreted performance (the JIT will
remove the toString call) that I don't think it is worth the process
overhead (testing etc) to actually make this change. As I said in other
email sometimes there are non-obvious reasons (like null checks :) )
that code has to be kept in its current form.
David
-----
> cheers,
> Rémi
>
>>
>> On 28/05/2013 9:15 PM, David Holmes wrote:
>>> Please see my reply under your original subject line.
>>>
>>> This is not a bug.
>>>
>>> David
>>>
>>> On 28/05/2013 7:37 PM, Otávio Gonçalves de Santana wrote:
>>>> diff --git
>>>> a/src/share/classes/java/lang/annotation/IncompleteAnnotationException.java
>>>>
>>>>
>>>> b/src/share/classes/java/lang/annotation/IncompleteAnnotationException.java
>>>>
>>>>
>>>> ---
>>>> a/src/share/classes/java/lang/annotation/IncompleteAnnotationException.java
>>>>
>>>>
>>>> +++
>>>> b/src/share/classes/java/lang/annotation/IncompleteAnnotationException.java
>>>>
>>>>
>>>> @@ -55,9 +55,9 @@
>>>> public IncompleteAnnotationException(
>>>> Class<? extends Annotation> annotationType,
>>>> String elementName) {
>>>> - super(annotationType.getName().toString() +
>>>> + super(annotationType.getName() +
>>>> " missing element " +
>>>> - elementName.toString());
>>>> + elementName);
>>>>
>>>> this.annotationType = annotationType;
>>>> this.elementName = elementName;
>>>>
>>>>
>
More information about the core-libs-dev
mailing list