1
0
Fork 0
mirror of https://github.com/eclipse-cdt/cdt synced 2025-04-23 22:52:11 +02:00

cleaned up c99 parser test suites a bit, added C99GCCTests

This commit is contained in:
Mike Kucera 2007-06-12 19:26:54 +00:00
parent ad08e66295
commit a694c8157e
16 changed files with 115 additions and 67 deletions

View file

@ -31,6 +31,7 @@ public class AutomatedIntegrationSuite extends TestSuite {
suite.addTestSuite(UPCC99Tests.class); suite.addTestSuite(UPCC99Tests.class);
suite.addTestSuite(UPCLanguageExtensionTests.class); suite.addTestSuite(UPCLanguageExtensionTests.class);
suite.addTestSuite(UPCC99DigraphTrigraphTests.class); suite.addTestSuite(UPCC99DigraphTrigraphTests.class);
suite.addTestSuite(UPCC99GCCTests.class);
return suite; return suite;
} }

View file

@ -10,15 +10,13 @@
*******************************************************************************/ *******************************************************************************/
package org.eclipse.cdt.core.parser.upc.tests; package org.eclipse.cdt.core.parser.upc.tests;
import org.eclipse.cdt.core.dom.c99.C99Language; import org.eclipse.cdt.core.dom.c99.BaseExtensibleLanguage;
import org.eclipse.cdt.core.dom.upc.UPCLanguage; import org.eclipse.cdt.core.dom.upc.UPCLanguage;
import org.eclipse.cdt.core.parser.c99.tests.C99CommentTests; import org.eclipse.cdt.core.parser.c99.tests.C99CommentTests;
public class UPCC99CommentTests extends C99CommentTests { public class UPCC99CommentTests extends C99CommentTests {
protected C99Language getC99Language() {
return new UPCLanguage();
}
protected BaseExtensibleLanguage getLanguage() {
return UPCLanguage.getDefault();
}
} }

View file

@ -10,18 +10,16 @@
*******************************************************************************/ *******************************************************************************/
package org.eclipse.cdt.core.parser.upc.tests; package org.eclipse.cdt.core.parser.upc.tests;
import org.eclipse.cdt.core.dom.c99.BaseExtensibleLanguage;
import org.eclipse.cdt.core.dom.c99.C99Language; import org.eclipse.cdt.core.dom.c99.C99Language;
import org.eclipse.cdt.core.dom.upc.UPCLanguage;
import org.eclipse.cdt.core.parser.c99.tests.C99CompletionBasicTest; import org.eclipse.cdt.core.parser.c99.tests.C99CompletionBasicTest;
public class UPCC99CompletionBasicTest extends C99CompletionBasicTest { public class UPCC99CompletionBasicTest extends C99CompletionBasicTest {
public UPCC99CompletionBasicTest() { public UPCC99CompletionBasicTest() { }
protected BaseExtensibleLanguage getLanguage() {
return C99Language.getDefault();
} }
protected C99Language getC99Language() { }
return new UPCLanguage();
}
}

View file

@ -10,18 +10,17 @@
*******************************************************************************/ *******************************************************************************/
package org.eclipse.cdt.core.parser.upc.tests; package org.eclipse.cdt.core.parser.upc.tests;
import org.eclipse.cdt.core.dom.c99.C99Language; import org.eclipse.cdt.core.dom.c99.BaseExtensibleLanguage;
import org.eclipse.cdt.core.dom.upc.UPCLanguage; import org.eclipse.cdt.core.dom.upc.UPCLanguage;
import org.eclipse.cdt.core.parser.c99.tests.C99CompletionParseTest; import org.eclipse.cdt.core.parser.c99.tests.C99CompletionParseTest;
public class UPCC99CompletionParseTest extends C99CompletionParseTest { public class UPCC99CompletionParseTest extends C99CompletionParseTest {
public UPCC99CompletionParseTest(String name) { public UPCC99CompletionParseTest() { }
super(name); public UPCC99CompletionParseTest(String name) { super(name); }
}
protected C99Language getLanguage() {
return new UPCLanguage(); protected BaseExtensibleLanguage getLanguage() {
return UPCLanguage.getDefault();
} }
} }

