private void removeJSR(FlowBlock tryFlow, FlowBlock subRoutine) {
		for (Jump jumps = tryFlow.removeJumps(subRoutine); jumps != null; jumps = jumps.next) {

			StructuredBlock prev = jumps.prev;
			prev.removeJump();

			if (prev instanceof EmptyBlock && prev.outer instanceof JsrBlock
					&& ((JsrBlock) prev.outer).isGood()) {
				StructuredBlock next = prev.outer.getNextBlock();
				prev.outer.removeBlock();
				if (next instanceof ReturnBlock)
					removeReturnLocal((ReturnBlock) next);
			} else {
				/*
				 * We have a jump to the subroutine, that is badly placed. We
				 * complain here.
				 */
				DescriptionBlock msg = new DescriptionBlock(
						"ERROR: invalid jump to finally block!");
				prev.appendBlock(msg);
			}
		}
	}