annotate gcc/testsuite/gdc.test/runnable_cxx/extra-files/cabi2.cpp @ 152:2b5abeee2509

update gcc11
author anatofuz
date Mon, 25 May 2020 07:50:57 +0900
parents
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
152
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
1
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
2 #include <assert.h>
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
3 #include <stdio.h>
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
4 #include <stdint.h>
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
5
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
6 #if __cplusplus
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
7 extern "C" {
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
8 #endif
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
9
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
10 struct Foo1 { char c; };
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
11
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
12 struct Foo1 ctest1()
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
13 {
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
14 struct Foo1 f;
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
15
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
16 f.c = 3;
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
17 return f;
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
18 }
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
19
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
20 struct Foo2 { short s; };
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
21
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
22 struct Foo2 ctest2()
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
23 {
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
24 struct Foo2 f;
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
25
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
26 f.s = 0x1234;
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
27 return f;
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
28 }
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
29
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
30 struct Foo3 { char c; short s; };
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
31
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
32 struct Foo3 ctest3()
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
33 {
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
34 struct Foo3 f;
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
35
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
36 f.s = 0x5678;
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
37 return f;
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
38 }
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
39
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
40
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
41 struct Foo4 { int i; };
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
42
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
43 struct Foo4 ctest4()
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
44 {
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
45 struct Foo4 f;
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
46
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
47 f.i = 0x12345678;
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
48 return f;
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
49 }
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
50
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
51 struct Foo5 { int i, j; };
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
52
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
53 struct Foo5 ctest5()
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
54 {
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
55 struct Foo5 f;
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
56
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
57 f.i = 0x12345678;
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
58 f.j = 0x21436587;
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
59 return f;
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
60 }
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
61
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
62
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
63 struct Foo6 { int i, j, k; };
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
64
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
65 struct Foo6 ctest6()
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
66 {
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
67 struct Foo6 f;
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
68
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
69 f.i = 0x12345678;
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
70 f.j = 0x21463587;
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
71 f.k = 0x24163857;
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
72 return f;
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
73 }
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
74
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
75 struct S7 { float a,b; };
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
76
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
77 struct S7 ctest10()
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
78 {
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
79 struct S7 f;
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
80
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
81 f.a = 2.5;
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
82 f.b = 1.5;
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
83 return f;
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
84 }
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
85
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
86 // =================================
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
87
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
88 char ctest7(char c)
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
89 {
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
90 return c + 1;
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
91 }
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
92
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
93 unsigned char ctest8(unsigned char c)
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
94 {
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
95 return c + 1;
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
96 }
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
97
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
98 signed char ctest9(signed char c)
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
99 {
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
100 return c + 1;
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
101 }
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
102
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
103 /***********************************************/
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
104
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
105 void ctestrir(int x1, int x2, int x3, int x4, int x5, int x6, long double a, int b, long double c)
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
106 {
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
107 assert(a == 100.0);
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
108 assert(b == 67);
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
109 assert(c == 200.0);
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
110 }
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
111
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
112 /***********************************************/
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
113
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
114 extern void dtestrir(int x1, int x2, int x3, int x4, int x5, int x6, long double a, int b, long double c);
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
115
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
116 void test4()
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
117 {
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
118 dtestrir(1,2,3,4,5,6, 300.0, 68, 401.0);
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
119 }
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
120
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
121 /**********************************************/
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
122
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
123 typedef struct S11 {
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
124 char a;
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
125 char b;
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
126 char c;
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
127 } S11;
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
128
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
129 S11 ctest11(char x, S11 s, char y) {
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
130 printf("C sz = %d\n", (int)sizeof(S11));
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
131 assert(sizeof(S11) == 3);
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
132 printf("x = %d\n", (int)x);
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
133 printf("s.a = %d\n", (int)s.a);
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
134 printf("s.b = %d\n", (int)s.b);
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
135 printf("s.c = %d\n", (int)s.c);
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
136 printf("y = %d\n", (int)y);
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
137 return s;
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
138 }
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
139
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
140 /**********************************************/
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
141
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
142 typedef struct S12 {
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
143 char a,d;
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
144 char b,e;
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
145 char c;
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
146 } S12;
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
147
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
148 S12 ctest12(char x, S12 s, char y) {
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
149 printf("C sz = %d\n", (int)sizeof(S12));
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
150 assert(sizeof(S12) == 5);
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
151 printf("x = %d\n", (int)x);
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
152 printf("s.a = %d\n", (int)s.a);
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
153 printf("s.b = %d\n", (int)s.b);
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
154 printf("s.c = %d\n", (int)s.c);
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
155 printf("y = %d\n", (int)y);
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
156 return s;
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
157 }
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
158
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
159
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
160 /**********************************************/
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
161
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
162 typedef struct S13 {
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
163 short a;
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
164 short b;
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
165 short c;
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
166 } S13;
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
167
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
168 S13 ctest13(char x, S13 s, char y) {
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
169 printf("C sz = %d\n", (int)sizeof(S13));
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
170 assert(sizeof(S13) == 6);
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
171 printf("x = %d\n", (int)x);
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
172 printf("s.a = %d\n", (int)s.a);
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
173 printf("s.b = %d\n", (int)s.b);
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
174 printf("s.c = %d\n", (int)s.c);
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
175 printf("y = %d\n", (int)y);
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
176 return s;
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
177 }
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
178
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
179
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
180 /**********************************************/
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
181
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
182 typedef struct S14 {
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
183 char a,d,e,f;
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
184 char b,g;
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
185 char c;
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
186 } S14;
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
187
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
188 S14 ctest14(char x, S14 s, char y) {
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
189 printf("C sz = %d\n", (int)sizeof(S14));
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
190 assert(sizeof(S14) == 7);
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
191 printf("x = %d\n", (int)x);
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
192 printf("s.a = %d\n", (int)s.a);
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
193 printf("s.b = %d\n", (int)s.b);
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
194 printf("s.c = %d\n", (int)s.c);
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
195 printf("y = %d\n", (int)y);
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
196 return s;
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
197 }
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
198
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
199
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
200 /**********************************************/
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
201
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
202 typedef struct S15 {
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
203 char a,d,e,f;
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
204 char b,g,h,i;
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
205 char c;
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
206 } S15;
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
207
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
208 S15 ctest15(char x, S15 s, char y) {
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
209 printf("C sz = %d\n", (int)sizeof(S15));
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
210 assert(sizeof(S15) == 9);
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
211 printf("x = %d\n", (int)x);
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
212 printf("s.a = %d\n", (int)s.a);
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
213 printf("s.b = %d\n", (int)s.b);
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
214 printf("s.c = %d\n", (int)s.c);
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
215 printf("y = %d\n", (int)y);
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
216 return s;
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
217 }
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
218
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
219
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
220 /**********************************************/
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
221
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
222 typedef struct S16 {
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
223 char a[5];
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
224 #ifdef __GNUC__
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
225 struct __attribute__((packed))
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
226 #else
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
227 #pragma pack(push, 1)
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
228 struct
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
229 #endif
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
230 {
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
231 char b;
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
232 int c;
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
233 };
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
234 #ifndef __GNUC__
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
235 #pragma pack(pop)
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
236 #endif
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
237 } S16;
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
238
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
239 S16 ctest16(char x, S16 s, char y) {
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
240 printf("C sz = %d\n", (int)sizeof(S16));
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
241 assert(sizeof(S16) == 10);
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
242 printf("x = %d\n", (int)x);
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
243 printf("s.a = %.*s\n", 5, s.a);
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
244 printf("s.b = %d\n", (int)s.b);
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
245 printf("s.c = %d\n", s.c);
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
246 printf("y = %d\n", (int)y);
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
247 return s;
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
248 }
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
249
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
250
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
251
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
252 #if __cplusplus
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
253 }
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
254 #endif
2b5abeee2509 update gcc11
anatofuz
parents:
diff changeset
255