From 4c039897051948fe16d0bd9e7e4e3f3ef3e350fe Mon Sep 17 00:00:00 2001 From: jochen Date: Sun, 27 Jun 1999 21:02:43 +0000 Subject: [PATCH] simplifyAccess in doTransformations() git-svn-id: https://svn.code.sf.net/p/jode/code/trunk@933 379699f6-c40d-0410-875b-85095c16579e --- jode/jode/flow/InstructionContainer.java | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/jode/jode/flow/InstructionContainer.java b/jode/jode/flow/InstructionContainer.java index 355b5a0..d907b7b 100644 --- a/jode/jode/flow/InstructionContainer.java +++ b/jode/jode/flow/InstructionContainer.java @@ -20,6 +20,7 @@ package jode.flow; import jode.decompiler.LocalInfo; import jode.expr.Expression; +import jode.expr.InvokeOperator; import jode.expr.LocalVarOperator; import jode.util.SimpleSet; @@ -78,6 +79,16 @@ public abstract class InstructionContainer extends StructuredBlock { } public boolean doTransformations() { + if (instr == null) + return false; + /* Do on the fly access$ transformation, since some further + * operations need this. + */ + if (instr instanceof InvokeOperator) { + Expression expr = ((InvokeOperator)instr).simplifyAccess(); + if (expr != null) + instr = expr; + } StructuredBlock last = flowBlock.lastModified; return CreateNewConstructor.transform(this, last) || CreateAssignExpression.transform(this, last)