View file

@ -10,16 +10,12 @@
*******************************************************************************/ *******************************************************************************/
package org.eclipse.cdt.core.parser.upc.tests; package org.eclipse.cdt.core.parser.upc.tests;
import org.eclipse.cdt.core.dom.c99.C99Language; import org.eclipse.cdt.core.dom.c99.BaseExtensibleLanguage;
import org.eclipse.cdt.core.dom.upc.UPCLanguage; import org.eclipse.cdt.core.dom.upc.UPCLanguage;
import org.eclipse.cdt.core.parser.c99.tests.C99DOMLocationInclusionTests; import org.eclipse.cdt.core.parser.c99.tests.C99DOMLocationInclusionTests;
public class UPCC99DOMLocationInclusionTests extends C99DOMLocationInclusionTests { public class UPCC99DOMLocationInclusionTests extends C99DOMLocationInclusionTests {
protected C99Language getLanguage() {
return new UPCLanguage();
}
public UPCC99DOMLocationInclusionTests() { public UPCC99DOMLocationInclusionTests() {
} }
@ -31,4 +27,7 @@ public class UPCC99DOMLocationInclusionTests extends C99DOMLocationInclusionTest
super(name); super(name);
} }
protected BaseExtensibleLanguage getLanguage() {
return UPCLanguage.getDefault();
}
} }

View file

@ -10,7 +10,7 @@
*******************************************************************************/ *******************************************************************************/
package org.eclipse.cdt.core.parser.upc.tests; package org.eclipse.cdt.core.parser.upc.tests;
import org.eclipse.cdt.core.dom.c99.C99Language; import org.eclipse.cdt.core.dom.c99.BaseExtensibleLanguage;
import org.eclipse.cdt.core.dom.upc.UPCLanguage; import org.eclipse.cdt.core.dom.upc.UPCLanguage;
import org.eclipse.cdt.core.parser.c99.tests.C99DOMLocationMacroTests; import org.eclipse.cdt.core.parser.c99.tests.C99DOMLocationMacroTests;
@ -19,7 +19,7 @@ public class UPCC99DOMLocationMacroTests extends C99DOMLocationMacroTests {
public UPCC99DOMLocationMacroTests() { public UPCC99DOMLocationMacroTests() {
} }
protected C99Language getLanguage() { protected BaseExtensibleLanguage getLanguage() {
return new UPCLanguage(); return UPCLanguage.getDefault();
} }
} }

View file

@ -10,7 +10,7 @@
*******************************************************************************/ *******************************************************************************/
package org.eclipse.cdt.core.parser.upc.tests; package org.eclipse.cdt.core.parser.upc.tests;
import org.eclipse.cdt.core.dom.c99.C99Language; import org.eclipse.cdt.core.dom.c99.BaseExtensibleLanguage;
import org.eclipse.cdt.core.dom.upc.UPCLanguage; import org.eclipse.cdt.core.dom.upc.UPCLanguage;
import org.eclipse.cdt.core.parser.c99.tests.C99DOMLocationTests; import org.eclipse.cdt.core.parser.c99.tests.C99DOMLocationTests;
@ -23,7 +23,7 @@ public class UPCC99DOMLocationTests extends C99DOMLocationTests {
super(name); super(name);
} }
protected C99Language getC99Language() { protected BaseExtensibleLanguage getLanguage() {
return new UPCLanguage(); return UPCLanguage.getDefault();
} }
} }

View file

