<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
<html>
<head>
   <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
   <meta name="Author" content="IBM">
   <meta name="GENERATOR" content="Mozilla/4.75 [en] (Windows NT 5.0; U) [Netscape]">
   <title>JDT/Core Release Notes</title>

</head>
<body>

<body text="#000000" bgcolor="#FFFFFF">
&nbsp;

<table border=0 cellspacing=5 cellpadding=2 width="100%" >
  <tr> 
    <td align=left width="72%">
      <font face="Verdana, Arial, Helvetica" size="+3"><b>jdt core build notes</b></font>
      <br><font face="Arial, Helvetica, sans-serif" size="-2" color="#8080ff">java development tooling core</font></td>
  </tr>
	<tr><td>&nbsp;</td></tr>
  <tr>
  	<td>
	  <font face="Arial, Helvetica, sans-serif" size="-1">
	  Here are the build notes for the Eclipse JDT/Core plug-in project 
	  <a href="http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/jdt-core-home/main.html"><b>org.eclipse.jdt.core</b></a>, 
	  describing bug resolution and substantial changes in the <a href="http://dev.eclipse.org/viewcvs/index.cgi/org.eclipse.jdt.core"><b>HEAD</b></a> branch. Most recent information is listed first.
	  </font>
	</td>
  </tr>
</table>

<p><hr><h1>
Eclipse Platform Build Notes&nbsp;<br>
Java Development Tooling Core</h1>
Eclipse SDK 2.0 Build - 5th August 2002
<br>Project org.eclipse.jdt.core v_271
<h2>
What's new in this drop</h2>
<ul>
<li> Deprecation warning inside deprecated code are now ignored by default. A new JavaCore option
allows to report them all.
<pre>
*	COMPILER / Reporting Deprecation Inside Deprecated Code
*		When enabled, the compiler will signal use of deprecated API inside deprecated code.
*     The severity of the problem is controlled with option "org.eclipse.jdt.core.compiler.problem.deprecation".
*     		- option id:		"org.eclipse.jdt.core.compiler.problem.deprecationInDeprecatedCode"
*     		- possible values:	{ "enabled", "disabled" }
*     		- default:			"disabled"
</pre>
</li>
<li> Compiler can now optionally collect TODO tasks from the source code. Occurrences of
a TODO tag are looked for inside any type of comments, and reported along with problems.
 <ul>
 <li> New problem ID got created: <code>org.eclipse.jdt.core.compiler.IProblem#ToDo</code>.
 </li>
 <li> JavaCore option added to control the severity of TODO reports (ignore/warning/error).
<pre>
* COMPILER / Reporting occurrences of TODO tags in comments
*    When enabled, the compiler will issue an error or a warning whenever it encounters
*    a TODO tag inside any comment. The tag value itself is defined by the option
*    "org.eclipse.jdt.core.compiler.problem.todoTag".
*     - option id:			"org.eclipse.jdt.core.compiler.problem.todo"
*     - possible values:	{ "error", "warning", "ignore" }
*     - default:			"ignore"
</pre>
 </li>
 <li> JavaCore option added for specifying the TODO tag value (default is <code>"TODO:"</code>).
<pre>
* COMPILER / Define the TODO task tag
*    Define the tag used to recognize TODO tasks in comments.
*     - option id:			"org.eclipse.jdt.core.compiler.problem.todoTag"
*     - possible values:	"<t>" where <t> is a non-empty string, without any wild-card.
*     - default:			"TODO:"
</pre>	 
 </li>
 </ul>
</li>
<li> Creating a working copy on a non-existing ICompilationUnit is now allowed. 
       Such a working copy will have its contents initialized to an empty string.
       Commiting this working copy creates the underlying compilation unit.
</li>
</ul> 
<h3>Problem Reports Fixed</h3>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=23054">23054</a>
DOM - TypeDeclaration.getJavadoc() can find incorrect javadoc
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=22054">22054</a>
Can't extract local variable from super send [refactoring]
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=22161">22161</a>
AST: Innerclass name: Positions wrong
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=22526">22526</a>
Warning given when implementing deprecated methods
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=23050">23050</a>
DOM - IVariableBinding.getModifiers() doesn't give final modifier for local variables
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=22939">22939</a>
ast: incorrect range for a name in brackets
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=22458">22458</a>  
Refactoring a package does not move the package's directory  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=6976">6976</a>
Auto collect tasks from code
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=23052">23052</a>
DOM - CCE calling resolveBinding on an on-demand import from a type
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=22635">22635</a>
recompile doesn't happen
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=23118">23118</a>
AST: BreakStatement & ContinueStatement: wrong length
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=23048">23048</a>
DOM - lazy initialization of empty loop bodies causes binding resolution to fail
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=22203">22203</a>
More dependencies increase GUI waiting time [build path]
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=11529">11529</a>
ast: missing (?) binding on simpleName in VariableDeclaration 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=8921">8921</a>  
DCR - Need a way to create a working copy ignoring existing files  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=22673">22673</a>  
VerifyError in char cast of static final char referenced through instance
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=23075">23075</a>  
Wrong compiling of inner classes
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=23077">23077</a>  
search: does not find type references in some imports 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=22942">22942</a>  
JavaProject.exists returns true when it should not  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=22517">22517</a>  
Cannot create type X in project Test if d:\test\X.java exists  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=18684">18684</a>  
Organize Imports doesn't work on external Jars  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=22946">22946</a>  
search: NPE  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=22637">22637</a>  
AST: Typos in Javadoc Assignment.Operator
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=17210">17210</a>  
No match found when query contains '?'  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=21420">21420</a>  
Changing .classpath doesn't update JDT  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=21485">21485</a>  
NPE when doing a reference search to a package  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=22428">22428</a>
Compiler 1.4 - should report visibility issue for shadowed protected method
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=22418">22418</a>
Should not complain about package for empty units
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=22102">22102</a>  
Not all implementors found for IPartListener  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=20631">20631</a>  
Declaration of local binary type not found  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=20435">20435</a>  
NPE when searching java method  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=22334">22334</a>
Compiler generates corrupt classes
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=22361">22361</a>
Error in javadoc for JavaCore.getResolvedClasspathEntry
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=21749">21749</a>
Exported libraries and source folders

<h3>Problem Reports Closed</h3>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=19466">19466</a>  
Delta processing should only consider delta inside prefix/suffix of package fragment root paths  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=23055">23055</a>
DOM - SuperMethodInvocation.resolveTypeBinding() returns null 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=21843">21843</a>  
Qualifier in "Type Hierarchy" View  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=21158">21158</a>  
Deadlock on startup  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=22883">22883</a>  
IJavaProject::find(String) returns null for non-primary top-level types  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=22123">22123</a>  
Inability to put a classpath var pointing to a dir inside the project which is one dir up from output dir  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=12496">12496</a>  
Creating a type hierarchy should not populate java model cache  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=22453">22453</a>
Compiler Problem
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=22149">22149</a>
jdk compiles but eclipse does not

<p><hr><h1>
Eclipse Platform Build Notes&nbsp;<br>
Java Development Tooling Core</h1>
Eclipse SDK 2.0 Build - 1st August 2002
<br>Project org.eclipse.jdt.core v_270
<h2>
What's new in this drop</h2>
<ul>
</ul> 
<h3>Problem Reports Fixed</h3>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=22093">22093</a>
VerifyError due to duplicate access method
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=21916">21916</a>
VariableDeclarationExpression

<h3>Problem Reports Closed</h3>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=21911">21911</a>
NPE in the compiler
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=7517">7517</a>
No control of formatting fo do {} while blocks
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=22078">22078</a>
Incorrect error message


<p><hr><h1>
Eclipse Platform Build Notes&nbsp;<br>
Java Development Tooling Core</h1>
Eclipse SDK 2.0 Build - 30th July 2002
<br>Project org.eclipse.jdt.core v_269
<h2>
What's new in this drop</h2>
<ul>
<li>Add a new API getRawTokenSource() on org.eclipse.jdt.core.compiler.IScanner. It should be used if the user doesn't
want the Unicode characters to be processed, otherwise use getCurrentTokenSource().</li>
</ul> 
<h3>Problem Reports Fixed</h3>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=21912">21912</a>
Compiler probleme: continue statement with label identifier
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=21358">21358</a>
DOM/AST: setLeadingComment and setJavadocComment doesn't support Unicode
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=21828">21828</a>
Possible problem in DoStatement#accept0(...)
  
<h3>Problem Reports Closed</h3>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=3458">3458</a>
Resource folders containing source (1G4CKG9)
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=21627">21627</a>
Compiled class error on iSeries
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=21723">21723</a>
Getting java.lang.OutOfMemoryError
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=16176">16176</a>
References to private fields could be optimized
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=21109">21109</a>
Have option for compiler warning on use of static field/method through reference
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=3357">3357</a>
DCR - Add compiler option (1GJJQAD)
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=21879">21879</a>
Search could be optimized based on visibility
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=21868">21868</a>
No return statement for code with infinite loop
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=20820">20820</a>
Squiggly line is at a bad place for missing return statement

<p><hr><h1>
Eclipse Platform Build Notes&nbsp;<br>
Java Development Tooling Core</h1>
Eclipse SDK 2.0 Build - 23rd July 2002
<br>Project org.eclipse.jdt.core v_268
<h2>
What's new in this drop</h2>
<ul>
<li>Added optional compiler problem for signalling non-static invocations of static field/methods
(see <code>JavaCore.COMPILER_PB_STATIC_ACCESS_RECEIVER()</code>)
</li>
<li>Compilation problem descriptions are now shortened (qualified type arguments
are dequalified in the problem message, problem arguments are left fully qualified).
</li>
</ul> 
<h3>Problem Reports Fixed</h3>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=20402">20402</a>
Error Description too long, should not list full class name
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=21778">21778</a>
ClassFileReader fails on Gnome Twain class
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=21787">21787</a>
Provide compiler warning of using static method via non-static style.
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=21768">21768</a>
ast: incorrect length of SimpleName in MethodDeclaration
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=21757">21757</a>
ast: incorrect range for Name in TypeDeclaration
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=21754">21754</a>
typo in IType::getSuperInterfaceNames javadoc
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=21672">21672</a>
Wrong location for the last 'return' bytecode command

<h3>Problem Reports Closed</h3>

<p><hr><h1>
Eclipse Platform Build Notes&nbsp;<br>
Java Development Tooling Core</h1>
Eclipse SDK 2.0 Build - 22nd July 2002
<br>Project org.eclipse.jdt.core v_267
<h2>
What's new in this drop</h2>
<ul>
</ul> 

<h3>Problem Reports Fixed</h3>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=21606">21606</a>
ImageBuilder deletes & adds rather than overwriting

<h3>Problem Reports Closed</h3>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=21282">21282</a>
IType.getFullyQualifiedName() problems
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=21182">21182</a>
unimplemented method error after implementing in super
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=21682">21682</a>
marking a method deprecated doesn't eleminate deprecated warning
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=21556">21556</a>
"Missing code implementation in the compiler"

<p><hr><h1>
Eclipse Platform Build Notes&nbsp;<br>
Java Development Tooling Core</h1>
Eclipse SDK 2.0 Build - 15th July 2002
<br>Project org.eclipse.jdt.core v_266
<h2>
What's new in this drop</h2>
<ul>
</ul> 

<h3>Problem Reports Fixed</h3>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=21580">21580</a>
VerifyError in 1.4 compliant mode
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=21557">21557</a>
VM bug prevents valid Java code to be executed on VM < 1.3.1

<h3>Problem Reports Closed</h3>

<p><hr><h1>
Eclipse Platform Build Notes&nbsp;<br>
Java Development Tooling Core</h1>
Eclipse SDK 2.0 Build - 12th July 2002
<br>Project org.eclipse.jdt.core v_265
<h2>
What's new in this drop</h2>
<ul>
<li>Changed ASCII/binary property for entire project.</li>
</ul> 

<h3>Problem Reports Fixed</h3>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=21230">21230</a>
Rebuilding project fails with ContextStackOverflow (CompilationResult.quickPrioritize)
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=21203">21203</a>
Compile time NullPointerException in catch blocks
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=21447">21447</a>
Wrong method invoked at runtime
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=21482">21482</a>
Error in generated byte code
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=21480">21480</a>
Bytecode disassembler doesn't handle #invokespecial correctly
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=20725">20725</a>
JavaBuilder.toString can throw NPE
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=20865">20865</a>
nullPointerException being thrown by Class Type.resolveBinding()
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=21116">21116</a>  
Can't compile because eclipse says that the method is not visible

<h3>Problem Reports Closed</h3>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=21049">21049</a>  
Save (Build / Compile?) performance
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=20961">20961</a>  
Can't get complete classpath for project.
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=21428">21428</a>  
DOM/AST: AST class unnecessarily plug-in dependent?
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=21175">21175</a>  
Incorrectly identified: Catch block is hidden by another one in the same try statement
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=20059">20059</a>  
project.isOnClassPath(project) result random  

<p><hr><h1>
Eclipse Platform Build Notes&nbsp;<br>
Java Development Tooling Core</h1>
Eclipse SDK Build GM5 - 27th June 2002 - RELEASE 2.0 (R2_0)
<br>Project org.eclipse.jdt.core v_264
<h2>
What's new in this drop</h2>
<ul>
<li>Changed ASCII/binary property for 'about.html' file to ASCII.</li>
</ul> 

<h3>Problem Reports Fixed</h3>

<h3>Problem Reports Closed</h3>

<p><hr><h1>
Eclipse Platform Build Notes&nbsp;<br>
Java Development Tooling Core</h1>
Eclipse SDK Build GM4 - 26th June 2002
<br>Project org.eclipse.jdt.core v_263
<h2>
What's new in this drop</h2>
<ul>
</ul> 

<h3>Problem Reports Fixed</h3>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=20553">20553</a>  
Doc - Javadocs of 2.0 classes must specify if the class is intended to be instantiated or subclassed by client.  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=20442">20442</a>  
Doc - Javadoc missing in ICodeSnippetRequestor  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=20550">20550</a> 
Doc - fields of CorrectionEngine should not be API
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=20872">20872</a>  
Doc - the javadoc is not correct for ICodeAssist#codeSelect
<br>

<h3>Problem Reports Closed</h3>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=20936">20936</a>  
nullpointer exception in org.eclipse.jdt.internal.core.builder.JavaBuilder

<p><hr><h1>
Eclipse Platform Build Notes&nbsp;<br>
Java Development Tooling Core</h1>
Eclipse SDK Build 20020624 - 24th June 2002
<br>Project org.eclipse.jdt.core v_262
<h2>
What's new in this drop</h2>
<ul>
<li>Updated about.html file.
</li>
</ul> 

<h3>Problem Reports Fixed</h3>

<h3>Problem Reports Closed</h3>

<p><hr><h1>
Eclipse Platform Build Notes&nbsp;<br>
Java Development Tooling Core</h1>
Eclipse SDK Build 20020621 - 21st June 2002
<br>Project org.eclipse.jdt.core v_261
<h2>
What's new in this drop</h2>
<ul>
</ul> 

<h3>Problem Reports Fixed</h3>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=20693">20693</a>  
Finding references to variables does not find all occurances
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=20011">20011</a>  
Searching for Inner Classes gives bad search results
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=20520">20520</a>  
Refactor - expression detection incorrect

<h3>Problem Reports Closed</h3>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=20643">20643</a>  
Java Projects disappear

<p><hr><h1>
Eclipse Platform Build Notes&nbsp;<br>
Java Development Tooling Core</h1>
Eclipse SDK Build 20020620 - 20th June 2002
<br>Project org.eclipse.jdt.core v_260
<h2>
What's new in this drop</h2>
<ul>
</ul> 

<h3>Problem Reports Fixed</h3>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=20532">20532</a>  
Declaration of member binary type not found  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=19799">19799</a>  
More problems with importing.  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=16140">16140</a>
Non-java project gets .classpath

<h3>Problem Reports Closed</h3>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=20659">20659</a>  
Compile/rebuild analysis: white space causes large rebuild

<p><hr><h1>
Eclipse Platform Build Notes&nbsp;<br>
Java Development Tooling Core</h1>
Eclipse SDK Build 20020618 - 18th June 2002
<br>Project org.eclipse.jdt.core v_259
<h2>
What's new in this drop</h2>
<ul>
<li>Updated about.html file with reference to CPL 1.0.
</li>
</ul> 

<h3>Problem Reports Fixed</h3>

<h3>Problem Reports Closed</h3>

<p><hr><h1>
Eclipse Platform Build Notes&nbsp;<br>
Java Development Tooling Core</h1>
Eclipse SDK Build 20020617 - 17th June 2002
<br>Project org.eclipse.jdt.core v_258
<h2>
What's new in this drop</h2>
<ul>
<li>Removed deprecated 2.0 temporary API: <code>IWorkingCopy#findSharedWorkingCopy()</code> which was no longer used anyway. Proper API is taking 
a <code>IBufferFactory</code> in argument.</li>
</ul> 

<h3>Problem Reports Fixed</h3>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=20427">20427</a>
J9c needs internal batch compiler methods to be public
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=20309">20309</a>
cannot code resolve on binary method with member type arguments
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=20158">20158</a>
Close and reopen a project does not remove errors
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=20325">20325</a>
CP Variable - should not persist "initialization in progress" value
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=20173">20173</a>
Open type from a jar located inside a closed project.
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=20135">20135</a>
2.0 deprecated method

<h3>Problem Reports Closed</h3>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=20359">20359</a>
classpath variable ECLIPSE_HOME not initialized on startup
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=20261">20261</a>
cycle in classpath detection seems overzealous
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=19826">19826</a>
livelock during indexing?
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=20048">20048</a>
Minimize recompilation
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=20053">20053</a>
interface with same-named method generates compile error

<p><hr><h1>
Eclipse Platform Build Notes&nbsp;<br>
Java Development Tooling Core</h1>
Eclipse SDK Build 20020612 - 12th June 2002 - FREEZE 3
<br>Project org.eclipse.jdt.core v_257
<h2>
What's new in this drop</h2>
<ul>
</ul> 

<h3>Problem Reports Fixed</h3>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=19537">19537</a>
Internal error saving file (jzentry == 0)
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=19917">19917</a>
Code Assist incorrect for hidden interface fields

<h3>Problem Reports Closed</h3>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=19916">19916</a>
Error accessing value from uninitialized localvariable
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=19566">19566</a>
Invalid ClassCastException thrown at runtime
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=3306">3306</a>
Can't compile JDK src
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=19851">19851</a>
IllegalArgumentException in refactor-extract method 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=7272">7272</a>
Open on selection not working in external JARs
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=14219">14219</a>
EOF exception after building in imported plugin with extracted source
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=18290">18290</a>
Incorrect errors reported during reconciling

<p><hr><h1>
Eclipse Platform Build Notes&nbsp;<br>
Java Development Tooling Core</h1>
Eclipse SDK Build 20020611 - 11th June 2002 
<br>Project org.eclipse.jdt.core v_256
<h2>
What's new in this drop</h2>
<ul>
<li> Added protection around listener callback invocations (using <code>ISafeRunnable</code>). </li>
<li> Removed 2 unused deprecated constants on <code>IJavaSearchConstants</code>: READ_REFERENCES and WRITE_REFERENCES.
They were annoted with intention to discard before 2.0 since were temporarily introduced and deprecated (due to bad naming).
<pre>
	/** 
	 * @deprecated - use WRITE_ACCESSES instead (will be discarded before 2.0)
	 * @since 2.0
	 */
	int WRITE_REFERENCES = WRITE_ACCESSES;
	</pre></li>
</ul> 

<h3>Problem Reports Fixed</h3>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=19714">19714</a>
Eclipse crashes: Drag & Drop
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=19794">19794</a>
Method body change may result in massive recompilation
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=18983">18983</a>
Replacing binary project doesn't trigger build
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=18953">18953</a>
Package disapears when disconnected from CVS repopsitory
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=19638">19638</a>
Open Type Hierarchy can start infinite progress monitor
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=19687">19687</a>
Preferences not working with import/export
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=19512">19512</a>
ArrayIndexOutOfBound during incremental build
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=18922">18922</a>
Scrapbook does not come back when errors in snippet  

<h3>Problem Reports Closed</h3>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=19808">19808</a>
core ClassCastException exception in log
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=19882">19882</a>
maybe a cu's single type can be its proimary type too
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=19586">19586</a>
Java project removed from Projects view
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=15972">15972</a>
JAR file from classpath not indexed
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=18680">18680</a>
Classpath Loop

<p><hr><h1>
Eclipse Platform Build Notes&nbsp;<br>
Java Development Tooling Core</h1>
Eclipse SDK Build 20020606 - 6th June 2002 
<br>Project org.eclipse.jdt.core v_255
<h2>
What's new in this drop</h2>
<ul>
<li>Removed deprecated API on <code>IJavaProject</code>. These were not in 1.0, and shouldn't have been
introduced (incorrectly resurrected from 0.9).
  <ul>
	<li><code>IJavaProject#getClasspath(...) --&gt; IJavaProject#getRawClasspath(...) </code></li>
	<li><code>IJavaProject#setClasspath(...) --&gt; IJavaProject#setRawClasspath(...) </code></li>
	<li><code>IJavaProject#newProjectEntry(...) --&gt; JavaCore#newProjectEntry(...) </code></li>
	<li><code>IJavaProject#newLibraryEntry(...) --&gt; JavaCore#newLibraryEntry(...) </code></li>
	<li><code>IJavaProject#newSourceEntry(...) --&gt; JavaCore#newSourceEntry(...) </code></li>
  </ul>
</li>
</ul> 

<h3>Problem Reports Fixed</h3>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=19303">19303</a>  
Open type does not show all type.
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=14109">14109</a>  
Deadlock between ProblemTreeViewer refresh and reconciler
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=19254">19254</a>  
Some local variable completion proposals are missed
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=19131">19131</a>  
NPE when removing a project containing missing classfile folder
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=19058">19058</a>  
Closing non-java project doesn't remove root from java project  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=18584">18584</a>  
New 2.0 APIs marked as deprecated should be removed
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=18698">18698</a>  
Seeing non-java projects in package view
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=18920">18920</a>  
NPE searching for references to a message  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=18749">18749</a>
Missing java doc for IConstantPoolEntry
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=18583">18583</a>  
New constants not tagged with @since 2.0  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=18708">18708</a>
DOM AST - IllegalArgumentException organizing imports
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=18039">18039</a>
Opening .class file fails
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=18621">18621</a>
Query all types when project is closed prevents reindexing when project is open  

<h3>Problem Reports Closed</h3>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=19271">19271</a>    
IOException when searching for packages  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=7916">7916</a>  
Code assist does not find class
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=19424">19424</a>  
JDT processing deltas for non-java files in non-java projects
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=18633">18633</a>  
Build failed: Can not find the class file for org.eclipse.jdt.core.jdom.IDOMInitializer
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=18175">18175</a>  
Quickfix false positives for non-public classes
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=19293">19293</a>  
cancelling compiling does not always cancel
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=18539">18539</a>  
unable to run JDBC program, class not found
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=3292">3292</a>  
Adding new class takes very long (>20s) (1GEUGFQ)
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=3333">3333</a>  
JavaCore does not recognize dot notation for inner classes (1GI7GZG)  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=18507">18507</a>
overwritting exiting file does not work
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=18414">18414</a>
NLS Tools: Find strings and compiler warning out of synch 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=5605">5605</a>    
NPE restarting workspace
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=3252">3252</a>    
Code assist list could be narrower in throws completion (1GD074C)
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=18724">18724</a>    
Code for the static initializer is exceeding the 65535 bytes limit
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=3272">3272</a>    
CodeCompletion - should only resolve interfaces (1GE5B8X)
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=6259">6259</a>    
DCR: IClasspathEntry with JavaDoc location
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=10007">10007</a>    
NPE and ClassCastException when renaming class name
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=3222">3222</a>    
JM - Reminder - re-enable transient reconciling marker  (1GAJ9FQ)
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=3267">3267</a>    
Deadlock while refreshing form local (1GDTUSD)
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=5583">5583</a>    
getNonJavaResources does not return .class files for source folders
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=16371">16371</a>    
Java Model Exception using code assist
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=17626">17626</a>    
Auto-format source removed newline at end of range
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=8863">8863</a>    
.classpath gets overwritten if there's an XML error
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=3335">3335</a>    
Java Element Deltas: Performance issues with deltas from Working Copy (1GIE36J)
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=3253">3253</a>    
SEVERE: Not all external JARs show up in packages view (1GD0JZO)
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=1834">1834</a>    
Cancel build with 10000+ problems takes forever to update (1G2Q9YZ)

