You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@commons.apache.org by "Benedikt Ritter (JIRA)" <ji...@apache.org> on 2016/08/20 13:46:21 UTC
[jira] [Updated] (BCEL-279) Utility.methodSignature* throw
ClassFormatException when converting binary names with generics.
[ 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)
expected: java.lang.Object
actual: T
{code}
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:
String sig = "<T:Ljava/lang/Object;>(Lcom/google/common/io/ByteProcessor<TT;>;)TT;"
Utility.methodSignatureArgumentTypes(sig, false)
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:
String sig = "<T:Ljava/lang/Object;>(Lcom/google/common/io/ByteProcessor<TT;>;)TT;"
Utility.methodSignaturerReturnType(sig, false)
expected: java.lang.Object
actual: T
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
>
> 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.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)