From 0f1940afc569e3dda300f55ff2d321a11c7e8c1c Mon Sep 17 00:00:00 2001 From: Marco Stornelli Date: Sun, 31 May 2020 09:46:41 +0200 Subject: [PATCH] Bug 487990 - Fix format of variadic functions Change-Id: I802d032f733247178db46c8fe43fdb9350555509 --- .../cdt/internal/formatter/CodeFormatterVisitor.java | 4 +++- .../eclipse/cdt/ui/tests/text/CodeFormatterTest.java | 11 +++++++++++ 2 files changed, 14 insertions(+), 1 deletion(-) diff --git a/core/org.eclipse.cdt.core/src/org/eclipse/cdt/internal/formatter/CodeFormatterVisitor.java b/core/org.eclipse.cdt.core/src/org/eclipse/cdt/internal/formatter/CodeFormatterVisitor.java index f7f0294d75a..67e41410bc7 100644 --- a/core/org.eclipse.cdt.core/src/org/eclipse/cdt/internal/formatter/CodeFormatterVisitor.java +++ b/core/org.eclipse.cdt.core/src/org/eclipse/cdt/internal/formatter/CodeFormatterVisitor.java @@ -2605,7 +2605,9 @@ public class CodeFormatterVisitor extends ASTVisitor implements ICPPASTVisitor, } if (addEllipsis) { if (i > 0) { - scribe.printNextToken(options.fSeparatorToken, options.fSpaceBeforeSeparator); + if (peekNextToken() == options.fSeparatorToken) { + scribe.printNextToken(options.fSeparatorToken, options.fSpaceBeforeSeparator); + } scribe.printTrailingComment(); } scribe.alignFragment(alignment, i); diff --git a/core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/text/CodeFormatterTest.java b/core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/text/CodeFormatterTest.java index b850037659f..a2a490f85f4 100644 --- a/core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/text/CodeFormatterTest.java +++ b/core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/text/CodeFormatterTest.java @@ -4814,4 +4814,15 @@ public class CodeFormatterTest extends BaseUITestCase { public void testNoexcept_Bug562723() throws Exception { assertFormatterResult(); } + + //void foo(int...) {} + //int main() {} + + //void foo(int ...) { + //} + //int main() { + //} + public void testVariadicFunction_Bug487990() throws Exception { + assertFormatterResult(); + } }