Added improvements to ImplicitSchema analysis, bug fixes to ImplicitSchema
[repair.git] / Repair / RepairCompiler / MCC / IR / UpdateNode.java
index e50b63fd15f344b7424dd634f73e4b5b04122cd7..7c0e5a464ab3129dc016f70f3cb52627b6471fd2 100755 (executable)
@@ -340,6 +340,7 @@ class UpdateNode {
                u.getRightExpr().generate(cr,right);
                break;
            case Updates.POSITION:
+           case Updates.ACCESSPATH:
                if (u.getRightPos()==0)
                    cr.outputline("int "+right.getSafeSymbol()+"="+slot0+";");
                else if (u.getRightPos()==1)
@@ -351,6 +352,12 @@ class UpdateNode {
            default:
                throw new Error();
            }
+
+           if (u.getType()==Updates.ACCESSPATH) {
+               VarDescriptor newright=VarDescriptor.makeNew("right");
+               /* Need to do the modulo computation here...FIXME */
+               right=newright;
+           }
            VarDescriptor left=VarDescriptor.makeNew("left");
            u.getLeftExpr().generate(cr,left);
            Opcode op=u.getOpcode();