[ 
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)

Reply via email to