From 63a0d506daad081d909f60887cdc983728959fa8 Mon Sep 17 00:00:00 2001 From: Alain Magloire Date: Tue, 30 Aug 2005 20:15:08 +0000 Subject: [PATCH] 2005-08-30 Alain Magloire PR 108202, code from Devin Steffler. * parser/org/eclipse/cdt/internal/core/dom/parser/c/GNUCSourceParser.java * parser/org/eclipse/cdt/internal/core/do/parser/cpp/GNUCPPSourceParser.java --- core/org.eclipse.cdt.core/ChangeLog | 5 +++++ .../cdt/internal/core/dom/parser/c/GNUCSourceParser.java | 3 +++ .../cdt/internal/core/dom/parser/cpp/GNUCPPSourceParser.java | 3 +++ 3 files changed, 11 insertions(+) diff --git a/core/org.eclipse.cdt.core/ChangeLog b/core/org.eclipse.cdt.core/ChangeLog index 98a16747500..ab1bdd307ad 100644 --- a/core/org.eclipse.cdt.core/ChangeLog +++ b/core/org.eclipse.cdt.core/ChangeLog @@ -1,3 +1,8 @@ +2005-08-30 Alain Magloire + PR 108202, code from Devin Steffler. + * parser/org/eclipse/cdt/internal/core/dom/parser/c/GNUCSourceParser.java + * parser/org/eclipse/cdt/internal/core/do/parser/cpp/GNUCPPSourceParser.java + 2005-08-30 Alain Magloire PR 107150, code/patch written by Devin Steffler * parser/org/eclipse/cdt/internal/core/parser/scanner2/BaseScanner.java diff --git a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/c/GNUCSourceParser.java b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/c/GNUCSourceParser.java index 1ea4fb11fd7..2bd3d5af449 100644 --- a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/c/GNUCSourceParser.java +++ b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/c/GNUCSourceParser.java @@ -1739,6 +1739,9 @@ public class GNUCSourceParser extends AbstractGNUSourceCodeParser { throwBacktrack(mark.getOffset(), mark.getLength()); } + if (LT(1) == IGCCToken.t__attribute__ && supportAttributeSpecifiers) // if __attribute__ occurs after struct/union/class and before the identifier + __attribute__(); + IToken nameToken = null; // class name if (LT(1) == IToken.tIDENTIFIER) { diff --git a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/GNUCPPSourceParser.java b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/GNUCPPSourceParser.java index 99eeaa9783f..fb4d797477e 100644 --- a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/GNUCPPSourceParser.java +++ b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/GNUCPPSourceParser.java @@ -4274,6 +4274,9 @@ public class GNUCPPSourceParser extends AbstractGNUSourceCodeParser { IASTName name = null; + if (LT(1) == IGCCToken.t__attribute__ && supportAttributeSpecifiers) // if __attribute__ occurs after struct/union/class and before the identifier + __attribute__(); + // class name if (LT(1) == IToken.tIDENTIFIER) name = createName(name());