*            or local variables.
	 */
	private void addInst(final Instruction inst, final boolean saveValue) {
		if (Tree.DEBUG) {
			// Print the contents of the stack
			for (int i = 0; i < stack.size(); i++) {
				final Expr exp = stack.peek(i);
				System.out.println((i > 0 ? "-" + i : " " + i) + ": " + exp);
			}
		}

		if (Tree.DEBUG) {
			System.out.println("    add " + inst + " save=" + saveValue);
		}

		try {
			this.saveValue = saveValue;

			if (Tree.FLATTEN) {
				saveStack();
			}

			inst.visit(this);

		} catch (final EmptyStackException e) {
			throwClassFormatException("Empty operand stack at " + inst);
			return;
		}
	}