From 27f89cdca513873617b90bab83bd2661af0bf5bf Mon Sep 17 00:00:00 2001 From: Markus Schorn Date: Tue, 25 May 2010 09:10:31 +0000 Subject: [PATCH] Bug 314113: False syntax error. --- .../eclipse/cdt/core/parser/tests/ast2/AST2CPPTests.java | 8 ++++++++ .../internal/core/dom/parser/cpp/GNUCPPSourceParser.java | 3 ++- 2 files changed, 10 insertions(+), 1 deletion(-) 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 244087d549e..623040ccc25 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 @@ -8554,4 +8554,12 @@ public class AST2CPPTests extends AST2BaseTest { String code= getAboveComment(); parseAndCheckBindings(code); } + + // void test() { + // void *libHandle (0); + // } + public void testCTorInitializerForVoidPtr_314113() throws Exception { + String code= getAboveComment(); + parseAndCheckBindings(code); + } } 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 b0b856d3d78..d62350975b7 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 @@ -2795,7 +2795,8 @@ public class GNUCPPSourceParser extends AbstractGNUSourceCodeParser { if (CPPVisitor.doesNotSpecifyType(declspec)) { return false; } - if (sspec.getType() == IASTSimpleDeclSpecifier.t_void) { + if (sspec.getType() == IASTSimpleDeclSpecifier.t_void && dtor != null && + dtor.getPointerOperators().length == 0 && dtor.getNestedDeclarator() == null) { return false; } }