1 __extension__ int x_ __attribute__((aligned(16)));
2
3
4 #include <stdio.h>
5
6 int
x(int arg0,int arg1)7 x(int arg0, int arg1) {
8 printf("%d, %d\n", arg0, arg1);
9 return arg0 + arg1;
10 }
11
12 /*
13 * The function definition below yields a syntax error. Sadly it is used
14 * by Pine.
15 *
16 * The reason is that nwcc simplistically assumes that a K&R parameter
17 * list is immediately followed by the parameter declarations. Thus it
18 * does not handle the case below, where there is some more declarator
19 * stuff around the parameter list. This requires some nontrivial changes
20 * and is probably not VERY important to support, so it will be done later
21 */
22 int
23 (*f(foo, bar))()
24 int foo, bar;
25 {
26 return x;
27 }
28
29
30 int
main()31 main() {
32 typedef int foo;
33
34 foo: ; /* should not clash with "foo" typedef */
35 printf("%d\n", f()(123, 456));
36 }
37
38