commons-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Mark Roberts (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (BCEL-276) LocalVariableTypeTable is not updated.
Date Wed, 11 Jan 2017 17:42:48 GMT

    [ https://issues.apache.org/jira/browse/BCEL-276?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15818938#comment-15818938
] 

Mark Roberts commented on BCEL-276:
-----------------------------------

I was able to get the code working to pass both your tests and my tests, but there were two
issues that needed to be fixed. First, when copying the LocalVariableTypeTable, you need to
make a true copy, not just save the pointer. Approx line 229. The other change is more complex.
You cannot match a LocalVariable and a LocalVariableType based on having the same index and
it may have been modified. I Added code to LocalVariable.java and LocalVariableGen.java to
maintain a copy of the original index of a LocalVariable and then use this for matching.

I have attached three diff files with my changes.

> LocalVariableTypeTable is not updated. 
> ---------------------------------------
>
>                 Key: BCEL-276
>                 URL: https://issues.apache.org/jira/browse/BCEL-276
>             Project: Commons BCEL
>          Issue Type: Bug
>    Affects Versions: 6.0
>            Reporter: Sam Yoon
>            Assignee: Benedikt Ritter
>              Labels: github
>             Fix For: 6.1
>
>         Attachments: LocalVariableTypeTableTest.java, MethodGen.diff, SimpleClassHasMethodIncludeGenericArgument.java
>
>
> If a method for BCI have at least one generic type of argument JVM throw java.lang.ClassFormatError
due to not updated LocalVariableTable.
> I know there is workaround as call removeLocalVariables method.
> But I think it's better that BCEL can stay proper LocalVariableTable.
> I'm also pull test case can reproduce error.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Mime
View raw message