[
https://issues.apache.org/jira/browse/BCEL-279?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17805764#comment-17805764
]
Gary D. Gregory commented on BCEL-279:
--------------------------------------
It's odd that no one else has run into this, especially since generics have
been around for so long now. Maybe it's not on a common code path? Either way,
it sounds worthwhile.
> 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
> Priority: Major
> Fix For: 6.8.2
>
> Attachments: bcel279.patch
>
>
> 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
(v8.20.10#820010)