@ -10,15 +10,14 @@
*******************************************************************************/ *******************************************************************************/
package org.eclipse.cdt.core.parser.upc.tests; package org.eclipse.cdt.core.parser.upc.tests;
import org.eclipse.cdt.core.dom.c99.C99Language; import org.eclipse.cdt.core.dom.c99.BaseExtensibleLanguage;
import org.eclipse.cdt.core.dom.upc.UPCLanguage; import org.eclipse.cdt.core.dom.upc.UPCLanguage;
import org.eclipse.cdt.core.parser.c99.tests.C99DOMPreprocessorInformationTest; import org.eclipse.cdt.core.parser.c99.tests.C99DOMPreprocessorInformationTest;
public class UPCC99DOMPreprocessorInformationTest extends public class UPCC99DOMPreprocessorInformationTest extends C99DOMPreprocessorInformationTest {
C99DOMPreprocessorInformationTest {
protected C99Language getC99Language() { protected BaseExtensibleLanguage getLanguage() {
return new UPCLanguage(); return UPCLanguage.getDefault();
} }
} }

View file

@ -10,22 +10,17 @@
*******************************************************************************/ *******************************************************************************/
package org.eclipse.cdt.core.parser.upc.tests; package org.eclipse.cdt.core.parser.upc.tests;
import org.eclipse.cdt.core.dom.c99.C99Language; import org.eclipse.cdt.core.dom.c99.BaseExtensibleLanguage;
import org.eclipse.cdt.core.dom.upc.UPCLanguage; import org.eclipse.cdt.core.dom.upc.UPCLanguage;
import org.eclipse.cdt.core.parser.c99.tests.C99DigraphTrigraphTests; import org.eclipse.cdt.core.parser.c99.tests.C99DigraphTrigraphTests;
public class UPCC99DigraphTrigraphTests extends C99DigraphTrigraphTests { public class UPCC99DigraphTrigraphTests extends C99DigraphTrigraphTests {
public UPCC99DigraphTrigraphTests() { public UPCC99DigraphTrigraphTests() { }
super(); public UPCC99DigraphTrigraphTests(String name) { super(name); }
}
public UPCC99DigraphTrigraphTests(String name) { protected BaseExtensibleLanguage getLanguage() {
super(name); return UPCLanguage.getDefault();
}
protected C99Language getC99Language() {
return new UPCLanguage();
} }
} }

View file

@ -0,0 +1,30 @@
/*******************************************************************************
* Copyright (c) 2006, 2007 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
* IBM Corporation - initial API and implementation
*******************************************************************************/
package org.eclipse.cdt.core.parser.upc.tests;
import org.eclipse.cdt.core.dom.c99.BaseExtensibleLanguage;
import org.eclipse.cdt.core.dom.upc.UPCLanguage;
import org.eclipse.cdt.core.parser.c99.tests.C99GCCTests;
public class UPCC99GCCTests extends C99GCCTests {
public UPCC99GCCTests() {
}
public UPCC99GCCTests(String message) {
super(message);
}
protected BaseExtensibleLanguage getLanguage() {
return UPCLanguage.getDefault();
}
}

View file

@ -10,7 +10,7 @@
*******************************************************************************/ *******************************************************************************/
package org.eclipse.cdt.core.parser.upc.tests; package org.eclipse.cdt.core.parser.upc.tests;
import org.eclipse.cdt.core.dom.c99.C99Language; import org.eclipse.cdt.core.dom.c99.BaseExtensibleLanguage;
import org.eclipse.cdt.core.dom.upc.UPCLanguage; import org.eclipse.cdt.core.dom.upc.UPCLanguage;
import org.eclipse.cdt.core.parser.c99.tests.C99KnRTests; import org.eclipse.cdt.core.parser.c99.tests.C99KnRTests;
@ -19,8 +19,8 @@ public class UPCC99KnRTests extends C99KnRTests {
public UPCC99KnRTests() { public UPCC99KnRTests() {
} }
protected C99Language getLanguage() { protected BaseExtensibleLanguage getLanguage() {
return new UPCLanguage(); return UPCLanguage.getDefault();
} }
} }

View file

