Bug 96183 [reconciling] Incremental compiler falsely complains after method moved.
Move the method from Source.java to Target.java. The result is legal, but Source.java falsely shows an error indication (red x). Add some whitespace anywhere in Source.java and the error indicator rightfully goes away! -------------------- Target.java -------------------------- package bug; public class Target {} -------------------- Source.java BEFORE ------------------- class Source { public static String noop(){return "";} {noop().toString();} } -------------------- Source.java AFTER ------------------- import bug.Target; class Source { {Target.noop().toString();} // ERROR INDICATED FALSELY! }
org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/text/JavaReconciler.java
}
	/*
	 * @see org.eclipse.jface.text.reconciler.MonoReconciler#process(org.eclipse.jface.text.reconciler.DirtyRegion)
	 */
	protected void process(DirtyRegion dirtyRegion) {
		
		synchronized (fMutex) {
			super.process(dirtyRegion);
		}
	}
	/**
	 * Tells whether the Java Model has changed or not.
	 *
	 * @return <code>true</code> iff the Java Model has changed
	 * @since 3.0
	 */
	private synchronized boolean hasJavaModelChanged() {
		return fHasJavaModelChanged;
	}
	/**
	 * Sets whether the Java Model has changed or not.
	 *
	 * @param state <code>true</code> iff the java model has changed
	 * @since 3.0
	 */
	private synchronized void setJavaModelChanged(boolean state) {
		fHasJavaModelChanged= state;
	}
}