anchor.diff:            make.block(
                 [make.returnStatement(make.functionInvocation(loopName))]),
             make.block(
  -              [make.returnStatement(make.functionInvocation(breakName))])));
  +              [make.assignmentExpression(
  +                   make.identifier(inLoopName), make.booleanLiteral(false)),
  +               make.returnStatement(make.functionInvocation(breakName))])));
       });
   
       var loopBlock = currentBlock = make.emptyBlock();
  
positive.code:           expr,
            bodyBlock,
            make.block(
                [make.returnStatement(make.functionInvocation(breakName))])));
        });
      } else {
        addStatement(bodyBlock);
  
negative.code:       currentBlock = savedBlock;
        addStatement(make.ifStatement(
          expr,
          bodyBlock,
          make.block(
              [make.assignmentExpression(
                   make.identifier(inLoopName), make.booleanLiteral(false)),
               make.returnStatement(make.functionInvocation(breakName))])));
      });
  
      breakTargets = savedBreakTargets;
  