[
https://issues.apache.org/jira/browse/BCEL-279?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Benedikt Ritter updated BCEL-279:
---------------------------------
Description:
When I try the following, Utility class throws ClassFormatException:
{code}
String sig =
"<T:Ljava/lang/Object;>(Lcom/google/common/io/ByteProcessor<TT;>;)TT;"
Utility.methodSignatureArgumentTypes(sig, false)
{code}
The above signature actually exists in com.google.common.io.ByteSource in
Google Guava.
Utility.methodSignatureReturnType does not throw any exception but its return
value does not look valid.
When I try this:
{code}
String sig =
"<T:Ljava/lang/Object;>(Lcom/google/common/io/ByteProcessor<TT;>;)TT;"
Utility.methodSignaturerReturnType(sig, false)
{code}
expected: java.lang.Object
actual: T
It seems that org.apache.bcel.generic.Type.java also has the same issue.
Dongsun.
was:
When I try the following, Utility class throws ClassFormatException:
{code}
String sig =
"<T:Ljava/lang/Object;>(Lcom/google/common/io/ByteProcessor<TT;>;)TT;"
Utility.methodSignatureArgumentTypes(sig, false)
{code}
The above signature actually exists in com.google.common.io.ByteSource in
Google Guava.
Utility.methodSignatureReturnType does not throw any exception but its return
value does not look valid.
When I try this:
{code}
String sig =
"<T:Ljava/lang/Object;>(Lcom/google/common/io/ByteProcessor<TT;>;)TT;"
Utility.methodSignaturerReturnType(sig, false)
expected: java.lang.Object
actual: T
{code}
It seems that org.apache.bcel.generic.Type.java also has the same issue.
Dongsun.
> Utility.methodSignature* throw ClassFormatException when converting binary
> names with generics.
> -----------------------------------------------------------------------------------------------
>
> Key: BCEL-279
> URL: https://issues.apache.org/jira/browse/BCEL-279
> Project: Commons BCEL
> Issue Type: Bug
> Components: Parser
> Affects Versions: 6.0
> Reporter: Dongsun Kim
> Fix For: 6.1
>
>
> When I try the following, Utility class throws ClassFormatException:
> {code}
> String sig =
> "<T:Ljava/lang/Object;>(Lcom/google/common/io/ByteProcessor<TT;>;)TT;"
> Utility.methodSignatureArgumentTypes(sig, false)
> {code}
> The above signature actually exists in com.google.common.io.ByteSource in
> Google Guava.
> Utility.methodSignatureReturnType does not throw any exception but its return
> value does not look valid.
> When I try this:
> {code}
> String sig =
> "<T:Ljava/lang/Object;>(Lcom/google/common/io/ByteProcessor<TT;>;)TT;"
> Utility.methodSignaturerReturnType(sig, false)
> {code}
> expected: java.lang.Object
> actual: T
> It seems that org.apache.bcel.generic.Type.java also has the same issue.
> Dongsun.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)