public void setFinal(final boolean flag) {
		if (this.isDeleted) {
			final String s = "Cannot change a field once it has been marked "
					+ "for deletion";
			throw new IllegalStateException(s);
		}

		int modifiers = fieldInfo.modifiers();

		if (flag) {
			modifiers |= Modifiers.FINAL;
		} else {
			modifiers &= ~Modifiers.FINAL;
		}

		fieldInfo.setModifiers(modifiers);
		this.setDirty(true);
	}