@ -10,7 +10,7 @@
*******************************************************************************/ *******************************************************************************/
package org.eclipse.cdt.core.parser.upc.tests; package org.eclipse.cdt.core.parser.upc.tests;
import org.eclipse.cdt.core.dom.c99.C99Language; import org.eclipse.cdt.core.dom.c99.BaseExtensibleLanguage;
import org.eclipse.cdt.core.dom.upc.UPCLanguage; import org.eclipse.cdt.core.dom.upc.UPCLanguage;
import org.eclipse.cdt.core.parser.c99.tests.C99SelectionParseTest; import org.eclipse.cdt.core.parser.c99.tests.C99SelectionParseTest;
@ -27,8 +27,8 @@ public class UPCC99SelectionParseTest extends C99SelectionParseTest {
super(name); super(name);
} }
protected C99Language getLanguage() { protected BaseExtensibleLanguage getLanguage() {
return new UPCLanguage(); return UPCLanguage.getDefault();
} }
} }

View file

@ -10,7 +10,7 @@
*******************************************************************************/ *******************************************************************************/
package org.eclipse.cdt.core.parser.upc.tests; package org.eclipse.cdt.core.parser.upc.tests;
import org.eclipse.cdt.core.dom.c99.C99Language; import org.eclipse.cdt.core.dom.c99.BaseExtensibleLanguage;
import org.eclipse.cdt.core.dom.upc.UPCLanguage; import org.eclipse.cdt.core.dom.upc.UPCLanguage;
import org.eclipse.cdt.core.parser.c99.tests.C99SpecTests; import org.eclipse.cdt.core.parser.c99.tests.C99SpecTests;
@ -23,8 +23,8 @@ public class UPCC99SpecTests extends C99SpecTests {
super(name); super(name);
} }
protected C99Language getLanguage() { protected BaseExtensibleLanguage getLanguage() {
return new UPCLanguage(); return UPCLanguage.getDefault();
} }
} }

View file