<p><hr><h1>
Eclipse Platform Build Notes&nbsp;<br>
Java Development Tooling Core</h1>
Eclipse SDK Build 20020601 - 1st June 2002 - FREEZE 2
<br>Project org.eclipse.jdt.core v_254
<h2>
What's new in this drop</h2>
<ul>
<li>The resource copy exclusion filter now tolerates whitespaces inside the filter pattern, they will be trimmed
when used. e.g. "  .*   ,  foo/ " is now accepted.</li>
</ul>

<h3>Problem Reports Fixed</h3>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=18446">18446</a>  
JavaCore.getClasspathContainer on not yest created project
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=18411">18411</a>  
External JAR refresh - caching problem
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=18453">18453</a>  
Deleting project doesn't remove pkg fragment root in another project  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=18331">18331</a>    
Java Model not flushed when upgrading binary projects  

<h3>Problem Reports Closed</h3>

<p><hr><h1>
Eclipse Platform Build Notes&nbsp;<br>
Java Development Tooling Core</h1>
Eclipse SDK Build 20020531 - 31st May 2002 
<br>Project org.eclipse.jdt.core v_253
<h2>
What's new in this drop</h2>
<ul>
<li>Changing 2.0 API for refreshing external JARs so as to pass in a collection of *elements* to restrain the scope
of the update (see <code>IJavaModel#refreshExternalArchives(IJavaElement[],IProgressMonitor)</code>. Elements 
can either be package fragment roots, projects or Java model.</li>
</ul>

<h3>Problem Reports Fixed</h3>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=18418">18418</a>  
 search: searchDeclarationsOfReferencedTypes reports import declarations  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=18287">18287</a>  
&lt;Clinit&gt; change is treated as a structural change by incremental builder

<h3>Problem Reports Closed</h3>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=17766">17766</a>
Strange error when launching Eclipse from inside Eclipse 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=18396">18396</a>
ant javac target ignores source="1.4" setting inside eclipse 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=14187">14187</a>  
error rebuilding project
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=14607">14607</a>  
Refactor: rename isn't updating references
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=16172">16172</a>  
Namelookup slow to retrieve package fragments 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=18157">18157</a>    
Internal Error when deleting project  
 <br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=18259">18259</a>  
changing classpath causes significant recompilation
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=10394">10394</a>  
symbolic links upset JRE path  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=9302">9302</a>
An unexpected exception has been detected in native code outside the VM

<p><hr><h1>
Eclipse Platform Build Notes&nbsp;<br>
Java Development Tooling Core</h1>
Eclipse SDK Build 20020530 - 30th May 2002 
<br>Project org.eclipse.jdt.core v_252
<h2>
What's new in this drop</h2>
<ul>
<li>Compiler can now optionally report unused imports. See option named "" on <code>JavaCore#getDefaultOptions</code> comment
<pre>
	 * COMPILER / Reporting Unused Import
	 *    When enabled, the compiler will issue an error or a warning for unused import 
	 *    reference 
	 *     - option id:		"org.eclipse.jdt.core.compiler.problem.unusedImport"
	 *     - possible values:	{ "error", "warning", "ignore" }
	 *     - default:		"ignore"
</pre>
Note that if import problems (separate settings) are disabled, unused imports will not be reported either.
This option is also available to the batch compiler ("-warn:unusedImports"). Implementations of <code>IProblemRequestor</code>
can identify this new problem through its ID <code>IProblem#UnusedImport</code>.
</li>
<li>Added API on IType so as to tell whether a type is anonymous, local or member.</li>
<li>Changing 2.0 API for refreshing external JARs so as to pass in a collection of projects to restrain the scope
of the update (see <code>IJavaModel#refreshExternalJARs(IJavaProject[],IProgressMonitor)</code>. </li>
</ul>

<h3>Problem Reports Fixed</h3>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=17906">17906</a>
Rename package fails when inner classes are imported  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=18255">18255</a>
NPE during Organize imports.... See test5 in UI tests 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=18169">18169</a>
ast: incorrect length of SingleVariableDeclaration for some array declarations 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=18138">18138</a>
Resolving failure in variable declaration 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=18135">18135</a>
importing plugins resulted in 9MB of errors added to log
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=18190">18190</a>
add a new PackageFragmentRoot does not update the name lookup of dependent projects
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=15441">15441</a>
Important: Problem highlight is out of sync with compiler
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=12649">12649</a>
Missing import after move  
   
<h3>Problem Reports Closed</h3>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=18042">18042</a>
AST: Resolving failes with semicolon while loop body 

<p><hr><h1>
Eclipse Platform Build Notes&nbsp;<br>
Java Development Tooling Core</h1>
Eclipse SDK Build 20020529 - 29th May 2002 
<br>Project org.eclipse.jdt.core v_251
<h2>
What's new in this drop</h2>
<ul>
</ul>

<h3>Problem Reports Fixed</h3>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=18078">18078</a>
memory leak - destroy a WorkingCopy remove and re-add his buffer
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=16187">16187</a>
Problems occured building seleted resources. MemberTypeBinding
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=18029">18029</a>
disassembled code viewer handles \n incorrectly 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=17922">17922</a>
ClassCastException on rename temp 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=18054">18054</a>
JDT/Core is using the platform encoding instead of the encoding set in the UI
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=17923">17923</a>
Can't find refs to binary fields  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=11823">11823</a>
npe when trying to set source to rt.jar
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=17609">17609</a>
deleting a resource results does not change local history
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=16120">16120</a>
SelectionParser build wrong AST for instanceof statement
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=14468">14468</a>
F3 doesn't work on DefaultExceptionHandler

<h3>Problem Reports Closed</h3>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=14373">14373</a>
Number of spaces representing a tab is alway 4 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=6169">6169</a>
Creating the tasks view hangs the UI thread
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=18070">18070</a>
NullPointerException during build
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=9173">9173</a>
Exception about missing org.eclipse.core.boot\.classpath file?
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=15602">15602</a>
OutOfMemoryError
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=15311">15311</a>
Importing external plug-ins from file system fails
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=13852">13852</a>
Cannot generate EJB inheritance deployed code without debug info
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=17046">17046</a>
Inner class reference to Outer class method not recognized
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=17953">17953</a>
NullPointerException when compiling cocoon2
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=17930">17930</a>
Moving secondary types is fooling the java incremental builder
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=17873">17873</a>
Synchronize Comparison does poor job on .classpath files
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=16736">16736</a>
Comment before package statement not associated with it 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=12551">12551</a>
Search finds some but not all method refs  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=17254">17254</a>
Could not find .classpath.

<p><hr><h1>
Eclipse Platform Build Notes&nbsp;<br>
Java Development Tooling Core</h1>
Eclipse SDK Build 20020527 - 27th May 2002 
<br>Project org.eclipse.jdt.core v_250
<h2>
What's new in this drop</h2>
<ul>
<li>Added API to retrieve cached flags on type hierarchies (see <code>ITypeHierarchy#getCachedFlags(IType)</code>). Note that these
flags can help answering both isClass/isInterface queries as well (see <code>Flags.isInterface(int)</code></li>
<li>Added API to trigger a Java model refresh with respect to external JARs: <code>IJavaModel#refreshExternalJARs</code>. </li>
<pre>
/**
 * Triggers an update of the JavaModel with respect to the referenced external JARs.
 * This operation will issue a JavaModel delta describing the discovered changes, in term
 * of Java element package fragment roots added, removed or changed.
 * 
 * @param monitor - a progress monitor used to report progress
 * @exception JavaModelException in one of the corresponding situation:
 *    - an exception occurs while accessing project resources 
 * 
 * @see IJavaElementDelta
 * @since 2.0
 */
void refreshExternalJARs(IProgressMonitor monitor) throws JavaModelException;
</pre>
<li>Added flag for notifying a JAR content change during Java delta notification: <code>IJavaElementDelta#F_ARCHIVE_CONTENT_CHANGED</code></li>
</ul>

<h3>Problem Reports Fixed</h3>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=17097">17097</a>
Searching for "*" in java gives a cryptic error message dialog.  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=15162">15162</a>
Assertion failure during shutdown  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=17145">17145</a>
NPE  while compiling
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=17807">17807</a>
Incremental build problems deleting secondary types
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=17564">17564</a>
Register java file types with the team plugin
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=17422">17422</a>
JDT Compiler Adapter and compatibility with Ant 1.5 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=17101">17101</a>
Assertion failure during shutdown  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=17562">17562</a>
Race condition on startup leads to 2 JavaModel instances
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=15395">15395</a>
AssertionFailedException when creating new Java project  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=17797">17797</a>
NullPointerException while building
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=17827">17827</a>
NullPointerException at  CompilationResult.computePriority
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=16761">16761</a>
NPE when doing Project -> Rebuild All
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=3329">3329</a>
Specification for IJavaElementDelta needed (1GHVW5M)  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=16753">16753</a>
Exception while building
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=12159">12159</a>
Code Format is generating bogus output 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=16751">16751</a>
Renaming a class doesn't update all references  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=16789">16789</a>
Incomplete project element if .classpath file isn't readable
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=16279">16279</a>
compiler creates code that causes verifier error
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=14113">14113</a>
Should listen to F_SOURCEATTACHED and F_SOURCEDETACHED java deltas  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=15250">15250</a>
Need a better mapping for the method free return opcode 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=16091">16091</a>
Need way to refresh JAR files

<h3>Problem Reports Closed</h3>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=16354">16354</a>
Code Assist has too many items after throws
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=16863">16863</a>
type hierarchy misses types  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=14892">14892</a>
Failed package import leads to OutOfMemory errors at compile time  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=17197">17197</a>
F1 - "Add Jars" to build path locks up eclipse - win2k
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=15211">15211</a>
NPE while searching for a field  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=16494">16494</a>
newSuperTypeHierarchy on binary type returns empty hierarchy  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=17127">17127</a>
IllegalArgumentException in SimpleName.setIdentifier(SimpleName.java:136) in M5 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=16857">16857</a>
Empty folder creation
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=16209">16209</a>
Support declared packages that are different from directory location
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=6068">6068</a>
Walkback during plugin import
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=12985">12985</a>
Unexpected full build in incremental mode
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=11022">11022</a>
Unexpected full build
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=16436">16436</a>
CoreException importing org.eclipse.ui.win32
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=12520">12520</a>
JDTCompilerAdapter does not understand -extdirs
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=10047">10047</a>
JDTCompilerAdapter  ignores -nowarn and deprecation off.

<p><hr><h1>
Eclipse Platform Build Notes&nbsp;<br>
Java Development Tooling Core</h1>
Eclipse SDK Build 20020521 - 21st May 2002 
<br>Project org.eclipse.jdt.core v_249 - MILESTONE 6 / FREEZE 1
<h2>
What's new in this drop</h2>
<ul>
<li>'.classpath' file is now written using platform line delimiters (used to be only using LFs). It is recommanded to convert it to 'text' format
so as to avoid surfacing delimiter differences in between incompatible platforms. </li>
<li>The setting allowing for filtering resource copy now also supports folder filtering. Folder names are
recognized by their '/' suffix, e.g. "META-INF/" specifies filtering out all folder named 'META-INF' (and their contents)</li>
</ul>

<h3>Problem Reports Fixed</h3>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=3244">3244</a>
Classpath is not saved using UTF8 (1GCV467)
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=13878">13878</a>
Request to support folders for resource copy filters
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=16135">16135</a>
Unexpected errors while reconciling

<h3>Problem Reports Closed</h3>

<p><hr><h1>
Eclipse Platform Build Notes&nbsp;<br>
Java Development Tooling Core</h1>
Eclipse SDK Build 20020518 - 18th May 2002 
<br>Project org.eclipse.jdt.core v_248
<h2>
What's new in this drop</h2>
<ul><li>Added <code>ToolFactory.createDefaultClassFileReader(IClassFile classfile, int decodingFlag)</code> as an helper method to
	create a classfile reader for classfile elements.</li>
</ul>

<h3>Problem Reports Fixed</h3>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=16130">16130</a>
build xerces/plugin.properties slow
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=16175">16175</a>
NPE in IndexManager#checkIndexConsistency  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=15563">15563</a>
CompletionEngine does not report type packages of local variables
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=12374">12374</a>
NPE in ResultCollector
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=15977">15977</a>
NPE in Code Assist
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=14037">14037</a>
Internal Error doing java search 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=16126">16126</a>
ArrayIndexOutOfBoundsException during compilation 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=16132">16132</a>
Error on Extract Method Refactoring 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=16052">16052</a>
NPE when search reference of a constructor  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=15945">15945</a>
Creating new class causes most projects to be recompiled

<h3>Problem Reports Closed</h3>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=9244">9244</a>
Search Generates OutOfMemoryError  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=15423">15423</a>
JRE_LIB source attachment via properties does not work
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=15931">15931</a>
Proposed results to limited/invalid
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=16131">16131</a>
Java search fails to find all references to static final MB_ADDITIONS
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=15192">15192</a>
PackageFragment::copy never overwrites

<p><hr><h1>
Eclipse Platform Build Notes&nbsp;<br>
Java Development Tooling Core</h1>
Eclipse SDK Build 20020515 - 15th May 2002 
<br>Project org.eclipse.jdt.core v_247
<h2>
What's new in this drop</h2>
<ul>
    <li> New compiler option added to control max number of problems reported on a unit. Default is 100. See <code>JavaCore#getDefaultOptions()</code> </li>
    <pre>
	 * COMPILER / Maximum number of problems reported per compilation unit
	 *    Specify the maximum number of problems reported on each compilation unit.
	 *     - option id:			"org.eclipse.jdt.core.compiler.maxProblemPerUnit"
	 *     - possible values:	"<n>" where <n> is zero or a positive integer (if zero then all problems are reported).
	 *     - default:			"100"
    </pre>
    <li>By default, the Java builder is now aborting build process on projects with classpath problems. This option can be disabled through the Java preferences:
    Window&gt;Preferences&gt;Java&gt;Builder&gt;</li>
</ul>

<h3>Problem Reports Fixed</h3>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=16051">16051</a>
DOM/AST: wrong position in if statement 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=15788">15788</a>
Walkbacks at startup  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=16021">16021</a>
Infinite loop in JavaCore.isReferencedBy(...)
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=14467">14467</a>
Outliner doesn't highlight method
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=16017">16017</a>
JavaBuilder reports  build failures on dependencies onto internal JARs
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=15568">15568</a>
Watchpoints, method breakpoints in interesting locations not showing in editor ruler

<h3>Problem Reports Closed</h3>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=16801">16801</a>
Compiler problem when */ appears in commented String.
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=12955">12955</a>
Problem with Type Dialog and HierarchyScopes - build 20020214  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=16016">16016</a>
Opening a project after starting Eclipse misses project indexes (or other internal stuff)
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=15190">15190</a>
Java Build errors after save
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=16008">16008</a>
Hang during shutdown
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=12392">12392</a>
Problems to add Project from repository
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=15103">15103</a>
Search results are missing qualification

<p><hr><h1>
Eclipse Platform Build Notes&nbsp;<br>
Java Development Tooling Core</h1>
Eclipse SDK Build 20020514 - 14th May 2002 
<br>Project org.eclipse.jdt.core v_246
<h2>
What's new in this drop</h2>
<ul>
    <li>Java compiler never record more than 100 markers for compilation problems. All APIs using IProblemRequestor still
    	see them all. This change is intended to prevent the task list from being overhelmed with tons of secondary problems. </li>
	<li>Added APIs that allow to create a type hierarchy with a set of working copies that take precendence
	      over their original compilation unit:
	      <ul>
	      	<li><code>IType.newSuperTypeHierarchy(IWorkingCopy[], IProgressMonitor)</code></li>
	      	<li><code>IType.newTypeHierarchy(IWorkingCopy[], IProgressMonitor)</code></li>
	      </ul>
	      Note that change notification and refreshing is not supported on these hierarchies.
	</li>
</ul>

<h3>Problem Reports Fixed</h3>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=14051">14051</a>
The implementation for IType.resolveType(String) is not implemented as noted in the JavaDoc specs
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=15322">15322</a>
need a way to create a type hierarchy that considers working copies  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=15142">15142</a>
CCE in SourceConstructorDeclaration 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=15349">15349</a>
JavaModelException out of Content assist  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=15677">15677</a>
Exception calling sourceType.getFields on working copy of new class  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=15657">15657</a>
IDOMMethod.getReturnType returns null for all methods 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=15804">15804</a>
DOM/AST: wrong Length in cascading if/then/else 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=15400">15400</a>
Compiler generates way too many errors
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=15857">15857</a>
Deadlock in the indexer.shutdown()
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=15756">15756</a>
Organizing imports doesn't pick up the right type 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=15430">15430</a>
hang up eclipse
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=14965">14965</a>
Search results in .class files don't select reference
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=15690">15690</a>
Classpath being set in wrong notification lifecycle
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=15810">15810</a>
ClasspathContainer question
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=15717">15717</a>
I cant hold JDK Compiler Compliance level setting.
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=15448">15448</a>
i keep loosing preferences
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=15113">15113</a>
extract method: assertion failure 

<h3>Problem Reports Closed</h3>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=8137">8137</a>
Code assist for anonymous inner type too late
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=15761">15761</a>
Log message after importing plugins fails
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=15852">15852</a>
need set api on IClasspathEntry
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=15579">15579</a>
Incomplete Java Error Message
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=13756">13756</a>
Code Completion + Type Introspection  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=3198">3198</a>
Caller of Signature.toString(String) should be aware that it won't work for '$' separated top-level types (1G4QB2S) 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=15332">15332</a>
Problem with "\\" in editor/compiler 

<p><hr><h1>
Eclipse Platform Build Notes&nbsp;<br>
Java Development Tooling Core</h1>
Eclipse SDK Build 20020507 - 7th May 2002 
<br>Project org.eclipse.jdt.core v_245
<h2>
What's new in this drop</h2>
<ul>
	<li>Added org.eclipse.jdt.core.dom.Message#Message(String, int, int). This new constructor allows to set the length field. The constructor
	org.eclipse.jdt.core.dom.Message#Message(String, int) still exists and set the length to 0. There is no need to use the new constructor if the length
	is never used.</li>
	<li>Renamed org.eclipse.jdt.core.dom.Message#getSourcePosition() to org.eclipse.jdt.core.dom.Message#getStartPosition(). This
	is more consistent with the DOM/AST API. The old method has been deprecated and will be removed in a close future.</li>
	<li>Added org.eclipse.jdt.core.dom.Message#getLength() allowing to retrieve the length of the node on which
	the message has been reported.</li>
	<li> Added <code>JavaCore#getSharedWorkingCopies(IBufferFactory)</code> allowing to retrieve all registered working
		copies for a given buffer factory. </li>
	<li> JavaBuilder no longer build projects for which prerequisite projects aborted the build process. This considerably
		reduces the number of secondary errors when dealing with workspace setup problems.</li>
	<li> Added <code>IWorkingCopy#reconcile(boolean forceProblemDetection, IProgressMonitor monitor)</code> allowing to force
		problem refresh even if working copy was already consistent.
    <li> Added <code>IClasspathContainer</code> new kind constant <code>K_DEFAULT_SYSTEM</code> to denote system libraries implicitely contributed
    	by a runtime. </li>
    <li> Classpath container path can have more than 2 segments. First one is still the container ID, the remaining ones are forming the hints
    	passed to the resolution phase (<code>ClasspathContainerInitializer</code> </li>
    <li> Classpath containers can no longer contain variable entries </li>
	<li>JavaCore now persists its options (<code>JavaCore#getOptions</code>) using its plugin property store. Clients no longer need to save them. </li>
	<li>JavaCore now provides constants for all supported option IDs and values.</li>
	<li>JavaCore option added, to allow build to abort in presence of invalid classpath. 
	<li>Leveraged new encoding support from Platform/Core. The JavaCore option "org.eclipse.jdt.core.encoding" is now equivalent to <code>ResourcesPlugin.getEncoding()</code>.
	<pre>
	 * BUILDER / Abort if Invalid Classpath
	 *    Allow to toggle the builder to abort if the classpath is invalid
	 *     - option id:        "org.eclipse.jdt.core.builder.invalidClasspath"
	 *     - possible values:  { "abort", "ignore" }
	 *     - default:          "ignore"
	</pre>
</ul>

<h3>Problem Reports Fixed</h3>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=15416">15416</a>
Classpath container - need to set value even if not referenced
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=15418">15418</a>
Classpath container - may get the init-in-progress value back
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=15334">15334</a>
ast: Message should have length 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=15364">15364</a>
search for references of DebugUIPlugin.setAttributes(...) fails  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=15175">15175</a>
Need API to retrieve all shared working copies for a buffer factory
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=15254">15254</a>
JavaModelManager thinks JavaProject is closed when it is open  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=3356">3356</a>
API - should provide API for running batch compiler (1GJIWDP)
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=15244">15244</a>
NPE in JDTCompilerAdapter 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=15289">15289</a>
Why is an incorrect package declaration not reported during reconciling
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=13225">13225</a>
quick fix: shows up only after I save
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=15081">15081</a>
JavaConventions.validateClasspath allows nesting source folders
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=15044">15044</a>
Unable to view some non-java files in external jars  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=15177">15177</a>
Classpath markers not correctly updated  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=15168">15168</a>
circular errors not reported
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=13957">13957</a>
LaunchingPlugin specification of resourceCopyExclusionFilter
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=12977">12977</a>
Adding Java nature to a project does not bring it to like in package view  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=15107">15107</a>
Internal Error organizing imports 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=15030">15030</a>
NPE trying to open or edit source files that reference jbuilder.jar 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=14838">14838</a>
Scrapbook editor: bad handling of // comment 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=12543">12543</a>
Code assist to insert method does not work when there are extra top-level statements
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=15061">15061</a>
IllegalArgumentException in ASTNode.setSourceRange 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=15036">15036</a>
ASTVisitor.preVisit and ASTVisitor.postVisit not called correctly 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=3193">3193</a>
JM - ISourceManipulation.delete send replace-BufferChangedEvent (1FYE8XI)  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=15091">15091</a>
Too many cycle markers generated when cycle is detected  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=14754">14754</a>
CodeAssist - Duplicate method declaration proposal inside anonymous type
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=15051">15051</a>
Synthetic access methods are not reported to be synthetic
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=3059">3059</a>
JRE_LIB not appended to buildPath (1GF7TAZ)
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=15050">15050</a>
Cleanup Javadoc @exception tags in DOM/AST
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=14151">14151</a>
The code formatter does not respect the "maximum line length" property when the indentation is set to tabulation. 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=14974">14974</a>
Bad generated code for '+=' and '-=' operators

<h3>Problem Reports Closed</h3>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=15719">15719</a>
Errors during build
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=15087">15087</a>
NPE when methods from the outermost enclosing class is invoked in a anonymous class
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=13057">13057</a>
NPE in JavaElementRequestor
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=11155">11155</a>
ArrayIndexOutOfBounds exception that caused workbench to freeze
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=12921">12921</a>
Build sometimes builds files that have not changed
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=14962">14962</a>
JDT Search returning improper type
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=14929">14929</a>
External Locations for Output Files

<p><hr><h1>
Eclipse Platform Build Notes&nbsp;<br>
Java Development Tooling Core</h1>
Eclipse SDK Build 20020430 - 30th April 2002 
<br>Project org.eclipse.jdt.core v_243
<h2>
What's new in this drop</h2>
<ul>
	<li>Priority of the background indexer has been lowered so that
	    it doesn't interfer with other threads (e.g. when switching JRE
	    the indexing will not start before the switch has completed)
	</li>
	<li>Revised Classpath Container proposal (also see <a href="http://dev.eclipse.org/viewcvs/index.cgi/~checkout~/org.eclipse.jdt.core/notes/r2.0/classpath%20container/classpathContainer.html">notes</a>):
	<ul>
	<li><code>classpathContainerChanged()</code> got replaced with setter method <code>JavaCore.setClasspathContainer(IPath containerPath, IJavaProject[] affectedProjects, IClasspathContainer respectiveContainers) </code></li>
	<li><code>ClasspathContainerResolver</code> got renamed into <code>ClasspathContainerInitializer</code></li>
	<li> Container can no longer contain any <code>CPE_SOURCE</code> entry.
	<li> added container interface <code> IClasspathContainer </code> in order to allow containers to be presented in a UI.
		  <ul>
		  <li>IClasspathEntry[] getClasspathEntries() </li>
		  <li>String getDescription() </li>
		  <li>int getKind() </li>
		  <li>Path getPath() </li>
		 </ul>
	</ul>
	</li>
	<li>If the completion is inside a super type in type declaration header then the relevance grow
		when the type have the correct nature :
		<ul>
			<li> After <code>extends</code> keyword of a class header the relevance grow if the type is a class.
			</li>
			<li> After <code>implements</code> keyword of a class header the relevance grow if the type is an interface.
			</li>
			<li> After <code>extends</code> keyword of an interface header the relevance grow if the type is an interface.
			</li>
		</ul>
	</li>
	<li> If the completion is inside a type in a catch or throws clause the relevance grow when the type is an exception
		(if the name of the type contain <code>exception</code> or <code>error</code>).
	</li>
	<li> If the completion is inside a throw statement the relevance grow when the proposal is an exception.
	</li>
	<li>The background indexer now recovers from internal crash. If this happens, 
	    a new thread is created and a consistency check is done on all indexes.
	</li>
	<li>An internal buffer factory is now used to create buffers when
	    clients don't provide one.
	</li>
	<li>Special handling in the formatter for //$NON-NLS- comments in the source. When a line contains such comments
	it is not formatted anymore. The user will need to manually format it. See <a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=14387">14387</a> and
	<a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=12540">12540</a>.
	</li>
</ul>

<h3>Problem Reports Fixed</h3>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=14933">14933</a>
AST: No error message generated for unreachable code 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=14921">14921</a>
No error message from inner type instantiation in static context
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=13919">13919</a>
Declaration for package not found if scope is not project  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=14852">14852</a>
Organize Import: missing import 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=13531">13531</a>
Java indexing thread finds "Bonjour, le monde!" too interesting
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=14878">14878</a>
static final char NegThree= (char)-3, -3 == NegThree returns true
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=14331">14331</a>
ICompilationUnit.getElementAt dos not find import decl  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=14038">14038</a>
ClassCastException during JavaReconciling
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=14011">14011</a>
ASTNode.checkNewChild(ASTNode, ASTNode, boolean, Class) 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=13577">13577</a>
Problem highlighter is unable to import from Java3D library.
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=14831">14831</a>
NPE with hierarchy search of a local variable  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=14243">14243</a>
Applet Viewer Integration
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=14140">14140</a>
ClassCastException when trying to open Java editor
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=14834">14834</a>
smalltalk-ish error message
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=11651">11651</a>
Auto-complete shows all Object subclasses after "throws" keyword
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=4970">4970</a>
Automatic Code Assist needs to be smarter #6
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=8651">8651</a>
Code assist should offer exception instead of any class
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=14767">14767</a>
bug in IJavaProject.findType(String, String)
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=14642">14642</a>
StringIndexOutOfBoundsException when attempting to view some classes 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=14558">14558</a>
Adding binary project doesn't fix classpath problems.  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=14588">14588</a>
NullPointerException in Util.equalArraysOrNull  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=13492">13492</a>
Should handle JavaModelExceptions that contains CoreException more gracefully  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=12540">12540</a>
Code formatter should leave comments at end of line 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=14387">14387</a>
Formatter isn't //$NON-NLS-1$ aware
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=14313">14313</a>
DCR: AST in methods with missing return type 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=14094">14094</a>
Indexer: Deadlock on delete project  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=14594">14594</a>
"Open type" doesn't find types in project with Java nature added  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=14602">14602</a>
ast: length of variable declaration fragment 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=14592">14592</a>
IType#getTypes and IType#getDeclaringType are not coherent with Hastable 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=13868">13868</a>
Java Model not updated properly  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=13234">13234</a>
Can't open type
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=9296">9296</a>
Hang on open type during indexing
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=13916">13916</a>
api: IScanner - Scanner.linePtr
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=14526">14526</a>
NPE when resolving a SimpleName 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=11529">11529</a>
ast: missing (?) binding on simpleName in VariableDeclaration 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=14453">14453</a>
Remove InfixExpression.Operator.INSTANCEOF operator 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=14490">14490</a>
Possible concurrency hole when saving index before query  

<h3>Problem Reports Closed</h3>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=14844">14844</a>
NPE creating binary projects
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=14908">14908</a>
100% CPU utilization, hang
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=14733">14733</a>
NPE setting marker attributes
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=13743">13743</a>
(NPE) Eclipse froze during "open type"
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=14074">14074</a>
Search: Not all refs to TwoPaneElementSelector constructor found  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=14889">14889</a>
bug in IJavaProject.findType(String, String)
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=12439">12439</a>
auto completion doesn't consistently work
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=14818">14818</a>
no message for uncaught exception in try block when return in finally
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=13810">13810</a>
ClassCastException in indexer
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=13527">13527</a>
NPE + GP switching JRE
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=14096">14096</a>
IWorkingCopy.findElements should not return null  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=13943">13943</a>
Eclipse crashes when doing a "rebuild all"
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=14440">14440</a>
Possible bug in compiling inner classes

<p><hr><h1>
Eclipse Platform Build Notes&nbsp;<br>
Java Development Tooling Core</h1>
Eclipse SDK Build 20020508-M5patch" - 8th May 2002 
<br>Project org.eclipse.jdt.core v_242b
<h2>
What's new in this drop</h2>
<ul>
	<li>Java builder is logging its internal errors </li>
</ul>
<h3>Problem Reports Fixed</h3>

<h3>Problem Reports Closed</h3>

<p><hr><h1>
Eclipse Platform Build Notes&nbsp;<br>
Java Development Tooling Core</h1>
Eclipse SDK Build 20020423 - 23rd April 2002 
<br>Project org.eclipse.jdt.core v_242a
<h2>
What's new in this drop</h2>
<ul>
	<li>Java model API additions:
		<ul>
			<li><code>IJavaProject.findType(String)</code></li>
			<li><code>IJavaProject.findType(String, String)</code></li>
			<li><code>IMethod.isMainMethod()</code></li>
			<li><code>IMethod.isSimilar(IMethod)</code></li>
			<li><code>IType.getFullyQualifiedName(char)</code></li>
			<li><code>IType.getTypeQualifiedName(char)</code></li>
		</ul>
	</li>
	<li>API change: <code>IWorkingCopy.findSharedWorkingCopy()</code> is now taking an extra argument: the buffer factory it is associated with. This ensures that
		working copies can only be reused for the same buffer factories.
	</li>
	<li> JavaModelOperations now guarantee the JavaModel is up to date when notifying the Java model change listeners. In particular,
	a builder running after the Java builder will be able to query the Java model with respect to the changes introduced through Java model
	operations (except for index queries). This was never guaranteed in 1.0, but indirectly occurred due to the fact that the previous Java
	builder implementation did force to refresh the Java model while building. </li>
	<li>Classpath Container Enhancement (also see <a href="http://dev.eclipse.org/viewcvs/index.cgi/~checkout~/org.eclipse.jdt.core/notes/r2.0/classpath%20container/classpathContainer.html">notes</a>):
	<br>Added new type of classpath entry (<code>CPE_CONTAINER</code>), (see proposal here) so as to better encapsulate client defined libraries.
	Typically, VM installs would use classpath containers instead of classpath variables (<code>JRE_LIB</code>) so as to better describe the corresponding
	set of libraries (including extension dirs) to be placed on the build path. 
	<p>New APIs added to reflect this addition:
	<ul>
	<li><code>JavaCore.newContainerEntry(IPath containerPath)</code></li>
	<li><code>JavaCore.newContainerEntry(IPath containerPath, boolean isExported)</code></li>
	<li><code>JavaCore.classpathContainerChanged(IPath containerPath, IJavaElement scope) </code></li>
	<li><code>ClasspathContainerResolver </code></li>
	</ul>
	</li>
	<li>DOM/AST:<br>A new type of node has been added to handle properly the instanceof expression. So the new InstanceofExpression node 
	replaced the usage of InfixExpression with the operator InfixExpression.Operator.INSTANCEOF. This operator has been
	deprecated and is expected to be removed for the next integration build. See bug <A HREF="http://dev.eclipse.org/bugs/show_bug.cgi?id=14453">14453</a>.</li>
</ul>

<h3>Problem Reports Fixed</h3>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=13807">13807</a>
null binding returned for fully qualified array declaration 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=14403">14403</a>
ast: exception on creation 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=14229">14229</a>
Failure writing to a read only .project
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=13905">13905</a>
changes to read-only .classpath file are not thrown out
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=6165">6165</a>
handle read-only class path file in a graceful way
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=14322">14322</a>
AST/DOM : IVariableBinding.getDeclaringClass() for 'length' field of an array return null 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=14343">14343</a>
ClassFileReader.getEnclosingTypeName() should return null for anonymous types  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=12363">12363</a>
Better integration of the batch compiler with ant javac task option -extdirs 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=14217">14217</a>
DOM/AST: wrong start position for expression statement 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=14106">14106</a>
Declarations in Hierarchy does not find declarations in hierarchy  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=13060">13060</a> 
Type hierarchy on region populates Java Model cache for types in the region  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=14117">14117</a>
NPE importing binary projects
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=14172">14172</a>
Builder is setting source resources as derived!
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=3266">3266</a>
Changing kind of classpath entry reports 1 delta (1GDTRTP)  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=13231">13231</a>
Quick Fix: wrong proposal 

<h3>Problem Reports Closed</h3>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=14141">14141</a>
NullPointerException during search  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=13831">13831</a>
NPE in RegionBasedTypeHierarchy  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=12914">12914</a>
Compiler cannot resolve javax.net
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=13964">13964</a>
Exception on startup
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=14198">14198</a>
AST: CastExpression.getType().resolveBinding() is null
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=13939">13939</a>
DBCS: no error message to invalid character in java source 
<p><hr><h1>
Eclipse Platform Build Notes&nbsp;<br>
Java Development Tooling Core</h1>
Eclipse SDK Build 20020418 - 18th April 2002 
<br>Project org.eclipse.jdt.core v_241a
<h2>
What's new in this drop</h2>
<ul>
	<li>Changing the source attachement of a jar will now correctly fire source
		attachment java deltas. The flags of these deltas are:
		<ul>
			<li><code>IJavaElementDelta.F_SOURCEATTACHED</code> if a source
				has been attached to a jar and no source previously existed.
			</li>
			<li><code>IJavaElementDelta.F_SOURCEDETACHED</code> if a source
				has been detached from a jar and no other source has been attached.
			</li>
			<li><code>IJavaElementDelta.F_SOURCEDETACHED | JavaElementDelta.F_SOURCEATTACHED</code> 
				if an attached source has been changed.
			</li>
		</ul>
	</li>
</ul>

<h3>
Problem Reports Fixed</h3>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=14023">14023</a>
NPE in build notifier
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=14115">14115</a>
Changing source attachment should not fire a F_REMOVED_FROM_CLASSPATH delta  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=14055">14055</a>
NPE in JavaModelManager.getVariableAsXMLString
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=14007">14007</a>
StringLiteral.setLiteralValue does not do Unicode escaping 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=14013">14013</a>
Compiler should not consider 'this.CONST' as constant expression
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=14008">14008</a>
VariableBinding.getVariableId contains suspicious code 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=13989">13989 </a>
Package view doesn't refresh after JRE switching
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=12588">12588</a>
Good match marked as potential  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=13143">13143</a>
Binary constructor search does not work (ref & decl)  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=13807">13807</a>
null binding returned for fully qualified array declaration
<h3>
Problem Reports Closed</h3>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=14103">14103</a>
Too many dependents found when incrementally recompiling
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=4384">4384</a>
Setting classpath variables does two builds  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=3285">3285</a>
Why does change the source attachment trigger a build (1GEHXW3)  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=13906">13906</a>
Compiler did not detect uncaught exception
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=14019">14019</a>
NPE with code assist working in an anonymous inner class
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=9263">9263</a>
Code assist can't see other project's class folders  

<p><hr><h1>
Eclipse Platform Build Notes&nbsp;<br>
Java Development Tooling Core</h1>
Eclipse SDK Build 20020416 - 16th April 2002 - MILESTONE 5
<br>Project org.eclipse.jdt.core v_240
<h2>
What's new in this drop</h2>
<ul>
<li> Changed the package fragment caching policy so as to accomodate large workspaces. It used to be an overflowing LRU cache of size 1000
package fragments. It now is a simple table, which is never emptied implicitly any longer. Memory overhead looks negligeable, and it allows to
deal much better with very large workspaces. Other similar improvements were made on the same front so as to improve JRE switching with such
workspaces.

</li>
<li> ElementChangedEvent got added notion of type (similar to IResourceChangeEvent), so as to better
allow clients to react to JavaModel changes: 
	<ul> 
		<li> ElementChangedEvent.POST_CHANGE :  
<pre>
	/**
	 * Event type constant (bit mask) indicating an after-the-fact 
	 * report of creations, deletions, and modifications
	 * to one or more Java element(s) expressed as a hierarchical
	 * java element delta as returned by <code>getDelta</code>.
	 *
	 * Note: this notification occurs during the corresponding POST_CHANGE
	 * resource change notification, and contains a full delta accounting for
	 * any JavaModel operation  and/or resource change.
	 *
	 * @see IJavaElementDelta
	 * @see IResourceChangeEvent
	 * @see #getDelta
	 * @since 2.0
	 */
	public static final int POST_CHANGE = 1;
</pre>
		</li>

		<li> ElementChangedEvent.PRE_AUTO_BUILD 
<pre>
	/**
	 * Event type constant (bit mask) indicating an after-the-fact 
	 * report of creations, deletions, and modifications
	 * to one or more Java element(s) expressed as a hierarchical
	 * java element delta as returned by <code>getDelta</code>.
	 *
	 * Note: this notification occurs during the corresponding PRE_AUTO_BUILD
	 * resource change notification. The delta which is notified here only contains
	 * information relative to the previous JavaModel operations (i.e. ignores the
	 * possible resources which have changed outside Java operations). In
	 * particular, it is possible that the JavaModel be inconsistent with respect to
	 * resources which got modified outside JavaModel operations (it will only be
	 * fully consistent once the POST_CHANGE notification has occured).
	 * 
	 * @see IJavaElementDelta
	 * @see IResourceChangeEvent
	 * @see #getDelta
	 * @since 2.0
	 */
	public static final int PRE_AUTO_BUILD = 2;
</pre>
		</li>

		<li> ElementChangedEvent.RECONCILE 
<pre>
	/**
	 * Event type constant (bit mask) indicating an after-the-fact 
	 * report of creations, deletions, and modifications
	 * to one or more Java element(s) expressed as a hierarchical
	 * java element delta as returned by <code>getDelta</code>.
	 *
	 * Note: this notification occurs as a result of a working copy reconcile
	 * operation.
	 *
	 * @see IJavaElementDelta
	 * @see IResourceChangeEvent
	 * @see #getDelta
	 * @since 2.0
	 */
	public static final int POST_RECONCILE = 4;	
</pre>
		</li>
	</ul>
</li>	
<li>	
	Also added a corresponding API on JavaCore so as to allow registering a listener for a given type of event.
	<pre>
	/**
	 * Adds the given listener for changes to Java elements.
	 * Has no effect if an identical listener is already registered.
	 * After completion of this method, the given listener will be registered for exactly the
	 * the specified events.  If they were previously registered for other events, they
	 * will be deregistered.  
	 *
	 * Once registered, a listener starts receiving notification of changes to
	 * java elements in the model. The listener continues to receive 
	 * notifications until it is replaced or removed. 
	 * 
	 * Listeners can listen for several types of event as defined in <code>ElementChangeEvent</code>.
	 * Clients are free to register for any number of event types however if they register
	 * for more than one, it is their responsibility to ensure they correctly handle the
	 * case where the same java element change shows up in multiple notifications.  
	 * Clients are guaranteed to receive only the events for which they are registered.
	 *
	 * 
	 * @param listener the listener
	 * @param eventMask the bit-wise OR of all event types of interest to the listener
	 * @see IElementChangeListener
	 * @see ElementChangeEvent
	 * @see #removeElementChangeListener
	 *	@since 2.0
	 */
	public static void addElementChangedListener(IElementChangedListener listener, int eventMask)
	</pre>

</li>	
</ul>

<h3>
Problem Reports Fixed</h3>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=12353">12353</a>
DocumentAdapter can never be closed
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=9628">9628</a>
Switching JRE is slow
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=11585">11585</a>
Large # of projects lock essential operations in the Workspace
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=13393">13393</a>
Extremely poor java editor performance in 2002040x
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=13233">13233</a>
IllegalArgumentException on variable declaration in evaluation 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=13625">13625</a>
Remove deprecated method from AST/DOM 
<h3>
Problem Reports Closed</h3>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=13593">13593</a>
Code Formatter formats synchronized incorrectly. 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=12921">12921</a>
Build sometimes builds files that have not changed
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=13522">13522</a>
NPE on anonymous class code assist.


<p><hr><h1>
Eclipse Platform Build Notes&nbsp;<br>
Java Development Tooling Core</h1>
Eclipse SDK Build 20020411 - 11th April 2002 
<br>Project org.eclipse.jdt.core v_239
<h2>
What's new in this drop</h2>
<ul>
<li>Added a first proposal for .class file reading APIs. This is still experimental and might change slightly.
See new API in org.eclipse.jdt.core.util.
<ul>
<li>ByteCodeVisitorAdapter</li>
<li>ClassFormatException</li>
<li>DecodingFlag</li>
<li>IAttributeNamesConstants</li>
<li>IBytecodeVisitor</li>
<li>IClassFileAttribute</li>
<li>IClassFileDisassembler and ToolFactory#createDefaultClassFileDisassembler</li> 
<li>IClassFileReader</li>
<li>ICodeAttribute</li>
<li>IConstantPool</li>
<li>IConstantPoolConstant</li>
<li>IConstantPoolEntry</li>
<li>IConstantValueAttribute</li>
<li>IExceptionAttribute</li>
<li>IExceptionTableEntry</li>
<li>IFieldInfo</li>
<li>IInnerClassesAttribute</li>
<li>IInnerClassesAttributeEntry</li>
<li>ILineNumberAttribute</li>
<li>ILocalVariableAttribute</li>
<li>ILocalVariableTableEntry</li>
<li>IMethodInfo</li>
<li>IModifierConstants</li>
<li>IOpcodeMnemonics</li>
<li>ISourceAttribute</li>
<li>OpcodeStringValues</li>
</ul>
The default implementations are in org.eclipse.jdt.internal.core.util. Any comment is welcome and related bugs 
should be entered in JDT/Core.
<li>Added char array based APIs on Signature. This APIs avoid creating needless Strings and
	are thus much more performant than their String based equivalent.
	<ul>
		<li><code>createArraySignature(char[], int arrayCount)</code></li>
		<li><code>createCharArrayTypeSignature(char[], boolean)</code></li>
		<li><code>createMethodSignature(char[][], char[]) </code></li>
		<li><code>getArrayCount(char[])</code></li>
		<li><code>getElementType(char[])</code></li>
		<li><code>getParameterCount(char[])</code></li>
		<li><code>getParameterTypes(char[])</code></li>
		<li><code>getQualifier(char[])</code></li>
		<li><code>getReturnType(char[])</code></li>
		<li><code>getSimpleName(char[])</code></li>
		<li><code>getSimpleNames(char[])</code></li>
		<li><code>toCharArray(char[], char[], char[][], boolean, boolean)</code></li>
		<li><code>toCharArray(char[])</code></li>
		<li><code>toQualifiedName(char[][])</code></li>
	</ul>
</li>
<li>Removed temporary 2.0 API which were deprecated in previous builds:
	<ul>
		<li><code>IWorkingCopy#getSharedWorkingCopy(IProgressMonitor, IBufferFactory)</code>, use API with extra <code>IProblemRequestor</code></li>
		<li><code>IWorkingCopy#getWorkingCopy(IProgressMonitor, IBufferFactory)</code>, use API with extra <code>IProblemRequestor</code></li>
		<li><code>IWorkingCopy#reconcile(IProblemRequestor)</code>, use API with no <code>IProblemRequestor</code></li>
	</ul>
</li>	
</ul>

<h3>
Problem Reports Fixed</h3>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=12762">12762</a>
Performance - Signature#createTypeSignature should be implemented in term of char[]  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=12688">12688</a>
NPE with code assist
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=13408">13408</a>
Subfolders of build folder are not marked as derived
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=13355">13355</a>
NPE during code completion
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=13391">13391</a>
NPE doing code assist
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=13487">13487</a>
NPE in CompletionEnige
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=13395">13395</a>
loading swt+examples with auto-build on causes deadlock (or takes a very long time)
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=13063">13063</a>
NPE in extract method 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=13247">13247</a>
IllegalArgumentException while creating AST 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=13386">13386</a>
'not implemented yet' surfaced on Display in debug 
<h3>
Problem Reports Closed</h3>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=12617">12617</a>
code assist: Proposals inside method parameters
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=12338">12338</a>
Unnecessary recompilation when adding packages
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=12262">12262</a>
Compiler Bug with import Statement
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=7082">7082</a>
NPE during build

<p><hr><h1>
Eclipse Platform Build Notes&nbsp;<br>
Java Development Tooling Core</h1>
Eclipse SDK Build 20020409 - 9th April 2002 
<br>Project org.eclipse.jdt.core v_238a
<h2>
What's new in this drop</h2>
<ul>
<li>Adding a new empty source folder no longer causes a full build. Only an incremental build is needed now.
</li>
<li>Java model API additions:
	<ul>
		<li><code>IJavaElement.getAncestor(int)</code></li>
		<li><code>IJavaElement.getOpenable()</code></li>
		<li><code>IJavaElement.getPath()</code></li>
		<li><code>IJavaElement.getResource()</code></li>
		<li><code>IJavaProject.isOnClasspath(IJavaElement)</code></li>
		<li><code>IPackageFragmentRoot.getRawClasspathEntry()</code></li>
		<li><code>IType.findMethods(IMethod)</code></li>
		<li><code>IWorkingCopy.findElements(IJavaElement)</code></li>
		<li><code>IWorkingCopy.findPrimaryType()</code></li>
	</ul>
</li>
<li>ICompletionRequestor API change :
	<ul>
		<li> Added #beginReporting() and #endReporting() API on <code>IProblemRequestor</code>. #beginReporting is always called before restarting error detection. #endReporting is always called at the
				end of detection.
		</li>
		<li> Added API for setting multiple classpath variables at once (<code>JavaCore#setClasspathVariables</code>, this allows to update
			all affected projects exactly once, instead of iterating multiple times on each project (if it references the variable). This can improve performance
			when setting JRE variables.
		</li>
		<li> Added a new parameter <code>relevance</code> to be able to sort proposal by degree of relevance.
		<code>relevance</code> is a positive integer which are used for determine if this proposal is more relevant than another proposal.
		This value can only be used for compare relevance. A proposal is more relevant than another if his relevance
		value is higher.
		<br>
		<br><tt>ICompletionRequestor{</tt>
		<br><tt>&nbsp;&nbsp;void acceptAnonymousType(..., <b>int relevance</b>);</tt>
		<br><tt>&nbsp;&nbsp;void acceptClass(..., <b>int relevance</b>);</tt>
		<br><tt>&nbsp;&nbsp;void acceptError(...);</tt>
		<br><tt>&nbsp;&nbsp;void acceptField(..., <b>int relevance</b>);</tt>
		<br><tt>&nbsp;&nbsp;void acceptInterface(..., <b>int relevance</b>);</tt>
		<br><tt>&nbsp;&nbsp;void acceptKeyword(..., <b>int relevance</b>);</tt>
		<br><tt>&nbsp;&nbsp;void acceptLabel(..., <b>int relevance</b>);</tt>
		<br><tt>&nbsp;&nbsp;void acceptLocalVariable(..., <b>int relevance</b>);</tt>
		<br><tt>&nbsp;&nbsp;void acceptMethod(..., <b>int relevance</b>);</tt>
		<br><tt>&nbsp;&nbsp;void acceptMethodDeclaration(..., <b>int relevance</b>);</tt>
		<br><tt>&nbsp;&nbsp;void acceptModifier(..., <b>int relevance</b>);</tt>
		<br><tt>&nbsp;&nbsp;void acceptPackage(..., <b>int relevance</b>);</tt>
		<br><tt>&nbsp;&nbsp;void acceptType(..., <b>int relevance</b>);</tt>
		<br><tt>&nbsp;&nbsp;void acceptVariableName(..., <b>int relevance</b>);</tt>
		<br><tt>}</tt>
		<br>
		<br>
		</li>
		<li>
		If the completion identifier and proposal are equal and the case match then the proposal relevance grow. Note that this isn't a 1.0 breaking API change, it
		only affects the 2.0 new code assist API (i.e. still backward compatible with 1.0 clients) which hasn't yet reached stability, though it should be close to now.
		</li>
	</ul>
</li>	
</ul>

<h3>
Problem Reports Fixed</h3>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=12614">12614</a>
Initializing JRE variables slow on plug-in activation
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=12986">12986</a>
Creating a working copy does not involve the problem requestor
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=12858">12858</a>
Compiler Bug : Invalid Byte Code: 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=11739">11739</a>
Dead branches in package/project Hierarchy View  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=12873">12873</a>
CodeAssist : missing  proposal of method declaration
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=12007">12007</a>
Source folder ending with .jar considered as JAR archive  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=12908">12908</a>
Build and save attempt fail with NPE and trying it many times crashs Eclipse
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=12246">12246</a>
Packages view shows .class and .java files when JAR has source  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=3349">3349</a>
Need a IJavaElement.getUnderlyingResource that does not do the exists test (1GJ69GP)
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=12975">12975</a>
jacks - qualified assignment to final field should be rejected
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=12969">12969</a>
jacks - synchronized (void expression) should be rejected
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=12705">12705</a>
Progress monitor cuts off package name
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=12767">12767</a>
AST MethodBinding question
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=9179">9179</a>
DCR: Need IJavaSearchScope equals or encloses  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=12444">12444</a>
strange types names in ReorderParameters error dialog 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=12781">12781</a>
AST instanceof-InfixExpression: Cant resolve type 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=12778">12778</a>
Typo in comment: InfixExpression.RIGHT_SHIFT_UNSIGNED 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=12768">12768</a>
IScanner doesn't let user state whether line separators are to be recorded
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=12651">12651</a>
NPE out of the CompletionEngine
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=12761">12761</a>
Closing a top level binary type doesn't close the class files of its inner types  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=12760">12760</a>
Type hierarchy missing anonymous binary type if closed  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=12674">12674</a>
Too many problems while reconciling
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=12373">12373</a>
Assert$AssertionFailedException error while reconciling

<h3>
Problem Reports Closed</h3>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=13059">13059</a>
incorrect (?) code compiles
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=12880">12880</a>
SQLJ Support
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=12603">12603</a>
Could not delete empty java file  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=9600">9600</a>
Field reference in working copy not found  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=12995">12995</a>
ToolFactory::createScanner - incorrect javadoc
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=12933">12933</a>
"Never used" variable warnings can't detect across scope
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=5135">5135</a>
Open Java editor on IResource.class do an error  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=12809">12809</a>
Unimplemented methods should not prevent class from running 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=10421">10421</a>
WSAD hang while setting buildpath  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=12590">12590</a>
Returning the type when local var is selected breaks refactoring
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=12710">12710</a>
Inconsistent behavior for the method IType.createField()

<p><hr><h1>
Eclipse Platform Build Notes&nbsp;<br>
Java Development Tooling Core</h1>
Eclipse SDK Build 20020402 - 2nd April 2002 
<br>Project org.eclipse.jdt.core v_237
<h2>
What's new in this drop</h2>
<ul>
<li>Improved specification of <code>IBuffer</code> by saying that:
	<ul>
		<li> Java model operations that manipulate an <code>IBuffer</code> (e.g. 
			<code>IType.createMethod(...)</code>) ensures that the same line delimiter 
			(i.e. either <code>"\n"</code> or <code>"\r"</code> or <code>"\r\n"</code>) is 
			used accross the whole buffer. Thus these operations may change the line delimiter(s) 
			included in the string to be append, or replaced.
			However implementors of this interface should be aware that other clients of <code>IBuffer</code>
			might not do such transformations beforehand.</li>
		<li> <code>addBufferChangedListener</code> and <code>removeBufferChangedListener</code>
			have no effect if the buffer is already closed.</li>
		<li> Other operations that manipulate the buffer (like <code>setContent</code>
			might throw a <code>RuntimeException</code> if called after the buffer
			has been closed.</li>
	</ul>
</li>
<li> IScanner API :
	<ul>
		<li> added <code>IScanner#getSource</code> so as to retrieve the scanner original source
		<li> renamed <code>IScanner#setSourceBuffer</code> into <code>IScanner#setSource</code>
	</ul>
</li>	
</ul>

<h3>
Problem Reports Fixed</h3>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=12454">12454</a>
AST/DOM: IllegalArgumentException generated by bad source
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=12431">12431</a>
Unclear compiler error
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=12416">12416</a>
Separate caching of project and pkg fragment root from caching of openables  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=12457">12457</a>
Need to synchronize JobManager.discardJobs(...)  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=12445">12445</a>
Compiler Failure on reference to abstract interface method
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=12417">12417</a>
api: IScanner, ITerminalSymbols - no way to get some tokens
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=12419">12419</a>
Weird secondary error in constructor reconciliation
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=12419">12419</a>
api: IScanner - missing (?) getSourceBuffer
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=12380">12380</a>
AST/DOM: resolveTypeBinding() on the second operand of a instanceof expression return null 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=9790">9790</a>
Add constructors from superclass inserts in wrong place 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=12387">12387</a>
Out Of Memory error importing file
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=3423">3423</a>
Need IConstants (1GKM51O)
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=11583">11583</a>
Infinite loop in OverflowingLRUCache
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=12346">12346</a>
Leaking closed buffers
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=11431">11431</a>
Stepping from one case statement's break ends up in next case 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=12326">12326</a>
Bad line number information returned from CompilationUnit with no trailing newline
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=3313">3313</a>
Severe - Performance - Java Model redundancies (1GFKTUN)  

<h3>
Problem Reports Closed</h3>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=12470">12470</a>
0214 - Walkback during encapsulate method 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=9179">9179</a>
DCR: Need IJavaSearchScope equals or encloses
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=10307">10307</a>
Code assist failed to search whole class path
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=7079">7079</a>
Code formatting fails with java.lang.Error 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=3255">3255</a>
Reminder - re-enable transient marker generation during code-assist (1GDCXLB)

<p><hr><h1>
Eclipse Platform Build Notes&nbsp;<br>
Java Development Tooling Core</h1>
Eclipse SDK Build 20020426 - 26th April 2002 
<br>Project org.eclipse.jdt.core v_236
<h2>
What's new in this drop</h2>
<ul>
<li> Reconciling with errors provide type errors in addition to syntax ones. This is still experimental,
	and can be disabled by unchecking the editor preference for transient problems.
</li>	
<li>Performance improvement of index queries with the <code>WaitUntilReady</code> policy. 
	The background indexer now takes all the CPU when another thread is waiting for it to 
	finish indexing.
    User will notice this improvement when doing a search or opening a type and there are 
    still files to index.
</li>
<li>Scanner API
	<ul>
		<li>defined scanner API (see <code>org.eclipse.jdt.core.compiler.IScanner</code>). </li>
		<li>added tool factory API (see <code>org.eclipse.jdt.core.ToolFactory#createScanner</code>), allowing to obtain
			a scanner (implementing <code>IScanner</code> API). </li>
	</ul>
</li>
<li> Code formatter API
	<ul>
		<li>defined code formatter API (see <code>org.eclipse.jdt.core.ICodeFormatter</code>). </li>
		<li>added tool factory API (see <code>org.eclipse.jdt.core.ToolFactory#createCodeFormatter</code>), allowing to obtain
			a code formatter (implementing <code>ICodeFormatter</code> API). Note that an extension point was also added
			to allow client code to contribute a code formatter implementation. The code formatter extension point is named
			<code>org.eclipse.jdt.core.codeFormatter</code>, also see associate comment in plugin.xml.</li>
		<li>added tool factory API (see <code>org.eclipse.jdt.core.ToolFactory#createDefaultCodeFormatter</code>), allowing to obtain
			a default code formatter (implementing <code>ICodeFormatter</code> API). </li>
	</ul>
</li>
<li> Working Copy API : instead of passing a problem requestor (<code>org.eclipse.jdt.core.IProblemRequestor</code>) to working copy #reconcile(...)
operation. The problem requestor is passed along at creation time. 
	<ul>
	<li>added IWorkingCopy.getWorkingCopy(IProgressMonitor, IBufferFactory, IProblemRequestor)</li>
	<li>added IWorkingCopy.getSharedWorkingCopy(IProgressMonitor, IBufferFactory, IProblemRequestor)</li>
	</ul>
	Previous API taking <code>IBufferFactory</code> got deprecated, they will be removed in a subsequent build.
</li>	
<li>Some internal classes got deprecated (as client code relies on them), since being surfaced:
	<ul>
		<li> <code>org.eclipse.jdt.internal.core.parser.InvalidInputException</code> <br>==> <code>org.eclipse.jdt.core.compiler.InvalidInputException</code> </li>
		<li> <code>org.eclipse.jdt.internal.core.parser.TerminalSymbols</code> <br>==> <code>org.eclipse.jdt.core.compiler.ITerminalSymbols</code> </li>
	</ul>
	They will be removed in a subsequent build.
</ul>

<h3>
Problem Reports Fixed</h3>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=3353">3353</a>
API - Should provide api for formatting source (1GJIWCF)
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=3179">3179</a>
Compiler - LF cannot run classes that miss implementations of an interface (1FNFVY8) 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=12199">12199</a>
Generated classfiles should be tagged as derived resources
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=11640">11640</a>
Bug in the code formatter 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=10544">10544</a>
Internal error creating long package name 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=12140">12140</a>
typo in IPackageFragmentRoot::createPackageFragment javadoc 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=11422">11422</a>
Attaching source when using variables to point to jars very unintuitive
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=12000">12000</a>
Main.compile does not close log file 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=6558">6558</a>
Missing class path entries should be displayed as an error
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=3354">3354</a>
API - should provide api for Scanning (1GJIWCT)
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=7496">7496</a>
Interface shows as class under content assist
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=11475">11475</a>
Code resolve reports types in security package
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=10899">10899</a>
Can't open on selection for member type in binary class
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=12013">12013</a>
JavaCore.getClasspathVariable fails on empty variables
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=11845">11845</a>
Internal Compiler Error
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=11922">11922</a>
is this code reachable or not?

<h3>
Problem Reports Closed</h3>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=12119">12119</a>
Eclipse build slow on network
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=7881">7881</a>
IType.move() clobbers editing buffer of destination element
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=10703">10703</a>
ast: no API to figure out the source range of 'super' keywords
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=10983">10983</a>
NullPointerException in JavaBuilder during Save
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=3355">3355</a>
API - should provide API for source element parsing (1GJIWD8)
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=10955">10955</a>
DCR - search: too limiting api of IJavaSearchScope  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=8819">8819</a>
Self hosting tool doesn't update search index
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=11497">11497</a>
Renaming project failed with Java Model Exception: Java Model Status [Name collision.]
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=12059">12059</a>
api: JavaCore::getOptions should return Map, not Hashtable
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=12044">12044</a>
Search for field reference broken
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=11905">11905</a>
DCR - provide scanning API

<p><hr><h1>
Eclipse Platform Build Notes&nbsp;<br>
Java Development Tooling Core</h1>
Eclipse SDK Build 20020321 - 21st March 2002 - MILESTONE 4
<br>Project org.eclipse.jdt.core v_235a
<h2>
What's new in this drop</h2>

<h3>
Problem Reports Fixed</h3>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=12014">12014</a>
No delta when adding package where src=bin and src!=proj  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=11755">11755</a>
resource copy filter and duplicated resource error
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=11640">11640</a>
Bug in the code formatter
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=11860">11860</a>
Cannot move a compilation unit
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=11627">11627</a>
Refactoring: CCE in Pullup method
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=11735">11735</a>
NPE selecting F3 in editor
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=11854">11854</a>
NPE on save
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=11805">11805</a>
build output filter is ignored
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=11568">11568</a>
Code resolve does not work for changed constructor
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=11656">11656</a>
Please add a ICompletionRequestorAdapter
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=9271">9271</a>
NPE inspecting "null" in the expressions view 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=11638">11638</a>
ast: CompilationUnit::findDeclaringNode fails 
<h3>
Problem Reports Closed</h3>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=11272">11272</a>
slow context assist on method/field-rich classes
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=11340">11340</a>
open on selection does not work for binary types
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=11654">11654</a>
NPE during build
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=11659">11659</a>
ast: CompilationUnit::findDeclaringNode fails #2 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=11086">11086</a>
ClassFileCompilationUnit should implement IClassFile

<p><hr><h1>
Eclipse Platform Build Notes&nbsp;<br>
Java Development Tooling Core</h1>
Eclipse SDK Build 20020319 - 19th March 2002
<br>Project org.eclipse.jdt.core v_234
<h2>
What's new in this drop</h2>
<ul>
<li> New API on IType for complete snippet in current type context. Code complete is performed against
 source (if available) or against type structure
<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <tt>void codeComplete(</tt>
<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; char[] snippet,</tt>
<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; int insertion,</tt>
<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; int position,</tt>
<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; char[][] localVariableTypeNames,</tt>
<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; char[][] localVariableNames,</tt>
<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; int[] localVariableModifiers,</tt>
<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; boolean isStatic,</tt>
<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ICompletionRequestor requestor) throws JavaModelException;</tt>
<br>&nbsp;
</li>
</ul>

<h3>
Problem Reports Fixed</h3>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=10318">10318</a>
Feature Request: new Code Assist API required

<h3>
Problem Reports Closed</h3>

<p><hr><h1>
Eclipse Platform Build Notes&nbsp;<br>
Java Development Tooling Core</h1>
Eclipse SDK Build 20020318 - 18th March 2002
<br>Project org.eclipse.jdt.core v_233
<h2>
What's new in this drop</h2>
<ul>
<li> Added option to trace java search activity.
    To enable it, see the following line in the org.eclipse.jdt.core/.options file:
    <code>org.eclipse.jdt.core/debug/search=true</code>
</li>
<li>Added API <code>CorrectionEngine#computeCorrections(IProblem, ICompilationUnit, ICorrectionRequestor)</code>, allowing.
to compute replacement corrections for IProblem(s) detected while reconciling.</li>
<li>Added API <code>ISourceReference#exists()</code>, allowing.
to check existency before invoking <code>ISourceReference</code> behavior. All implementations did already provide
an <code>exists()</code> method since they also are implementing <code>IJavaElement</code>.</li>
</ul>

<h3>
Problem Reports Fixed</h3>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=11524">11524</a>
api: IWorkingCopy:: getWorkingCopy() javadoc
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=11511">11511</a>
Compiler 1.4 fooled by extra interface methods
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=11389">11389</a>
Unused parameters not showing up as compiler warnings 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=11410">11410</a>
Exception in Java Builder when debug options turned off 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=11285">11285</a>
Potential NPE in CopyResourceElementsOperation.processPackageFragmentResource 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=11440">11440</a>
npe in rename temp 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=11468">11468</a>
NPE deleting project  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=11435">11435</a>
compiler bug: overwriting implicitely abstract method in anonymous inner class
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=11250">11250</a>
NPE in log after importing plugins  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=11271">11271</a>
Unable to delete a binary project in Java perspective  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=11210">11210</a>
ResourceDeltas are lost when merging deltas  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=11371">11380</a>
ast: missing binding for ConditionalExpression 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=11371">11371</a>
DOM/AST: node missing for super constructor call 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=6243">6243</a>
an ISourceReference API issue
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=11296">11296</a>
NPE during build
<h3>
Problem Reports Closed</h3>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=3438">3438</a>
OpenOnSelection - should be able to locate missing method by guessing (1GL186P)
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=11406">11406</a>
ActionPerformed() method in AbstractAction not found 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=3221">3221</a>
JM - Deadlock while saving in Editor (1GAJ67W)
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=11201">11201</a>
ClassCastException during build process

<p><hr><h1>
Eclipse Platform Build Notes&nbsp;<br>
Java Development Tooling Core</h1>
Eclipse SDK Build 20020314 - 14th March 2002
<br>Project org.eclipse.jdt.core v_232
<h2>
What's new in this drop</h2>
<ul>
<li>Added API <code>IDOMFactory.createInterface()</code> and <code>IDOMFactory.createClass()</code>.
See <a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=10980">10980</a> for details.</li>
</ul>
<h3>
Problem Reports Fixed</h3>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=11355">11355</a>
OpenOnSelection unable to perform in single-type import
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=9232">9232</a>
ICompilationUnit.delete() fails  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=11176">11176</a>
Organize imports misses org.eclipse.core.resources  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=3224">3224</a>
Tests - Re-enable reconciler tests (1GAKXZM)
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=10980">10980</a>
JDT / factory for new interfaces would be nice 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=10996">10996</a>
createCompilationUnit doesn't behave as described in the documentation 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=11125">11125</a>
DOM/AST: API request <br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=11277">11277</a>
Difference in between outliner content and unit content
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=10833">10833</a>
Open type doesn't propose all type after a checkout  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=11067">11067</a>
Adding useful toString() method for each new DOM/AST nodes 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=9933">9933</a>
Format does not handle synchronized keyword correctly 
<h3>
Problem Reports Closed</h3>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=8675">8675</a>
DCR - Code correction could suggest new element creation
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=11341">11341</a>
incorrect outline (i see only imports)
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=11217">11217</a>
is double "; " on a return statement an error?
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=10031">10031</a>
SEF ClassCastException 

<p><hr><h1>
Eclipse Platform Build Notes&nbsp;<br>
Java Development Tooling Core</h1>
Eclipse SDK Build 20020312 - 12th March 2002
<br>Project org.eclipse.jdt.core v_231
<h2>
What's new in this drop</h2>
<ul>
<li> Performance improvement:
     <ul>
     	<li> Search doesn't populate the Java Model any longer. Thus the memory
     	    used by a search operation can be reclaimed at the end. </li>
     	<li> Access to zip and jar files has been improved, which should result
     	     in better performance on a slow network. </li>
     </ul>
     </li>
<li> Added flag <code>IJavaElementDelta.F_FINE_GRAINED</code> that indicates
     that a fine-grained delta was computed for a given delta.
     Clients can use this flag to find out if a compilation unit 
     that have a <code>F_CONTENT</code> change should assume that there are 
     no finer grained changes (<code>F_FINE_GRAINED</code> is set) or if 
     finer grained changes were not considered (<code>F_FINE_GRAINED</code> 
     is not set). 
     </li>
<li> Surfacing IProblem (<code>org.eclipse.jdt.core.compiler.IProblem</code>) 
	<br>This allows some Java API to report failures in a lighter way than generating markers. Marker based API have been
	deprecated (note that due to some deadlock in client code, some of these API did not even produce markers, e.g. reconciling). In addition to
	surfacing problem descriptions, IProblem exposes all the IDs for the Java problem markers (attribute "id" on markers of type "org.eclipse.jdt.core.problem")</li>
<li> Changed error reporting method for <code>ICompletionRequestor</code> to surface IProblems instead of IMarkers.</li>
</ul>
<h3>
Problem Reports Fixed</h3>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=11191">11191</a>
Strange anonymous types in outline structure
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=11151">11151</a>
ast: IllegalArgumentException on AST creation 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=10538">10538</a>
Possible memory leak?
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=10616">10616</a>
StringIndexOutOfBoundsException opening type selection dialog
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=11152">11152</a>
Code Select - does not work with empty selection
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=11129">11129</a>
DOM/AST: Call resolveTypeBinding() on a CastExpression object throws a NullPoitnerException 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=3256">3256</a>
SearchableEnvironment - converts char[] to String, which affects performance
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=10984">10984</a>
DOM/AST: CU with syntax errors 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=11106">11106</a>
DOM/AST: do statement doesn't contain trailing semicolon 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=11104">11104</a>
DOM/AST: NumberLiteral contains leading and trailing comments 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=10213">10213</a>
SearchEngine.createJavaSearchScope((IJavaElement[]) does not work for binary elements  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=9240">9240</a>
Search finds deleted classes  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=11011">11011</a>
incorrect 'variable never used' warning
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=11025">11025</a>
extract method: incorrectly disallowed on some boolean expressions 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=10697">10697</a>
Performance - Binary model should not cache the classfile bytes 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=11037">11037</a>
DOM/AST: IllegalArgumentException when creatin AST 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=10635">10635</a>
Override methods not showing missing methods  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=7930">7930</a>
Code Assist - No completion in switch statement
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=10979">10979</a>
JDOM/add superinterface format problem 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=10986">10986</a>
DOM/AST: NPE when trying to resolve a binding 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=10580">10580</a>
type hierarchy incorrect for nested types  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=10935">10935</a>
DOM/AST: wrong length of variable declaration fragment 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=6111">6111</a>
Missing completion 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=10898">10898</a>
DOM/AST: NullPointerException 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=3261">3261</a>
Search - Memory peak during search (1GEN17L)  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=6667">6667</a>
Search: OutOfMemoryError searching wildcarded field ref  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=10874">10874</a>
DOM/AST: ClassInstanceCreation contains trailing comment 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=10881">10881</a>
DOM/AST: SwitchCase.isDefault always returns false 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=10865">10865</a>
DOM/AST; AST.resolveWellKnownType("void") returns null 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=10861">10861</a>
DOM/AST: TypeLiteral.resolveTypeBinding doesn't return class Class 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=10819">10819</a>
Incomplete task description after build with incomplete classpath
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=10468">10468</a>
DOM/AST: TypeDeclaration#isLocalTypeDeclaration doesn't consider anonymous types 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=10499">10499</a>
DOM/AST: need a way to access the IMethodBinding of a ClassInstanceCreation 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=10496">10496</a>
DOM/AST: need for a node that holds the body statements of a ClassInstanceCreation 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=10781">10781</a>
ast: incorrect position and length for AnonymousClassDeclaration 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=10843">10843</a>
DOM/AST: wrong structure for for statements 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=10663">10663</a>
ast: exception in AST converter 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=10759">10759</a>
ast: incorrect length of SimpleName (subsubnode of ArrayType) 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=10500">10500</a>
Shouldn't ignore inherited method with wrong argument types
<h3>
Problem Reports Closed</h3>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=10627">10627</a>
Rebuild Deletes non-Class Resources
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=3233">3233</a>
JM - CreateElementInCuOperation should not save working copy (1GBEKAW)  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=3445">3445</a>
search: type hierarchy scope incorrect (1GLC8VS)  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=10954">10954</a>
IMember::getFlags semantics on interface members
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=3195">3195</a>
Unnecessary proposals in Open on selection whith syntax error (1G0EIBB)
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=10933">10933</a>
DOM/AST: position of AnonymousTypeDeclaration is [-1,0] 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=10815">10815</a>
Error message for "incomplete path" lacks details
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=10913">10913</a>
DOM/AST: resolveBinding() for static field access 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=10698">10698</a>
DOM/AST: exception when creating AST 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=4946">4946</a>
Cross-project builder efficiency issues
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=3213">3213</a>
No compile error for bad interface (1G7G6M1)
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=10667">10667</a>
NPE in self encapsulate field 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=10389">10389</a>
Editing non-Java files causes a recompile
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=10313">10313</a>
Can not create Java project from existing source (1000+ Java files)
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=10794">10794</a>
NPE from search during refactor, pull up method
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=10699">10699</a>
ast: nothing in anonymous inner classes is created 

<p><hr><h1>
Eclipse Platform Build Notes&nbsp;<br>
Java Development Tooling Core</h1>
Eclipse SDK Build 20020305 - 5th March 2002
<br>Project org.eclipse.jdt.core v_230
<h2>
What's new in this drop</h2>
<ul>
<li> Added API <code>IClassFile.getWorkingCopy(IProgressMonitor, IBufferFactory)</code>
	 for consistence with <code>IWorkingCopy</code>.
     The returned working copy is just a wrapper on the class file's buffer.
     Thus only the <code>getBuffer()</code> operation is valid on this working
     copy.
</li>
<li> Added the notion of shared working copies. This allows clients to always
     get the same <code>IWorkingCopy</code> instance when asking for a working copy.
     See <code>IWorkingCopy.getSharedWorkingCopy(IProgressMonitor, IBufferFactory)</code>,
     <code>IWorkingCopy.findSharedWorkingCopy()</code>
     and <code>IWorkingCopy.destroy()</code> for more detail.
</li>
<li> Added option to trace use of shared working copies.
    To enable it, see the following line in the org.eclipse.jdt.core/.options file:
    <code>org.eclipse.jdt.core/debug/sharedworkingcopy=true</code>
</li>
<li> Added extension point to jdtcore so as to allow client plugins to register classpath variable initializers.
  Extension point is "org.eclipse.jdt.core.classpathVariableInitializer".
  (also see <a href="http://dev.eclipse.org/viewcvs/index.cgi/~checkout~/org.eclipse.jdt.core/notes/r2.0/variable%20init/uninit-classpath-vars.html">design notes</a>)
  Note that each classpath variable, if unbound, will trigger its registered initializer exactly once per session. If unsuccessful, it will stay unbound.

</li>
<li> Added option to trace classpath variable initializations.
    To enable it, see the following line in the org.eclipse.jdt.core/.options file:
    <code>org.eclipse.jdt.core/debug/cpvariable=true</code>
</li>
<li>Added option to trace access to zip and jar files from the Java model.
    To enable it, see the following line in the org.eclipse.jdt.core/.options file:
    <code>org.eclipse.jdt.core/debug/zipaccess=true</code>
</li>
<li>Resurrect some code for backport 1.0 internal functionality
	<ul>
	<li> org.eclipse.jdt.internal.compiler.ConfigurableOption (all the class).
	<li> org.eclipse.jdt.internal.formatter.CodeFormatter (some methods) :
		<ul>
		<li> public CodeFormatter(ConfigurableOption[] settings)
		<li> private static Map convertConfigurableOptions(ConfigurableOption[] settings)
		<li> public static ConfigurableOption[] getDefaultOptions(Locale locale)
		<li> public static String format(String sourceString, int initialIndentationLevel, ConfigurableOption[] options)
		</ul>
	<li> org.eclipse.jdt.internal.formatter.Options.properties (all the file)
	</ul>
</li>
</ul>
<h3>
Problem Reports Fixed</h3>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=3303">3303</a>
Many errors when adding projects from repository in a fresh install (1GF5PU7)
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=5285">5285</a>
Compile errors on load when Java Perspective not open
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=7085">7085</a>
Build errors when adding the JUnit example project
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=10700">10700</a>
ast: resolveBinding returns null on parameter reference 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=10676">10676</a>
StringLiteral.resolveTypeBinding() return null 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=10679">10679</a>
ClassCastException when calling resolveTypeBinding() with an error 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=10634">10634</a>
Problem with compiling some java classes; class not visible
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=10340">10340</a>
NPE when selecting multiple methods to "Pull up"  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=10662">10662</a>
Casting to Buffer makes it impossible for clients to implement IBuffer  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=10592">10592</a> 
ast: NPE in SingleVariableDeclaration::resolveBinding 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=9583">9583</a>
DOM : Self encapsulate field: NPE 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=10570">10570</a>
ast: CatchClause has incorrect startingPoint 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=10587">10587</a>
ast: missing node for a variable binding 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=9588">9588</a>
Invalid delta when replacing jar and proj=src=bin  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=10495">10495</a>
typo in ASTNode::MALFORMED javadoc 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=10472">10472</a>
CodeAssist - No completion between dot and number
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=3323">3323</a>
OpenOnSelection - no selection inside CodeFormatterPreferencePage.fTextListener initializer (1GGND3S)
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=10466">10466</a>
"Cannot reference a field before it is defined" - compiler bug?
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=10386">10386</a>
NPE in MatchLocator.lookupType  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=10378">10378</a>
perf problem with external JARs  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=9593">9593</a>
SelectionEngine give more results than expected
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=9969">9969</a>
CodeFormatter: Bug when formatting try/catch Block 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=3231">3231</a>
1.4 - target is now 1.2 (1GHW0DF)
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=9998">9998</a>
Performance - Better pruning meaningless AST nodes upon completion
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=10240">10240</a>
JDTCompilerAdapter doesn't understand "deprecation" from Ant 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=10274">10274</a>
DOM/AST: wrong implementation of TypeDeclaration.getFields 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=10241">10241</a>
Remaining references to com.ibm 
<h3> 
Problem Reports Closed</h3>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=10753">10753</a>
Compiler barfs on c:\ubizen with invalid unicode 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=10749">10749</a>
Bug is code formatter 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=10701">10701</a>
Undefined method when compiling using JDK 1.4
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=10674">10674</a>
AST API request : method binding for ClassInstanceCreation 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=10583">10583</a>
Can not save any java file
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=10275">10275</a>
Search: reference to class not found  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=3437">3437</a>
Code Assist fails when method has unknown return type (1GL12EG)
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=9579">9579</a>
Search: declaration in hierarchy - wrong matches  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=10460">10460</a>
The Compiler can not resolve package level class
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=10244">10244</a>
DOM/AST: MethodInvocation should have resolveBinding() method 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=9157">9157</a>
My existing .class files are deleted!
 
<p><hr><h1>
Eclipse Platform Build Notes&nbsp;<br>
Java Development Tooling Core</h1>
Eclipse SDK Build 20020226 - 26th February 2002
<br>Project org.eclipse.jdt.core v_229
<h2>
What's new in this drop</h2>
<ul>
<li>Java tooling now performs normally inside method bodies whose signature could not
be resolved.
</li>
<li> Specified that when an <code>IBuffer</code> is created through an 
     <code>IBufferFactory</code>, its content is set with the original
     element's content.
</ul>
<h3>
Problem Reports Fixed</h3>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=10110">10110</a>
Project not build since it was inconsistent
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=9642">9642</a>
Search - missing inaccurate type matches  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=9992">9992</a>
Member class declaration not found  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=10221">10221</a>
No variable name suggestion on array type
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=10166">10166</a>
Interface hides Object methods
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=7934">7934</a>
Builder always rebuilds when workbench restarted
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=7456">7456</a>
Error message with overloaded methods is confusing
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=10152">10152</a>
Computing hierarchy of IResource is slow  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=8809">8809</a>
Code assist with class folders does not work
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=9763">9763</a>
Code assist failure due to error in method signature:1GRVN5R
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=9985">9985</a>
Built in compiler will sometimes not allow Object method calls on Interfaces
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=10008">10008</a>
Internal compiler error when compiling switch statement
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=9912">9912</a>
Batch compiler doesn't put binaries in the right folder when -d is missing 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=6059">6059</a>
NPE in JavaModelStatus 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=9351">9351</a>
Copying a compilation unit onto itself destroys compilation unit 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=9813">9813</a>
VerifyError with Inner Class having private constructor
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=9492">9492</a>
Walkback while searching  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=9837">9837</a>
Inconsistent behavior when compiling from source or using binaries for constant expressions

<h3> 
Problem Reports Closed</h3>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=6951">6951</a>
DCR - Builder should ignore filtered out resources
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=5809">5809</a>
Duplicate class names in separate package imports cause compile error
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=9888">9888</a>
JAR exorter problems with META-INF in projects with no source folder  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=10104">10104</a>
Calculated serialVersionID's are incompatible with Sun's JDK

<p><hr><h1>
Eclipse Platform Build Notes&nbsp;<br>
Java Development Tooling Core</h1>
Eclipse SDK Build 20020214 - 14th February 2002 - MILESTONE 3
<br>Project org.eclipse.jdt.core v_228
<h2>
What's new in this drop</h2>

<h3>
Problem Reports Fixed</h3>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=9479">9479</a>
exception on package creation (discouraged name)  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=5999">5999</a>
IType.resolveType returns multiple matches also the type is unambigious
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=7485">7485</a>
IType resolve fails
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=9785">9785</a>  
Problem in IType.resolveType()
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=9239">9239</a>
search for method declaration - strange behavior  

<h3> 
Problem Reports Closed</h3>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=5647">5647</a>
Search results differ when using outliner context menu vs. dialog  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=5239">5239</a>
outliner gets out of synch  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=5029">5029</a>
Internal Error saving java file  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=9586">9586</a>  
Java 1.4 feature assert does not throw any exception
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=9504">9504</a>  
1GRU1L3:Search reference works only in outline view and not in editor
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=9476">9476</a>  
ArrayIndexOutOfBounds in JavaBuilder  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=3262">3262</a>
Strange output file deletion (1GDS2IX)

<p><hr><h1>
Eclipse Platform Build Notes&nbsp;<br>
Java Development Tooling Core</h1>
Eclipse SDK Build 20020212 - 12th February 200
<br>Project org.eclipse.jdt.core v_227
<h2>
What's new in this drop</h2>
<ul>
<li>Resource copy filters : A new setting allows to specify exclusion filters for resource being copied to the output folder..
	<ul>
	<li>option id:			"org.eclipse.jdt.core.builder.resourceCopyExclusionFilters"
	<li>possible values:	{ "<name>[,<name>]* } where <name> is a file name pattern (only * wild-cards allowed)
	<li>default:			"" 
	</ul>
</li>
<li>Encoding support : Batch compiler can be specified the source encoding format using '-encoding myEncoding' command line option.
In case of necessity, each individual file specified on the command line can be associated with a custom encoding
by suffixing its name with '[myEncoding]' (if applied to a folder, then all files in it will be sharing the custom
encoding). When no encoding is specified, then the platform default is used (as before). Similarily, a JavaCore option got added to
control the default encoding (no support yet for per file custom encoding).
	<ul>
	<li>option id:			"org.eclipse.jdt.core.encoding"
	<li>possible values:	{ "" for platform default, or any of the supported encoding name }.
	<li>default:			"" 
	</ul>
</li>
<li> Fix for <a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=9183">9183</a> required to increment the index signature 
version so as to trigger automatic reindexing on workspace startup (and thus add somme type references that were previously
missing from the binary index files). Subsequent startups will not reindex any further (only if inconsistency is detected, 
e.g. signature version is different).
</li>
<li> The <code>IBufferFactory</code> used when creating an <code>IWorkingCopy</code>
(see <code>ICompilationUnit.getWorkingCopy(IProgressMonitor monitor, IBufferFactory factory)</code>)
is now remembered and will be reused if the working copy is closed then reopen.
</li>
<li>Old Java builder implementation got removed</li>
<li>Project dependency cycle detection reenabled</li>
<li> Open on selection no longer need a non-empty selection to perform (when empty it will use the token
in which the selection start position is located).
<li>Improved progress reporting while searching all types in the workspace.</li>
</ul>

<h3>
Problem Reports Fixed</h3>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=9452">9452</a>  
IllegalArgumentException when creating an AST for TestCase.java  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=7390">7390</a>
Editing and saving read-only .java source file may cause lost of data
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=7926">7926</a>
Code Assist - No completion for class instance creation after inner class
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=7636">7636</a>
Can't do code assist after field with local class
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=8369">8369</a>
Code assist stops to work after anonymous class
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=9398">9398</a>
Compiler error with double array
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=9395">9395</a>
ClassCastException during build
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=9185">9185</a>
Severe shutdown performance problem  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=6167">6167</a>
Indexer not stoped on exit
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=7362">7362</a>
Override Methods doesn't handle unicodes 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=7295">7295</a>
Indendation in generated getters/setters of inner classes 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=6678">6678</a>
Incorrect output after Add Unimplemented Method 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=8758">8758</a>
null pointer exception in eclipse core while compiling Java code
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=6236">6236</a>
Renamed file is not excluded from project build  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=8696">8696</a>
Code assist doesn't work in initializer of anonymous inner class
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=6064">6064</a>
Open on selection shouldn't require selection.
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=9223">9223</a>
CodeAssist failure in inner type from class file.
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=6847">6847</a>
DCR - Filtering output to build directory
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=9309">9309</a>
DOM/AST: NPE when trying to resolve a binding 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=9308">9308</a>
DOM/AST: two equal hash table accesses 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=9101">9101</a>
Parse error while typing in Java editor  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=9031">9031</a>
NPE in AbstractMethodDeclaration.compilationResult during search  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=9084">9084</a>
NPE in parser during build 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=9008">9008</a>
Code assist on method declaration gives wrong throw exception
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=8878">8878</a>
Code assist provides arbitrary, invalid choice after a space
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=9198">9128</a>
NegativeArraySizeException starting workbench  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=9035">9035</a>
I got an NPE 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=9183">9183</a>
BinaryIndexer doesn't index all type references 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=3321">3321</a>
Adding missing source folder doesn't remove warning (1GGCC4P)
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=3219">3219</a>
JM - 'Cycle detected' should not be a marker attribute (1G8VTSA)
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=9169">9169</a>
Wrong code generation for comparison of string constants 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=8685">8685</a>
Exception while deleting a method  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=4021">4021</a>
jdt: Java elements and resources: error in source code (1GG87S9)  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=7878">7878</a>
On Package creation: No warning for unconventional names  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=9041">9041</a>
search: cannot create a sub-cu scope  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=9088">9088</a>
Unreachable catch block when error in referenced class's fields 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=3299">3299</a>
Autobuild produces errors when renaming source folders
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=9009">9009</a>
ClassCastException creating an invalid method 

<h3>
Problem Reports Closed</h3>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=3190">3190</a>
JM - use of "open" in java model inconsistent with core (1FW2EYQ)
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=3268">3268</a>
create(IProject) strange for normal projects (1GDVTER)
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=8527">8527</a>
Delete inner class
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=3037">3037</a>
Core error compiling a java class (1GEJK8Q)
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=9386">9386</a>
cannot import jar files into project
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=7976">7976</a>
JDT misses the new Java files created by PDE  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=5713">5713</a>
NPE when searching for references in a JAR  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=9177">9177</a>
Builder treats build errors as JavaErrors
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=8040">8040</a>
java source with $ in reference won't compile
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=5036">5036</a>
assertion fails on build
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=8498">8498</a>
deprecated methods are not displayed in the task console  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=3371">3371</a>
Assertion failed exception during build (1GK183O)
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=3419">3419</a>
asserion failed in build (1GKB9CH)
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=7895">7895</a>
Wierd state: Project not built because inconsistent.
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=7830">7830</a>
Deleting more than one method consecutively from the hierarchy view causes unexpected corruption of othe methods 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=9190">9190</a>
Removing a library from classpath gives not a remove delta  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=9104">9104</a>
copy package progress dialog has missing string 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=5706">5706</a>  
Cannot add two folders w/ same name but diff projects to build path of Java project  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=9103">9103</a>
Search reports no references to SWT.Help  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=6418">6418</a>
Scrapbook: "Unexpected End Of File" expected  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=3191">3191</a>
JM - non-existing external jars will not come to life when created (1FWI5C4)  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=8980">8980</a>
Unpredictable error catching on overridden methods with less visibility
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=9024">9024</a>
Do not find reference to an interface in JAR 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=9040">9040</a>
DOM/AST: why is the left hand side of an assignment an expression 

<p><hr><h1>
Eclipse Platform Build Notes&nbsp;<br>
Java Development Tooling Core</h1>
Eclipse SDK Build 20020205 - 5th February 2002
<br>Project org.eclipse.jdt.core v_226
<h2>
What's new in this drop</h2>
<ul>
<li> The JavaModel no longer notifies changes for generated classfiles in the output folder, these 
were never supposed to be signaled. </li>
</ul>

<h3>
Problem Reports Fixed</h3>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=3448">3448</a>
No error for package and type collision in default package
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=9016">9016</a>
DOM/AST: Problems with array.length access 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=9014">9014</a>
DOM/AST: NullPointerException when resolving System.err.println 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=9018">9018</a>
DOM/AST: why does the key of a variable binding include the type 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=5355">5355</a>
search: NPE in searchDeclarationsOfReferencedTypes  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=8928">8928</a>
Unable to find references or declarations of methods that use static inner classes in the signature  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=3291">3291</a>
Exception adding .class file to folder in package view (1GEUF3I)  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=8900">8900</a>
Search causing internal error  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=8812">8812</a>
Changing export state not propagated
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=8856">8856</a>
DOM AST: positions and bindings missing on QualifiedName 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=3446">3446</a>
type hierarchy: incorrect behavior wrt working copies (1GLDHOA)  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=3210">3210</a>
Search - method declarations within TypeHierarchy gives no matches (1G54BMR)  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=8145">8145</a>
TypeDeclaration sourceEnd contains trailing comment 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=8832">8832</a>
Sanity check error (internal error) when unused variables inside initializers  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=8078">8078</a>
Missing resource in copy CU dialog  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=8764">8764</a>
NPE while closing projects  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=8359">8359</a>
Index out of date when replacing a JAR  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=8773">8773</a> 
VerifyError : A .class file exported from VAJ does not run in JDK 1.2.2 (1GPPET0)
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=8697">8697</a> 
2 compiler bugs: the operator unkown operator is undefined and defined in an inherited type and an enclosing scope
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=8706">8706</a> 
Compile error when compiling an anonymous class which extends java.awt.Frame
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=8709">8709</a> 
Error compiling JDK1.4 classes
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=8340">8340</a>
inaccurate error message when dependent project is closed  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=3344">3344</a>
JavaElementDelta reports changed class files (1GIV8IK)  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=8384">8384</a> 
Unexpected compile errors when abstract method missing return type
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=8789">8789</a> 
Compiler incorrectly reports that abstract method has a body  

<h3>
Problem Reports Closed</h3>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=7987">7987</a>
Field reference search should do lookup in 1.4 mode  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=8863">8863</a>
.classpath gets overwritten if there's an XML error  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=7162">7162</a>
Java Model Exceptions in log from TypeHierarchyLifeCycle  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=8699">8699</a> 
Compiler error message incomplete: Syntax error on token ''
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=3324">3324</a> 
Bad compiler error (1GHF25P) 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=3441">3441</a>  
Internal error renaming a class (1GL2XCW) 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=7841">7841</a> 
Overriden methods inserted past the end of source
<p><hr><h1>
Eclipse Platform Build Notes&nbsp;<br>
Java Development Tooling Core</h1>
Eclipse SDK Build 20020129 - 29th January 2002
<br>Project org.eclipse.jdt.core v_225
<h2>
What's new in this drop</h2>
<ul>
<li> Java compiler is JCK 1.4 compliant. When toggled in 1.4 mode (batch: -1.4 -source 1.4), the Java compiler is fully JCK 1.4 compliant 
as of JCK 1.4 2001-10-01 update. When in 1.3 mode (default), it is JCK 1.3a compliant.
</li>
<li> By default, when toggled into 1.4 mode, the batch compiler will enable assertion support (e.g. -source 1.4). It can still manually
be toggled for 1.3 source level compatibility (-source 1.3).
</li>
<li> Added constructor <code>SearchEngine(IWorkingCopy[])</code>
     which takes a list of working copies that will take precedence 
     over their original compilation units in the subsequent search 
     operations on this search engine.
     <br>
     Note that this functionality is still under development and some
     parts may not work as expected. Feedback is welcome.
</li>
<li> New feature to achieve problems corrections : org.eclipse.jdt.core.CorrectionEngine.
     Correction results are answered through a requestor (org.eclipse.jdt.core.ICorrectionRequestor).
</li>
<li> JavaCore will no longer add indirectly prereq'ed project amongst project references.
</li>
<li> New JDOM AST API available (also see <a href="http://dev.eclipse.org/viewcvs/index.cgi/~checkout~/org.eclipse.jdt.core/notes/r2.0/dom%20ast/ast.html?rev=1.1&content-type=text/html">design
note</a>). This API has not yet reached full stability, and feedback is very welcome.
</li>
</ul>

<h3>
Problem Reports Fixed</h3>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=8641">8641</a>
Can't find references in hierarchy in binary projects  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=8659">8659</a>  
Unexpected changes in project references (.vcm-meta)  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=8358">8358</a>
Search: doesn't find reference although there are  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=6799">6799</a>
Duplicate type collisions
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=8414">8414</a>
Incorrect "unused variable" warning?
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=8484">8484</a>
Internal error searching for write access to a variable  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=8536">8536</a>
Bug on "Open type hierarchy"  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=8575">8575</a>
Variable name code completion should handle arrays
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=8530">8530</a>
Internal error using assertions (1.4 feature)
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=8531">8531</a>
VerifyError in code containing assertions

<h3>
Problem Reports Closed</h3>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=7509">7509</a>
1GQ6DUC: WSWB:WIN2000 - Ctrl-space Code Completion does not work
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=8060">8060</a>
Hierarchy only shows Object when opening type in binary project  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=3408">3408</a>
JCK 1.4 - NAME - qualified AmbiguousName and an ExpressionName (1GK7M9B)
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=8584">8584</a>
Invalid syntax error generated by compiler

<p><hr><h1>
Eclipse Platform Build Notes&nbsp;<br>
Java Development Tooling Core</h1>
Eclipse SDK Build 20020124 - 24th January 2002 - MILESTONE 2
<br>Project org.eclipse.jdt.core v_224
<h2>
What's new in this drop</h2>

<h3>
Problem Reports Fixed</h3>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=11354">11354</a>
Unable to edit Java code
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=8016">8016</a>
getter/setter outliner reconciling broken  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=8352">8352</a>
No hierarchy when using HierachyType  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=8042">8042</a>
ClassCastException hovering in java editor
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=8216">8216</a>
Incomplete super type hierarchy for binaries  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=8125">8125</a>
'Could not uniquely map the type name' message opening type  

<h3>
Problem Reports Closed</h3>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=7221">7221</a>
IllegalArgumentException renaming package  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=5341">5341</a>
Error message shouldn't expose exception class  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=8038">8038</a>
Null Pointer Exception Adding Unimplemented  


<p><hr><h1>
Eclipse Platform Build Notes&nbsp;<br>
Java Development Tooling Core</h1>
Eclipse SDK Build 20020123 - 23rd January 2002
<br>Project org.eclipse.jdt.core v_223
<h2>
What's new in this drop</h2>
<ul>
<li>Added workaround for <a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=7764">7764</a>
UI Dead Lock - IDE frozen  
</ul>

<h3>
Problem Reports Fixed</h3>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=3200">3200</a>
JavaBuilder - Build progress message could be shortened
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=8087">8087</a>
NPE when hierarchy verbose on and hierarchy on a region  

<h3>
Problem Reports Closed</h3>


<p><hr><h1>
Eclipse Platform Build Notes&nbsp;<br>
Java Development Tooling Core</h1>
Eclipse SDK Build 20020122 - 22nd January 2002
<br>Project org.eclipse.jdt.core v_222
<h2>
What's new in this drop</h2>
<ul>
<li> The selection engine now only selects identifier between selection start and selection end.
Previous behaviour was to select identifier between selection start and identifier end.
(e.g. if you select <b>File</b> in <b>File</b>Input, now the selection engine select the class File and not FileInput)
<li> Fix for <a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=6839">6839</a> required to increment the index signature 
version so as to trigger automatic reindexing on workspace startup (and thus get rid of undesired anonymous type entries
in the index files). Subsequent startups will not reindex any further (only if inconsistency is detected, e.g. signature version
is different).
</ul>

<h3>
Problem Reports Fixed</h3>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=7993">7993</a>
NPE when creating type hierarchy  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=3417">3417</a> 
JCK 1.4 - BINC - the new method is a static (respectively instance) method. (1GK7WCP)
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=3416">3416</a> 
JCK 1.4 - BINC - the new method is less accessible than the old one (1GK7VXD)
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=3415">3415</a> 
JCK 1.4 - BINC - the new field is a static (respectively instance) field (1GK7VSN)
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=3414">3414</a> 
JCK 1.4 - BINC - the new field is less accessible than the old one (1GK7VMD)
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=3413">3413</a> 
JCK 1.4 - BINC - detection of an IncompatibleClassChangeError (1GK7VCA)
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=3412">3412</a> 
JCK 1.4 - BINC - Invoke overriding class methods (1GK7UGQ)
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=3410">3410</a> 
JCK 1.4 - BINC - Adding a String field that has the same name as a String field of a superclass (1GK7MHO)
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=7920">7920</a>
JavaProject.canonicalizedPath  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=7597">7597</a>
PackageFragmentRoot which are archives loose associated resource  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=7827">7827</a>
null returned from getOriginal(IJavaElement workingCopyElement) for IMPORT_CONTAINER  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=7144">7144</a>
Hierarchy incorrect when using binary projects  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=3411">3411</a>
JCK 1.4 - BINC - Overriding instance and class methods (1GK7U6C)  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=3418">3418</a>
JCK 1.4 - EXPR - a NullPointerException is raised in run time (1GK7WHA)  <br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=7441">7441</a>
Open a type is extremely slow  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=7616">7616</a>
Unnecessary indexing when project is opened  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=3229">3229</a>
OpenOnSelection - strange behaviour of code resolve (1GAVL08)
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=6953">6953</a>
No code assist proposals for interface constructor
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=7583">7583</a>
DOMNode#getChild(String) needs to handle children with null names 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=7584">7584</a>
Comments on IDOMMethod#getReturnType() 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=3247">3247</a> 
SelectionEngine moves selection to enclosing token (1GCSD8D)

<h3>
Problem Reports Closed</h3>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=7956">7956</a>
No reference found to BlockScope.analysisIndex  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=3283">3283</a> 
OpenOnSelection - Code resolve doesn't work in some situations (1GEI5QT)
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=5453">5453</a> 
DCR: Code Assist for anonymous types
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=7617">7617</a> 
NPE in Builder with duplicated type names
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=6466">6466</a> 
Code Formatter  

<p><hr><h1>
Eclipse Platform Build Notes&nbsp;<br>
Java Development Tooling Core</h1>
Eclipse SDK Build 20020115 - 15th January 2002
<br>Project org.eclipse.jdt.core v_221
<h2>
What's new in this drop</h2>
<ul>
<li> The compiler will now follow JLS 8.6 with respect to anonymous class 
constructors (i.e. allow them to throw any exceptions).
<li> The compiler now enforces that interface methods be compatible with Object ones.
<li> The batch compiler will no longer create package directory structure anymore when the command line
argument '-d' <tt><destination></tt> is omitted (compliant with standard batch compilers).
<li> A type hierarchy that misses a super type is not rooted at Object any longer,
     but the subtype (of the missing type) will be a root (this is the behavior of
     VA/Java and VAME.)
<li> Adding a type that was missing from a hierarchy will update the hierarchy correctly.
<li> New API on ICompletionRequestor for suggest anonymous type declaration:</li>
<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <tt>void acceptAnonymousType(</tt>
<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; char[] superTypePackageName,</tt>
<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; char[] superTypeName,</tt>
<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; char[][] parameterPackageNames,</tt>
<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; char[][] parameterNames,</tt>
<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; char[][] parameterNames,</tt>
<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; char[] completionName,</tt>
<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; int modifiers,</tt>
<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; int completionStart,</tt>
<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; int completionEnd);</tt>
<br>&nbsp;
</ul>

<h3>
Problem Reports Fixed</h3>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=7625">7625</a>
No typehierarchy in working copy  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=7595">7595</a>
New builder performs intempestive full build on method body changes
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=7528">7528</a>
IlegalArgumentException in path canonicalisation  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=7034">7034</a>
code assist performance problem in scrapbook
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=7119">7119</a>
Content Assist does not complete some code
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=7000">7000</a>
Switch and Try statement doesn't include trailing } 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=6932">6932</a>
Increment statement in for loop contains trailing comments 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=6342">6342</a>
Code assist on Intreface-'Constructors' incomplete
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=7344">7344</a>
Search - write acces give wrong result  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=7455">7455</a>  
Build problems when instance variable name matches constructor parameter name and assignment to this.name in try block  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=6839">6839</a>
AllTypesSearchEngine returns anonymous classes 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=7445">7445</a>
char/string concat bug  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=3192">3192</a>
Invalid type hierarchy when missing type(s) in hierarchy (1GF5RN4)  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=3304">3304</a>
Hierarchy not updated when changing classpath (1GF5QSW)  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=7422">7422</a>
Missing project references on some imported Java projects
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=5067">5067</a>
CodeAssist - no variable name suggestion for base type
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=7363">7363</a>
Rebuild Project action is not compiling all Java source files
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=7325">7325</a>
Build collisions should be non-fatal?
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=7324">7324</a>
Ambiguous multiple problem descriptions when collision of build files
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=3385">3385</a>
JCK 1.4 - INTF - illegal method declaration for interface (1GK2AWS)
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=3318">3318</a>
JDOM - IDomNode redefines clone() with different signature (1GFVU2V)
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=6101">6101</a>
Unexpected error in inner class 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=7333">7333</a>
typo in type name: ResetSateForCodeGenerationVisitor 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=7354">7354</a>
Compatibility with javac when no output directory is specified 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=6473">6473</a>
JavaConventions should use IWorkspace validate methods  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=7129">7129</a>
Problems with replacing a project
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=3386">3386</a>
JCK 1.4 - EXCP - checked exception in variable initializer of anonymous class (1GK7B5L)
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=3367">3367</a>
JCK 1.4 - ICLS - An instance initializer in an anonymous class may throw any exception (1GK7LYF)
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=7184">7184</a>
Built in compiler does not allow anonymous class initializers to throw exceptions 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=6504">6504</a>
Type hierarchy: Subtypes in jar of another project not found  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=3334">3334</a>
Types hierarchy view does not show all subclasses. (1GI901Q)  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=6866">6866</a>  
Code-Assist (ctrl+space) to slow with jre-src
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=7071">7071</a>  
ArrayStoreException getting hoverhelp in Java editor
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=7165">7165</a>  
erroneous warning of unused variables  

<h3>
Problem Reports Closed</h3>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=3217">3217</a>
JM - deleting default package (1G8417Z)  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=7375">7375</a>
new classes with funny names don't appear in package view  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=7302">7302</a>
Need visibility in search results 
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=7305">7305</a>
interface methods are marked abstract
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=7290">7290</a>
Project size limitation
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=6232">6232</a>
Build problems: Internal error: null when compiling JDK source code
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=7380">7380</a>
Wrong scope for traverse methods
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=7137">7137</a>
Invalid type not flagged by compiler
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=6924">6924</a>
ArrayIndexOutOfBoundsException when setting the build path.

<p><hr><h1>
Eclipse Platform Build Notes&nbsp;<br>
Java Development Tooling Core</h1>
Eclipse SDK Build 20020108 - 8th January 2002
<br>Project org.eclipse.jdt.core v_220a
<h2>
What's new in this drop</h2>
<ul>
<li>
Added new compiler option to toggle compliance level (can be either
"1.3" or "1.4" - 1.3 being the default), and it will affect the behavior
of the compiler with respect to JLS 8.1.5 (inherited member shadows enclosing
one). Option is located on <tt>JavaCore#getOptions()</tt> and named <tt>"org.eclipse.jdt.core.compiler.compliance"</tt>
Accordingly, the batch compiler accepts an extra command line argument
"-1.3" or "-1.4" (1.3 compliance being the default).</li>
</ul>
<h3>
Problem Reports Fixed</h3>
<a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=3330">3330</a>  
JCK 1.4 - illegal simple name imports (1GHW0G1)  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=7070">7070</a>
moved classes lost!  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=6785">6785</a>
NPE in IType.resolve
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=6779">6779</a>
searchDeclarationsOfReferencedTyped - missing exception types  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=7035">7035</a> 
New builder - builder does not close all JARs
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=7033">7033</a>
Stale packages view after moving compilation units  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=6927">6927</a>
Static inner class won't compile (doesn't match JDK behavior)
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=7030">7030</a>
IllegalArgumentException renaming project  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=7029">7029</a>
Renaming a Java project doesn't refresh the packages view  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=7027">7027</a>
project gone after renaming in the navigator  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=7026">7026</a>
walkback on rename project - could not reproduce  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=6889">6889</a>
No typehierarchy for inner types  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=3343">3343</a>
Missing java.lang.Object should produce a more prominent compiler error
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=6948">6948</a>
New builder - builder does not reuse opened JARs
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=3314">3314</a>
Resources not appearing in Java perspective or Jar export wizard (1GFL0QT)  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=6890">6890</a>
META-INF hidden  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=6993">6993</a>
JavaModel inconsistencies with units outside classpath  
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=3360">3360</a> 
Code assist does not work in inner classes (1GJOVT6)
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=6893">6893</a> 
LocalTypeDeclaration includes preceeding comment even if there are statements in between
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=3372">3372</a> 
Markers for build path not updated on (re-) build
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=5413">5413</a> 
incorrect class source range
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=6429">6429</a>
declaration source start incorrect on local variable
<br><a href="http://bugs.eclipse.org/bugs/show_bug.cgi?id=6433">6433</a>
declaration source start incorrect on local variable #2
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3235">3235</a>
PackageFragmentRoot existency check need to be revisited (1GCUNO7)
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=6865">6865</a>
open on selection in BuildNotifier only finds contents of rt.jar  
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=6037">6037</a>
JarPackageFragmentRoot.getUnderlyingResource() always returns null
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=6750">6750</a>
Batch compiler - Classpath handling is too strict  
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3409">3409</a>
JCK 1.4 - STMT - null literal in throw statement (1GK7MEQ)
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=4915">4915</a>
JCK 1.4 - need a major compiler switch for 1.3 / 1.4 mode
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=6678">6678</a>
Incorrect output after Add Unimplemented Method
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3361">3361</a>
JCK 1.4 - ICLS - field from outer class and inherited public field in nested class (1GK7LAA) 
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3350">3350</a>
JCK 1.4 - ICLS - static class from outer and class from superclass in top-level nested class (1GK7DVJ)  
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3351">3351</a>
JCK 1.4 - ICLS - static class from outer and protected static class from superclass in nested class (1GK7DZV)  
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3352">3352</a>
JCK 1.4 - ICLS - static class from outer and public static class from superclass in nested class (1GK7EB9) 
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3362">3362</a>
JCK 1.4 - ICLS - field from outer class and inherited field in nested class (1GK7LCX)   
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3363">3363</a>
JCK 1.4 - ICLS - An inherited variable that shadows a name from an enclosing non-package scope (1GK7LHR)  
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3364">3364</a>
JCK 1.4 - ICLS - An inherited method that shadows a name from an enclosing non-package scope (1GK7LKV)  
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3365">3365</a>
JCK 1.4 - ICLS - An inherited class that shadows a name from an enclosing non-package scope (1GK7LTA)  
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3366">3366</a>
JCK 1.4 - ICLS - An inherited interface that shadows a name from an enclosing non-package scope (1GK7LW2)
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3375">3375</a>
JCK 1.4 - ICLS - class from outer and protected class from superclass in top-level nested class (1GK7FLC)
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3376">3376</a>
JCK 1.4 - ICLS - class from outer and public class from superclass in top-level nested class (1GK7FOT)
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3377">3377</a>
JCK 1.4 - ICLS - class from outer and class from superclass in top-level nested class (1GK7FTA)
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3378">3378</a>
JCK 1.4 - ICLS - class from outer and protected static class from superclass in nested class (1GK7FX7)
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3379">3379</a>
JCK 1.4 - ICLS - class from outer and public static class from superclass in nested class (1GK7G2A)
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3380">3380</a>
JCK 1.4 - ICLS - class from outer and static class from superclass in nested class (1GK7G5A)
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3381">3381</a>
JCK 1.4 - ICLS - class from outer and protected class from superclass in nested class (1GK7G8E)
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3382">3382</a>
JCK 1.4 - ICLS - class from outer and public class from superclass in nested class (1GK7GC1)
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3383">3383</a>
JCK 1.4 - ICLS - class from outer and class from superclass in nested class (1GK7GQA)
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3384">3384</a>
JCK 1.4 - ICLS - static class from outer and public static class from superclass in top-level nested class. (1GK7CTV)
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3387">3387</a>
JCK 1.4 - ICLS - static field from outer class and inherited public field in top-level nested class (1GK7H0B)
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3388">3388</a>
JCK 1.4 - ICLS - static class from outer and protected static class from superclass in top-level nested class (1GK7BGP)
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3389">3389</a>
JCK 1.4 - ICLS - static class from outer and static class from superclass in top-level nested class (1GK7D2P)
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3390">3390</a>
JCK 1.4 - ICLS - static class from outer and protected class from superclass in top-level nested class (1GK7D7Q) 
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3391">3391</a>
JCK 1.4 - ICLS - static class from outer and public class from superclass in top-level nested class (1GK7DBD)
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3392">3392</a>
JCK 1.4 - ICLS - static class from outer and static class from superclass in nested class (1GK7ERE)
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3393">3393</a>
JCK 1.4 - ICLS - static class from outer and protected class from superclass in nested class (1GK7EVB)
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3394">3394</a>
JCK 1.4 - ICLS - static class from outer and public class from superclass in nested class (1GK7EZB)
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3395">3395</a>
JCK 1.4 - ICLS - static class from outer and class from superclass in nested class (1GK7F4S)
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3396">3396</a>
JCK 1.4 - ICLS - class from outer and protected static class from superclass in top-level nested class (1GK7F8L)
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3397">3397</a>
JCK 1.4 - ICLS - class from outer and public static class from superclass in top-level nested class (1GK7FCN)
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3398">3398</a>
JCK 1.4 - ICLS - class from outer and static class from superclass in top-level nested class (1GK7FHB)
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3399">3399</a>
JCK 1.4 - ICLS - static field from outer class and inherited field in top-level nested class (1GK7H2Z)
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3400">3400</a>
JCK 1.4 - ICLS - static field from outer class and inherited protected field in top-level nested class (1GK7GW6)
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3401">3401</a>
JCK 1.4 - ICLS - field from outer class and inherited field in top-level nested class (1GK7HEF)
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3402">3402</a>
JCK 1.4 - ICLS - static field from outer class and inherited protected field in nested class (1GK7HH1)
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3403">3403</a>
JCK 1.4 - ICLS - field from outer class and inherited protected field in top-level nested class (1GK7H5X)
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3404">3404</a>
JCK 1.4 - ICLS - field from outer class and inherited public field in top-level nested class (1GK7HBJ)
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3405">3405</a>
JCK 1.4 - ICLS - static field from outer class and inherited public field in nested class (1GK7HKE)
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3406">3406</a>
JCK 1.4 - ICLS - static field from outer class and inherited field in nested class (1GK7HMN)
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3407">3407</a>
JCK 1.4 - ICLS - field from outer class and inherited protected field in nested class (1GK7L79)
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=6061">6061</a>
unreachable code/unused temp ? 
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=6443">6443</a>
Incremental java builder doesn't handle folder create/delete nicely
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=5317">5317</a>
Reparenting class should refresh hierarchy  
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=6740">6740</a>
Problems with deleting project
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=6491">6491</a>
Non-java resource folder doesn't appear under pkg fragment root  
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3245">3245</a>
sub folders with dot not visible in packages view (1GCOH17)  
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=6806">6806</a>
NullPointerException moving enpty cu out of default package  

<h3>
Problem Reports Closed</h3>
<a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=7065">7065</a>
NPE when saving a Java source
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=6956">6956</a>
incorrect compiler error reported on extract method
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=7072">7072</a>
Protected member in superclass not visible in subclass
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=7066">7066</a>
Subclass can't see protected inner class of superclass  
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3284">3284</a>
Project doesn't always rebuild after changing the Java build path
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=6957">6957</a>
CCE in AnonymousLocalTypeDeclaration::traverse 
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=6958">6958</a>
NPE in DeltaProcessor  
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=6900">6900</a>
Rebuild project fails with error "1000 
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=4382">4382</a>
NullPointerException in JavaBuilder
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3199">3199</a>
Missing classpath variables
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=6848">6848</a>
Index out of range exception with New builder
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=4913">4913</a>
null argument in IncrementalImageBuilder.getBuilderType
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=6760">6760</a>
package names truncated in compilation dialog
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3295">3295</a>
Errors from missing reference to a jar do not go away
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3450">3450</a>
Bug in JavaSearchScope (1GLE1GC)

<p><hr><h1>
Eclipse Platform Build Notes&nbsp;<br>
Java Development Tooling Core</h1>
Eclipse SDK Build 20011218 - 18th December 2001 - MILESTONE 1
<br>Project org.eclipse.jdt.core v_219a
<h2>
What's new in this drop</h2>

<h3>
Problem Reports Fixed</h3>

<a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=6117">6117</a>
CodeFormatter - impossible to set indentation level and position mapping w/o deprecated methods
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=6719">6719</a>
LocalTypeDeclaration::traverse

<h3>
Problem Reports Closed</h3>
<a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=5432">5432</a>
compiler syntax error is incorrect

<p><hr><h1>
Eclipse Platform Build Notes&nbsp;<br>
Java Development Tooling Core</h1>
Eclipse SDK Build 20011211 - 11th December 2001
<br>Project org.eclipse.jdt.core v_218
<h2>
What's new in this drop</h2>

<ul>
<li> Java element deltas are batched. If the java model operation modifies
	 a resource, then the java element deltas are merged and fired during 
	 the resource delta processing. If the java model operation doesn't 
	 modify any resource (e.g. IWorkingCopy.reconcile()), then the java
	 element delta is fired right away.
</ul>
<h3>
Problem Reports Fixed</h3>

<a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3215">3215</a>
JM - Creating a new class sends out many notifications (1GD2GT0)  
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=6695">6695</a>
Changing Java preference in build 20011206 throws a NullPointerException in org.eclipse.jdt.internal.core.DeltaProcessor.initializeRoots  
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=6761">6761</a>
NullPointerException during replace  
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3290">3290</a>
JavaBuilder - Old class files remain after change of output location
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3188">3188</a>
JavaBuilder - Deleting source doesn't delete binary folders (1FVPTTK)  
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3185">3185</a>
JavaBuilder - Errors don't disappear
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3189">3189</a>
JavaBuilder - Missing libraries results in insufficient dependency info
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3204">3204</a>
ImageBuilder should show error count in the progress
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3227">3227</a>
JCL dev - Builder did not refresh problems in exception hierarchy
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3228">3228</a>
Discarding rt.jar from build path triggers too many recompilation
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3232">3232</a>
Incremental builder unable to handle efficiently missing rt.jar scenario
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3234">3234</a>
Incremental builder does not notice addition of java.lang.Object inside same project
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3241">3241</a>
Build doesn't honor cancel
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3260">3260</a>
NPE when doing incremental project build
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3278">3278</a>
JavaBuilder - Problem Count rarely updated
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3287">3287</a>
Built state does not remember old pkg fragment roots
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3301">3301</a>
Incremental build doesn't detect disappearance of field
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3305">3305</a>
Incremental build doesn't detect abstract method to implements
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3311">3311</a>
performance: task list still does not scale at all
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3312">3312</a>
Internal errors in image builder due to duplicate package fragment
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3317">3317</a>
Fullbuild after startup
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3322">3322</a>
NullPointerException during build in StateImpl.getSourceElementEntries
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3326">3326</a>
Incremental build doesn't work if bin deleted
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3370">3370</a>
Incremental compiler is compiling project when it should not
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3422">3422</a>
NPE in Java builder during catchup
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3429">3429</a>
Incremental compilation bug on namespace change in private local class
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3444">3444</a>
Build problems: Marker set on Folder?
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=5007">5007</a>
Project classpath references do not follow class folders
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=5109">5109</a>
Adding project doesn't fix build errors
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=5320">5320</a>
NPE during catchup
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=5641">5641</a>
NPE on rebuild when replacing internal jar
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=6538">6538</a>
searchDeclarationsOf* incorrect 
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=6690">6690</a>
CodeAssist finds types outside the classpath 
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=6687">6687</a>
Wrong JavaModel refresh after drag and drop outside folder with dot in name  
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=6693">6693</a>
AbstractImageBuilder.compile throws an ArrayIndexOutOfBoundsException on line 166 in build 20011206
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=6670">6670</a>
Code Assist: Cannot resolve in method body
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=6674">6674</a>
Cannot add unimplemented methods
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=6629">6629</a>
Open On Selection does not work on Linux
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=5542">5542</a>
Too many deltas are fired on each JavaModel operation  
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3269">3269</a> 
Updating the Java packages view on project creation (1GDW0U9)  
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3202">3202</a>
DCR - JM - Merge Java Element Deltas with Resource Deltas (1G2B60Z)  
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=6621">6621</a>
NPE in Delta Processor  
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3368">3368</a>
JCK 1.4 - INTF - The field of protected interface is used in other package (1GK7M25)  
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=6596">6596</a>
Java compiler can generate invalid bytecode
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=6586">6586</a>
NullPointerException when resource modification done before java model is open
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=6542">6542</a>
extract method: incorrect error message  

<h3>
Problem Reports Closed</h3>
<a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=6645">6645</a>
Build/Rebuild does not recompile code  
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=6669">6669</a>
Search doesn't find reference to a field that is only used in an initialization  
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=5385">5385</a>
search: name searchDeclarationsOfSentMessages is not good  
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3183">3183</a>
JM - Builders and nested operations using Java model can get inconsistent results (1FUBV90)  
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3250">3250</a>
JavaProject.retrieveResource picks first removed child delta (1GCV7PQ)  
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=6378">6378</a>
ClassCastException in inner class emulation  
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=6677">6677</a>
\u in comment gives Invalid unicode error
   
<p><hr><h1>
Eclipse Platform Build Notes&nbsp;<br>
Java Development Tooling Core</h1>
Eclipse SDK Build 20011206 - 06th December 2001
<br>Project org.eclipse.jdt.core v_217
<h2>
What's new in this drop</h2>

<h3>
Problem Reports Fixed</h3>
<a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=6564">6564</a>
New builder - Incremental recompilation detected package problems incorrectly  
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=6563">6563</a>
Package view does not refresh ok when adding both package and unit at once  

<h3>
Problem Reports Closed</h3>
<a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3242">3242</a>
TypeRef.getType does not work for inner types (1GCFUNT)

<p><hr><h1>
Eclipse Platform Build Notes&nbsp;<br>
Java Development Tooling Core</h1>
Eclipse SDK Build 20011204 - 4th December 2001
<br>Project org.eclipse.jdt.core v_216c
<h2>
What's new in this drop</h2>
<ul>
<li> New incremental builder implementation enabled by default (can reenable the 
old implementation by changing the builder extension in the plugin.xml)
<li> Delta processing improvement:
	<ul>
	<li> No longer creates unnecessary Java elements when traversing the resource delta.
	<li> Handles changes in binary folder libraries.
	<li> Projects that share libraries are notified individually.
	<li> Doesn't notify empty deltas any longer.
	</ul>
<li> Source folder resource copying no longer perfom any copies as soon as
one source folder coincidates with the output location.
<li> Open on selection is more fault-tolerant: will now try to locate a
selected method for which argument types are incorrect.
<li> Compiler no longer rejects correct code with respect to access to protected
members defined in enclosing types (was only accepting a subset of correct scenarii).
</ul>
<h3>
Problem Reports Fixed</h3>

<a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=6528">6528</a>:
InvocationTargetException trying to search 
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=6494">6494</a>:
New builder: Invalid error found (The declared package does not match the expected package) 
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=6461">6461</a>:
NewBuilder - doesn't detect incorrectly located compilation units  
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=6456">6456</a>:
Invalid error when compiling access to protected member inside innerclass 
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3358">3358</a>:
Performance: indexer doing too much work? (1GJLDN7)  
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=5471">5471</a>: 
CodeFormatter mapped positions broken for multi-line comments
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=6431">6431</a>:
ArrayIndexOutOfBoundsException in the SourceIndexer requestor
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=6422">6422</a>:
Resource copy should not occur as soon as one source folder overlap the
binary output
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=6416">6416</a>:
Code resolve doesn't work on message send when parameters are not correct
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=5705">5705</a>:
Wrong positions for ClassCastLiteral
<h3>
Problem Reports Closed</h3>
<a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=6423">6423</a>:  
Search - does not find declarations of method "to*String"  
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3246">3246</a>: 
CodeCompletion - No completion on member access on anonymous class (1GD3OGA)
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=5454">5454</a>:
Code Assist adds qualified code inside inner classes
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=5837">5837</a>:
ArrayIndexOutOfBoundsException in index merging
<p><hr><h1>
Eclipse Platform Build Notes&nbsp;<br>
Java Development Tooling Core</h1>
Eclipse SDK Build 20011127 - 27th November 2001
<br>Project org.eclipse.jdt.core v_215a
<h2>
What's new in this drop</h2>

<ul>
<li>
Better highlighting of multi-line message sending</li>

<li>
Code assist only qualifies implicit members when necessary</li>

<li>
New API for setting both classpath and output location at the same time
(allowing to avoid classpath validation failures in case there is no way
to change both independantly):</li>

<br><tt>IJavaProject.setRawClasspath(IClasspathEntry[] newClasspath, IPath
newOutputLocation, IProgressMonitor monitor)</tt></ul>

<h3>
Problem Reports Fixed</h3>
<a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=6339">6339</a> Assertion
failed in SourceType
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=5618">5618</a>
Uncaught CompletionNodeFound exception doing code assist
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=6294">6294</a>
Exception during setting the classpath
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=6302">6302</a>
AssertionFailure in open on selection
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=6094">6094</a>
Search - does not find references to JavaProject.setProject(...)
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3320">3320</a>"
Search - Match through super type not found if in different project (1GGAOFT)
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=6158">6158</a>"
Search - Prefix and postfix expression not found as write reference
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=4974">4974</a>:
Set classpath / output location should be one operation
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=6176">6176</a>:
Eclipse tools index out of bounds
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=6160">6160</a>:
Index out of bounds in update references
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=6151">6151</a>:
ArrayIndexOutOfBoundsException in ObjectSet
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=5943">5943</a>:
internal error in setting buildpath (name collsion)
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=5471">5471</a>:
CodeFormatter mapped positions broken for multi-line comments
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=5907">5907</a>:
Indexer errors when disk full
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=5884">5884</a>:
Code assist should only fully qualify if needed
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=5514">5514</a>:
Select a declaration does not work in unsaved working copies
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=5414">5414</a>:
ArrayIndexOutOfBoundsException in Signature
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=5384">5384</a>:
search engine: behavior different than expected
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=6104">6104</a>:
Unoptimal debugger highlight for multi-line message expression
<h3>
Problem Reports Closed</h3>
<a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=6210">6210</a>: Creation
failed error when creating a source folder
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3425">3425</a>:
JavaCore.create(String handle) looses information (1GLA0QG)
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=6127">6127</a>:
Reference by local class not found when searching for interface refs
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=4990">4990</a>:
Error starting Eclipse
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3471">3471</a>:
Leading '/' in src page of Java wizard is misleading (1G842TH)
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3619">3619</a>:
inconsistent search for method declarations (1GCZZS1)
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=5557">5557</a>:
Incorrect hierarchy shown (not rooted at Object)
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=6100">6100</a>:
Bug in ObjectSet.Enumeration.nextElement
<p><hr><h1>
Eclipse Platform Build Notes&nbsp;<br>
Java Development Tooling Core</h1>
Eclipse SDK Build 20011120 - 20th November 2001
<br>Project org.eclipse.jdt.core v_213
<h2>
What's new in this drop</h2>

<ul>
<li>
CodeAssist no longer find synthetic completions.</li>

<li>
Reduced startup time of Java perspective</li>

<li>
CodeAssist option added to force full qualification of implicit field/method
references (see JavaCore option: "org.eclipse.jdt.core.codeComplete.forceImplicitQualification").</li>
</ul>

<h3>
Problem Reports Fixed</h3>
<a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=5982">5982</a>: content
assist displays accessors
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=5955">5955</a>:
NPE in LookupEnvironment
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=5923">5923</a>:
Search for "length" field refs finds [].length
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=5916">5916</a>:
Search - too many matches for refs to NameLookup.findPackageFragmentRoot
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=5957">5957</a>:
Internal error in RecoveredMethod.add
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=5972">5972</a>:
Incremental builder (new) recompiling dependents of Parser for no apparent
reason
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=5940">5940</a>:
Instance initializer in anon inner class generates errors
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=5913">5913</a>:
Performance - creating tons of classfile elements at startup
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=5862">5862</a>:
search : too many matches on search with OrPattern
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=6070">6070</a>:
New Builder: Builder order problem
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=5852">5852</a>:
Project references not updated according to buildpath
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=5471">5471</a>:
CodeFormatter mapped positions broken for multi-line comments
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=5563">5563</a>:
Write reference on declaration not reported
<h3>
Problem Reports Closed</h3>
<a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3257">3257</a>: IMethod.getParameterNames
for ClassFiles should use names from source (1GDGN3G)
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3245">3245</a>:
sub folders with dot not visible in packages view (1GCOH17)
<p><hr><h1>
Eclipse Platform Build Notes&nbsp;<br>
Java Development Tooling Core</h1>
Eclipse SDK Build 20011113 - 13th November 2001
<br>Project org.eclipse.jdt.core v_211b
<h2>
What's new in this drop</h2>

<h3>
Problem Reports Fixed</h3>
<a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=5821">5821</a>: Refactor
Rename renames local variable instead of member in case of name clash
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=5003>5003</a>:     Review JavaBuilder cancelation handling <br><a href=" http://dev.eclipse.org/bugs/show_bug.cgi?id="5790">5790</a>:
IJavaProject.hasBuildState() fails with new builder
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=5794">5794</a>:
Polymorphic search doesn't work in dependent projects
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=5781">5781</a>:
NPE using new image builder
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=5834">5834</a>:
Incremental build recompiled unrelated project
<h3>
Problem Reports Closed</h3>
<a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=5215">5215</a>: search:
missing field reference
<p><hr><h1>
Eclipse Platform Build Notes&nbsp;<br>
Java Development Tooling Core</h1>
Eclipse SDK Build 20011112 - 12th November 2001
<br>Project org.eclipse.jdt.core v_210_01
<h2>
What's new in this drop</h2>

<ul>
<li>
Project references are maintained by the JavaCore, in parallel with build
path.</li>

<li>
Resurrected deprecated APIs from 0.9 which were discarded previously.</li>

<li>
ICodeCompletion reverted to 1.0 version, and got deprecated. Use ICompletionRequestor
instead.</li>

<li>
Cross-project incremental recompilation in presence of structural changes
in produced binaries.</li>
</ul>

<h3>
Problem Reports Fixed</h3>
<a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=5362">5362</a>: Deeper
than necessary JavaElementDelta when package added
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=5525">5525</a>:
ICodeCompletionRequestor isn't 1.0 compatible
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=5616">5616</a>:
NPE when compiling invalid code defining a array of strings
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=5217">5217</a>:
java search scope: missing enclosing project
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=5527">5527</a>:
Unexpected inaccurate matches for #close() declarations
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=5522">5522</a>:
Type hierarchy - missing subtypes of JavaElement
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=5508">5508</a>:
JDT cannot support periods in the folders above the package name
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=5541">5541</a>:
No refresh when adding a compilation unit inside a dot named source folder
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=5532">5532</a>:
Incremental compile missed a return type change
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=5515">5515</a>:
AbortCompilation during polymorphic search
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=5275">5275</a>:
Cross-project recompilation Defect 186249 - OTI PR# 1GLEYT1
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=5267">5267</a>:
Dependent Projects not compiled when project is saved
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=5425">5425</a>:
Exception on CodeAssist
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3194">3194</a>:
DCR - JM - Buffer contents is duplicated (1G03HCP)
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=5430">5430</a>:
Must resurrect 0.9 deprecated APIs
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=4923">4923</a>:
IJavaProject.getPackageFragmentRoots returns roots from other projects
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3308">3308</a>:
Projects not build in correct order after load (1GF60TN)
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3435">3435</a>:
keeping the project references and required project in synch (1GL0L34)
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=5203">5203</a>:
Project indexing does not restrain to source files on the classpath
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3293">3293</a>:
search does not work in inner class (1GEUQHJ)
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3249">3249</a>:
Error message is confusing: using token instead of identifier (1GCTDYM)
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=5214">5214</a>:
TVT: Apostrophe shows up multiple times in Java error messages in some
translations (italian)
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=5263">5263</a>:
TVT: Compiler error messages are hard for translators to understand
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3251">3251</a>:
Types not included in code assist list for import (1GD06W9)
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=5277">5277</a>:
Code assist on assert method do an AbortException
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=5070">5070</a>:
search: missing interface method reference
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=5069">5069</a>:
search: method reference in super missing
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=5068">5068</a>:
search: missing method reference
<h3>
Problem Reports Closed</h3>
<a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=5526">5526</a>: NullPointerException
searching declarations of #close()
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=5498">5498</a>:
Java Compile - code does not compile correctly in JDT, but does with javac
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=5493">5493</a>:
Adding project references doesn't update the classpath
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=5426">5426</a>:
CodeAssist returns empty completion
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=1690">1690</a>:
Local variables not always displayed when in scope (1GJ8PX4)
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=4368">4368</a>:
Wrong match in Java Search
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3238">3238</a>:
CodeAssist - no completion if cursor at string beginning (1GI3BYO)
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3271">3271</a>:
Unable to delete attached internal source jar (1GDX215)
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3209">3209</a>:
DCR - JM -Invalid references to IPath.getDevice() potentially breaking
on Linux (1G4U1R7)
<br>&nbsp;
<p><hr><h1>
Eclipse Platform Build Notes&nbsp;<br>
Java Development Tooling Core</h1>
Eclipse SDK Build 20011025 - 25th October 2001
<br>Project org.eclipse.jdt.core v_206
<h2>
What's new in this drop</h2>

<ul>
<li>
JavaModel is no longer performing smart classpath updates when Java package
fragment roots are either moved or removed.</li>
</ul>

<h3>
Problem Reports Fixed</h3>
<a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3568">3568</a>: no
hoverhelp over constructor referrences (1GAJ0KP)
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=5218">5218</a>:
AccSuper is not set properly
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=5200">5200</a>:
SetClasspathOperation must close root only when root is removed
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3449">3449</a>:
CodeAssist - two type with same name must be qualified (1GLDN3Z)
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=4973">4973</a>:
Rename package removes first letter of import statements
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3279">3279</a>:
Severe - JM - Source found, even though sourcepath is false (1GELAVB)
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3434">3434</a>:
Deleting a project from the ws removes it from the buildpath! (1GKZNBS)
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=5021">5021</a>:
Refactoring trashed my code
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=5136">5136</a>:
ArrayIndexOutOfBoundsException when a field declaration is an anonymous
class
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3440">3440</a>:
Classfile comparator should be able to ignore order (1GL2I7E)
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3439">3439</a>:
Classfile comparator should be able to ignore synthetics (1GL2I3N)
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3442">3442</a>:
NPE in SourceElementParser (1GL496I)
<h3>
Problem Reports Closed</h3>
<a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3369">3369</a>: Classpath
gets out of sync (1GJU853)
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3281">3281</a>:
change java project binary output create new package (1GEHK07)
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3298">3298</a>:
Incorrect compile error on valid case statement (1GEYWET)
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3562">3562</a>:
Outliner bug for initializers (1G93CS3)
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3447">3447</a>:
search: could automatically narrow down scope (1GLDJVN)
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3288">3288</a>:
CodeAssist - Code assist doesn't work in some methods (1GELEBH)
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=5073">5073</a>:
delete does not work on default package
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3443">3443</a>:
Unused argument/variable warnings shown twice (1GL4OW7)
<br>&nbsp;
<p><hr><h1>
Eclipse Platform Build Notes&nbsp;<br>
Java Development Tooling Core</h1>
Eclipse SDK Build 20011018 - 18th October 2001
<br>Project org.eclipse.jdt.core v_205
<h2>
What's new in this drop</h2>

<ul>
<li>
CodeAssist provides variable name suggestions.</li>

<br>&nbsp;&nbsp;&nbsp; (breaking) API Changes on <tt>ICompletionRequestor</tt>
<br>&nbsp;&nbsp;&nbsp; <b>+</b> <u>Added</u> API for suggest variable name:
<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <tt>void acceptVariableName(</tt>
<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; char[] typePackageName,</tt>
<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; char[] typeName,</tt>
<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; char[] name,</tt>
<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; char[] completionName,</tt>
<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; int completionStart,</tt>
<br><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; int completionEnd);</tt>
<br>&nbsp;
<li>
Helper method for computing a resolved and expanded path (all exports from
prerequisites) which was introduced in 204, got <u>removed</u>. This is
not an API change, it never made it out officially.</li>

<br>&nbsp;&nbsp; <b>-</b> <tt>IJavaProject.getExpandedClasspath(boolean)</tt>
<p><tt>SearchEngine.createJavaSearchScope(IResource[])</tt> has been deprecated.
Use <tt>SearchEngine.createJavaSearchScope(IJavaElement[])</tt> instead.
The rational is that <tt>createJavaSearchScope(IResource[])</tt> was not
well defined for projects, and it could not define a search scope for java
elements that didn't have a corresponding resource (e.g. external jars).
This deprecated API's behavior has also reverted to the 1.0 state for backward
compatibility. The specification of <tt>createJavaSearchScope(IJavaElement[])</tt>
is as follows:
<ul>
<li>
If an element is an <tt>IJavaProject</tt>, then the project's source folders,
its jars (external and internal) and its references projects (with their
source folders and jars, recursively) will be included.</li>

<li>
If an element is an <tt>IPackageFragmentRoot</tt>, then only the package
fragments of this package fragment root will be included.</li>

<li>
If an element is an <tt>IPackageFragment</tt>, then only the compilation
unit and class files of this package fragment will be included. Subpackages
will NOT be included.</li>
</ul>
</ul>

<h3>
Problem Reports Fixed</h3>
<a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=5065">5065</a>: NullPointerException
in Code Assist
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=4921">4921</a>:
Serach does not find types in internal jar
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=4917">4917</a>:
Latest build fails updating TypeHierarchy
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3296">3296</a>:
CodeAssist - should filter out duplicates if any (1GEWDL7)
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3325">3325</a>:
Too much codeassist match on interface (1GH0GV1)
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3424">3424</a>:
DCR: code assist support for variable name suggestions (1GKM6OQ)
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3282">3282</a>:
JCK 1.4 - DASG - assigned variable before catch block after return statement
(1GK2AHX)
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3452">3452</a>:
NPE doing Display from Binary (1GLEG5K)
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3374">3374</a>:
SearchPatter.createPattern(...) doesn't work with unicodes (1GJYBRY)
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3309">3309</a>:
DCR - JM - could ICompilationUnit::getType throw JME? (1GF9AL9)
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3310">3310</a>:
Smoke 124: Compile errors introduced with rename refactoring (1GFBK2G)
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3436">3436</a>:
NPW in TypeHierarchy (1GL0L8D)
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=4919">4919</a>:
Cannot duplicate local variable in finally block
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=4943">4943</a>:
Verification error
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=4385">4385</a>:
QualifiedAllocationExpression.sourceEnd incorrect if type is an AnonymousLocalTypeDeclaration
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3230">3230</a>:
Search - Too many type references for query ending with * (1GAZVGI)
<h3>
Problem Reports Closed</h3>
<a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3174">3174</a>: Open-on-selection
doesn't work on MouseAdapter (1GF69TH)
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3337">3337</a>:
Open on selection failed with double message (1GIFA80)
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3207">3207</a>:
JM - Smart save when empty CU (1G4EVHM)
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=1672">1672</a>:
Cannot evaluate classes in a sealed jar (1GHU6YK)
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3220">3220</a>:
Formatter tests refer to hardcoded path on disk (1G9R5G4)
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3258">3258</a>:
exception doing import assist (1GDIJ9D)
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3240">3240</a>:
need to find method declarations in anonymous inner types (1GCBPRI)
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3254">3254</a>:
Indexer - Should nest index source retrieval in IWorkspaceRunnable (1GD7J6F)
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3225">3225</a>:
IJavaProject.findPackageFragment strange semantic (1GAOLWQ)
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3218">3218</a>:
No interface to polymorphically acess ICompilationUnit (1G8D2ZP)
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3205">3205</a>:
Problems with IJavaModel.findPackageFragment (1G456DO)
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3197">3197</a>:
DCR - OpenOnSelection - Code resolve doesn't work on declarations (1G0UX9V)
<br><a href="http://dev.eclipse.org/bugs/show_bug.cgi?id=3177">3177</a>:
64kb method should be a configurable problem (1FJHGVF)
<br>&nbsp;
<p><hr><h1>
Eclipse Platform Build Notes&nbsp;<br>
Java Development Tooling Core</h1>
Eclipse SDK Build 20011011 - October 11th, 2001
<br>Project org.eclipse.jdt.core v_204
<h2>
What's new in this drop</h2>

<ul>
<li>
Classpath entries (except for source folders) can be tagged as exported
upon creation. When exported, an entry is contributed to dependent projects
along with its output location.</li>

<li>
Added APIs:</li>

<br>&nbsp;&nbsp;&nbsp; Testing status of a given entry
<br>&nbsp;&nbsp;&nbsp;&nbsp; + IClasspathEntry.isExported()</ul>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Creating
entries with export flag
<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
+ JavaCore.newProjectEntry(IPath, boolean)
<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
+ JavaCore.newLibraryEntry(IPath, IPath, IPath, boolean)
<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
+ JavaCore.newVariableEntry(IPath, boolean)
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Helper
method computing a resolved and expanded path (all exports from prerequisites)
<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
+ IJavaProject.getExpandedClasspath(boolean)
<ul>
<li>
CodeAssist inserts qualification on field/method references in case of
ambiguities.</li>

<li>
CodeAssist provides parameter names on method completions.</li>

<br>&nbsp;&nbsp;&nbsp; API Changes on ICompletionRequestor
<br>&nbsp;&nbsp; + Added API for answering method declaration completions:
<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; void acceptMethodDeclaration(
<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; char[] declaringTypePackageName,
<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; char[] declaringTypeName,
<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; char[] selector,
<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; char[][] parameterPackageNames,
<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; char[][] parameterTypeNames,
<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; char[][] parameterNames,
<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; char[] returnTypePackageName,
<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; char[] returnTypeName,
<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; char[] completionName,
<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; int modifiers,
<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; int completionStart,
<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; int completionEnd);
<br>&nbsp;&nbsp;&nbsp; + Added parameterNames to normal method results
API:
<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; void acceptMethod(
<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; char[] declaringTypePackageName,
<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; char[] declaringTypeName,
<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; char[] selector,
<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; char[][] parameterPackageNames,
<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; char[][] parameterTypeNames,
<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; char[][] parameterNames,&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;
ADDED
<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; char[] returnTypePackageName,
<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; char[] returnTypeName,
<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; char[] completionName,
<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; int modifiers,
<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; int completionStart,
<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; int completionEnd);
<br>&nbsp;
<li>
CodeAssist optionally performs visibility checks (see JavaCore option:
"org.eclipse.jdt.core.codeComplete.visibilityCheck").</li>

<li>
Search for field read and field write references. Two new constants have
been added</li>

<br>&nbsp;&nbsp;&nbsp; on IJavaSearchConstants to be used when creating
a field reference search pattern:
<br>&nbsp;&nbsp;&nbsp; - READ_REFERENCES: the search results contain *only*
read access to a field.
<br>&nbsp;&nbsp;&nbsp; - WRITE_REFERENCES: the search results contain *only*
write access to a field.
<br>&nbsp;&nbsp;&nbsp; Note that if REFERENCES is used, then search results
contain both read and write
<br>&nbsp;&nbsp;&nbsp; accesss to a field.
<li>
OpenOnSelection can now locate selected declarations which have a corresponding</li>

<br>&nbsp;&nbsp;&nbsp; Java element (i.e. no local declaration is found),
and is more tolerant of
<br>&nbsp;&nbsp;&nbsp; incorrect code.</ul>

<h2>
Problem Reports Fixed</h2>
&nbsp; 3430&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; usability: parameter hints (1GKYXK5)
<br>&nbsp; 3431&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Unreachable code in JCore
(1GL2V6K)
<br>&nbsp; 3175&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; JCK1.3a - ICLS - Comparing
current instance against enclosing instance inside of anonymous class.
(1GLDSBS)
<br>&nbsp; 1GLBOJZ:&nbsp; ITPJCORE:WIN2000 - UnaryExpression doesn't store
expression type in bit mask
<br>&nbsp; 1GDS7IP:&nbsp; ITPJCORE:WIN2000 - VerifyError related to a local
index computation
<br>&nbsp; 1GLABQ7: ITPJCORE:WIN2000 - JavaCore.create(String) throws an
unexpected exception
<br>&nbsp; 1GL0PGV: ITPJCORE:WINNT - Batch compiler leaving JARs open
<br>&nbsp; 5268&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ITPJCORE:ALL - VerifyError when running app (1GL4QKI)
<br>&nbsp; 1GLBP65: ITPJCORE:WIN2000 - search: type refs - incorrect match
<br>&nbsp; 1GKXCOM: ITPJCORE:WIN2000 - ClassCastException during inner
class emulation
<br>&nbsp; 1GD07GK: ITPJUI:WIN98 - Code assist should qualify methods if
needed.
<br>&nbsp; 1GL1HF8: ITPJCORE:WIN2000 - Missing implementation in the compiler
compiling invalid code
<br>&nbsp; 1GL13OT: ITPJCORE:ALL - INameLookup should be removed
<br>&nbsp; 1GL1I9F: ITPJCORE:WIN2000 - Wrong source mapping for binary
methods with parameters with identical simple names
<br>&nbsp; 1G4CIP0: ITPJUI:WIN - Source for binaries doesn't work for anonymous
inner classes
<br>&nbsp; 1GD79XM: ITPJCORE:WINNT - Search - search for field references
- not all found
<br>&nbsp; 1GLA60W: ITPJCORE:WINNT - CodeAssist - should not propose declarations
of method already locally implemented
<br>&nbsp; 1GLAEZB: ITPJCORE:WINNT - CodeAssist does not disambiguate method
references
<br>&nbsp; 1GL4F3J: ITPJCORE:WINNT - Completion on declaration should also
provide thrown exceptions
<br>&nbsp; 1GL11J6: ITPJCORE:WIN2000 - search: missing field references
(nested types)
<br>&nbsp; 1GL12XE: ITPJCORE:WIN2000 - search: missing field references
in inner class
<br>&nbsp; 1GL0X82: ITPJCORE:ALL - ClassCastException setting args on class
file
<br>&nbsp; 1GKAQJS: ITPJCORE:WIN2000 - search: incorrect results for nested
types
<br>&nbsp; 1GKZ8VZ: ITPJCORE:WINNT - Search - did not find references to
member constructor
<br>&nbsp; 1GKYS7Y: ITPJCORE:WINNT - Main not found
<br>&nbsp; 1GELSDQ: ITPJUI:WINNT - JDOM: IType.createMethod does not insert
nicely for inner types
<br>&nbsp; 1GF67VL: ITPJUI:WIN98 - DCR - CodeCompletion - Code-assist for
listener methods
<br>&nbsp; 1GFK8YT: ITPJUI:ALL - Rename CU A.B.java to AB.java fails (NPE)
<br>&nbsp; 1GD06J6: ITPJUI:WIN98 - Code assist should qualify fields if
needed.
<br>&nbsp; 1FZWGMG: ITPCOM:WIN98 - DCR - CodeAssist - code assist should
provide method signature completions
<br>&nbsp; 1GHVOQE: ITPJCORE:WINNT - Ambiguous completion in CodeAssist
<br>&nbsp; 1G8DEAB: ITPJUI:WINNT - DCR: code assist super methods when
defining method
<br>&nbsp; 1GGNNDZ: ITPJCORE:WINNT - OpenOnSelection - non visible target
is equivalent to no target
<br>&nbsp; 1GE14NN: ITPJUI:WINNT - Unable to find/search for .class files
<br>&nbsp; 1GJYFUO: ITPDUI:ALL - Evaluation hangs, evaluation thread is
suspended
<br>&nbsp; 1FWG453: ITPJCORE:WIN98 - OpenOnSelection - fails for default
constructors
<br>&nbsp; 1GDQD37: ITPJUI:WIN2000 - OpenOnSelection - Open on selection
failure
<br>&nbsp; 1GGZ2R7: ITPJUI:WIN2000 - Search for method refs failed
<br>&nbsp; 1GKNXX6: ITPJCORE:WINNT - OpenOnSelection - no selection if
targeting member type in default package
<br>&nbsp; 1GE34EE: ITPJUI:WIN2000 - OpenOnSelection - initial selection
wrong
<br>&nbsp; 1GKEG73: ITPJCORE:WIN2000 - search (136): missing field declaration
<br>&nbsp; 1GKB9YH: ITPJCORE:WIN2000 - search for field refs - incorrect
results
<br>&nbsp; 1GJL6EJ: ITPJCORE:WINNT - JavaConventions.validateClasspath:
Compares against variable name
<br>&nbsp; 1GDQEAS: ITPJUI:ALL - Indexer - delete unused indexes on Java
core plug-in shutdown
<br>&nbsp; 1GKM4M9: ITPJCORE:WINNT - DCR: code select should work on declarations
<br>&nbsp; 1G2NZVT: ITPJUI:WIN2000 - DCR - OpenOnSelection - Code resolve
doesn't work for declarations
<h3>
Problem Reports Closed</h3>
&nbsp; 3223&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Search from editor's context
menu doesn't work (1GAJCD8)
<br>&nbsp; 3433&nbsp; search: missing field occurrecnces (1GKZ8J6)
<br>&nbsp; 3176&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; JCK1.3a - STMT - Single declaration
in try block (1GLDSH9)
<br>&nbsp; 1GL0MN9: ITPJCORE:WIN2000 - search: not consistent results for
nested types
<br>&nbsp; 1GL9UMH: ITPJCORE:WIN2000 - search: missing type occurrences
<br>&nbsp; 1GKYXK5: ITPJUI:WIN2000 - usability: parameter hints
<br>&nbsp; 1GEV78E: ITPJUI:WIN2000 - Code assist: private superclass methods
show up, but others don't
<br>&nbsp; 1GDKKTS: ITPJUI:WINNT - CodeCompletion - import assist shows
invisible types
<br>&nbsp; 1G7317O: ITPJCORE:WIN2000 - DCR - CodeAssist - code assist shows
invisible members
<br>&nbsp; 1GKK930: ITPJCORE:WINNT - No code assist for Inner type
<br>&nbsp; 1GIIDGX: ITPJUI:WINNT - open on type: does not work on some
types
<br>&nbsp; 1GKOFO6: ITPJCORE:WINNT - Internal error searching for class
references
<br>&nbsp; 1GK96A0: ITPJCORE:WINNT - NPE during search operation
<br>&nbsp; 1GK9B5Q: ITPJCORE:WINNT - Class reference search broken
<br>&nbsp; 1GBOFK5: ITPJUI:ALL - "References to" on methods in jars
<br>&nbsp; 1GKECWC: ITPJCORE:WINNT - Organize Imports fails: Typerefs not
complete
<br>&nbsp; 1GKCH3N: ITPJCORE:WIN2000 - search: method refs - super call
not found
<br>&nbsp; 1GKB475: ITPJCORE:WINNT - StringIndexOutOfBoundsException on
searchfor methods
<br>&nbsp; 1GJL6V0: ITPJCORE:WINNT - JavaConventions.validateClasspath:
IStatus usage
<br>&nbsp; 1GKM1MU: ITPJCORE:WINNT - Classpath validation: Overlapping
accepted
<br>&nbsp; 1GJL7RS: ITPJCORE:WINNT - JavaConventions.validateClasspath:
nested sourcefolders
<br>&nbsp; 1GK9NB0: ITPJCORE:WIN2000 - Another core dump - sorry
<br>&nbsp; 1GJYG33: ITPJUI:WIN2000 - Core dump in run time workbench in
Search
<br>&nbsp; 1GK9S59: ITPJUI:WIN2000 - Internal error when synchronizing
<br>&nbsp; 1GL2TZY: ITPJUI:WIN2000 - Code Completion should only show visible
items
<br>&nbsp; 1GKRLZ4: ITPJCORE:WIN2000 - Compiler overzealous with commas
<br>&nbsp; 1GF98R4: ITPJUI:WINNT - JM - why is a file A.B.java seen as
a compilation unit?
<br>&nbsp; 1G98XR7: ITPJCORE:WIN2000 - Feature Request for JavaDoc CodeAssist
<p><hr><h1>
Eclipse Platform Build Notes&nbsp;<br>
Java Development Tooling Core</h1>
Eclipse SDK Build 0.202 - Spetember 27th, 2001
<br>Project org.eclipse.jdt.core v_202
<h2>
What's new in this drop</h2>

<ul>
<li>
New AST node for empty statements (org.eclipse.jdt.internal.compiler.ast.EmptyStatement)</li>

<br>&nbsp;&nbsp; i.e. 2 more APIs on the AST visitor. Note: this was not
an official API
<li>
ISourceElementRequestor notifies enter/exit initializers instead of just
acceptInitializer. Note: this was not an official API</li>

<li>
Search in inner-classes now works. Indexes are recomputed automatically
on start-up.</li>

<li>
&nbsp; Removed CodeAssist option for hungry mode (org.eclipse.jdt.core.codeComplete.entireWordReplacement)</li>

<br>&nbsp;&nbsp; Client code can decide whether using inferred end position
(hungry behavior) or original cursor location (insert behavior)
<br>&nbsp;&nbsp; based on the keystroke (enter/insert?).
<li>
&nbsp; org.eclipse.jdt.core.search.IJavaSearchResultCollector now clearly
states that</li>

<br>&nbsp;&nbsp;&nbsp; the order of the search result is unspecified.</ul>

<h2>
Problem reports fixed</h2>
&nbsp; 1GK2A45: ITPJCORE:WIN2000 - JCK 1.4 - possibly assigned variable
after assignment expression when true
<br>&nbsp; 1GK29Q8: ITPJCORE:WIN2000 - JCK 1.4 - possibly assigned value
of a final instance variable after a constant boolean expression when false
<br>&nbsp; 1G52F7P: ITPJCORE:WINNT - Search - finds bogus references to
class
<br>&nbsp; 1G4TNX1: ITPJCORE:WINNT - Search - No search anonymous results
in inner classes
<br>&nbsp; 1GHW0AZ: ITPJCORE:WINNT - JCK 1.4 - unreachable empty statements
<br>&nbsp; 1GK2BLM: ITPJCORE:WIN2000 - JCK 1.4 - definitely assigned value
after the boolean operator ? : when true
<br>&nbsp; 1GKB28A: ITPJCORE:WIN2000 - Compiler accepts incorrect code
<br>&nbsp; 1FL4T1Q: LFCOM:WINNT - JCK 1.4 - VerifyError due to an illegal
jump
<br>&nbsp; 1GK2B6D: ITPJCORE:WIN2000 - JCK 1.4 - definitely assigned value
before the second operand of the boolean operator &amp;&amp;
<br>&nbsp; 1GK2AOF: ITPJCORE:WIN2000 - JCK 1.4 - assigned variable before
finally block after return statement
<br>&nbsp; 1GK6WD3: ITPJCORE:WIN2000 - search:no fully qualified references
are found
<br>&nbsp; 1GK7231: ITPJCORE:WIN2000 - typos in comments
<br>&nbsp; 1GK77HA: ITPJCORE:WINNT - Search - missing base type references
<br>&nbsp; 1GJY2XN: ITPJUI:WIN2000 - rename type: error when with reference
<br>&nbsp; 1GK1I2J: ITPJCORE:WIN2000 - Broken SourceEnd in ForStatement
and WhileStatement
<br>&nbsp; 1GK1HWY: ITPJCORE:WIN2000 - Broken sourceEnd in for Assignment
and CompoundAssignment
<br>&nbsp; 1GIIBC3: ITPJCORE:WINNT - search for method references - missing
matches
<br>&nbsp; 1GGNOTF: ITPJCORE:WINNT - Search doesn't find method referenced
in anonymous inner class
<br>&nbsp; 1GK1GJE: ITPJCORE:ALL - Search - StringOutBoundsException when
searching references in JAR
<h3>
Problem Reports Closed</h3>
&nbsp;1GJY3KG: ITPJUI:WIN2000 - NPE in jdt.internal.core.ClassFileInfo
<br>&nbsp; 1GK90H4: ITPJCORE:WIN2000 - search: missing package reference
<br>&nbsp; 1GK8TXE: ITPJCORE:WIN2000 - search: missing field reference
<br>&nbsp; 1GK7K17: ITPJCORE:WIN2000 - search: missing type reference
<br>&nbsp; 1GKCJIL: ITPJCORE:WIN2000 - build exception in 135
<br>&nbsp; 1GK6WP9: ITPJCORE:WIN2000 - seach: missing type reference
<br>&nbsp; 1GJZSBE: ITPJCORE:WINNT - ArrayIndexOutOfBoundsException during
rebuild
<br>&nbsp; 1GK7E6S: ITPJCORE:WIN2000 - search: StringIndexOufOfBound
<br>&nbsp; 1GIT857: ITPJCORE:WIN2000 - Performance - Ctrl+S triggers five
parser runs
<br>&nbsp; 1GEHCYL: ITPUI:WINNT - Minor: Colon at wrong place in build
dialog
<br>&nbsp; 1FLUBRR: JRIDE:WINNT - Problems: instantiating inner classes
<br>&nbsp; 1FLUOJI: JRIDE:WINNT - Problems: vague error message with illegal
constructor invocation
<br>&nbsp; 1FLZUG5: JRIDE:WINNT - Problems: invalid expression as statement
is not reported
<br>&nbsp; 1FLZV4M: JRIDE:WINNT - Problems: invalid hexa literal number
not reported
<br>&nbsp; 1FLZYES: JRIDE:WINNT - Problems: the interface cannot define
an initializer is not reported
<br>&nbsp; 1FQVTI1: LFCOM:WINNT - Compiler - No implicit conversion should
not generate aconstnull
<br>&nbsp; 1FUZYXT: ITPJCORE:WINNT - JM - Source for Binaries issue
<br>&nbsp; 1FX0LZ0: ITPCOM:ALL - Request for comments preceeding imports
&amp; package decls
<br>&nbsp; 1FW8ENP: ITPJUI:WIN98 - JDOM - Deleting import statements from
Outline obliterates intervening comments
<br>&nbsp; 1G4PWC7: ITPJCORE:WINNT - Search - No matches with class files
<br>&nbsp; 1G83ZKL: ITPJUI:WINNT - Compiler - unclear error message for
a reserved word used as an identifier
<br>&nbsp; 1GF5W1S: ITPJUI:WIN2000 - ClassCastException in LookupEnvironment
<br>&nbsp; 1GKF01S: ITPJCORE:WINNT - Severe: internal error during search
<br>&nbsp; 1GDVFRX: ITPJUI:WIN2000 - CodeCompletion - eats the following
word
<br>&nbsp; 1GF67JM: ITPJUI:WIN98 - CodeCompletion - Code-assist consumes
next token
<br>&nbsp; 1GCSHAC: ITPJCORE:Inconsistent codeassist behavior
<br>&nbsp; 1GCNBTL: ITPJCORE:ALL - DCR - JM - Provide a way to read JavaCore
default options from the plugin.xml file
<br>&nbsp; 1GAJBOU: ITPJUI:WINNT - Code Assist shows matches after ()
<br>&nbsp; 1FW8NV6: ITPJCORE:ALL - DCR - JM - Need API for compiler options
<p><hr><h1>
Eclipse Platform Build Notes&nbsp;<br>
Java Development Tooling Core</h1>
Build 0.200 - September 13th, 2001
<br>Project org.eclipse.jdt.core v_200
<h2>
What is new in this drop</h2>

<ul>
<li>
JCK1.3a compliant.</li>

<li>
Added 2 new APIs on JavaConventions for classpath validation.</li>

<ul>
<li>
IJavaModelStatus validateClasspath(IJavaProject project, IClasspathEntry[]
classpath, IPath outputLocation)</li>

<li>
IJavaModelStatus validateClasspathEntry(IJavaProject project, IClasspathEntry
entry, boolean checkSourceAttachment)</li>
</ul>

<li>
Ant Eclipse compiler task added (org.eclipse.jdt.core.ant.Jdtcom)</li>

<li>
Assertions support enabled: by default the compiler is 1.3 compliant, but
it can optionally be turned into source 1.4 mode cf. JavaCore options.</li>

<li>
More options are surfaced on JavaCore. See JavaCore.getDefaultOptions()
for description.</li>

<ul>
<li>
...internal...ConfigurableOption has disappeared.</li>

<li>
Evaluation in binaries is functional</li>
</ul>

<li>
Search for references now finds results in binaries. Indexes in old workspaces
are recomputed when restarted which may result in longer startup times.</li>
</ul>

<h2>
Problem Reports Fixed</h2>
1GEKKUO: ITPJCORE:ALL - JM - Util.readContentsAsBytes(InputStream) doesn't
allow for size hint
<br>1GBRPSJ: ITPJCORE:Options - should surface the code formatter options
on JavaCore
<br>1GJU3YV: ITPJCORE:ALL - ArrayIndexOutOfBoundsException in scanner
<br>1GJL1R5: ITPJCORE:ALL - NPE in ClassFile.getSourceRange
<br>1GH49XR: ITPJUI:WIN2000 - Organize Imports inserts bogus import
<br>1GJU3O8: ITPJCORE:WINNT - type hierarchy: NPE
<br>1GJIYKP: ITPJCORE:WINNT - type hierarchy - contains unrelated types
<br>1GITFQR: IVJIDT:WIN2000 - Wrong byte code generation, Inconsistent
stack height 1 != 0 error
<br>1GIHUQP: ITPJCORE:WINNT - search for static field should be more accurate
<br>1GIT66X: ITPJCORE:WINNT - ClassCastException when calling CodeAssist
<br>1GJA0WG: ITPJCORE:WINNT - AbortCompilationUnit when doing a Search
<br>1GH49HW: ITPJUI:WINNT - Search functionality is misleading when viewing
source from jar
<br>1GFXPE5: ITPJUI:ALL - Search for method references broken
<br>1GFM3X3: ITPJUI:WINNT - Wrong code formatter default for keeping else
on same line
<br>1GHSM7B: ITPJUI:ALL - formatting of anonymous classes
<br>1GGPVHN: ITPJUI:WIN2000 - Not getting hover Javadoc for ISelection
<br>1GE2LO2: ITPJCORE:WIN2000 - SourceStart and SourceEnd of synchronized
statement
<br>1GIUTIZ: ITPJCORE:WIN2000 - AST: case statement doesn't cover case
keyword
<br>1GITCCY: ITPJCORE:WIN2000 - AST: strange LocalDeclaration.declarationSourceEnd
<br>1GIRQFW: ITPJCORE:WIN2000 - AST: wrong source end if subnode is of
type AnnonymousTypeDeclaration
<br>1GIRHRP: ITPJCORE:WIN2000 - AST: wrong sourceStart and sourceEnd in
SynchronizedStatement
<br>1GHUAUO: ITPJCORE:ALL - Renaming an element in a working copy corrupts
the working copy
<br>1GHUAM1: ITPJCORE:ALL - NPE when renaming an element in a working copy
<br>1GHDA2V: ITPJCORE:WINNT - ClassCastException when doing a search
<br>1GFY02B: ITPJUI:ALL - Delete a method and saving introduces extra lines
<br>1GFOFMD: ITPJUI:WIN2000 - New class should have space between package
and class decls
<br>1GI3R1I: ITPJCORE:WIN2000 - Compilation error evaluating super expression
in debugger
<br>1GII07V: ITPJCORE:WIN2000 - CompilationUnitDeclaration.traverse doesn't
call visitor.endVisit
<br>1GIR345: ITPJCORE:ALL - Indexer: NegativeArraySizeException
<br>1GIRC23: ITPJCORE:ALL - CodeFormatter brace on new line problem
<br>1GIT8SA: ITPJCORE:WIN2000 - AST: wrong sourceEnd if action is Block
<br>1GIUQVL: ITPJCORE:WINNT - IClassPathEntry: java doc incorrect
<br>1GIVGMH: ITPJUI:ALL - EC: Javadoc hoverhelp incorrectly uses first
of multiple comments
<br>1GIYKSR: ITPJCORE:WIN2000 - Ast: FieldDeclaration.traverse implemeted
differently
<br>1GI3ND5: ITPJCORE:WINNT - Potential optimization during IB problem
generation
<br>1GFBVZH: ITPUI:WIN2000 - ArrayIndexOutOfBoundsException: Java editor
<br>1GI509E: ITPJCORE:WINNT - IJavaProject.getNonJavaResources returns
java and class files
<br>1GI2WAW: ITPJCORE:WINNT - Too many results for default package
<br>1GHQZ9H: ITPJUI:ALL - Walkback doing a search
<br>1GGYT3S: ITPJCORE:WINNT - javaconventions::validatePackageName and
default package
<br>1GF9856: ITPJCORE:WINNT - JM - JavaConventions::validateCompilationUnitName
<br>1GF822P: ITPJCORE:WIN2000 - NegativeArraySizeException in Parser
<br>1GI6T4Y: ITPJCORE:WINNT - NPE in JavaModeManager retrieving workspace
options
<br>1GE4ILR: ITPJCORE:ALL - Eval - Evaluation in Binary Project fails
<br>1GI3LLC: ITPJCORE:ALL - Incorrect formatting for the new keyword
<br>1GHU6O5: ITPJCORE:WINNT - RMIC test fail
<br>1GHH6O7: ITPJCORE:ALL - Need to tune the exception analysis for AssertStatement
<br>1GHUW7T: ITPJCORE:WIN2000 - Build Problem
<br>1GI3IG9: ITPJCORE:ALL - internal compiler error involving bogus method/field
declaration
<br>1GHU4PK: ITPJCORE:WINNT - NoSuchMethodError when running program
<br>1GHONAX: ITPJCORE:WIN2000 - Compiler uses different name lookup for
refactoring
<br>1GEJYAJ: ITPJCORE:WIN2000 - Compiler - Binding of QualifiedNameReference
is null
<br>1GHFHWR: ITPJCORE:ALL - Assertions: CodeAssist and Selection need to
be updated
<br>1GHFHXG: ITPJCORE:ALL - Assertions: Add optional warning on assert
identifier
<br>1GCZ9VM: ITPJCORE:WIN2000 - DCR - Compiler - Batch compiler should
be API
<br>1GHO6QR: ITPJCORE:WINNT - Code Assist - no method completion when return
type is secondary one
<br>1GH0AU7: ITPJCORE:ALL - Eval - VerifyError in scrapbook page
<br>1GH2R62: ITPJCORE:WIN2000 - Typo in progress message
<br>1GGYL32: ITPJCORE:ALL - Default supertypes are not visible when qualified
<br>1GDFJK0: IVJIDT:WIN2000 - Using 'synchronized' produces invalid exception
table values in class, causes "Illegal exception table range" exception,
VAJ 3.5+
<br>1GGAK6G: ITPJCORE:ALL - Incorrect javadoc comment in JavaElement
<br>1GF9L3K: ITPDUI:ALL - Eval - Private array resolution failure
<br>1GF8KHX: ITPJUI:ALL - Invalid project build path should be warning,
not error
<br>1GF7JIH: ITPJCORE:ALL - Exception when removing network drive
<br>1GEYBL9: ITPJUI:WINNT - Adding source folders on CP is very confusing
<br>1GEJAOT: ITPJUI:WINNT - JRE Source attachment set to path to does not
exist
<br>1GEHZNB: ITPJUI:WINNT - smoke 114: formatter inserts extra tab in first
line
<br>1GCZZT4: ITPJCORE:Fault-tolerance - missing constructor invocation
could still answer the allocated type
<br>1GAU96P: ITPJCORE:WINNT - DCR - JM - JavaProject should provide a class
path validation method
<br>1G7A1TL: ITPJCORE:WINNT - DCR - JM - Rules for classpath not specified
<br>1FVVWZT: ITPJCORE:ALL - JM - IBinaryType should implement getSourceFileName()
<br>&nbsp;
</body>
</html>
