--- old/jaxp/src/com/sun/org/apache/bcel/internal/generic/LineNumberGen.java 2013-05-15 10:29:02.000000000 +0200 +++ new/jaxp/src/com/sun/org/apache/bcel/internal/generic/LineNumberGen.java 2013-05-15 10:29:02.000000000 +0200 @@ -58,7 +58,6 @@ * . */ -import com.sun.org.apache.bcel.internal.Constants; import com.sun.org.apache.bcel.internal.classfile.*; /** @@ -88,6 +87,7 @@ /** * @return true, if ih is target of this line number */ + @Override public boolean containsTarget(InstructionHandle ih) { return this.ih == ih; } @@ -96,6 +96,7 @@ * @param old_ih old target * @param new_ih new target */ + @Override public void updateTarget(InstructionHandle old_ih, InstructionHandle new_ih) { if(old_ih != ih) throw new ClassGenException("Not targeting " + old_ih + ", but " + ih + "}"); @@ -113,12 +114,13 @@ return new LineNumber(ih.getPosition(), src_line); } - public void setInstruction(InstructionHandle ih) { - BranchInstruction.notifyTarget(this.ih, ih, this); - + public final void setInstruction(InstructionHandle ih) { + BranchInstruction.notifyTargetChanging(this.ih, this); this.ih = ih; + BranchInstruction.notifyTargetChanged(this.ih, this); } + @Override public Object clone() { try { return super.clone();