@ -10,9 +10,9 @@
*******************************************************************************/ *******************************************************************************/
package org.eclipse.cdt.core.parser.upc.tests; package org.eclipse.cdt.core.parser.upc.tests;
import org.eclipse.cdt.core.parser.c99.tests.C99Tests; import org.eclipse.cdt.core.dom.c99.BaseExtensibleLanguage;
import org.eclipse.cdt.core.dom.c99.C99Language;
import org.eclipse.cdt.core.dom.upc.UPCLanguage; import org.eclipse.cdt.core.dom.upc.UPCLanguage;
import org.eclipse.cdt.core.parser.c99.tests.C99Tests;
/** /**
* Run the C99 tests against the UPC parser * Run the C99 tests against the UPC parser
* *
@ -23,8 +23,8 @@ public class UPCC99Tests extends C99Tests {
super(name); super(name);
} }
protected C99Language getC99Language() { protected BaseExtensibleLanguage getC99Language() {
return new UPCLanguage(); return UPCLanguage.getDefault();
} }
} }

View file

@ -12,8 +12,27 @@ package org.eclipse.cdt.core.parser.upc.tests;
import junit.framework.TestCase; import junit.framework.TestCase;
import org.eclipse.cdt.core.dom.ast.*; import org.eclipse.cdt.core.dom.ast.IASTArrayDeclarator;
import org.eclipse.cdt.core.dom.c99.C99Language; import org.eclipse.cdt.core.dom.ast.IASTArrayModifier;
import org.eclipse.cdt.core.dom.ast.IASTArraySubscriptExpression;
import org.eclipse.cdt.core.dom.ast.IASTBinaryExpression;
import org.eclipse.cdt.core.dom.ast.IASTCompoundStatement;
import org.eclipse.cdt.core.dom.ast.IASTDeclaration;
import org.eclipse.cdt.core.dom.ast.IASTDeclarationStatement;
import org.eclipse.cdt.core.dom.ast.IASTDeclarator;
import org.eclipse.cdt.core.dom.ast.IASTExpressionStatement;
import org.eclipse.cdt.core.dom.ast.IASTFunctionDefinition;
import org.eclipse.cdt.core.dom.ast.IASTIdExpression;
import org.eclipse.cdt.core.dom.ast.IASTLiteralExpression;
import org.eclipse.cdt.core.dom.ast.IASTName;
import org.eclipse.cdt.core.dom.ast.IASTSimpleDeclSpecifier;
import org.eclipse.cdt.core.dom.ast.IASTSimpleDeclaration;
import org.eclipse.cdt.core.dom.ast.IASTStatement;
import org.eclipse.cdt.core.dom.ast.IASTTranslationUnit;
import org.eclipse.cdt.core.dom.ast.IASTUnaryExpression;
import org.eclipse.cdt.core.dom.ast.IScope;
import org.eclipse.cdt.core.dom.ast.IVariable;
import org.eclipse.cdt.core.dom.c99.BaseExtensibleLanguage;
import org.eclipse.cdt.core.dom.upc.UPCLanguage; import org.eclipse.cdt.core.dom.upc.UPCLanguage;
import org.eclipse.cdt.core.dom.upc.ast.IUPCASTDeclSpecifier; import org.eclipse.cdt.core.dom.upc.ast.IUPCASTDeclSpecifier;
import org.eclipse.cdt.core.dom.upc.ast.IUPCASTForallStatement; import org.eclipse.cdt.core.dom.upc.ast.IUPCASTForallStatement;
@ -34,8 +53,8 @@ public class UPCLanguageExtensionTests extends TestCase {
} }
protected C99Language getLanguage() { protected BaseExtensibleLanguage getLanguage() {
return new UPCLanguage(); return UPCLanguage.getDefault();
} }
// test problem-free parsing of UPC constructs (maily declarations) // test problem-free parsing of UPC constructs (maily declarations)

View file

@ -10,10 +10,13 @@
*******************************************************************************/ *******************************************************************************/
package org.eclipse.cdt.core.dom.upc; package org.eclipse.cdt.core.dom.upc;
import org.eclipse.cdt.core.dom.c99.BaseExtensibleLanguage;
import org.eclipse.cdt.core.dom.c99.C99Language; import org.eclipse.cdt.core.dom.c99.C99Language;
import org.eclipse.cdt.core.dom.c99.IKeywordMap; import org.eclipse.cdt.core.dom.c99.IKeywordMap;
import org.eclipse.cdt.core.dom.c99.IParser; import org.eclipse.cdt.core.dom.c99.IParser;
import org.eclipse.cdt.core.dom.c99.IPreprocessorExtensionConfiguration;
import org.eclipse.cdt.core.dom.parser.c99.C99KeywordMap; import org.eclipse.cdt.core.dom.parser.c99.C99KeywordMap;
import org.eclipse.cdt.core.dom.parser.c99.GCCPreprocessorExtensionConfiguration;
import org.eclipse.cdt.core.dom.parser.upc.UPCKeywordMap; import org.eclipse.cdt.core.dom.parser.upc.UPCKeywordMap;
import org.eclipse.cdt.internal.core.dom.parser.upc.UPCParser; import org.eclipse.cdt.internal.core.dom.parser.upc.UPCParser;
@ -25,7 +28,10 @@ import org.eclipse.cdt.internal.core.dom.parser.upc.UPCParser;
* *
* @author Mike Kucera * @author Mike Kucera
*/ */
public class UPCLanguage extends C99Language { public class UPCLanguage extends BaseExtensibleLanguage {
protected static final IPreprocessorExtensionConfiguration
GCC_PREPROCESSOR_EXTENSION = new GCCPreprocessorExtensionConfiguration();
// TODO: this should probably go somewhere else // TODO: this should probably go somewhere else
public static final String PLUGIN_ID = "org.eclipse.cdt.core.parser.upc"; //$NON-NLS-1$ public static final String PLUGIN_ID = "org.eclipse.cdt.core.parser.upc"; //$NON-NLS-1$
@ -35,7 +41,7 @@ public class UPCLanguage extends C99Language {
private static final UPCLanguage myDefault = new UPCLanguage(); private static final UPCLanguage myDefault = new UPCLanguage();
public static C99Language getDefault() { public static UPCLanguage getDefault() {
return myDefault; return myDefault;
} }
@ -57,4 +63,8 @@ public class UPCLanguage extends C99Language {
return keywordMap; return keywordMap;
} }
protected IPreprocessorExtensionConfiguration getPreprocessorExtensionConfiguration() {
return GCC_PREPROCESSOR_EXTENSION;
}
} }