1
0
Fork 0
mirror of https://github.com/eclipse-cdt/cdt synced 2025-04-29 19:45:01 +02:00

Cosmetics.

This commit is contained in:
Sergey Prigogin 2012-05-16 13:48:12 -07:00
parent e553255384
commit 6dd26c1525
4 changed files with 467 additions and 467 deletions

View file

@ -53,7 +53,7 @@ public class AST2CPPSpecTest extends AST2SpecBaseTest {
public AST2CPPSpecTest(String name) {
super(name);
}
public static TestSuite suite() {
return suite(AST2CPPSpecTest.class);
}
@ -121,7 +121,7 @@ public class AST2CPPSpecTest extends AST2SpecBaseTest {
// C& operator=(const C& x) { s = x.s; return *this; }
// ~C() { }
// };
//
//
public void test3_1s4b() throws Exception {
parse(getAboveComment(), ParserLanguage.CPP, false, 0);
}
@ -141,10 +141,10 @@ public class AST2CPPSpecTest extends AST2SpecBaseTest {
// X::X(int = 0) { }
// class D: public X { };
// D d2; // X(int) called by D()
public void test3_2s5_a() throws Exception {
public void test3_2s5_a() throws Exception {
parse(getAboveComment(), ParserLanguage.CPP, true, 0);
}
// // translation unit 2:
// struct X {
// X(int);
@ -154,7 +154,7 @@ public class AST2CPPSpecTest extends AST2SpecBaseTest {
// class D: public X { }; // X(int, int) called by D();
// // D()'s implicit definition
// // violates the ODR
public void test3_2s5_b() throws Exception {
public void test3_2s5_b() throws Exception {
parse(getAboveComment(), ParserLanguage.CPP, true, 0);
}
@ -291,7 +291,7 @@ public class AST2CPPSpecTest extends AST2SpecBaseTest {
public void test3_4_3s1() throws Exception {
parse(getAboveComment(), ParserLanguage.CPP, true, 1);
}
// namespace NS {
// class T { };
// void f(T);
@ -391,8 +391,8 @@ public class AST2CPPSpecTest extends AST2SpecBaseTest {
// // resolution chooses Z::h(double)
// }
public void test3_4_3_2s2() throws Exception {
String[] problems= {"AB::x", "x", "AB::i", "i"};
parse(getAboveComment(), ParserLanguage.CPP, problems); // qualified names are counted double, so 4
String[] problems= {"AB::x", "x", "AB::i", "i"};
parse(getAboveComment(), ParserLanguage.CPP, problems); // qualified names are counted double, so 4
}
// namespace A {
@ -423,7 +423,7 @@ public class AST2CPPSpecTest extends AST2SpecBaseTest {
// {
// BD::a++; //OK: S is { A::a, A::a }
// }
public void test3_4_3_2s3() throws Exception {
public void test3_4_3_2s3() throws Exception {
parse(getAboveComment(), ParserLanguage.CPP, true, 0);
}
@ -506,7 +506,7 @@ public class AST2CPPSpecTest extends AST2SpecBaseTest {
// // cannot introduce a qualified type (7.1.5.3)
// friend struct Glob; // OK: Refers to (as yet) undeclared Glob
// // at global scope.
//
//
// };
// struct Base {
// struct Data; // OK: Declares nested Data
@ -524,7 +524,7 @@ public class AST2CPPSpecTest extends AST2SpecBaseTest {
// struct Base::Datum; // error: Datum undefined
// struct Base::Data* pBase; // OK: refers to nested Data
public void test3_4_4s3() throws Exception {
String[] problems= {"::Glob", "Glob", "Base::Datum", "Datum"};
String[] problems= {"::Glob", "Glob", "Base::Datum", "Datum"};
parse(getAboveComment(), ParserLanguage.CPP, problems);
}
@ -687,7 +687,7 @@ public class AST2CPPSpecTest extends AST2SpecBaseTest {
// arrpp++; //OK: sizeof UNKA* is known
// }
// struct X {
// int i;
// int i;
// }; // now X is a complete type
// int arr[10]; // now the type of arr is complete
// X x;
@ -756,7 +756,7 @@ public class AST2CPPSpecTest extends AST2SpecBaseTest {
parse(getAboveComment(), ParserLanguage.CPP, true, 0);
}
// class D { // ...
// class D { // ...
// };
// D d1;
// const D d2;
@ -799,7 +799,7 @@ public class AST2CPPSpecTest extends AST2SpecBaseTest {
IASTExpression expr= getExpressionOfStatement(fdef, 0);
assertInstance(expr, ICPPASTNewExpression.class);
ICPPASTNewExpression newExpr= (ICPPASTNewExpression) expr;
assertNull(newExpr.getNewPlacement());
assertNull(newExpr.getNewInitializer());
IASTTypeId typeid= newExpr.getTypeId();
@ -815,7 +815,7 @@ public class AST2CPPSpecTest extends AST2SpecBaseTest {
// };
public void test5_3_4s12() throws Exception {
// see https://bugs.eclipse.org/bugs/show_bug.cgi?id=236856
IASTTranslationUnit tu= parse(getAboveComment(), ParserLanguage.CPP, true, 0);
IASTFunctionDefinition fdef= getDeclaration(tu, 1);
@ -826,7 +826,7 @@ public class AST2CPPSpecTest extends AST2SpecBaseTest {
assertNull(newExpr.getNewPlacement());
assertNull(newExpr.getNewInitializer());
isTypeEqual(CPPVisitor.createType(newExpr.getTypeId()), "int");
// new(2,f) T;
expr= getExpressionOfStatement(fdef, 1);
assertInstance(expr, ICPPASTNewExpression.class);
@ -920,7 +920,7 @@ public class AST2CPPSpecTest extends AST2SpecBaseTest {
// int x=0;
// if (x)
// int i;
//
//
// if (x) {
// int i;
// }
@ -937,7 +937,7 @@ public class AST2CPPSpecTest extends AST2SpecBaseTest {
// int x; // illformed,redeclaration of x
// }
// }
public void test6_4s3() throws Exception {
public void test6_4s3() throws Exception {
// raised bug 90618
// gcc does not report an error, either, so leave it as it is.
parse(getAboveComment(), ParserLanguage.CPP, true, 0);
@ -962,7 +962,7 @@ public class AST2CPPSpecTest extends AST2SpecBaseTest {
// ~A() { }
// operator bool() { return val != 0; }
// };
//
//
// int foo() {
// int i = 1;
// while (A a = i) {
@ -997,7 +997,7 @@ public class AST2CPPSpecTest extends AST2SpecBaseTest {
// goto ly; // OK, jump implies destructor
// // call for a followed by construction
// // again immediately following label ly
// }
// }
public void test6_7s3() throws Exception {
parse(getAboveComment(), ParserLanguage.CPP, true, 1);
}
@ -1083,7 +1083,7 @@ public class AST2CPPSpecTest extends AST2SpecBaseTest {
// }
// char* g(); // g() has external linkage
// static char* g() // error: inconsistent linkage
// { //
// { //
// }
// void h();
// inline void h(); // external linkage
@ -1138,12 +1138,12 @@ public class AST2CPPSpecTest extends AST2SpecBaseTest {
// typedef int I;
// typedef int I;
// typedef I I;
public void test7_1_3s2() throws Exception {
public void test7_1_3s2() throws Exception {
parse(getAboveComment(), ParserLanguage.CPP, true, 0);
}
// class complex { //
// class complex { //
// };
// typedef int complex; // error: redefinition
public void test7_1_3s3a() throws Exception {
@ -1151,7 +1151,7 @@ public class AST2CPPSpecTest extends AST2SpecBaseTest {
}
// typedef int complex;
// class complex { //
// class complex { //
// }; // error: redefinition
public void test7_1_3s3b() throws Exception {
parse(getAboveComment(), ParserLanguage.CPP, true, 0);
@ -1230,7 +1230,7 @@ public class AST2CPPSpecTest extends AST2SpecBaseTest {
// X x;
// Y();
// };
//
//
// int foo() {
// const Y y;
// y.x.i++; //wellformed: mutable member can be modified
@ -1578,7 +1578,7 @@ public class AST2CPPSpecTest extends AST2SpecBaseTest {
// }
public void test7_3_3s11() throws Exception {
parse(getAboveComment(), ParserLanguage.CPP, false, 0);
}
}
// struct A { int x(); };
// struct B : A { };
@ -1840,10 +1840,10 @@ public class AST2CPPSpecTest extends AST2SpecBaseTest {
IASTTranslationUnit tu= parse(getAboveComment(), ParserLanguage.CPP, true, 1);
CPPNameCollector col = new CPPNameCollector();
tu.accept(col);
assertInstance(col.getName(4), ICPPASTTemplateId.class);
assertInstance(((ICPPASTTemplateId)col.getName(4)).getTemplateArguments()[0], IASTTypeId.class);
final IASTName S_int_1 = col.getName(7);
assertInstance(S_int_1, ICPPASTTemplateId.class);
assertInstance(((ICPPASTTemplateId)S_int_1).getTemplateArguments()[0], IASTExpression.class);
@ -1879,7 +1879,7 @@ public class AST2CPPSpecTest extends AST2SpecBaseTest {
public void test8_2s7a() throws Exception { // TODO raised bug 90633
final String code = getAboveComment();
parse(code, ParserLanguage.CPP, true, 1);
BindingAssertionHelper ba= new BindingAssertionHelper(code, true);
IFunction f= ba.assertNonProblem("f", 1, IFunction.class);
isTypeEqual(f.getType(), "void (int (*)(C))");
@ -1914,7 +1914,7 @@ public class AST2CPPSpecTest extends AST2SpecBaseTest {
// const int ci = 10, *pc = &ci, *const cpc = pc, **ppc;
// int i, *p, *const cp = &i;
//
//
// int f() {
// i = ci;
// *cp = ci;
@ -1996,7 +1996,7 @@ public class AST2CPPSpecTest extends AST2SpecBaseTest {
// int a;
// };
// class Y;
//
//
// void f() {
// int X::* pmi = &X::a;
// void (X::* pmf)(int) = &X::f;
@ -2332,7 +2332,7 @@ public class AST2CPPSpecTest extends AST2SpecBaseTest {
}
// char msg[] = "Syntax error on line %s";
public void test8_5_2s1() throws Exception {
public void test8_5_2s1() throws Exception {
// raised bug 90647
parse(getAboveComment(), ParserLanguage.CPP, true, 0);
}
@ -2545,7 +2545,7 @@ public class AST2CPPSpecTest extends AST2SpecBaseTest {
// int g() { return a++; }
// };
// int s::f() const { return a; }
//
//
// void k(s& x, const s& y)
// {
// x.f();
@ -2558,8 +2558,8 @@ public class AST2CPPSpecTest extends AST2SpecBaseTest {
final String code = getAboveComment();
IASTTranslationUnit tu= parse(code, ParserLanguage.CPP, problems);
BindingAssertionHelper bh= new BindingAssertionHelper(code, true);
bh.assertNonProblem("g();", 1);
bh.assertProblem("g(); //error", 1);
bh.assertNonProblem("g();", 1);
bh.assertProblem("g(); //error", 1);
}
// class process {
@ -2606,7 +2606,7 @@ public class AST2CPPSpecTest extends AST2SpecBaseTest {
// p = "Jennifer";
// // ...
// }
public void test9_5s2() throws Exception {
public void test9_5s2() throws Exception {
parse(getAboveComment(), ParserLanguage.CPP, true, 0);
}
@ -2751,7 +2751,7 @@ public class AST2CPPSpecTest extends AST2SpecBaseTest {
// class B : public L { };
// class C : public A, public B { void f(); }; // wellformed
// class D : public A, public L { void f(); }; // wellformed
//
//
public void test10_1s3b() throws Exception {
parse(getAboveComment(), ParserLanguage.CPP, true, 0);
}
@ -3578,7 +3578,7 @@ public class AST2CPPSpecTest extends AST2SpecBaseTest {
parse(code, ParserLanguage.CPP, false, 0);
BindingAssertionHelper bh= new BindingAssertionHelper(code, true);
ICPPFunction dtor= bh.assertNonProblem("~B() {", 2);
ICPPFunction d= bh.assertNonProblem("~B(); //1", 2);
assertSame(dtor, d);
d= bh.assertNonProblem("~B(); //2", 2);
@ -3587,7 +3587,7 @@ public class AST2CPPSpecTest extends AST2SpecBaseTest {
assertSame(dtor, d);
d= bh.assertNonProblem("~B(); //4", 2);
assertSame(dtor, d);
bh.assertProblem("~B_alias(); //5", 8);
}
@ -3928,7 +3928,7 @@ public class AST2CPPSpecTest extends AST2SpecBaseTest {
// void h(int (*)()); // redeclaration of h(int())
// void h(int x()) { } // definition of h(int())
// void h(int (*x)()) { } // illformed: redefinition of h(int())
public void test12_8s3d() throws Exception {
public void test12_8s3d() throws Exception {
parse(getAboveComment(), ParserLanguage.CPP, true, 1);
}
@ -4474,7 +4474,7 @@ public class AST2CPPSpecTest extends AST2SpecBaseTest {
// // ...
// };
// Array<int> v1(20);
// typedef complex<double> dcomplex;
// typedef complex<double> dcomplex;
// Array<dcomplex> v2(30);
// Array<dcomplex> v3(40);
// void bar() {
@ -4677,7 +4677,7 @@ public class AST2CPPSpecTest extends AST2SpecBaseTest {
// static T s;
// };
// template<class T> T X<T>::s = 0;
public void test14_5_1_3s1() throws Exception {
public void test14_5_1_3s1() throws Exception {
parse(getAboveComment(), ParserLanguage.CPP, true, 0);
}
@ -4693,7 +4693,7 @@ public class AST2CPPSpecTest extends AST2SpecBaseTest {
// template<class P> friend class frd;
// // ...
// };
public void test14_5_4s1() throws Exception {
public void test14_5_4s1() throws Exception {
parse(getAboveComment(), ParserLanguage.CPP, true, 0);
}
@ -4791,7 +4791,7 @@ public class AST2CPPSpecTest extends AST2SpecBaseTest {
// template<class T1, class T2, int I> class A<T1*, T2, I> { }; // #3
// template<class T> class A<int, T*, 5> { }; // #4
// template<class T1, class T2, int I> class A<T1, T2*, I> { }; // #5
// A<int*, int*, 2> a5; // ambiguous: matches #3 and #5 : expect problem
// A<int*, int*, 2> a5; // ambiguous: matches #3 and #5 : expect problem
public void test14_5_5_1s2b() throws Exception {
parse(getAboveComment(), ParserLanguage.CPP, true, 1);
}
@ -4842,12 +4842,12 @@ public class AST2CPPSpecTest extends AST2SpecBaseTest {
parse(getAboveComment(), ParserLanguage.CPP, true, 0);
}
// // file1.c
// // file1.c
// template<class T>
// void f(T*);
// void g(int* p) {
// f(p); // call
// // f<int>(int*)
// void g(int* p) {
// f(p); // call
// // f<int>(int*)
// }
public void test14_5_6_1s1a() throws Exception {
parse(getAboveComment(), ParserLanguage.CPP, true, 0);
@ -4909,7 +4909,7 @@ public class AST2CPPSpecTest extends AST2SpecBaseTest {
ICPPSpecialization templateSpecialization = (ICPPSpecialization) inst.getTemplateDefinition();
assertSame(op1, templateSpecialization.getSpecializedBinding());
}
// template<class T> struct A { A(); };
// template<class T> void f(T);
// template<class T> void f(T*);
@ -5115,7 +5115,7 @@ public class AST2CPPSpecTest extends AST2SpecBaseTest {
// template<class C> void N::B<C>::f(C) {
// C b; // C is the template parameter, not N::C
// }
public void test14_6_1s6() throws Exception {
public void test14_6_1s6() throws Exception {
parse(getAboveComment(), ParserLanguage.CPP, true, 0);
}
@ -5157,7 +5157,7 @@ public class AST2CPPSpecTest extends AST2SpecBaseTest {
// template<class T> struct X : B<T> {
// A a; // a has type double
// };
public void test14_6_2s3() throws Exception {
public void test14_6_2s3() throws Exception {
final String content= getAboveComment();
IASTTranslationUnit tu= parse(content, ParserLanguage.CPP, true, 0);
BindingAssertionHelper bh= new BindingAssertionHelper(content, true);
@ -5236,7 +5236,7 @@ public class AST2CPPSpecTest extends AST2SpecBaseTest {
// template<class T> T X<T>::s = 0;
// X<int> aa;
// X<char*> bb;
public void test14_7s6() throws Exception {
public void test14_7s6() throws Exception {
parse(getAboveComment(), ParserLanguage.CPP, true, 0);
}
@ -5330,7 +5330,7 @@ public class AST2CPPSpecTest extends AST2SpecBaseTest {
// int i = m.get("Nicholas");
// // ...
// }
public void test14_7_1s10() throws Exception {
public void test14_7_1s10() throws Exception {
parse(getAboveComment(), ParserLanguage.CPP, true, 0);
}
@ -5403,7 +5403,7 @@ public class AST2CPPSpecTest extends AST2SpecBaseTest {
// template<class T> class Array { };
// template<class T> void sort(Array<T>& v) { }
// template<> void sort<char*>(Array<char*>&) ;
public void test14_7_3s1() throws Exception {
public void test14_7_3s1() throws Exception {
parse(getAboveComment(), ParserLanguage.CPP, true, 0);
}
@ -5687,7 +5687,7 @@ public class AST2CPPSpecTest extends AST2SpecBaseTest {
inst= bh.assertNonProblem("f<int,char>()", -2);
assertEquals("<int,char>", ASTTypeUtil.getArgumentListString(inst.getTemplateArguments(), true));
}
// struct X { };
// struct Y {
// Y(X){}
@ -5698,8 +5698,8 @@ public class AST2CPPSpecTest extends AST2SpecBaseTest {
// X x3 = f(x1, x2); // deduction fails on #1 (cannot add X+X), calls #2
public void test14_8_2s8a() throws Exception {
parse(getAboveComment(), ParserLanguage.CPP, false, 0);
}
}
// template <class T> int f(T[5]);
// int I = f<int>(0);
// int j = f<void>(0); // invalid array // also no error with gcc
@ -5768,7 +5768,7 @@ public class AST2CPPSpecTest extends AST2SpecBaseTest {
BindingAssertionHelper bh= new BindingAssertionHelper(code, true);
bh.assertProblem("f<X>", 0);
}
// template <class T, T*> int f(int);
// int i2 = f<int,1>(0); // can't conv 1 to int*
public void test14_8_2s8g() throws Exception {
@ -5796,14 +5796,14 @@ public class AST2CPPSpecTest extends AST2SpecBaseTest {
public void test14_8_2_1s1a() throws Exception {
final String code= getAboveComment();
BindingAssertionHelper bh= new BindingAssertionHelper(code, true);
ICPPTemplateInstance inst;
inst= bh.assertNonProblem("f({1,2,3})", 1);
assertEquals("<int>", ASTTypeUtil.getArgumentListString(inst.getTemplateArguments(), true));
bh.assertProblem("f({1,\"asdf\"})", 1);
bh.assertProblem("g({1,2,3})", 1);
}
// template<class ... Types> void f(Types& ...);
// template<class T1, class ... Types> void g(T1, Types ...);
// void h(int x, float& y) {
@ -5814,14 +5814,14 @@ public class AST2CPPSpecTest extends AST2SpecBaseTest {
public void test14_8_2_1s1b() throws Exception {
final String code= getAboveComment();
BindingAssertionHelper bh= new BindingAssertionHelper(code, true);
ICPPTemplateInstance inst;
inst= bh.assertNonProblem("f(x, y, z)", 1);
assertEquals("<int,float,const int>", ASTTypeUtil.getArgumentListString(inst.getTemplateArguments(), true));
inst= bh.assertNonProblem("g(x, y, z)", 1);
assertEquals("<int,float,int>", ASTTypeUtil.getArgumentListString(inst.getTemplateArguments(), true));
}
// template <class T> int f(T&&);
// template <class T> int g(const T&&);
// int i;
@ -5853,7 +5853,7 @@ public class AST2CPPSpecTest extends AST2SpecBaseTest {
inst= bh.assertNonProblem("f(g)", 1);
assertEquals("<int>", ASTTypeUtil.getArgumentListString(inst.getTemplateArguments(), true));
}
// // Ambiguous deduction causes the second function parameter to be a
// // non-deduced context.
// template <class T> int f(T, T (*p)(T));
@ -5881,7 +5881,7 @@ public class AST2CPPSpecTest extends AST2SpecBaseTest {
inst= bh.assertNonProblem("f(1, g)", 1);
assertEquals("<int>", ASTTypeUtil.getArgumentListString(inst.getTemplateArguments(), true));
}
// struct A {
// template <class T> operator T***();
// };
@ -5892,7 +5892,7 @@ public class AST2CPPSpecTest extends AST2SpecBaseTest {
public void test14_8_2_3s7() throws Exception {
parse(getAboveComment(), ParserLanguage.CPP, true, 0);
}
// template <class T> T f(int); // #1
// template <class T, class U> T f(U); // #2
// void g() {
@ -5901,7 +5901,7 @@ public class AST2CPPSpecTest extends AST2SpecBaseTest {
public void test14_8_2_4s11() throws Exception {
parse(getAboveComment(), ParserLanguage.CPP, true, 0);
}
// template<typename...> struct Tuple { };
// template<typename... Types> void g(Tuple<Types...>); // #1
// template<typename T1, typename... Types> void g(Tuple<T1, Types...>); // #2
@ -5910,17 +5910,17 @@ public class AST2CPPSpecTest extends AST2SpecBaseTest {
// g(Tuple<>()); // calls #1
// g(Tuple<int, float>()); // calls #2
// g(Tuple<int, float&>()); // calls #3
// g(Tuple<int>()); // calls #3
// g(Tuple<int>()); // calls #3
// }
public void test14_8_2_4s12() throws Exception {
final String code= getAboveComment();
parse(code, ParserLanguage.CPP, true, 0);
BindingAssertionHelper bh= new BindingAssertionHelper(code, true);
ICPPFunction g1= bh.assertNonProblem("g(Tuple<Types...>)", 1);
ICPPFunction g2= bh.assertNonProblem("g(Tuple<T1, Types...>)", 1);
ICPPFunction g3= bh.assertNonProblem("g(Tuple<T1, Types&...>)", 1);
ICPPTemplateInstance x= bh.assertNonProblem("g(Tuple<>())", 1);
assertSame(g1, x.getTemplateDefinition());
x= bh.assertNonProblem("g(Tuple<int, float>())", 1);
@ -5929,8 +5929,8 @@ public class AST2CPPSpecTest extends AST2SpecBaseTest {
assertSame(g3, x.getTemplateDefinition());
x= bh.assertNonProblem("g(Tuple<int>())", 1);
assertSame(g3, x.getTemplateDefinition());
}
}
// template<class T> void g(T);
// void test() {
// g({1,2,3}); // error: no argument deduced for T
@ -5999,7 +5999,7 @@ public class AST2CPPSpecTest extends AST2SpecBaseTest {
public void test14_8_2_5s7d() throws Exception {
parse(getAboveComment(), ParserLanguage.CPP, true, 0);
}
// template <class T> void f(T&&);
// template <> void f(int&) { } // #1
// template <> void f(int&&) { } // #2
@ -6076,7 +6076,7 @@ public class AST2CPPSpecTest extends AST2SpecBaseTest {
inst= bh.assertNonProblem("f(a1, a2)", 1);
assertEquals("<1>", ASTTypeUtil.getArgumentListString(inst.getTemplateArguments(), true));
}
// template<typename T> class A {
// public:
// typedef int X;
@ -6100,7 +6100,7 @@ public class AST2CPPSpecTest extends AST2SpecBaseTest {
parse(getAboveComment(), ParserLanguage.CPP, true, 0);
}
// template<int i> class A {};
// template<short s> void f(A<s>);
// void k1() {
@ -6162,7 +6162,7 @@ public class AST2CPPSpecTest extends AST2SpecBaseTest {
inst= bh.assertNonProblem("f<int>()", -2);
assertEquals("<int>", ASTTypeUtil.getArgumentListString(inst.getTemplateArguments(), true));
}
// template <template <class T> class X> struct A { };
// template <template <class T> class X> void f(A<X>) { }
// template<class T> struct B { };
@ -6190,7 +6190,7 @@ public class AST2CPPSpecTest extends AST2SpecBaseTest {
public void test14_8_2_4s21() throws Exception {
parse(getAboveComment(), ParserLanguage.CPP, true, 0);
}
// template<class ... Args> void f(Args ... args); // #1
// template<class T1, class ... Args> void f(T1 a1, Args ... args); // #2
// template<class T1, class T2> void f(T1 a1, T2 a2); // #3
@ -6206,7 +6206,7 @@ public class AST2CPPSpecTest extends AST2SpecBaseTest {
ICPPFunctionTemplate f1= bh.assertNonProblem("f(Args ... args)", 1);
ICPPFunctionTemplate f2= bh.assertNonProblem("f(T1 a1, Args ... args)", 1);
ICPPFunctionTemplate f3= bh.assertNonProblem("f(T1 a1, T2 a2)", 1);
ICPPTemplateInstance inst;
inst= bh.assertNonProblem("f()", 1);
assertSame(f1, inst.getTemplateDefinition());
@ -6264,10 +6264,10 @@ public class AST2CPPSpecTest extends AST2SpecBaseTest {
parse(getAboveComment(), ParserLanguage.CPP, true, 0);
}
// template<class T> void f(T); // declaration
// void g() {
// f("Annemarie"); // call of f<const char*>
// }
// template<class T> void f(T); // declaration
// void g() {
// f("Annemarie"); // call of f<const char*>
// }
public void test14_8_3s6() throws Exception {
parse(getAboveComment(), ParserLanguage.CPP, true, 0);
}
@ -6279,7 +6279,7 @@ public class AST2CPPSpecTest extends AST2SpecBaseTest {
// int t2;
// if (1)
// goto lab;
// } catch(...) { // handler 2
// } catch(...) { // handler 2
// }
// } catch(...) { // handler 1
// }
@ -6770,7 +6770,7 @@ public class AST2CPPSpecTest extends AST2SpecBaseTest {
// template <int I, int J> A<I+J> f/*1*/(A<I>, A<J>); // #1
// template <int K, int L> A<K+L> f/*2*/(A<K>, A<L>); // same as #1
// template <int I, int J> A<I-J> f/*3*/(A<I>, A<J>); // different from #1
public void test14_5_6_1s5() throws Exception {
public void test14_5_6_1s5() throws Exception {
final String content= getAboveComment();
IASTTranslationUnit tu= parse(content, ParserLanguage.CPP, true, 0);
BindingAssertionHelper bh= new BindingAssertionHelper(content, true);
@ -6784,7 +6784,7 @@ public class AST2CPPSpecTest extends AST2SpecBaseTest {
// template <int I> class A;
// template <int I, int J> void f/*1*/(A<I+J>); // #1
// template <int K, int L> void f/*2*/(A<K+L>); // same as #1
public void test14_5_6_1s6() throws Exception {
public void test14_5_6_1s6() throws Exception {
final String content= getAboveComment();
IASTTranslationUnit tu= parse(content, ParserLanguage.CPP, true, 0);
BindingAssertionHelper bh= new BindingAssertionHelper(content, true);
@ -6833,7 +6833,7 @@ public class AST2CPPSpecTest extends AST2SpecBaseTest {
// this->A::operator=(s); // wellformed
// return *this;
// }
public void test12s1() throws Exception {
public void test12s1() throws Exception {
parse(getAboveComment(), ParserLanguage.CPP, true, 0);
}
@ -6854,7 +6854,7 @@ public class AST2CPPSpecTest extends AST2SpecBaseTest {
// // C/B/D/A sublattice is fully constructed
// { }
// };
public void test12_7s2() throws Exception {
public void test12_7s2() throws Exception {
parse(getAboveComment(), ParserLanguage.CPP, true, 0);
}
@ -6950,7 +6950,7 @@ public class AST2CPPSpecTest extends AST2SpecBaseTest {
// new (int(*p)) int; // newplacement expression
// new (int(*[x])); // new typeid
// }
public void test8_2s3() throws Exception {
public void test8_2s3() throws Exception {
parse(getAboveComment(), ParserLanguage.CPP, false, 0);
}
@ -6960,7 +6960,7 @@ public class AST2CPPSpecTest extends AST2SpecBaseTest {
// {
// f<int()>(); // int() is a typeid:call the first f()
// }
public void test14_3s2() throws Exception {
public void test14_3s2() throws Exception {
parse(getAboveComment(), ParserLanguage.CPP, true, 0);
}
}

View file

@ -15,7 +15,7 @@ import org.eclipse.cdt.core.dom.ast.IASTDeclSpecifier;
/**
* C++ adds additional modifiers and types for decl specifier sequence.
*
*
* @noextend This interface is not intended to be extended by clients.
* @noimplement This interface is not intended to be implemented by clients.
*/
@ -23,49 +23,49 @@ public interface ICPPASTDeclSpecifier extends IASTDeclSpecifier {
// A declaration in C++ can be a friend declaration
/**
* Is this a friend declaration?
*
*
* @return boolean
*/
public boolean isFriend();
/**
* Sets this to be a friend declaration true/false.
*
*
* @param value the new value
*/
public void setFriend(boolean value);
/**
* Is this a virtual function?
*
*
* @return boolean
*/
public boolean isVirtual();
/**
* Sets this declaration to be virtual.
*
*
* @param value the new value
*/
public void setVirtual(boolean value);
/**
* Is this an explicit constructor?
*
*
* @return boolean
*/
public boolean isExplicit();
/**
* Sets this to be an explicit constructor.
*
*
* @param value the new value
*/
public void setExplicit(boolean value);
/**
* Is this a constexpr
*
*
* @return boolean
* @since 5.4
*/
@ -73,7 +73,7 @@ public interface ICPPASTDeclSpecifier extends IASTDeclSpecifier {
/**
* Sets this to be constexpr.
*
*
* @param value the new value
* @since 5.4
*/
@ -84,7 +84,7 @@ public interface ICPPASTDeclSpecifier extends IASTDeclSpecifier {
*/
@Override
public ICPPASTDeclSpecifier copy();
/**
* @since 5.3
*/

View file

@ -24,17 +24,17 @@ public interface IToken {
public int getLength();
public int getEndOffset();
public IToken getNext();
public void setNext(IToken t);
public void setType(int i);
// Token types
int FIRST_RESERVED_PREPROCESSOR= -200;
int LAST_RESERVED_PREPROCESSOR= -101;
int FIRST_RESERVED_SCANNER= -100;
int LAST_RESERVED_SCANNER= -1;
/** @since 5.2 */
/** @since 5.2 */
int t_PRAGMA = 5200;
int tIDENTIFIER = 1;
@ -90,11 +90,11 @@ public interface IToken {
int tDIVASSIGN = 51;
int tDIV = 52;
/**
* @see IScanner#setSplitShiftROperator(boolean)
* @since 5.2
* @see IScanner#setSplitShiftROperator(boolean)
* @since 5.2
*/
int tGT_in_SHIFTR= 5201;
/** @deprecated use {@link #tAND} */ @Deprecated int t_and = 54;
/** @deprecated use {@link #tAMPERASSIGN} */ @Deprecated int t_and_eq = 55;
int t_asm = 56;
@ -106,9 +106,9 @@ public interface IToken {
int t_case = 62;
int t_catch = 63;
int t_char = 64;
/** @since 5.2 */
/** @since 5.2 */
int t_char16_t= 5202;
/** @since 5.2 */
/** @since 5.2 */
int t_char32_t= 5203;
int t_class = 65;
/** @deprecated use {@link #tBITCOMPLEMENT} */ @Deprecated int tCOMPL= tBITCOMPLEMENT;
@ -118,7 +118,7 @@ public interface IToken {
/** @since 5.4 */ int t_constexpr = 5400;
int t_const_cast = 69;
int t_continue = 70;
/** @since 5.2 */
/** @since 5.2 */
int t_decltype= 5204;
int t_default = 71;
int t_delete = 72;
@ -158,7 +158,7 @@ public interface IToken {
int t_short = 104;
int t_sizeof = 105;
int t_static = 106;
/** @since 5.2 */
/** @since 5.2 */
int t_static_assert = 5205;
int t_static_cast = 107;
int t_signed = 108;
@ -182,24 +182,24 @@ public interface IToken {
int t_wchar_t = 125;
int t_while = 126;
/** @deprecated use {@link #tXOR} */ @Deprecated int t_xor = 127;
/** @deprecated use {@link #tXORASSIGN} */ @Deprecated int t_xor_eq = 128;
/** @deprecated use {@link #tXORASSIGN} */ @Deprecated int t_xor_eq = 128;
int tFLOATINGPT = 129;
int tSTRING = 130;
int tLSTRING = 131;
/** @since 5.1 */ int tUTF16STRING = 5000;
/** @since 5.1 */ int tUTF32STRING = 5001;
int tCHAR = 132;
int tLCHAR = 133;
/** @since 5.1 */ int tUTF16CHAR = 5002;
/** @since 5.1 */ int tUTF32CHAR = 5003;
int t__Bool = 134;
int t__Complex = 135;
int t__Imaginary = 136;
int t_restrict = 137;
/** @deprecated don't use it */ @Deprecated int tMACROEXP = 138;
/** @deprecated don't use it */ @Deprecated int tMACROEXP = 138;
int tPOUND= 138;
int tPOUNDPOUND = 139;
int tCOMPLETION = 140;
@ -210,14 +210,14 @@ public interface IToken {
/** @since 5.1 */ int tINACTIVE_CODE_START= 145;
/** @since 5.1 */ int tINACTIVE_CODE_SEPARATOR= 146;
/** @since 5.1 */ int tINACTIVE_CODE_END = 147;
int FIRST_RESERVED_IGCCToken = 150;
int LAST_RESERVED_IGCCToken = 199;
int FIRST_RESERVED_IExtensionToken = 243;
int LAST_RESERVED_IExtensionToken = 299;
/**
* @noreference This method is not intended to be referenced by clients.
*/

View file

@ -24,288 +24,288 @@ public class Keywords {
/** @since 5.4 */
public static final String ALIGNAS = "alignas";
public static final String ALIGNOF = "alignof";
public static final String TYPEOF = "typeof";
public static final String _BOOL = "_Bool";
public static final String _COMPLEX = "_Complex";
public static final String _IMAGINARY = "_Imaginary";
public static final String AND = "and";
public static final String AND_EQ = "and_eq";
public static final String ASM = "asm";
public static final String AUTO = "auto";
public static final String BITAND = "bitand";
public static final String BITOR = "bitor";
public static final String BOOL = "bool";
public static final String BREAK = "break";
public static final String CASE = "case";
public static final String CATCH = "catch";
public static final String CHAR = "char";
public static final String TYPEOF = "typeof";
public static final String _BOOL = "_Bool";
public static final String _COMPLEX = "_Complex";
public static final String _IMAGINARY = "_Imaginary";
public static final String AND = "and";
public static final String AND_EQ = "and_eq";
public static final String ASM = "asm";
public static final String AUTO = "auto";
public static final String BITAND = "bitand";
public static final String BITOR = "bitor";
public static final String BOOL = "bool";
public static final String BREAK = "break";
public static final String CASE = "case";
public static final String CATCH = "catch";
public static final String CHAR = "char";
/** @since 5.2 */
public static final String CHAR16_T = "char16_t";
public static final String CHAR16_T = "char16_t";
/** @since 5.2 */
public static final String CHAR32_T = "char32_t";
public static final String CLASS = "class";
public static final String COMPL = "compl";
public static final String CONST = "const";
public static final String CHAR32_T = "char32_t";
public static final String CLASS = "class";
public static final String COMPL = "compl";
public static final String CONST = "const";
/** @since 5.4 */
public static final String CONSTEXPR = "constexpr";
public static final String CONST_CAST = "const_cast";
public static final String CONTINUE = "continue";
public static final String CONST_CAST = "const_cast";
public static final String CONTINUE = "continue";
/** @since 5.2 */
public static final String DECLTYPE = "decltype";
public static final String DEFAULT = "default";
public static final String DELETE = "delete";
public static final String DO = "do";
public static final String DOUBLE = "double";
public static final String DYNAMIC_CAST = "dynamic_cast";
public static final String ELSE = "else";
public static final String ENUM = "enum";
public static final String EXPLICIT = "explicit";
public static final String EXPORT = "export";
public static final String EXTERN = "extern";
public static final String FALSE = "false";
public static final String FLOAT = "float";
public static final String FOR = "for";
public static final String FRIEND = "friend";
public static final String GOTO = "goto";
public static final String IF = "if";
public static final String INLINE = "inline";
public static final String INT = "int";
public static final String LONG = "long";
public static final String LONG_LONG = "long long";
public static final String MUTABLE = "mutable";
public static final String NAMESPACE = "namespace";
public static final String DECLTYPE = "decltype";
public static final String DEFAULT = "default";
public static final String DELETE = "delete";
public static final String DO = "do";
public static final String DOUBLE = "double";
public static final String DYNAMIC_CAST = "dynamic_cast";
public static final String ELSE = "else";
public static final String ENUM = "enum";
public static final String EXPLICIT = "explicit";
public static final String EXPORT = "export";
public static final String EXTERN = "extern";
public static final String FALSE = "false";
public static final String FLOAT = "float";
public static final String FOR = "for";
public static final String FRIEND = "friend";
public static final String GOTO = "goto";
public static final String IF = "if";
public static final String INLINE = "inline";
public static final String INT = "int";
public static final String LONG = "long";
public static final String LONG_LONG = "long long";
public static final String MUTABLE = "mutable";
public static final String NAMESPACE = "namespace";
/** @since 5.4 */
public static final String NULLPTR = "nullptr";
public static final String NEW = "new";
public static final String NEW = "new";
/** @since 5.4 */
public static final String NOEXCEPT = "noexcept";
public static final String NOT = "not";
public static final String NOT_EQ = "not_eq";
public static final String OPERATOR = "operator";
public static final String OR = "or";
public static final String OR_EQ = "or_eq";
public static final String PRIVATE = "private";
public static final String PROTECTED = "protected";
public static final String PUBLIC = "public";
public static final String REGISTER = "register";
public static final String REINTERPRET_CAST = "reinterpret_cast";
public static final String RESTRICT = "restrict";
public static final String RETURN = "return";
public static final String SHORT = "short";
public static final String SIGNED = "signed";
public static final String SIZEOF = "sizeof";
public static final String STATIC = "static";
public static final String NOT_EQ = "not_eq";
public static final String OPERATOR = "operator";
public static final String OR = "or";
public static final String OR_EQ = "or_eq";
public static final String PRIVATE = "private";
public static final String PROTECTED = "protected";
public static final String PUBLIC = "public";
public static final String REGISTER = "register";
public static final String REINTERPRET_CAST = "reinterpret_cast";
public static final String RESTRICT = "restrict";
public static final String RETURN = "return";
public static final String SHORT = "short";
public static final String SIGNED = "signed";
public static final String SIZEOF = "sizeof";
public static final String STATIC = "static";
/** @since 5.2 */
public static final String STATIC_ASSERT = "static_assert";
public static final String STATIC_CAST = "static_cast";
public static final String STRUCT = "struct";
public static final String SWITCH = "switch";
public static final String TEMPLATE = "template";
public static final String THIS = "this";
public static final String STATIC_ASSERT = "static_assert";
public static final String STATIC_CAST = "static_cast";
public static final String STRUCT = "struct";
public static final String SWITCH = "switch";
public static final String TEMPLATE = "template";
public static final String THIS = "this";
/** @since 5.4 */
public static final String THREAD_LOCAL = "thread_local";
public static final String THROW = "throw";
public static final String TRUE = "true";
public static final String TRY = "try";
public static final String TYPEDEF = "typedef";
public static final String TYPEID = "typeid";
public static final String TYPENAME = "typename";
public static final String UNION = "union";
public static final String UNSIGNED = "unsigned";
public static final String USING = "using";
public static final String VIRTUAL = "virtual";
public static final String VOID = "void";
public static final String VOLATILE = "volatile";
public static final String WCHAR_T = "wchar_t";
public static final String WHILE = "while";
public static final String XOR = "xor";
public static final String XOR_EQ = "xor_eq";
public static final String THREAD_LOCAL = "thread_local";
public static final String THROW = "throw";
public static final String TRUE = "true";
public static final String TRY = "try";
public static final String TYPEDEF = "typedef";
public static final String TYPEID = "typeid";
public static final String TYPENAME = "typename";
public static final String UNION = "union";
public static final String UNSIGNED = "unsigned";
public static final String USING = "using";
public static final String VIRTUAL = "virtual";
public static final String VOID = "void";
public static final String VOLATILE = "volatile";
public static final String WCHAR_T = "wchar_t";
public static final String WHILE = "while";
public static final String XOR = "xor";
public static final String XOR_EQ = "xor_eq";
public static final char[] c_BOOL = "_Bool".toCharArray();
public static final char[] c_COMPLEX = "_Complex".toCharArray();
public static final char[] c_IMAGINARY = "_Imaginary".toCharArray();
public static final char[] c_BOOL = "_Bool".toCharArray();
public static final char[] c_COMPLEX = "_Complex".toCharArray();
public static final char[] c_IMAGINARY = "_Imaginary".toCharArray();
/** @since 5.4 */
public static final char[] cALIGNAS = "alignas".toCharArray();
public static final char[] cALIGNAS = "alignas".toCharArray();
/** @since 5.3 */
public static final char[] cALIGNOF = "alignof".toCharArray();
public static final char[] cAND = "and".toCharArray();
public static final char[] cAND_EQ = "and_eq".toCharArray();
public static final char[] cASM = "asm".toCharArray();
public static final char[] cAUTO = "auto".toCharArray();
public static final char[] cBITAND = "bitand".toCharArray();
public static final char[] cBITOR = "bitor".toCharArray();
public static final char[] cBOOL = "bool".toCharArray();
public static final char[] cBREAK = "break".toCharArray();
public static final char[] cCASE = "case".toCharArray();
public static final char[] cCATCH = "catch".toCharArray();
public static final char[] cCHAR = "char".toCharArray();
public static final char[] cALIGNOF = "alignof".toCharArray();
public static final char[] cAND = "and".toCharArray();
public static final char[] cAND_EQ = "and_eq".toCharArray();
public static final char[] cASM = "asm".toCharArray();
public static final char[] cAUTO = "auto".toCharArray();
public static final char[] cBITAND = "bitand".toCharArray();
public static final char[] cBITOR = "bitor".toCharArray();
public static final char[] cBOOL = "bool".toCharArray();
public static final char[] cBREAK = "break".toCharArray();
public static final char[] cCASE = "case".toCharArray();
public static final char[] cCATCH = "catch".toCharArray();
public static final char[] cCHAR = "char".toCharArray();
/** @since 5.2 */
public static final char[] cCHAR16_T = CHAR16_T.toCharArray();
public static final char[] cCHAR16_T = CHAR16_T.toCharArray();
/** @since 5.2 */
public static final char[] cCHAR32_T = CHAR32_T.toCharArray();
public static final char[] cCLASS = "class".toCharArray();
public static final char[] cCOMPL = "compl".toCharArray();
public static final char[] cCONST = "const".toCharArray();
public static final char[] cCHAR32_T = CHAR32_T.toCharArray();
public static final char[] cCLASS = "class".toCharArray();
public static final char[] cCOMPL = "compl".toCharArray();
public static final char[] cCONST = "const".toCharArray();
/** @since 5.4 */
public static final char[] cCONSTEXPR = "constexpr".toCharArray();
public static final char[] cCONST_CAST = "const_cast".toCharArray();
public static final char[] cCONTINUE = "continue".toCharArray();
public static final char[] cDEFAULT = "default".toCharArray();
public static final char[] cCONSTEXPR = "constexpr".toCharArray();
public static final char[] cCONST_CAST = "const_cast".toCharArray();
public static final char[] cCONTINUE = "continue".toCharArray();
public static final char[] cDEFAULT = "default".toCharArray();
/** @since 5.2 */
public static final char[] cDECLTYPE = DECLTYPE.toCharArray();
public static final char[] cDELETE = "delete".toCharArray();
public static final char[] cDO = "do".toCharArray();
public static final char[] cDOUBLE = "double".toCharArray();
public static final char[] cDYNAMIC_CAST = "dynamic_cast".toCharArray();
public static final char[] cELSE = "else".toCharArray();
public static final char[] cENUM = "enum".toCharArray();
public static final char[] cEXPLICIT = "explicit".toCharArray();
public static final char[] cEXPORT = "export".toCharArray();
public static final char[] cEXTERN = "extern".toCharArray();
public static final char[] cFALSE = "false".toCharArray();
public static final char[] cFLOAT = "float".toCharArray();
public static final char[] cFOR = "for".toCharArray();
public static final char[] cFRIEND = "friend".toCharArray();
public static final char[] cGOTO = "goto".toCharArray();
public static final char[] cIF = "if".toCharArray();
public static final char[] cINLINE = "inline".toCharArray();
public static final char[] cINT = "int".toCharArray();
public static final char[] cLONG = "long".toCharArray();
public static final char[] cMUTABLE = "mutable".toCharArray();
public static final char[] cNAMESPACE = "namespace".toCharArray();
public static final char[] cNEW = "new".toCharArray();
public static final char[] cDECLTYPE = DECLTYPE.toCharArray();
public static final char[] cDELETE = "delete".toCharArray();
public static final char[] cDO = "do".toCharArray();
public static final char[] cDOUBLE = "double".toCharArray();
public static final char[] cDYNAMIC_CAST = "dynamic_cast".toCharArray();
public static final char[] cELSE = "else".toCharArray();
public static final char[] cENUM = "enum".toCharArray();
public static final char[] cEXPLICIT = "explicit".toCharArray();
public static final char[] cEXPORT = "export".toCharArray();
public static final char[] cEXTERN = "extern".toCharArray();
public static final char[] cFALSE = "false".toCharArray();
public static final char[] cFLOAT = "float".toCharArray();
public static final char[] cFOR = "for".toCharArray();
public static final char[] cFRIEND = "friend".toCharArray();
public static final char[] cGOTO = "goto".toCharArray();
public static final char[] cIF = "if".toCharArray();
public static final char[] cINLINE = "inline".toCharArray();
public static final char[] cINT = "int".toCharArray();
public static final char[] cLONG = "long".toCharArray();
public static final char[] cMUTABLE = "mutable".toCharArray();
public static final char[] cNAMESPACE = "namespace".toCharArray();
public static final char[] cNEW = "new".toCharArray();
/** @since 5.4 */
public static final char[] cNULLPTR = NULLPTR.toCharArray();
public static final char[] cNULLPTR = NULLPTR.toCharArray();
/** @since 5.4 */
public static final char[] cNOEXCEPT = "noexcept".toCharArray();
public static final char[] cNOT = "not".toCharArray();
public static final char[] cNOT_EQ = "not_eq".toCharArray();
public static final char[] cOPERATOR = "operator".toCharArray();
public static final char[] cOR = "or".toCharArray();
public static final char[] cOR_EQ = "or_eq".toCharArray();
public static final char[] cPRIVATE = "private".toCharArray();
public static final char[] cPROTECTED = "protected".toCharArray();
public static final char[] cPUBLIC = "public".toCharArray();
public static final char[] cREGISTER = "register".toCharArray();
public static final char[] cREINTERPRET_CAST = "reinterpret_cast".toCharArray();
public static final char[] cRESTRICT = "restrict".toCharArray();
public static final char[] cRETURN = "return".toCharArray();
public static final char[] cSHORT = "short".toCharArray();
public static final char[] cSIGNED = "signed".toCharArray();
public static final char[] cSIZEOF = "sizeof".toCharArray();
public static final char[] cNOEXCEPT = "noexcept".toCharArray();
public static final char[] cNOT = "not".toCharArray();
public static final char[] cNOT_EQ = "not_eq".toCharArray();
public static final char[] cOPERATOR = "operator".toCharArray();
public static final char[] cOR = "or".toCharArray();
public static final char[] cOR_EQ = "or_eq".toCharArray();
public static final char[] cPRIVATE = "private".toCharArray();
public static final char[] cPROTECTED = "protected".toCharArray();
public static final char[] cPUBLIC = "public".toCharArray();
public static final char[] cREGISTER = "register".toCharArray();
public static final char[] cREINTERPRET_CAST = "reinterpret_cast".toCharArray();
public static final char[] cRESTRICT = "restrict".toCharArray();
public static final char[] cRETURN = "return".toCharArray();
public static final char[] cSHORT = "short".toCharArray();
public static final char[] cSIGNED = "signed".toCharArray();
public static final char[] cSIZEOF = "sizeof".toCharArray();
/** @since 5.3 */
public static final char[] cSIZEOFPACK= "sizeof...".toCharArray();
public static final char[] cSTATIC = "static".toCharArray();
public static final char[] cSIZEOFPACK= "sizeof...".toCharArray();
public static final char[] cSTATIC = "static".toCharArray();
/** @since 5.2 */
public static final char[] cSTATIC_ASSERT = STATIC_ASSERT.toCharArray();
public static final char[] cSTATIC_CAST = "static_cast".toCharArray();
public static final char[] cSTRUCT = "struct".toCharArray();
public static final char[] cSWITCH = "switch".toCharArray();
public static final char[] cTEMPLATE = "template".toCharArray();
public static final char[] cTHIS = "this".toCharArray();
public static final char[] cSTATIC_ASSERT = STATIC_ASSERT.toCharArray();
public static final char[] cSTATIC_CAST = "static_cast".toCharArray();
public static final char[] cSTRUCT = "struct".toCharArray();
public static final char[] cSWITCH = "switch".toCharArray();
public static final char[] cTEMPLATE = "template".toCharArray();
public static final char[] cTHIS = "this".toCharArray();
/** @since 5.4 */
public static final char[] cTHREAD_LOCAL = "thread_local".toCharArray();
public static final char[] cTHROW = "throw".toCharArray();
public static final char[] cTRUE = "true".toCharArray();
public static final char[] cTRY = "try".toCharArray();
public static final char[] cTYPEDEF = "typedef".toCharArray();
public static final char[] cTYPEID = "typeid".toCharArray();
public static final char[] cTYPENAME = "typename".toCharArray();
public static final char[] cUNION = "union".toCharArray();
public static final char[] cUNSIGNED = "unsigned".toCharArray();
public static final char[] cUSING = "using".toCharArray();
public static final char[] cVIRTUAL = "virtual".toCharArray();
public static final char[] cVOID = "void".toCharArray();
public static final char[] cVOLATILE = "volatile".toCharArray();
public static final char[] cWCHAR_T = "wchar_t".toCharArray();
public static final char[] cWHILE = "while".toCharArray();
public static final char[] cXOR = "xor".toCharArray();
public static final char[] cXOR_EQ = "xor_eq".toCharArray();
public static final char[] cpCOLONCOLON = "::".toCharArray();
public static final char[] cpCOLON = ":".toCharArray();
public static final char[] cpSEMI = ";".toCharArray();
public static final char[] cpCOMMA = ",".toCharArray();
public static final char[] cpQUESTION = "?".toCharArray();
public static final char[] cpLPAREN = "(".toCharArray();
public static final char[] cpRPAREN = ")".toCharArray();
public static final char[] cpLBRACKET = "[".toCharArray();
public static final char[] cpRBRACKET = "]".toCharArray();
public static final char[] cpLBRACE = "{".toCharArray();
public static final char[] cpRBRACE = "}".toCharArray();
public static final char[] cpPLUSASSIGN = "+=".toCharArray();
public static final char[] cpINCR = "++".toCharArray();
public static final char[] cpPLUS = "+".toCharArray();
public static final char[] cpMINUSASSIGN = "-=".toCharArray();
public static final char[] cpDECR = "--".toCharArray();
public static final char[] cpARROWSTAR = "->*".toCharArray();
public static final char[] cpARROW = "->".toCharArray();
public static final char[] cpMINUS = "-".toCharArray();
public static final char[] cpSTARASSIGN = "*=".toCharArray();
public static final char[] cpSTAR = "*".toCharArray();
public static final char[] cpMODASSIGN = "%=".toCharArray();
public static final char[] cpMOD = "%".toCharArray();
public static final char[] cpXORASSIGN = "^=".toCharArray();
public static final char[] cpXOR = "^".toCharArray();
public static final char[] cpAMPERASSIGN = "&=".toCharArray();
public static final char[] cpAND = "&&".toCharArray();
public static final char[] cpAMPER = "&".toCharArray();
public static final char[] cpBITORASSIGN = "|=".toCharArray();
public static final char[] cpOR = "||".toCharArray();
public static final char[] cpBITOR = "|".toCharArray();
public static final char[] cpCOMPL = "~".toCharArray();
public static final char[] cpNOTEQUAL = "!=".toCharArray();
public static final char[] cpNOT = "!".toCharArray();
public static final char[] cpEQUAL = "==".toCharArray();
public static final char[] cpASSIGN ="=".toCharArray();
public static final char[] cpSHIFTL = "<<".toCharArray();
public static final char[] cpLTEQUAL = "<=".toCharArray();
public static final char[] cpLT = "<".toCharArray();
public static final char[] cpSHIFTRASSIGN = ">>=".toCharArray();
public static final char[] cpSHIFTR = ">>".toCharArray();
public static final char[] cpGTEQUAL = ">=".toCharArray();
public static final char[] cpGT = ">".toCharArray();
public static final char[] cpSHIFTLASSIGN = "<<=".toCharArray();
public static final char[] cpELLIPSIS = "...".toCharArray();
public static final char[] cpDOTSTAR = ".*".toCharArray();
public static final char[] cpDOT = ".".toCharArray();
public static final char[] cpDIVASSIGN = "/=".toCharArray();
public static final char[] cpDIV = "/".toCharArray();
public static final char[] cpPOUND = "#".toCharArray();
public static final char[] cpPOUNDPOUND = "##".toCharArray();
public static final char[] cTHREAD_LOCAL = "thread_local".toCharArray();
public static final char[] cTHROW = "throw".toCharArray();
public static final char[] cTRUE = "true".toCharArray();
public static final char[] cTRY = "try".toCharArray();
public static final char[] cTYPEDEF = "typedef".toCharArray();
public static final char[] cTYPEID = "typeid".toCharArray();
public static final char[] cTYPENAME = "typename".toCharArray();
public static final char[] cUNION = "union".toCharArray();
public static final char[] cUNSIGNED = "unsigned".toCharArray();
public static final char[] cUSING = "using".toCharArray();
public static final char[] cVIRTUAL = "virtual".toCharArray();
public static final char[] cVOID = "void".toCharArray();
public static final char[] cVOLATILE = "volatile".toCharArray();
public static final char[] cWCHAR_T = "wchar_t".toCharArray();
public static final char[] cWHILE = "while".toCharArray();
public static final char[] cXOR = "xor".toCharArray();
public static final char[] cXOR_EQ = "xor_eq".toCharArray();
public static final char[] cpCOLONCOLON = "::".toCharArray();
public static final char[] cpCOLON = ":".toCharArray();
public static final char[] cpSEMI = ";".toCharArray();
public static final char[] cpCOMMA = ",".toCharArray();
public static final char[] cpQUESTION = "?".toCharArray();
public static final char[] cpLPAREN = "(".toCharArray();
public static final char[] cpRPAREN = ")".toCharArray();
public static final char[] cpLBRACKET = "[".toCharArray();
public static final char[] cpRBRACKET = "]".toCharArray();
public static final char[] cpLBRACE = "{".toCharArray();
public static final char[] cpRBRACE = "}".toCharArray();
public static final char[] cpPLUSASSIGN = "+=".toCharArray();
public static final char[] cpINCR = "++".toCharArray();
public static final char[] cpPLUS = "+".toCharArray();
public static final char[] cpMINUSASSIGN = "-=".toCharArray();
public static final char[] cpDECR = "--".toCharArray();
public static final char[] cpARROWSTAR = "->*".toCharArray();
public static final char[] cpARROW = "->".toCharArray();
public static final char[] cpMINUS = "-".toCharArray();
public static final char[] cpSTARASSIGN = "*=".toCharArray();
public static final char[] cpSTAR = "*".toCharArray();
public static final char[] cpMODASSIGN = "%=".toCharArray();
public static final char[] cpMOD = "%".toCharArray();
public static final char[] cpXORASSIGN = "^=".toCharArray();
public static final char[] cpXOR = "^".toCharArray();
public static final char[] cpAMPERASSIGN = "&=".toCharArray();
public static final char[] cpAND = "&&".toCharArray();
public static final char[] cpAMPER = "&".toCharArray();
public static final char[] cpBITORASSIGN = "|=".toCharArray();
public static final char[] cpOR = "||".toCharArray();
public static final char[] cpBITOR = "|".toCharArray();
public static final char[] cpCOMPL = "~".toCharArray();
public static final char[] cpNOTEQUAL = "!=".toCharArray();
public static final char[] cpNOT = "!".toCharArray();
public static final char[] cpEQUAL = "==".toCharArray();
public static final char[] cpASSIGN ="=".toCharArray();
public static final char[] cpSHIFTL = "<<".toCharArray();
public static final char[] cpLTEQUAL = "<=".toCharArray();
public static final char[] cpLT = "<".toCharArray();
public static final char[] cpSHIFTRASSIGN = ">>=".toCharArray();
public static final char[] cpSHIFTR = ">>".toCharArray();
public static final char[] cpGTEQUAL = ">=".toCharArray();
public static final char[] cpGT = ">".toCharArray();
public static final char[] cpSHIFTLASSIGN = "<<=".toCharArray();
public static final char[] cpELLIPSIS = "...".toCharArray();
public static final char[] cpDOTSTAR = ".*".toCharArray();
public static final char[] cpDOT = ".".toCharArray();
public static final char[] cpDIVASSIGN = "/=".toCharArray();
public static final char[] cpDIV = "/".toCharArray();
public static final char[] cpPOUND = "#".toCharArray();
public static final char[] cpPOUNDPOUND = "##".toCharArray();
// gcc extensions
public static final char[] cpMIN = "<?".toCharArray();
public static final char[] cpMAX = ">?".toCharArray();
// preprocessor keywords
public static final char[] cIFDEF = "ifdef".toCharArray();
public static final char[] cIFNDEF = "ifndef".toCharArray();
public static final char[] cELIF = "elif".toCharArray();
public static final char[] cENDIF = "endif".toCharArray();
public static final char[] cINCLUDE = "include".toCharArray();
public static final char[] cDEFINE = "define".toCharArray();
public static final char[] cUNDEF = "undef".toCharArray();
public static final char[] cERROR = "error".toCharArray();
public static final char[] cPRAGMA = "pragma".toCharArray();
public static final char[] cLINE = "line".toCharArray();
public static final char[] cDEFINED= "defined".toCharArray();
/** @since 5.2*/
public static final char[] _Pragma= "_Pragma".toCharArray();
public static final char[] cVA_ARGS= "__VA_ARGS__".toCharArray();
public static final char[] cpMIN = "<?".toCharArray();
public static final char[] cpMAX = ">?".toCharArray();
// preprocessor keywords
public static final char[] cIFDEF = "ifdef".toCharArray();
public static final char[] cIFNDEF = "ifndef".toCharArray();
public static final char[] cELIF = "elif".toCharArray();
public static final char[] cENDIF = "endif".toCharArray();
public static final char[] cINCLUDE = "include".toCharArray();
public static final char[] cDEFINE = "define".toCharArray();
public static final char[] cUNDEF = "undef".toCharArray();
public static final char[] cERROR = "error".toCharArray();
public static final char[] cPRAGMA = "pragma".toCharArray();
public static final char[] cLINE = "line".toCharArray();
public static final char[] cDEFINED= "defined".toCharArray();
/** @since 5.2*/
public static final char[] _Pragma= "_Pragma".toCharArray();
public static final char[] cVA_ARGS= "__VA_ARGS__".toCharArray();
// preprocessor extensions (supported by GCC)
public static final char[] cINCLUDE_NEXT = "include_next".toCharArray();
public static final char[] cIMPORT = "import".toCharArray();
public static final char[] cIDENT = "ident".toCharArray();
public static final char[] cSCCS = "sccs".toCharArray();
public static final char[] cWARNING = "warning".toCharArray();
public static final char[] cASSERT = "assert".toCharArray();
public static final char[] cUNASSERT = "unassert".toCharArray();
public static final char[] cINCLUDE_NEXT = "include_next".toCharArray();
public static final char[] cIMPORT = "import".toCharArray();
public static final char[] cIDENT = "ident".toCharArray();
public static final char[] cSCCS = "sccs".toCharArray();
public static final char[] cWARNING = "warning".toCharArray();
public static final char[] cASSERT = "assert".toCharArray();
public static final char[] cUNASSERT = "unassert".toCharArray();
public static void addKeywordsC(CharArrayIntMap kw) {
addCommon(kw);
addC(kw);
@ -320,114 +320,114 @@ public class Keywords {
words.put(Keywords._Pragma, IToken.t_PRAGMA);
words.put(Keywords.cAUTO, IToken.t_auto);
words.put(Keywords.cBREAK, IToken.t_break);
words.put(Keywords.cCASE, IToken.t_case);
words.put(Keywords.cCHAR, IToken.t_char);
words.put(Keywords.cCONST, IToken.t_const);
words.put(Keywords.cCONTINUE, IToken.t_continue);
words.put(Keywords.cDEFAULT, IToken.t_default);
words.put(Keywords.cDO, IToken.t_do);
words.put(Keywords.cDOUBLE, IToken.t_double);
words.put(Keywords.cELSE, IToken.t_else);
words.put(Keywords.cENUM, IToken.t_enum);
words.put(Keywords.cEXTERN, IToken.t_extern);
words.put(Keywords.cFLOAT, IToken.t_float);
words.put(Keywords.cFOR, IToken.t_for);
words.put(Keywords.cGOTO, IToken.t_goto);
words.put(Keywords.cIF, IToken.t_if);
words.put(Keywords.cINLINE, IToken.t_inline);
words.put(Keywords.cINT, IToken.t_int);
words.put(Keywords.cLONG, IToken.t_long);
words.put(Keywords.cREGISTER, IToken.t_register);
words.put(Keywords.cRETURN, IToken.t_return);
words.put(Keywords.cSHORT, IToken.t_short);
words.put(Keywords.cSIGNED, IToken.t_signed);
words.put(Keywords.cSIZEOF, IToken.t_sizeof);
words.put(Keywords.cSTATIC, IToken.t_static);
words.put(Keywords.cSTRUCT, IToken.t_struct);
words.put(Keywords.cSWITCH, IToken.t_switch);
words.put(Keywords.cTYPEDEF, IToken.t_typedef);
words.put(Keywords.cUNION, IToken.t_union);
words.put(Keywords.cUNSIGNED, IToken.t_unsigned);
words.put(Keywords.cVOID, IToken.t_void);
words.put(Keywords.cVOLATILE, IToken.t_volatile);
words.put(Keywords.cWHILE, IToken.t_while);
words.put(Keywords.cASM, IToken.t_asm);
words.put(Keywords.cCASE, IToken.t_case);
words.put(Keywords.cCHAR, IToken.t_char);
words.put(Keywords.cCONST, IToken.t_const);
words.put(Keywords.cCONTINUE, IToken.t_continue);
words.put(Keywords.cDEFAULT, IToken.t_default);
words.put(Keywords.cDO, IToken.t_do);
words.put(Keywords.cDOUBLE, IToken.t_double);
words.put(Keywords.cELSE, IToken.t_else);
words.put(Keywords.cENUM, IToken.t_enum);
words.put(Keywords.cEXTERN, IToken.t_extern);
words.put(Keywords.cFLOAT, IToken.t_float);
words.put(Keywords.cFOR, IToken.t_for);
words.put(Keywords.cGOTO, IToken.t_goto);
words.put(Keywords.cIF, IToken.t_if);
words.put(Keywords.cINLINE, IToken.t_inline);
words.put(Keywords.cINT, IToken.t_int);
words.put(Keywords.cLONG, IToken.t_long);
words.put(Keywords.cREGISTER, IToken.t_register);
words.put(Keywords.cRETURN, IToken.t_return);
words.put(Keywords.cSHORT, IToken.t_short);
words.put(Keywords.cSIGNED, IToken.t_signed);
words.put(Keywords.cSIZEOF, IToken.t_sizeof);
words.put(Keywords.cSTATIC, IToken.t_static);
words.put(Keywords.cSTRUCT, IToken.t_struct);
words.put(Keywords.cSWITCH, IToken.t_switch);
words.put(Keywords.cTYPEDEF, IToken.t_typedef);
words.put(Keywords.cUNION, IToken.t_union);
words.put(Keywords.cUNSIGNED, IToken.t_unsigned);
words.put(Keywords.cVOID, IToken.t_void);
words.put(Keywords.cVOLATILE, IToken.t_volatile);
words.put(Keywords.cWHILE, IToken.t_while);
words.put(Keywords.cASM, IToken.t_asm);
}
// ANSI C keywords
private static void addC(CharArrayIntMap ckeywords) {
ckeywords.put(Keywords.cRESTRICT, IToken.t_restrict);
ckeywords.put(Keywords.c_BOOL, IToken.t__Bool);
ckeywords.put(Keywords.c_COMPLEX, IToken.t__Complex);
ckeywords.put(Keywords.c_IMAGINARY, IToken.t__Imaginary);
ckeywords.put(Keywords.cRESTRICT, IToken.t_restrict);
ckeywords.put(Keywords.c_BOOL, IToken.t__Bool);
ckeywords.put(Keywords.c_COMPLEX, IToken.t__Complex);
ckeywords.put(Keywords.c_IMAGINARY, IToken.t__Imaginary);
}
private static void addCpp(CharArrayIntMap cppkeywords) {
cppkeywords.put(Keywords.cBOOL, IToken.t_bool);
cppkeywords.put(Keywords.cCATCH, IToken.t_catch);
cppkeywords.put(Keywords.cCHAR16_T, IToken.t_char16_t);
cppkeywords.put(Keywords.cCHAR32_T, IToken.t_char32_t);
cppkeywords.put(Keywords.cCLASS, IToken.t_class);
cppkeywords.put(Keywords.cCONSTEXPR, IToken.t_constexpr);
cppkeywords.put(Keywords.cCONST_CAST, IToken.t_const_cast);
cppkeywords.put(Keywords.cBOOL, IToken.t_bool);
cppkeywords.put(Keywords.cCATCH, IToken.t_catch);
cppkeywords.put(Keywords.cCHAR16_T, IToken.t_char16_t);
cppkeywords.put(Keywords.cCHAR32_T, IToken.t_char32_t);
cppkeywords.put(Keywords.cCLASS, IToken.t_class);
cppkeywords.put(Keywords.cCONSTEXPR, IToken.t_constexpr);
cppkeywords.put(Keywords.cCONST_CAST, IToken.t_const_cast);
cppkeywords.put(Keywords.cDECLTYPE, IToken.t_decltype);
cppkeywords.put(Keywords.cDELETE, IToken.t_delete);
cppkeywords.put(Keywords.cDYNAMIC_CAST, IToken.t_dynamic_cast);
cppkeywords.put(Keywords.cEXPLICIT, IToken.t_explicit);
cppkeywords.put(Keywords.cEXPORT, IToken.t_export);
cppkeywords.put(Keywords.cFALSE, IToken.t_false);
cppkeywords.put(Keywords.cFRIEND, IToken.t_friend);
cppkeywords.put(Keywords.cMUTABLE, IToken.t_mutable);
cppkeywords.put(Keywords.cNAMESPACE, IToken.t_namespace);
cppkeywords.put(Keywords.cNEW, IToken.t_new);
cppkeywords.put(Keywords.cDELETE, IToken.t_delete);
cppkeywords.put(Keywords.cDYNAMIC_CAST, IToken.t_dynamic_cast);
cppkeywords.put(Keywords.cEXPLICIT, IToken.t_explicit);
cppkeywords.put(Keywords.cEXPORT, IToken.t_export);
cppkeywords.put(Keywords.cFALSE, IToken.t_false);
cppkeywords.put(Keywords.cFRIEND, IToken.t_friend);
cppkeywords.put(Keywords.cMUTABLE, IToken.t_mutable);
cppkeywords.put(Keywords.cNAMESPACE, IToken.t_namespace);
cppkeywords.put(Keywords.cNEW, IToken.t_new);
cppkeywords.put(Keywords.cNOEXCEPT, IToken.t_noexcept);
cppkeywords.put(Keywords.cNULLPTR, IToken.t_nullptr);
cppkeywords.put(Keywords.cOPERATOR, IToken.t_operator);
cppkeywords.put(Keywords.cPRIVATE, IToken.t_private);
cppkeywords.put(Keywords.cPROTECTED, IToken.t_protected);
cppkeywords.put(Keywords.cPUBLIC, IToken.t_public);
cppkeywords.put(Keywords.cREINTERPRET_CAST, IToken.t_reinterpret_cast);
cppkeywords.put(Keywords.cOPERATOR, IToken.t_operator);
cppkeywords.put(Keywords.cPRIVATE, IToken.t_private);
cppkeywords.put(Keywords.cPROTECTED, IToken.t_protected);
cppkeywords.put(Keywords.cPUBLIC, IToken.t_public);
cppkeywords.put(Keywords.cREINTERPRET_CAST, IToken.t_reinterpret_cast);
cppkeywords.put(Keywords.cSTATIC_ASSERT, IToken.t_static_assert);
cppkeywords.put(Keywords.cSTATIC_CAST, IToken.t_static_cast);
cppkeywords.put(Keywords.cTEMPLATE, IToken.t_template);
cppkeywords.put(Keywords.cTHIS, IToken.t_this);
cppkeywords.put(Keywords.cTHREAD_LOCAL, IToken.t_thread_local);
cppkeywords.put(Keywords.cTHROW, IToken.t_throw);
cppkeywords.put(Keywords.cTRUE, IToken.t_true);
cppkeywords.put(Keywords.cTRY, IToken.t_try);
cppkeywords.put(Keywords.cTYPEID, IToken.t_typeid);
cppkeywords.put(Keywords.cTYPENAME, IToken.t_typename);
cppkeywords.put(Keywords.cUSING, IToken.t_using);
cppkeywords.put(Keywords.cVIRTUAL, IToken.t_virtual);
cppkeywords.put(Keywords.cWCHAR_T, IToken.t_wchar_t);
cppkeywords.put(Keywords.cSTATIC_CAST, IToken.t_static_cast);
cppkeywords.put(Keywords.cTEMPLATE, IToken.t_template);
cppkeywords.put(Keywords.cTHIS, IToken.t_this);
cppkeywords.put(Keywords.cTHREAD_LOCAL, IToken.t_thread_local);
cppkeywords.put(Keywords.cTHROW, IToken.t_throw);
cppkeywords.put(Keywords.cTRUE, IToken.t_true);
cppkeywords.put(Keywords.cTRY, IToken.t_try);
cppkeywords.put(Keywords.cTYPEID, IToken.t_typeid);
cppkeywords.put(Keywords.cTYPENAME, IToken.t_typename);
cppkeywords.put(Keywords.cUSING, IToken.t_using);
cppkeywords.put(Keywords.cVIRTUAL, IToken.t_virtual);
cppkeywords.put(Keywords.cWCHAR_T, IToken.t_wchar_t);
// C++ operator alternative
cppkeywords.put(Keywords.cAND, IToken.tAND);
cppkeywords.put(Keywords.cAND_EQ, IToken.tAMPERASSIGN);
cppkeywords.put(Keywords.cBITAND, IToken.tAMPER);
cppkeywords.put(Keywords.cBITOR, IToken.tBITOR);
cppkeywords.put(Keywords.cCOMPL, IToken.tBITCOMPLEMENT);
cppkeywords.put(Keywords.cNOT, IToken.tNOT);
cppkeywords.put(Keywords.cNOT_EQ, IToken.tNOTEQUAL);
cppkeywords.put(Keywords.cOR, IToken.tOR);
cppkeywords.put(Keywords.cOR_EQ, IToken.tBITORASSIGN);
cppkeywords.put(Keywords.cXOR, IToken.tXOR);
cppkeywords.put(Keywords.cXOR_EQ, IToken.tXORASSIGN);
cppkeywords.put(Keywords.cAND, IToken.tAND);
cppkeywords.put(Keywords.cAND_EQ, IToken.tAMPERASSIGN);
cppkeywords.put(Keywords.cBITAND, IToken.tAMPER);
cppkeywords.put(Keywords.cBITOR, IToken.tBITOR);
cppkeywords.put(Keywords.cCOMPL, IToken.tBITCOMPLEMENT);
cppkeywords.put(Keywords.cNOT, IToken.tNOT);
cppkeywords.put(Keywords.cNOT_EQ, IToken.tNOTEQUAL);
cppkeywords.put(Keywords.cOR, IToken.tOR);
cppkeywords.put(Keywords.cOR_EQ, IToken.tBITORASSIGN);
cppkeywords.put(Keywords.cXOR, IToken.tXOR);
cppkeywords.put(Keywords.cXOR_EQ, IToken.tXORASSIGN);
}
public static void addKeywordsPreprocessor(CharArrayIntMap ppKeywords) {
// Preprocessor keywords
ppKeywords.put(Keywords.cIF, IPreprocessorDirective.ppIf);
ppKeywords.put(Keywords.cIFDEF, IPreprocessorDirective.ppIfdef);
ppKeywords.put(Keywords.cIFNDEF, IPreprocessorDirective.ppIfndef);
ppKeywords.put(Keywords.cELIF, IPreprocessorDirective.ppElif);
ppKeywords.put(Keywords.cELSE, IPreprocessorDirective.ppElse);
ppKeywords.put(Keywords.cENDIF, IPreprocessorDirective.ppEndif);
ppKeywords.put(Keywords.cINCLUDE, IPreprocessorDirective.ppInclude);
ppKeywords.put(Keywords.cDEFINE, IPreprocessorDirective.ppDefine);
ppKeywords.put(Keywords.cUNDEF, IPreprocessorDirective.ppUndef);
ppKeywords.put(Keywords.cERROR, IPreprocessorDirective.ppError);
ppKeywords.put(Keywords.cPRAGMA, IPreprocessorDirective.ppPragma);
ppKeywords.put(Keywords.cIF, IPreprocessorDirective.ppIf);
ppKeywords.put(Keywords.cIFDEF, IPreprocessorDirective.ppIfdef);
ppKeywords.put(Keywords.cIFNDEF, IPreprocessorDirective.ppIfndef);
ppKeywords.put(Keywords.cELIF, IPreprocessorDirective.ppElif);
ppKeywords.put(Keywords.cELSE, IPreprocessorDirective.ppElse);
ppKeywords.put(Keywords.cENDIF, IPreprocessorDirective.ppEndif);
ppKeywords.put(Keywords.cINCLUDE, IPreprocessorDirective.ppInclude);
ppKeywords.put(Keywords.cDEFINE, IPreprocessorDirective.ppDefine);
ppKeywords.put(Keywords.cUNDEF, IPreprocessorDirective.ppUndef);
ppKeywords.put(Keywords.cERROR, IPreprocessorDirective.ppError);
ppKeywords.put(Keywords.cPRAGMA, IPreprocessorDirective.ppPragma);
ppKeywords.put(Keywords.cLINE, IPreprocessorDirective.ppIgnore);
}
}