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

View file

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

View file

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