Error during analysis of nested try/catch/finally blocks
Let me start by saying that I really like ASM.
I've run into a case where the analysis functionality appears to dislike some
code that I believe is actually correct. The attached Java source code
compiles correctly. In this circumstance, the output has been compiled by the
Eclipse compiler, so I suppose there is a chance that the resulting code is
different than the same code from javac. (I can attach the compiled class as
necessary) In addition, running this compiled class through Sun's J2ME
preverifier works as expected as well. Running the compiled code through "new
Analyzer(new SimpleVerifier())", yields the following exception which occurs at
line 458 of Analyzer.java. This is using ASM 1.5.3.
NOTE: I realize this example code is sort of silly, but it was formulated to
test some specific things in my functionality.
org.objectweb.asm.tree.analysis.AnalyzerException: Error at instruction 142:
Overlapping sub routines
at org.objectweb.asm.tree.analysis.Analyzer.analyze(Analyzer.java:241)
at
eclipseme.preverifier.impl.MethodHandler.getUpdatedMethod(MethodHandler.java:246)