Add CEDET tests.
[bpt/emacs.git] / test / cedet / tests / testsppreplaced.c
CommitLineData
74ea13c1
CY
1/* What the SPP replace file would looklike with MACROS replaced.
2 */
3
4/* TEST: The EMU keyword doesn't screw up the function defn. */
5char parse_around_emu ()
6{
7}
8
9/* TEST: A simple word can be replaced in a definition. */
10float returnanfloat()
11{
12}
13
14/* TEST: Punctuation an be replaced in a definition. */
15int foo::bar ()
16{
17}
18
19/* TEST: Multiple lexical characters in a definition */
20int mysuper::baz ()
21{
22}
23
24/* TEST: Macro replacement. */
25int increment (int in) {
26 return in+1;
27}
28
29/* TEST: Macro replacement with complex args */
30int myFcn1 ();
31
32int myFcn2 (int a, int b);
33int myFcn3 (int a, int b);
34
35/* TEST: Multiple args to a macro. */
36struct ma_struct { int moose; int penguin; int emu; };
37
38/* TEST: Macro w/ args, but no body. */
39
40/* TEST: Not a macro with args, but close. */
41int not_with_args_fcn (moose)
42{
43}
44
45/* TEST: macro w/ continuation. */
46int continuation_symbol () { };
47
48/* TEST: macros in a macro - tail processing */
49
50int tail (int q) {}
51
52/* TEST: macros used impropertly. */
53
54int tail_fcn(int q);
55
56/* TEST: feature of CPP from LSD <lsdsgster@...> */
57
58int __gthrw_foo (int arg1) { }
59
60/* TEST: macros using macros */
61int foo;
62
63/* TEST: macros with args using macros */
64int noodle(int noodle);
65
66/* TEST: Double macro using the argument stack. */
67int that_foo(int i);
68int this_foo(int i);
69
70/* TEST: The G++ namespace macro hack. Not really part of SPP. */
71namespace baz {
72
73 int bazfnc(int b) { }
74
75}
76
77namespace foo { namespace bar {
78
79 int foo_bar_func(int a) { }
80
81 }
82}
83
84/* TEST: The VC++ macro hack. */
85namespace std {
86
87 int inside_std_namespace(int a) { }
88
89}
90
91/* TEST: Recursion prevention. CPP doesn't allow even 1 level of recursion. */
92int MACROA () {
93
94}
95
96
97/* End */