blob: 4accd73c4cc848ba1512c830e54f5614695e3c19 [file] [log] [blame]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "">
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<meta name="Author" content="IBM">
<title>JDT/Core Release Notes 3.8</title>
<link rel="stylesheet" href="jdt_core_style.css" charset="iso-8859-1" type="text/css">
<body text="#000000" bgcolor="#FFFFFF">
<table border=0 cellspacing=5 cellpadding=2 width="100%" >
<td align="left" width="72%" class="title1">
<font size="+3"><b>jdt core - build notes 3.8 stream</b></font>
<tr><td align="left" width="72%" class="title2"><font size="-2">Java development tools core</font></td></tr>
<td class="title3">
<font size="-1">
Here are the build notes for the Eclipse JDT/Core plug-in project
<a href=""><b>org.eclipse.jdt.core</b></a>,
describing <a href="" target=new>bug</a> resolution and substantial changes in the <a href=""><b>HEAD</b></a> branch.
For more information on 3.8 planning, please refer to <a href="">JDT/Core release plan</a>,
the next <a href="">milestone plan</a>,
the overall <a href="">official plan</a>,
or the <a href="">build schedule</a>.
This present document covers all changes since Release 3.7 (also see a summary of <a href="">API changes</a>).
<br>Maintenance of previous releases of JDT/Core is performed in parallel branches:
<a href="">R3.7.x</a>,
<a href="">R3.6.x</a>,
<a href="">R3.5.x</a>,
<a href="">R3.4.x</a>,
<a href="">R3.3.x</a>,
<a href="">R3.2.x</a>,
<a href="">R3.1.x</a>,
<a href="">R3.0.x</a>,
<a href="">R2.1.x</a>,
<a href="">R2.0.x</a>,
<a href="">R1.0.x</a>.
<a name="v_C04"></a>
Eclipse Platform Build Notes<br>
Java development tools core</h1>
Eclipse SDK 3.8.0 - August 9, 2011 - 3.8.0 M1
<br>Project org.eclipse.jdt.core v_C04
(<a href="">cvs</a>).
<h2>What's new in this drop</h2>
<li>Added a new API in BindingKey to return it's declaring type(see bug <a href="">351165</a> for details):
* Returns the binding key of the declaring type of the element represented by this binding key. If the binding key
* does not represent a member or if the member doesn't have a declaring type, returns <code>null</code>.
* <p>
* Note that only binding keys for references to methods and fields
* are fully supported. The binding keys for declarations will not have type parameters.
* @return the type binding key or <code>null</code>
* @since 3.7.1
public BindingKey getDeclaringType();
<h3>Problem Reports Fixed</h3>
<a href="">354052</a>
[1.7] NPE in org.eclipse.jdt.internal.compiler.ClassFile.traverse(
<br><a href="">346741</a>
[1.7][doc] Update doc when java 1.7 support is done
<br><a href="">353238</a>
[1.7] update unusedTypeArgs option description for the batch compiler
<br><a href="">353089</a>
[1.7][compiler] Incorrect name clash error with ecj
<br><a href="">351165</a>
[1.7] API to get the type arguments of the declaring type for constructor invocations
<a name="v_C03"></a>
Eclipse Platform Build Notes<br>
Java development tools core</h1>
Eclipse SDK 3.8.0 - August 3, 2011
<br>Project org.eclipse.jdt.core v_C03
(<a href="">cvs</a>).
<h2>What's new in this drop</h2>
<h3>Problem Reports Fixed</h3>
<a href="">353553</a>
Rename to avoid translation
<br><a href="">353085</a>
[1.7] Cannot cast from Object to boolean
<a name="v_C02"></a>
Eclipse Platform Build Notes<br>
Java development tools core</h1>
Eclipse SDK 3.8.0 - July 28, 2011
<br>Project org.eclipse.jdt.core v_C02
(<a href="">cvs</a>).
<h2>What's new in this drop</h2>
<h3>Problem Reports Fixed</h3>
<a href="">353250</a>
[1.7] merging Java 7 work to HEAD
<a name="v_C01"></a>
Eclipse Platform Build Notes<br>
Java development tools core</h1>
Eclipse SDK 3.8.0 - July 27, 2011
<br>Project org.eclipse.jdt.core v_C01
(<a href="">cvs</a>).
<h2>What's new in this drop</h2>
<li>Bundle version has been incremented to 3.8.0.qualifier</li>
<li>Added a new API in CompletionProposal to tell whether it diamond operator can be used (see bug <a href="">351444</a> for details):
* Returns whether it is safe to use the '<>' (diamond) operator in place of explicitly specifying
* type arguments for this proposal.
* This is only relevant for source level 1.7 or greater.
* @param coreContext the completion context associated with the proposal
* @since 3.7.1
* @return <code>true</code> if it is safe to use the diamond operator for the constructor invocation,
* <code>false</code> otherwise. Also returns <code>false</code> for source levels below 1.7
public boolean canUseDiamond(CompletionContext coreContext);
<li>New Javacore option org.eclipse.jdt.core.JavaCore.COMPILER_PB_REDUNDANT_TYPE_ARGUMENTS added to raise warning or error for redundant
usage of type arguments when diamond operator can be used instead. (see details in bug <a href="">340747</a>):
* Compiler option ID: Reporting redundant specification of type arguments in class instance creation expressions.
* When enabled, the compiler will issue an error or a warning if type arguments are used in a class instance creation,
* when the '<>' operator can be used instead.
* This option only has an effect if the compiler compliance is 1.7 or greater.
* Option id:<code>"org.eclipse.jdt.core.compiler.problem.redundantSpecificationOfTypeArguments"</code>
* Possible values:<code>{ "error", "warning", "ignore" }</code>
* Default:<code>"ignore"</code>
* @since 3.7.1
* @category CompilerOptionID
public static final String COMPILER_PB_REDUNDANT_TYPE_ARGUMENTS = PLUGIN_ID + ".compiler.problem.redundantSpecificationOfTypeArguments";
<li>Added a new API in ClassInstanceCreation to tell whether the resolved type is inferred from the assignment context:
<br>(see bug <a href="">350897</a> for details):
* Returns <code>true</code> if the resolved class type has been inferred
* from the assignment context (JLS4, <code>false</code> otherwise.
* This information is available only when bindings are requested when the AST is being built.
* @return <code>true</code> if the resolved class type has been inferred
* from the assignment context (JLS3, <code>false</code> otherwise
* @since 3.7.1
public boolean isResolvedTypeInferredFromExpectedType();
<h3>Problem Reports Fixed</h3>
<a href="">342936</a>
NPEs and inconsistencies when running jdt.compiler.tool.tests against Java 7
<br><a href="">351426</a>
[1.7][code assist] CompletionContext.getExpectedTypesKeys() returns wrong type
<br><a href="">353137</a>
[1.7] Make sure TagBits.AnnotationSafeVarargs and AnnotationPolymorphicSignature are handled everywhere
<br><a href="">353093</a>
IMethod#getAnnotations() doesn't return @SafeVarargs of java.util.Arrays#asList(T...)
<br><a href="">352464</a>
[1.7] Incorrect Javadoc shown for reference of invokeExact
<br><a href="">351498</a>
[model]java.util.ConcurrentModificationException upon startup
<br><a href="">352699</a>
[1.7][compiler] Improve error range for redundant type parameter warning
<br><a href="">352665</a>
[1.6][compiler] Internal compiler Error: ArrayIndexOutOfBoundsException when compiling certain classes with outer access error
<br><a href="">352553</a>
[1.7] 'char a\u200b' is being accepted in 1.6 mode
<br><a href="">352496</a>
tests using wrong version of JCL
<br><a href="">300576</a>
NPE Computing type hierarchy when compliance doesn't match libraries
<br><a href="">352145</a>
[1.7][compiler] VerifyError with aload0 being involved into ConditionalExpression
<br><a href="">351965</a>
[1.7] CCE when using diamond in 1.4
<br><a href="">351444</a>
[1.7][content assist] Need to know whether I can use diamond
<br><a href="">352014</a>
\u1369 no longer accepted as a valid java identifier part
<br><a href="">351653</a>
[1.7][compiler]: VerifyError in try statement with finally and return statements
<br><a href="">340747</a>
[1.7][compiler] compiler option to warn when diamond can be used, but type args are used instead.
<br><a href="">350895</a>
[1.7][formatter] New option to wrap before/after '|' in multi-catch
<br><a href="">350652</a>
[1.7][assist] Completion issues with multicatch (FUP of 343637)
<br><a href="">350095</a>
The 2000th (0-based) enum constant is null
<br><a href="">347503</a>
[DOM] ASTParser.setEnvironment() ignores includeRunningVMBootclasspath parameter
<br><a href="">350897</a>
[1.7][api] ClassInstanceCreation#isResolvedTypeInferredFromExpectedType()
<br><a href="">351170</a>
[1.7] ASTRewrite issues in Try with resources
<br><a href="">348493</a>
[1.7] Improve error msg for Diamond operator in 1.5 mode
<br><a href="">350885</a>
[Search] The pull up refactoring throws an NPE when pulling up a member that already exists in the superclass
<br><a href="">350611</a>
[1.7] Inconsistent error msg and error location for illegal diamond
<br><a href="">350579</a>
[1.7][compiler] VerifyError running example from bug 338402 comment 5
<br><a href="">350767</a>
[1.7][assist] CCE while invoking assist on a multi-catch block
<br><a href="">349312</a>
[1.7][compiler] improved problem messages
<br><a href="">350003</a>
[1.7] [compiler] AnnotationPolymorphicSignature tag is not being set to invokeExact while compiling MethodHandle source file
<br><a href="">350496</a>
[1.7] @PolymorphicSignature IMethods are missing the annotation
<br><a href="">349314</a>
[1.7][formatter] Line wrapping for multi-catch arguments
<br><a href="">350039</a>
[1.7] ASTParser#createASTs(..) doesn't resolve IMethodBinding for @PolymorphicSignature method reference
<br><a href="">349396</a>
[1.7][formatter] Line wrapping and indentation options for try with resources
<br><a href="">350361</a>
[1.7] Unhandled exception type Exception
<br><a href="">349488</a>
[1.7] IMethodBinding#getMethodDeclaration() should return the declaration of @PolymorphicSignature methods
<br><a href="">349487</a>
[1.7] IMethodBinding#getJavaElement() returns inexistent element for @PolymorphicSignature methods
<br><a href="">349862</a>
[1.7] NPE when trying to use UnionType as TryStatement resource
<br><a href="">349864</a>
[1.7][compiler] Error message considers AutoCloseable as class
<br><a href="">348956</a>
[1.7] ITypeBinding#isAssignmentCompatible(ITypeBinding) returns different result
<br><a href="">349312</a>
[1.7][compiler] improved problem messages
<br><a href="">349008</a>
[1.7] Ugly formatting for try with resources
<br><a href="">349072</a>
[1.7] &quot;Cannot infer elided type(s)&quot; sounds too elite
<br><a href="">348705</a>
[1.7][compiler] Improve error message for unhandled IOException generated due to compiler-generated close()
<br><a href="">348050</a>
[1.7] Error in JDT Core during AST creation
<br><a href="">348406</a>
[1.7] Incorrect error msg on try with resources in 1.5 mode
<br><a href="">348492</a>
[1.7] Improve error msg on strings in switch in 1.5 mode
<br><a href="">348491</a>
[1.7] Rename IProblem.IllegalBinaryLiteral to BinaryLiteralNotBelow17 and IProblem.IllegalUsageOfUnderscore to UnderscoreInLiteralsNotBelow17
<br><a href="">348369</a>
[1.7] Missing error &quot;No exception of type Exception[] can be thrown&quot;
<br><a href="">348379</a>
[1.7][compiler] Null pointer access warning for strings in switch
<br><a href="">346415</a>
[1.7][assist] No proposal inside catch statement from 3rd catch block onwards
<br><a href="">346454</a>
[1.7][content assist]Getting NegativeArraySizeException while trying content assist after diamond
<br><a href="">347600</a>
[1.7][compiler] Suspect bounds check failure after inference.
<br><a href="">347746</a>
[1.7][compiler] Bounds check failure during method inference
<br><a href="">283353</a>
[1.5][compiler] Eclipse compiler shows error on javac-valid construct: Bound mismatch
<br><a href="">347145</a>
[1.7][compiler] Bounds check issue with raw types in method inference
<br><a href="">347426</a>
[1.7][compiler] ecj behavior differs from javac
<br><a href="">344522</a>
[1.7] Incorrect source range for ParameterizedType in case of Diamond
<br><a href="">341795</a>
[1.7][compiler] Cannot assign a generic method with multiple bounds return value to any variable
<br><a href="">242159</a>
[1.7][compiler] type inference with unbounded wildcard in result type
<br><a href="">343693</a>
[1.7] Adjust subclasses of AllocationExpression for &lt;&gt; support
<br><a href="">343637</a>
[1.7] Already used exception offered again in a Mulicatch block
<br><a href="">345968</a>
[1.7][compiler] NPE while using diamond for inner class allocation
<br><a href="">334313</a>
[1.5][compiler] Bug in the way eclipse handles overriding of generic abstract method by a non-abstract method
<br><a href="">346029</a>
[1.7][compiler] Eclipse compiles code rejected by JDK7
<br><a href="">345628</a>
[1.7] Rename disjunctive type to union type
<br><a href="">345559</a>
[1.7][compiler] Type inference for generic allocation can be avoided for invalid constructor
<br><a href="">342819</a>
Code rejected by javac with name clash error compiles under eclipse.
<br><a href="">334306</a>
[1.7][compiler] name clash reported in javac 1.7 and not in javac 1.6
<br><a href="">345579</a>
[1.7][compiler] Weird error message in rethrow site
<br><a href="">345522</a>
[1.7][compiler] Compilers fails to compute precisely rethrown types
<br><a href="">344824</a>
[1.7][compiler] Incorrect error range for unreachable catch block error in multi-catch
<br><a href="">340486</a>
[1.7][compiler] Missing error in multi catch scenario
<br><a href="">345359</a>
[1.7][compiler] AIOOB on diamond construct with argument error
<br><a href="">345239</a>
[1.7][compiler] Compiler should issue better diagnostics for use of &lt;&gt; with anonymous classes
<br><a href="">344655</a>
[1.7][compiler] Prohibit use of &lt;&gt; with explicit type arguments to generic constructor
<br><a href="">328575</a>
Inheritance of annotation fails with generic classes
<br><a href="">343785</a>
[1.7] Incorrect line numbers in stack trace with try with resources
<br><a href="">343687</a>
[1.7] IAE in NumberLiteral#setToken(String) for binary tokens and tokens with underscore
<br><a href="">339478</a>
[1.7][compiler] support for diamond case
<br><a href="">343476</a>
[1.7][assist] propose String variables and fields inside catch expression
<br><a href="">292087</a>
anonymous class in array member initializer confuses content assist
<br><a href="">343475</a>
[1.7] Compiler warning for invalid type inside switch needs to be improved
<br><a href="">342416</a>
[1.7] Signature#createIntersectionTypeSignature(..) should take array of signatures
<br><a href="">340059</a>
[1.7] IAE when dealing with Signature of disjunctive type
<br><a href="">338789</a>
[1.7][assist] No proposal inside a multi catch statement after '|'
<br><a href="">341333</a>
[1.7][compiler] DisjunctiveTypeReference#resolveType(..) does not set the value for DisjunctiveTypeReference$resolvedType
<br><a href="">340634</a>
[1.7][compiler][multicatch] Compiler accepts type variables as catch parameter type
<br><a href="">340626</a>
[1.7][compiler] Inconsistent source pinpointing in multi-catch blocks
<br><a href="">340513</a>
[1.7][compiler] Unicode 6.0 characters work at compiler compliance level 1.5 and 1.6
<br><a href="">340445</a>
[1.7] ASTRewriteAnalyzer and ASTRewriteFlattener need updates
<br><a href="">340372</a>
[1.7] NaiveASTFlattener needs to support the new AST nodes
<br><a href="">340365</a>
[1.7] Problems in new APIs (TryStatementWithResources, DisjunctiveType)
<br><a href="">340375</a>
[1.7] Merge TryStatementWithResources into TryStatement
<br><a href="">340022</a>
[1.7][compiler] Support for precise rethrow
<br><a href="">339837</a>
[1.7][compiler] Multicatch syntax not rejected at 1.6-
<br><a href="">339864</a>
[1.7] Add recovery in ASTConverter for all new constructs in JLS3 mode
<br><a href="">338402</a>
[1.7][compiler][enh] Open issues in try with resources implementation
<br><a href="">337795</a>
[1.7][compiler] Missing unchecked warning at varargs method/ctor declaration site
<br><a href="">337802</a>
[1.7][compiler] Usage of 0x0ffffffff is being reported as out of range.
<a href="">337799</a>
[1.7][compiler][varargs] Eclipse fails to report error on incorrect SafeVarargs usage
<br><a href="">337738</a>
[1.7][content assist]Test CompletionParserTest#testEA_1 fails
<br><a href="">336782</a>
[1.7][recovery]Extra error tokens with invalid unary operator
<br><a href="">336322</a>
[1.7][search]CCE while searching for a type reference in multiple catch parameters
<p>For earlier build notes, also see <a href="">build notes up to Release 3.6</a>.</p>
<a href=""><img
alt="Valid HTML 4.01 Transitional" height="31" width="88"></a>