From 878fe8fb77ae2b465a55ad2cb1a49fa1ae9e9c33 Mon Sep 17 00:00:00 2001 From: Markus Schorn Date: Wed, 6 Jul 2011 08:17:33 +0200 Subject: [PATCH] Bug 351228: Attributes at end of using directive. --- .../cdt/core/parser/tests/ast2/AST2CPPTests.java | 12 ++++++++++++ .../core/dom/parser/cpp/GNUCPPSourceParser.java | 2 ++ 2 files changed, 14 insertions(+) diff --git a/core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/core/parser/tests/ast2/AST2CPPTests.java b/core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/core/parser/tests/ast2/AST2CPPTests.java index 0d8864a62e1..cb315c328fb 100644 --- a/core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/core/parser/tests/ast2/AST2CPPTests.java +++ b/core/org.eclipse.cdt.core.tests/parser/org/eclipse/cdt/core/parser/tests/ast2/AST2CPPTests.java @@ -5327,6 +5327,18 @@ public class AST2CPPTests extends AST2BaseTest { parse( getAboveComment(), ParserLanguage.CPP, true, true ); } + // namespace outer { + // namespace inner { + // class foo{}; + // } + // using namespace inner __attribute__((__strong__)); + // } + // outer::foo x; + // outer::inner::foo y; + public void testAttributeInUsingDirective_351228() throws Exception { + parseAndCheckBindings(); + } + // class C { // public: // int i; 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 9eb9ba28a45..2d13fb9e1e4 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 @@ -1859,6 +1859,8 @@ public class GNUCPPSourceParser extends AbstractGNUSourceCodeParser { throwBacktrack(offset, endOffset - offset); } + __attribute__(); + switch (LT(1)) { case IToken.tSEMI: case IToken.tEOC: