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: