From c775a210e103f57ad4d3e1f35cfc94258002e772 Mon Sep 17 00:00:00 2001 From: Marco Stornelli Date: Sun, 26 Jan 2020 09:42:22 +0100 Subject: [PATCH] Bug 559545 - Fix formatter with enums with standard attributes Change-Id: I993e773792105e22b9c2f703488e7ff211ed4068 Signed-off-by: Marco Stornelli --- .../cdt/internal/formatter/CodeFormatterVisitor.java | 2 ++ .../org/eclipse/cdt/ui/tests/text/CodeFormatterTest.java | 9 +++++++++ 2 files changed, 11 insertions(+) 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 2506888c156..589bb364723 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 @@ -1195,6 +1195,8 @@ public class CodeFormatterVisitor extends ASTVisitor implements ICPPASTVisitor, // name enumerator.getName().accept(this); + formatAttributes(enumerator, true, false, ICPPASTAttributeList.TYPE_FILTER); + // optional value assignment final IASTExpression value = enumerator.getValue(); if (value != null) { 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 c112ca61d88..3d9e189d1cd 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 @@ -4708,4 +4708,13 @@ public class CodeFormatterTest extends BaseUITestCase { public void testMacroInFunctionParameters_Bug550096() throws Exception { assertFormatterResult(); } + + //enum {A[[maybe_unused]],B[[maybe_unused]]=42}; + + //enum { + // A [[maybe_unused]], B [[maybe_unused]] = 42 + //}; + public void testEnumWithAttributes_Bug559545() throws Exception { + assertFormatterResult(); + } }