Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--features/org.eclipse.objectteams.otdt.feature/ot-compiler-feature/feature.xml2
-rw-r--r--org.eclipse.jdt.core.tests.model/src/org/eclipse/jdt/core/tests/formatter/FormatterCommentsBugsTest.java204
-rw-r--r--org.eclipse.jdt.core.tests.model/src/org/eclipse/jdt/core/tests/model/JavaSearchBugsTests.java48
-rw-r--r--org.eclipse.jdt.core.tests.model/workspace/FormatterJavadoc/test/wksp/ganymede/out/clear_blank_lines/X03.java3
-rw-r--r--org.eclipse.jdt.core.tests.model/workspace/FormatterJavadoc/test/wksp/ganymede/out/default/X03.java3
-rw-r--r--org.eclipse.jdt.core.tests.model/workspace/FormatterJavadoc/test/wksp/ganymede/out/dont_indent_tags/X03.java3
-rw-r--r--org.eclipse.jdt.core/META-INF/Bootstrap_MANIFEST.MF2
-rw-r--r--org.eclipse.jdt.core/batch/org/eclipse/jdt/internal/compiler/batch/messages.properties2
-rw-r--r--org.eclipse.jdt.core/buildnotes_jdt-core.html19
-rw-r--r--org.eclipse.jdt.core/formatter/org/eclipse/jdt/internal/formatter/Scribe.java10
-rw-r--r--org.eclipse.jdt.core/model/org/eclipse/jdt/core/IField.java11
-rw-r--r--org.eclipse.jdt.core/model/org/eclipse/jdt/core/IMethod.java11
-rw-r--r--org.eclipse.jdt.core/search/org/eclipse/jdt/internal/core/search/IndexSelector.java2
-rw-r--r--releng/build-scripts/build/test.properties2
-rw-r--r--releng/map/otdt.map2
15 files changed, 303 insertions, 21 deletions
diff --git a/features/org.eclipse.objectteams.otdt.feature/ot-compiler-feature/feature.xml b/features/org.eclipse.objectteams.otdt.feature/ot-compiler-feature/feature.xml
index 85f22f0ef..b5c697a34 100644
--- a/features/org.eclipse.objectteams.otdt.feature/ot-compiler-feature/feature.xml
+++ b/features/org.eclipse.objectteams.otdt.feature/ot-compiler-feature/feature.xml
@@ -47,7 +47,7 @@ This software is based on Eclipse and the Java Development Tooling
id="org.eclipse.jdt.core"
download-size="4704"
install-size="4704"
- version="3.6.0.v_A46"
+ version="3.6.0.v_A47"
unpack="false"/>
</feature>
diff --git a/org.eclipse.jdt.core.tests.model/src/org/eclipse/jdt/core/tests/formatter/FormatterCommentsBugsTest.java b/org.eclipse.jdt.core.tests.model/src/org/eclipse/jdt/core/tests/formatter/FormatterCommentsBugsTest.java
index a2594ebd8..deb22874a 100644
--- a/org.eclipse.jdt.core.tests.model/src/org/eclipse/jdt/core/tests/formatter/FormatterCommentsBugsTest.java
+++ b/org.eclipse.jdt.core.tests.model/src/org/eclipse/jdt/core/tests/formatter/FormatterCommentsBugsTest.java
@@ -6548,4 +6548,208 @@ public void testBug305830c() {
);
}
+/**
+ * @bug 309835: [formatter] adds blank lines on each run
+ * @test Test that no line is added when the word exceeds the line width
+ * @see "https://bugs.eclipse.org/bugs/show_bug.cgi?id=309835"
+ */
+public void testBug309835() {
+ this.formatterPrefs.join_lines_in_comments = false;
+ this.formatterPrefs.comment_line_length = 120;
+ String source =
+ "package org.eclipse.bug.test;\n" +
+ "\n" +
+ "/**\n" +
+ " * @author Bug Reporter\n" +
+ " * ThisIsAVeryLongCommentWithoutSpaces_TheFormatterTriesToBreakTheLine_ButTheResultOfItIsThatANewLineIsAdded_____\n" +
+ " * \n" +
+ " * Try to press Ctrl+Shift+F to format the code. If the unbreakable line is exactly 121 characters long,\n" +
+ " * a blank line is inserted on each formating.\n" +
+ " * Check project preferences to see the format settings\n" +
+ " * (max. line length 80 chars, max. comment line length 120 chars)\n" +
+ " */\n" +
+ "public class FormatterBug {\n" +
+ "}\n";
+ formatSource(source);
+}
+public void testBug309835b() {
+ this.formatterPrefs.comment_line_length = 120;
+ String source =
+ "package org.eclipse.bug.test;\n" +
+ "\n" +
+ "/**\n" +
+ " * @author Bug Reporter\n" +
+ " * ThisIsAVeryLongCommentWithoutSpaces_TheFormatterTriesToBreakTheLine_ButTheResultOfItIsThatANewLineIsAdded_____\n" +
+ " * \n" +
+ " * Try to press Ctrl+Shift+F to format the code. If the unbreakable line is exactly 121 characters long,\n" +
+ " * a blank line is inserted on each formating.\n" +
+ " * Check project preferences to see the format settings\n" +
+ " * (max. line length 80 chars, max. comment line length 120 chars)\n" +
+ " */\n" +
+ "public class FormatterBug {\n" +
+ "}\n";
+ formatSource(source,
+ "package org.eclipse.bug.test;\n" +
+ "\n" +
+ "/**\n" +
+ " * @author Bug Reporter\n" +
+ " * ThisIsAVeryLongCommentWithoutSpaces_TheFormatterTriesToBreakTheLine_ButTheResultOfItIsThatANewLineIsAdded_____\n" +
+ " * \n" +
+ " * Try to press Ctrl+Shift+F to format the code. If the unbreakable line is exactly 121 characters long, a blank\n" +
+ " * line is inserted on each formating. Check project preferences to see the format settings (max. line length 80\n" +
+ " * chars, max. comment line length 120 chars)\n" +
+ " */\n" +
+ "public class FormatterBug {\n" +
+ "}\n"
+ );
+}
+public void testBug309835c() {
+ this.formatterPrefs.join_lines_in_comments = false;
+ String source =
+ "package org.eclipse.bug.test;\n" +
+ "\n" +
+ "/**\n" +
+ " * @author Bug Reporter\n" +
+ " * ThisIsAVeryLongCommentWithoutSpaces_TheFormatterTriesToBreakTheLine_ButTheResultOfItIsThatANewLineIsAdded_____\n" +
+ " * \n" +
+ " * Try to press Ctrl+Shift+F to format the code. If the unbreakable line is exactly 121 characters long,\n" +
+ " * a blank line is inserted on each formating.\n" +
+ " * Check project preferences to see the format settings\n" +
+ " * (max. line length 80 chars, max. comment line length 120 chars)\n" +
+ " */\n" +
+ "public class FormatterBug {\n" +
+ "}\n";
+ formatSource(source,
+ "package org.eclipse.bug.test;\n" +
+ "\n" +
+ "/**\n" +
+ " * @author Bug Reporter\n" +
+ " * ThisIsAVeryLongCommentWithoutSpaces_TheFormatterTriesToBreakTheLine_ButTheResultOfItIsThatANewLineIsAdded_____\n" +
+ " * \n" +
+ " * Try to press Ctrl+Shift+F to format the code. If the unbreakable line\n" +
+ " * is exactly 121 characters long,\n" +
+ " * a blank line is inserted on each formating.\n" +
+ " * Check project preferences to see the format settings\n" +
+ " * (max. line length 80 chars, max. comment line length 120 chars)\n" +
+ " */\n" +
+ "public class FormatterBug {\n" +
+ "}\n"
+ );
+}
+public void testBug309835d() {
+ String source =
+ "package org.eclipse.bug.test;\n" +
+ "\n" +
+ "/**\n" +
+ " * @author Bug Reporter\n" +
+ " * ThisIsAVeryLongCommentWithoutSpaces_TheFormatterTriesToBreakTheLine_ButTheResultOfItIsThatANewLineIsAdded_____\n" +
+ " * \n" +
+ " * Try to press Ctrl+Shift+F to format the code. If the unbreakable line is exactly 121 characters long,\n" +
+ " * a blank line is inserted on each formating.\n" +
+ " * Check project preferences to see the format settings\n" +
+ " * (max. line length 80 chars, max. comment line length 120 chars)\n" +
+ " */\n" +
+ "public class FormatterBug {\n" +
+ "}\n";
+ formatSource(source,
+ "package org.eclipse.bug.test;\n" +
+ "\n" +
+ "/**\n" +
+ " * @author Bug Reporter\n" +
+ " * ThisIsAVeryLongCommentWithoutSpaces_TheFormatterTriesToBreakTheLine_ButTheResultOfItIsThatANewLineIsAdded_____\n" +
+ " * \n" +
+ " * Try to press Ctrl+Shift+F to format the code. If the unbreakable line\n" +
+ " * is exactly 121 characters long, a blank line is inserted on each\n" +
+ " * formating. Check project preferences to see the format settings (max.\n" +
+ " * line length 80 chars, max. comment line length 120 chars)\n" +
+ " */\n" +
+ "public class FormatterBug {\n" +
+ "}\n"
+ );
+}
+public void testBug309835_wksp1_01() {
+ String source =
+ "public class X01 {\n" +
+ "\n" +
+ " /**\n" +
+ " * @param severity the severity to search for. Must be one of <code>FATAL\n" +
+ " * </code>, <code>ERROR</code>, <code>WARNING</code> or <code>INFO</code>\n" +
+ " */\n" +
+ " public void foo(int severity) {\n" +
+ " }\n" +
+ "}\n";
+ formatSource(source,
+ "public class X01 {\n" +
+ "\n" +
+ " /**\n" +
+ " * @param severity\n" +
+ " * the severity to search for. Must be one of <code>FATAL\n" +
+ " * </code>, <code>ERROR</code>, <code>WARNING</code> or <code>INFO</code>\n" +
+ " */\n" +
+ " public void foo(int severity) {\n" +
+ " }\n" +
+ "}\n"
+ );
+}
+public void testBug309835_wksp1_02() {
+ String source =
+ "public class X02 {\n" +
+ "\n" +
+ " /**\n" +
+ " * INTERNAL USE-ONLY\n" +
+ " * Generate the byte for a problem method info that correspond to a boggus method.\n" +
+ " *\n" +
+ " * @param method org.eclipse.jdt.internal.compiler.ast.AbstractMethodDeclaration\n" +
+ " * @param methodBinding org.eclipse.jdt.internal.compiler.nameloopkup.MethodBinding\n" +
+ " */\n" +
+ " public void foo(int severity) {\n" +
+ " }\n" +
+ "}\n";
+ formatSource(source,
+ "public class X02 {\n" +
+ "\n" +
+ " /**\n" +
+ " * INTERNAL USE-ONLY Generate the byte for a problem method info that\n" +
+ " * correspond to a boggus method.\n" +
+ " * \n" +
+ " * @param method\n" +
+ " * org.eclipse.jdt.internal.compiler.ast.\n" +
+ " * AbstractMethodDeclaration\n" +
+ " * @param methodBinding\n" +
+ " * org.eclipse.jdt.internal.compiler.nameloopkup.MethodBinding\n" +
+ " */\n" +
+ " public void foo(int severity) {\n" +
+ " }\n" +
+ "}\n"
+ );
+}
+public void testBug309835_wksp2_01() {
+ String source =
+ "public class X01 {\n" +
+ "\n" +
+ " /**\n" +
+ " * Given a jar file, get the names of any AnnotationProcessorFactory\n" +
+ " * implementations it offers. The information is based on the Sun\n" +
+ " * <a href=\"http://java.sun.com/j2se/1.5.0/docs/guide/jar/jar.html#Service%20Provider\">\n" +
+ " * Jar Service Provider spec</a>: the jar file contains a META-INF/services\n" +
+ " */\n" +
+ " public void foo() {\n" +
+ " }\n" +
+ "}\n";
+ formatSource(source,
+ "public class X01 {\n" +
+ "\n" +
+ " /**\n" +
+ " * Given a jar file, get the names of any AnnotationProcessorFactory\n" +
+ " * implementations it offers. The information is based on the Sun <a href=\n" +
+ " * \"http://java.sun.com/j2se/1.5.0/docs/guide/jar/jar.html#Service%20Provider\"\n" +
+ " * > Jar Service Provider spec</a>: the jar file contains a\n" +
+ " * META-INF/services\n" +
+ " */\n" +
+ " public void foo() {\n" +
+ " }\n" +
+ "}\n"
+ );
+}
+
}
diff --git a/org.eclipse.jdt.core.tests.model/src/org/eclipse/jdt/core/tests/model/JavaSearchBugsTests.java b/org.eclipse.jdt.core.tests.model/src/org/eclipse/jdt/core/tests/model/JavaSearchBugsTests.java
index bd2a22bc3..213a081e8 100644
--- a/org.eclipse.jdt.core.tests.model/src/org/eclipse/jdt/core/tests/model/JavaSearchBugsTests.java
+++ b/org.eclipse.jdt.core.tests.model/src/org/eclipse/jdt/core/tests/model/JavaSearchBugsTests.java
@@ -11793,4 +11793,52 @@ public void testBug306223g() throws CoreException {
null);
assertSearchResults("");
}
+
+/**
+ * @bug 310213: [search] Reference to package is not found in qualified annotation
+ * @test Ensure that references to package are also found in qualified annotation
+ * @see "https://bugs.eclipse.org/bugs/show_bug.cgi?id=310213"
+ */
+public void testBug310213() throws CoreException {
+ boolean autoBuild = getWorkspace().isAutoBuilding();
+ IWorkspaceDescription preferences = getWorkspace().getDescription();
+ try {
+ // ensure that the workspace auto-build is ON
+ preferences.setAutoBuilding(true);
+ getWorkspace().setDescription(preferences);
+
+ // create files
+ createFolder("/JavaSearchBugs/src/java/lang");
+ createFile("/JavaSearchBugs/src/java/lang/Throwable.java",
+ "package java.lang;\n" +
+ "public class Throwable{}\n"
+ );
+ createFolder("/JavaSearchBugs/src/b310213/test");
+ createFile("/JavaSearchBugs/src/b310213/test/Test.java",
+ "package b310213.test;\n" +
+ "public class Test extends Throwable {\n" +
+ "}"
+ );
+ waitUntilIndexesReady();
+
+ // search
+ IType type = getCompilationUnit("/JavaSearchBugs/src/java/lang/Throwable.java").getType("Throwable");
+ search(type, REFERENCES);
+ assertSearchResults(
+ "src/b310213/test/Test.java b310213.test.Test [Throwable] EXACT_MATCH\n" +
+ ""+ getExternalJCLPathString("1.5") + " java.lang.Error EXACT_MATCH\n" +
+ ""+ getExternalJCLPathString("1.5") + " java.lang.Exception EXACT_MATCH\n" +
+ ""+ getExternalJCLPathString("1.5") + " void java.lang.Object.finalize() EXACT_MATCH"
+ );
+ }
+ finally {
+ // put back initial setup
+ preferences.setAutoBuilding(autoBuild);
+ getWorkspace().setDescription(preferences);
+
+ // delete files
+ deleteFolder("/JavaSearchBugs/src/b310213");
+ deleteFolder("/JavaSearchBugs/src/java");
+ }
+}
} \ No newline at end of file
diff --git a/org.eclipse.jdt.core.tests.model/workspace/FormatterJavadoc/test/wksp/ganymede/out/clear_blank_lines/X03.java b/org.eclipse.jdt.core.tests.model/workspace/FormatterJavadoc/test/wksp/ganymede/out/clear_blank_lines/X03.java
index d28b97b66..0b45c28ee 100644
--- a/org.eclipse.jdt.core.tests.model/workspace/FormatterJavadoc/test/wksp/ganymede/out/clear_blank_lines/X03.java
+++ b/org.eclipse.jdt.core.tests.model/workspace/FormatterJavadoc/test/wksp/ganymede/out/clear_blank_lines/X03.java
@@ -15,7 +15,8 @@ package test.wksp.ganymede;
* </p>
*
* @see org.eclipse.gmf.mappings.GMFMapPackage#getAuditedMetricTarget()
- * @model annotation="http://www.eclipse.org/gmf/2005/constraints/meta def='context' ocl='\'ecore::EDoubleObject\''"
+ * @model annotation=
+ * "http://www.eclipse.org/gmf/2005/constraints/meta def='context' ocl='\'ecore::EDoubleObject\''"
* @generated
*/
public class X03 {
diff --git a/org.eclipse.jdt.core.tests.model/workspace/FormatterJavadoc/test/wksp/ganymede/out/default/X03.java b/org.eclipse.jdt.core.tests.model/workspace/FormatterJavadoc/test/wksp/ganymede/out/default/X03.java
index aca948e33..1b2bf8bf0 100644
--- a/org.eclipse.jdt.core.tests.model/workspace/FormatterJavadoc/test/wksp/ganymede/out/default/X03.java
+++ b/org.eclipse.jdt.core.tests.model/workspace/FormatterJavadoc/test/wksp/ganymede/out/default/X03.java
@@ -17,7 +17,8 @@ package test.wksp.ganymede;
* </p>
*
* @see org.eclipse.gmf.mappings.GMFMapPackage#getAuditedMetricTarget()
- * @model annotation="http://www.eclipse.org/gmf/2005/constraints/meta def='context' ocl='\'ecore::EDoubleObject\''"
+ * @model annotation=
+ * "http://www.eclipse.org/gmf/2005/constraints/meta def='context' ocl='\'ecore::EDoubleObject\''"
* @generated
*/
public class X03 {
diff --git a/org.eclipse.jdt.core.tests.model/workspace/FormatterJavadoc/test/wksp/ganymede/out/dont_indent_tags/X03.java b/org.eclipse.jdt.core.tests.model/workspace/FormatterJavadoc/test/wksp/ganymede/out/dont_indent_tags/X03.java
index aca948e33..deea51380 100644
--- a/org.eclipse.jdt.core.tests.model/workspace/FormatterJavadoc/test/wksp/ganymede/out/dont_indent_tags/X03.java
+++ b/org.eclipse.jdt.core.tests.model/workspace/FormatterJavadoc/test/wksp/ganymede/out/dont_indent_tags/X03.java
@@ -17,7 +17,8 @@ package test.wksp.ganymede;
* </p>
*
* @see org.eclipse.gmf.mappings.GMFMapPackage#getAuditedMetricTarget()
- * @model annotation="http://www.eclipse.org/gmf/2005/constraints/meta def='context' ocl='\'ecore::EDoubleObject\''"
+ * @model annotation=
+ * "http://www.eclipse.org/gmf/2005/constraints/meta def='context' ocl='\'ecore::EDoubleObject\''"
* @generated
*/
public class X03 {
diff --git a/org.eclipse.jdt.core/META-INF/Bootstrap_MANIFEST.MF b/org.eclipse.jdt.core/META-INF/Bootstrap_MANIFEST.MF
index 456b1d05e..7dcf4428e 100644
--- a/org.eclipse.jdt.core/META-INF/Bootstrap_MANIFEST.MF
+++ b/org.eclipse.jdt.core/META-INF/Bootstrap_MANIFEST.MF
@@ -3,7 +3,7 @@ Main-Class: org.eclipse.jdt.internal.compiler.batch.Main
Bundle-ManifestVersion: 2
Bundle-Name: %pluginName
Bundle-SymbolicName: org.eclipse.jdt.core; singleton:=true
-Bundle-Version: 3.6.0.v_A46
+Bundle-Version: 3.6.0.v_A47
Bundle-Activator: org.eclipse.jdt.core.JavaCore
Bundle-Vendor: %providerName
Bundle-Localization: plugin
diff --git a/org.eclipse.jdt.core/batch/org/eclipse/jdt/internal/compiler/batch/messages.properties b/org.eclipse.jdt.core/batch/org/eclipse/jdt/internal/compiler/batch/messages.properties
index a248cb865..81688cd1a 100644
--- a/org.eclipse.jdt.core/batch/org/eclipse/jdt/internal/compiler/batch/messages.properties
+++ b/org.eclipse.jdt.core/batch/org/eclipse/jdt/internal/compiler/batch/messages.properties
@@ -1,7 +1,7 @@
#Format: compiler.name = word1 word2 word3
compiler.name = Eclipse Compiler for Java(TM)
#Format: compiler.version = 0.XXX[, other words (don't forget the comma if adding other words)]
-compiler.version = 0.A45, 3.6.0 M7
+compiler.version = 0.A47, 3.6.0 M7
compiler.copyright = Copyright IBM Corp 2000, 2010. All rights reserved.
###{ObjectTeams:
diff --git a/org.eclipse.jdt.core/buildnotes_jdt-core.html b/org.eclipse.jdt.core/buildnotes_jdt-core.html
index 199d30547..c2eed6c52 100644
--- a/org.eclipse.jdt.core/buildnotes_jdt-core.html
+++ b/org.eclipse.jdt.core/buildnotes_jdt-core.html
@@ -40,11 +40,28 @@
</td>
</tr>
</table>
+<a name="v_A47"></a>
+<hr><h1>
+Eclipse Platform Build Notes<br>
+Java development tools core</h1>
+Eclipse SDK 3.6M7 - April 25, 2010 - 3.6.0 M7
+<br>Project org.eclipse.jdt.core v_A47
+(<a href="http://dev.eclipse.org/viewcvs/index.cgi/org.eclipse.jdt.core/?only_with_tag=v_A47">cvs</a>).
+<h2>What's new in this drop</h2>
+
+<h3>Problem Reports Fixed</h3>
+<a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=309835">309835</a>
+[formatter] adds blank lines on each run
+<br><a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=310213">310213</a>
+AIOOBE in IndexSelector.initializeIndexLocations()
+<br><a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=309966">309966</a>
+IType#getKey() does not work for unresolved local ITypes
+
<a name="v_A46"></a>
<hr><h1>
Eclipse Platform Build Notes<br>
Java development tools core</h1>
-Eclipse SDK 3.6M7 - April 23, 2010 - 3.6.0 M7
+Eclipse SDK 3.6M7 - April 23, 2010
<br>Project org.eclipse.jdt.core v_A46
(<a href="http://dev.eclipse.org/viewcvs/index.cgi/org.eclipse.jdt.core/?only_with_tag=v_A46">cvs</a>).
<h2>What's new in this drop</h2>
diff --git a/org.eclipse.jdt.core/formatter/org/eclipse/jdt/internal/formatter/Scribe.java b/org.eclipse.jdt.core/formatter/org/eclipse/jdt/internal/formatter/Scribe.java
index c6bb885d7..1df2ed3c2 100644
--- a/org.eclipse.jdt.core/formatter/org/eclipse/jdt/internal/formatter/Scribe.java
+++ b/org.eclipse.jdt.core/formatter/org/eclipse/jdt/internal/formatter/Scribe.java
@@ -4109,7 +4109,7 @@ public class Scribe implements IJavaDocTagConstants {
}
}
this.needSpace = idx > 0;
- printJavadocTextLine(buffer, nextStart, end, block, idx==0 /*first text?*/, needIndentation, false /*not an html tag*/);
+ printJavadocTextLine(buffer, nextStart, end, block, idx==0 || (!joinLines && textOnNewLine)/*first text?*/, needIndentation, false /*not an html tag*/);
textOnNewLine = false;
// Replace with current buffer if there are several empty lines between text lines
@@ -4128,6 +4128,9 @@ public class Scribe implements IJavaDocTagConstants {
printJavadocGapLines(end+1, nextStart-1, newLines, this.formatter.preferences.comment_clear_blank_lines_in_javadoc_comment, false, null);
textOnNewLine = true;
}
+ else if (startLine > endLine) {
+ textOnNewLine = !joinLines;
+ }
}
}
@@ -4163,6 +4166,7 @@ public class Scribe implements IJavaDocTagConstants {
if (needIndentation && this.commentIndentation != null) {
buffer.append(this.commentIndentation);
this.column += this.commentIndentation.length();
+ firstColumn += this.commentIndentation.length();
}
if (this.column < firstColumn) {
this.column = firstColumn;
@@ -4255,7 +4259,7 @@ public class Scribe implements IJavaDocTagConstants {
tokensBufferLength = 0;
textOnNewLine = false;
}
- if ((tokensBufferLength > 0 || tokenLength < maxColumn) && (!textOnNewLine || !firstText)) {
+ if ((tokensBufferLength > 0 || /*(firstColumn+tokenLength) < maxColumn || (insertSpace &&*/ this.column > firstColumn) && (!textOnNewLine || !firstText)) {
this.lastNumberOfNewLines++;
this.line++;
if (newLineString == null) {
@@ -4281,7 +4285,7 @@ public class Scribe implements IJavaDocTagConstants {
this.column += tokensString.length();
tokensBuffer.setLength(0);
tokensBufferLength = 0;
- }
+ }
buffer.append(this.scanner.source, tokenStart, tokenLength);
this.column += tokenLength;
textOnNewLine = false;
diff --git a/org.eclipse.jdt.core/model/org/eclipse/jdt/core/IField.java b/org.eclipse.jdt.core/model/org/eclipse/jdt/core/IField.java
index 1a35f96b7..15cf1674a 100644
--- a/org.eclipse.jdt.core/model/org/eclipse/jdt/core/IField.java
+++ b/org.eclipse.jdt.core/model/org/eclipse/jdt/core/IField.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2000, 2008 IBM Corporation and others.
+ * Copyright (c) 2000, 2010 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@@ -95,13 +95,16 @@ public Object getConstant() throws JavaModelException;
*/
String getElementName();
/**
- * Returns the binding key for this field. A binding key is a key that uniquely
- * identifies this field. It allows access to generic info for parameterized
- * fields.
+ * Returns the binding key for this field only if the given field is {@link #isResolved() resolved}.
+ * A binding key is a key that uniquely identifies this field. It allows access to generic info
+ * for parameterized fields.
*
+ * <p>If the given field is not resolved, the returned key is simply the java element's key.
+ * </p>
* @return the binding key for this field
* @see org.eclipse.jdt.core.dom.IBinding#getKey()
* @see BindingKey
+ * @see #isResolved()
* @since 3.1
*/
String getKey();
diff --git a/org.eclipse.jdt.core/model/org/eclipse/jdt/core/IMethod.java b/org.eclipse.jdt.core/model/org/eclipse/jdt/core/IMethod.java
index 95ee2b498..daa458acd 100644
--- a/org.eclipse.jdt.core/model/org/eclipse/jdt/core/IMethod.java
+++ b/org.eclipse.jdt.core/model/org/eclipse/jdt/core/IMethod.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2000, 2008 IBM Corporation and others.
+ * Copyright (c) 2000, 2010 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@@ -101,13 +101,16 @@ ITypeParameter[] getTypeParameters() throws JavaModelException;
*/
int getNumberOfParameters();
/**
- * Returns the binding key for this method. A binding key is a key that uniquely
- * identifies this method. It allows access to generic info for parameterized
- * methods.
+ * Returns the binding key for this method only if the given method is {@link #isResolved() resolved}.
+ * A binding key is a key that uniquely identifies this method. It allows access
+ * to generic info for parameterized methods.
*
+ * <p>If the given method is not resolved, the returned key is simply the java element's key.
+ * </p>
* @return the binding key for this method
* @see org.eclipse.jdt.core.dom.IBinding#getKey()
* @see BindingKey
+ * @see #isResolved()
* @since 3.1
*/
String getKey();
diff --git a/org.eclipse.jdt.core/search/org/eclipse/jdt/internal/core/search/IndexSelector.java b/org.eclipse.jdt.core/search/org/eclipse/jdt/internal/core/search/IndexSelector.java
index da481a8f0..83730687d 100644
--- a/org.eclipse.jdt.core/search/org/eclipse/jdt/internal/core/search/IndexSelector.java
+++ b/org.eclipse.jdt.core/search/org/eclipse/jdt/internal/core/search/IndexSelector.java
@@ -202,7 +202,7 @@ private void initializeIndexLocations() {
if (primaryType != null) {
char[][] qualifiedName = CharOperation.splitOn('.', primaryType.getFullyQualifiedName().toCharArray());
char[][][] qualifiedNames = ReferenceCollection.internQualifiedNames(new char[][][] {qualifiedName});
- focusQualifiedName = qualifiedNames[0];
+ focusQualifiedName = qualifiedNames.length == 0 ? qualifiedName : qualifiedNames[0];
}
}
}
diff --git a/releng/build-scripts/build/test.properties b/releng/build-scripts/build/test.properties
index a72879f9b..e424a5e84 100644
--- a/releng/build-scripts/build/test.properties
+++ b/releng/build-scripts/build/test.properties
@@ -3,7 +3,7 @@ config=linux.gtk.ppc64
# versions of test plugins:
-org.eclipse.jdt.core.tests.builder=org.eclipse.jdt.core.tests.builder_3.3.100.v_A46
+org.eclipse.jdt.core.tests.builder=org.eclipse.jdt.core.tests.builder_3.3.100.v_A47
org.eclipse.jdt.core.tests.compiler=org.eclipse.jdt.core.tests.compiler_3.3.100
org.eclipse.jdt.core.tests.model=org.eclipse.jdt.core.tests.model_3.3.100
org.eclipse.test.performance=org.eclipse.test.performance_3.6.0
diff --git a/releng/map/otdt.map b/releng/map/otdt.map
index 3262d1286..5c06b4e30 100644
--- a/releng/map/otdt.map
+++ b/releng/map/otdt.map
@@ -54,7 +54,7 @@ plugin@org.eclipse.objectteams.otdt.ui.tests.refactoring,0.7.0=SVN,url=svn://loc
!plugin@org.eclipse.jdt.debug.tests=SVN,url=svn://localhost/svnroot/tools/org.eclipse.objectteams/,path=testplugins/org.eclipse.jdt.debug.tests
!-- .. but from original CVS:
-plugin@org.eclipse.jdt.core.tests.builder=v_A46,/cvsroot/eclipse,
+plugin@org.eclipse.jdt.core.tests.builder=v_A47,/cvsroot/eclipse,
plugin@org.eclipse.jdt.debug.tests=v20100419,/cvsroot/eclipse,
!-- not compiled but taken from org.eclipse.test:

Back to the top