diff options
author | Olivier Thomann | 2011-10-06 21:11:32 +0000 |
---|---|---|
committer | Olivier Thomann | 2011-10-06 21:11:32 +0000 |
commit | df5ced6a1993949cb26a88badfce4f6e70b8d88b (patch) | |
tree | a30820b755dc2499d4eff60fc3c5fbe204b7464a | |
parent | f0fcac1a95c5d6125192f1345a9aef21ef392539 (diff) | |
download | eclipse.jdt.core-df5ced6a1993949cb26a88badfce4f6e70b8d88b.tar.gz eclipse.jdt.core-df5ced6a1993949cb26a88badfce4f6e70b8d88b.tar.xz eclipse.jdt.core-df5ced6a1993949cb26a88badfce4f6e70b8d88b.zip |
3.6 maintenance java 7 - Fixed bug 359646: Formatter fails silently if
Java source contains 0x8000000000000000L
4 files changed, 30 insertions, 14 deletions
diff --git a/org.eclipse.jdt.core.tests.model/src/org/eclipse/jdt/core/tests/formatter/FormatterRegressionTests.java b/org.eclipse.jdt.core.tests.model/src/org/eclipse/jdt/core/tests/formatter/FormatterRegressionTests.java index edb9c06eef..f8e971cbeb 100644 --- a/org.eclipse.jdt.core.tests.model/src/org/eclipse/jdt/core/tests/formatter/FormatterRegressionTests.java +++ b/org.eclipse.jdt.core.tests.model/src/org/eclipse/jdt/core/tests/formatter/FormatterRegressionTests.java @@ -12861,4 +12861,22 @@ public void test782() throws Exception { "}" ); } +//https://bugs.eclipse.org/bugs/show_bug.cgi?id=359646 +public void test783() throws Exception { + this.formatterPrefs = null; + String source = + "public class X {public static void main(String[] args) {\n" + + " long x = 0x8000000000000000L;\n" + + " System.out.println(x);\n" + + " }\n" + + "}"; + formatSource(source, + "public class X {\n" + + " public static void main(String[] args) {\n" + + " long x = 0x8000000000000000L;\n" + + " System.out.println(x);\n" + + " }\n" + + "}" + ); +} } diff --git a/org.eclipse.jdt.core/.settings/.api_filters b/org.eclipse.jdt.core/.settings/.api_filters index 006c5e5432..0833d40f3f 100644 --- a/org.eclipse.jdt.core/.settings/.api_filters +++ b/org.eclipse.jdt.core/.settings/.api_filters @@ -1,8 +1,9 @@ -<?xml version="1.0" encoding="UTF-8"?><component id="org.eclipse.jdt.core" version="2">
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<component id="org.eclipse.jdt.core" version="2">
<resource path="META-INF/MANIFEST.MF">
- <filter comment="Adding Java 7 support on top of 3.6.2+" id="924844039">
+ <filter comment="Adding Java 7 support for 3.6.2+" id="924844039">
<message_arguments>
- <message_argument value="3.6.50.qualifier"/>
+ <message_argument value="3.6.50"/>
<message_argument value="3.6.2"/>
</message_arguments>
</filter>
@@ -558,4 +559,4 @@ </message_arguments>
</filter>
</resource>
-</component>
\ No newline at end of file +</component>
diff --git a/org.eclipse.jdt.core/buildnotes_jdt-core.html b/org.eclipse.jdt.core/buildnotes_jdt-core.html index b2c8790a68..c20e611758 100644 --- a/org.eclipse.jdt.core/buildnotes_jdt-core.html +++ b/org.eclipse.jdt.core/buildnotes_jdt-core.html @@ -54,7 +54,9 @@ Eclipse SDK 3.6.50 - %date% - 3.6.50 </ul> <h3>Problem Reports Fixed</h3> -<a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=359495">359495</a> +<a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=359646">359646</a> +Formatter fails silently if Java source contains 0x8000000000000000L +<br><a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=359495">359495</a> [1.7][compiler] VerifyError in try-finally block with lock encompassing for-each block and unlock in finally clause <br><a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=358827">358827</a> [1.7] exception analysis for t-w-r spoils null analysis diff --git a/org.eclipse.jdt.core/formatter/org/eclipse/jdt/internal/formatter/CodeFormatterVisitor.java b/org.eclipse.jdt.core/formatter/org/eclipse/jdt/internal/formatter/CodeFormatterVisitor.java index 488982614d..71e22b6001 100644 --- a/org.eclipse.jdt.core/formatter/org/eclipse/jdt/internal/formatter/CodeFormatterVisitor.java +++ b/org.eclipse.jdt.core/formatter/org/eclipse/jdt/internal/formatter/CodeFormatterVisitor.java @@ -109,7 +109,6 @@ import org.eclipse.jdt.internal.compiler.ast.WhileStatement; import org.eclipse.jdt.internal.compiler.ast.Wildcard; import org.eclipse.jdt.internal.compiler.classfmt.ClassFileConstants; import org.eclipse.jdt.internal.compiler.impl.CompilerOptions; -import org.eclipse.jdt.internal.compiler.impl.Constant; import org.eclipse.jdt.internal.compiler.lookup.BlockScope; import org.eclipse.jdt.internal.compiler.lookup.ClassScope; import org.eclipse.jdt.internal.compiler.lookup.CompilationUnitScope; @@ -3670,8 +3669,7 @@ public class CodeFormatterVisitor extends ASTVisitor { if (numberOfParens > 0) { manageOpeningParenthesizedExpression(doubleLiteral, numberOfParens); } - Constant constant = doubleLiteral.constant; - if (constant != null && constant.doubleValue() < 0) { + if (isNextToken(TerminalTokens.TokenNameMINUS)) { this.scribe.printNextToken(TerminalTokens.TokenNameMINUS); } this.scribe.printNextToken(TerminalTokens.TokenNameDoubleLiteral); @@ -3895,8 +3893,7 @@ public class CodeFormatterVisitor extends ASTVisitor { if (numberOfParens > 0) { manageOpeningParenthesizedExpression(floatLiteral, numberOfParens); } - Constant constant = floatLiteral.constant; - if (constant != null && floatLiteral.constant.floatValue() < 0) { + if (isNextToken(TerminalTokens.TokenNameMINUS)) { this.scribe.printNextToken(TerminalTokens.TokenNameMINUS); } this.scribe.printNextToken(TerminalTokens.TokenNameFloatingPointLiteral); @@ -4209,8 +4206,7 @@ public class CodeFormatterVisitor extends ASTVisitor { if (numberOfParens > 0) { manageOpeningParenthesizedExpression(intLiteral, numberOfParens); } - Constant constant = intLiteral.constant; - if (constant != null && constant.intValue() < 0) { + if (isNextToken(TerminalTokens.TokenNameMINUS)) { this.scribe.printNextToken(TerminalTokens.TokenNameMINUS); } this.scribe.printNextToken(TerminalTokens.TokenNameIntegerLiteral); @@ -4260,8 +4256,7 @@ public class CodeFormatterVisitor extends ASTVisitor { if (numberOfParens > 0) { manageOpeningParenthesizedExpression(longLiteral, numberOfParens); } - Constant constant = longLiteral.constant; - if (constant != null && constant.longValue() < 0) { + if (isNextToken(TerminalTokens.TokenNameMINUS)) { this.scribe.printNextToken(TerminalTokens.TokenNameMINUS); } this.scribe.printNextToken(TerminalTokens.TokenNameLongLiteral); |