]> git.ipfire.org Git - thirdparty/gcc.git/blame - gcc/builtin-types.def
2004-01-31 Per Bothner <per@bothner.com>
[thirdparty/gcc.git] / gcc / builtin-types.def
CommitLineData
46847aa6 1/* Copyright (C) 2001, 2002, 2003 Free Software Foundation, Inc.
10841285 2
1322177d 3This file is part of GCC.
10841285 4
1322177d
LB
5GCC is free software; you can redistribute it and/or modify it under
6the terms of the GNU General Public License as published by the Free
7Software Foundation; either version 2, or (at your option) any later
8version.
10841285 9
1322177d
LB
10GCC is distributed in the hope that it will be useful, but WITHOUT ANY
11WARRANTY; without even the implied warranty of MERCHANTABILITY or
12FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
13for more details.
10841285
MM
14
15You should have received a copy of the GNU General Public License
1322177d
LB
16along with GCC; see the file COPYING. If not, write to the Free
17Software Foundation, 59 Temple Place - Suite 330, Boston, MA
1802111-1307, USA. */
10841285
MM
19
20/* This header provides a declaritive way of describing the types that
21 are used when declaring builtin functions.
22
23 Before including this header, you must define the following macros:
24
25 DEF_PRIMITIVE_TYPE (ENUM, TYPE)
26
27 The ENUM is an identifier indicating which type is being defined.
28 TYPE is an expression for a `tree' that represents the type.
29
30 DEF_FUNCTION_TYPE_0 (ENUM, RETURN)
31 DEF_FUNCTION_TYPE_1 (ENUM, RETURN, ARG1)
32 DEF_FUNCTION_TYPE_2 (ENUM, RETURN, ARG1, ARG2)
33 DEF_FUNCTION_TYPE_3 (ENUM, RETURN, ARG1, ARG2, ARG3)
34 DEF_FUNCTION_TYPE_4 (ENUM, RETURN, ARG1, ARG2, ARG3, ARG4)
35
36 These macros describe function types. ENUM is as above. The
37 RETURN type is one of the enumerals already defined. ARG1, ARG2,
38 and ARG3 give the types of the arguments, similarly.
39
40 DEF_FUNCTION_TYPE_VAR_0 (ENUM, RETURN)
41 DEF_FUNCTION_TYPE_VAR_1 (ENUM, RETURN, ARG1)
42 DEF_FUNCTION_TYPE_VAR_2 (ENUM, RETURN, ARG1, ARG2)
08291658 43 DEF_FUNCTION_TYPE_VAR_3 (ENUM, RETURN, ARG1, ARG2, ARG3)
10841285
MM
44
45 Similar, but for function types that take variable arguments.
46 For example:
47
48 DEF_FUNCTION_TYPE_1 (BT_INT_DOUBLE, BT_INT, BT_DOUBLE)
49
50 describes the type `int ()(double)', using the enumeral
51 BT_INT_DOUBLE, whereas:
52
53 DEF_FUNCTION_TYPE_VAR_1 (BT_INT_DOUBLE_VAR, BT_INT, BT_DOUBLE)
54
55 describes the type `int ()(double, ...)'.
56
57 DEF_POINTER_TYPE (ENUM, TYPE)
58
59 This macro describes a pointer type. ENUM is as above; TYPE is
60 the type pointed to. */
61
62DEF_PRIMITIVE_TYPE (BT_VOID, void_type_node)
63DEF_PRIMITIVE_TYPE (BT_INT, integer_type_node)
64DEF_PRIMITIVE_TYPE (BT_UNSIGNED, unsigned_type_node)
65DEF_PRIMITIVE_TYPE (BT_LONG, long_integer_type_node)
66DEF_PRIMITIVE_TYPE (BT_LONGLONG, long_long_integer_type_node)
67DEF_PRIMITIVE_TYPE (BT_FLOAT, float_type_node)
68DEF_PRIMITIVE_TYPE (BT_INTMAX, intmax_type_node)
69DEF_PRIMITIVE_TYPE (BT_DOUBLE, double_type_node)
3c260e1d 70DEF_PRIMITIVE_TYPE (BT_LONGDOUBLE, long_double_type_node)
10841285
MM
71DEF_PRIMITIVE_TYPE (BT_COMPLEX_FLOAT, complex_float_type_node)
72DEF_PRIMITIVE_TYPE (BT_COMPLEX_DOUBLE, complex_double_type_node)
3c260e1d 73DEF_PRIMITIVE_TYPE (BT_COMPLEX_LONGDOUBLE, complex_long_double_type_node)
10841285
MM
74
75DEF_PRIMITIVE_TYPE (BT_PTR, ptr_type_node)
76DEF_PRIMITIVE_TYPE (BT_CONST_PTR, const_ptr_type_node)
b0c48229 77DEF_PRIMITIVE_TYPE (BT_PTRMODE, (*lang_hooks.types.type_for_mode)(ptr_mode, 0))
a2a919aa
KG
78DEF_PRIMITIVE_TYPE (BT_INT_PTR, integer_ptr_type_node)
79DEF_PRIMITIVE_TYPE (BT_FLOAT_PTR, float_ptr_type_node)
80DEF_PRIMITIVE_TYPE (BT_DOUBLE_PTR, double_ptr_type_node)
81DEF_PRIMITIVE_TYPE (BT_LONGDOUBLE_PTR, long_double_ptr_type_node)
c9f8536c 82DEF_PRIMITIVE_TYPE (BT_SIZE, size_type_node)
178b2b9f 83DEF_PRIMITIVE_TYPE (BT_SSIZE, signed_size_type_node)
10841285
MM
84DEF_PRIMITIVE_TYPE (BT_STRING, string_type_node)
85DEF_PRIMITIVE_TYPE (BT_CONST_STRING, const_string_type_node)
10841285
MM
86
87DEF_PRIMITIVE_TYPE (BT_VALIST_REF, va_list_ref_type_node)
88DEF_PRIMITIVE_TYPE (BT_VALIST_ARG, va_list_arg_type_node)
89
90DEF_FUNCTION_TYPE_0 (BT_FN_VOID, BT_VOID)
91DEF_FUNCTION_TYPE_0 (BT_FN_PTR, BT_PTR)
92DEF_FUNCTION_TYPE_0 (BT_FN_UNSIGNED, BT_UNSIGNED)
ab5e2615
RH
93DEF_FUNCTION_TYPE_0 (BT_FN_FLOAT, BT_FLOAT)
94DEF_FUNCTION_TYPE_0 (BT_FN_DOUBLE, BT_DOUBLE)
3c260e1d
KG
95/* For "long double" we use LONGDOUBLE (not LONG_DOUBLE) to
96 distinguish it from two types in sequence, "long" followed by
97 "double". */
98DEF_FUNCTION_TYPE_0 (BT_FN_LONGDOUBLE, BT_LONGDOUBLE)
10841285
MM
99
100DEF_FUNCTION_TYPE_1 (BT_FN_LONG_LONG, BT_LONG, BT_LONG)
101DEF_FUNCTION_TYPE_1 (BT_FN_LONGLONG_LONGLONG, BT_LONGLONG, BT_LONGLONG)
102DEF_FUNCTION_TYPE_1 (BT_FN_INTMAX_INTMAX, BT_INTMAX, BT_INTMAX)
103DEF_FUNCTION_TYPE_1 (BT_FN_FLOAT_FLOAT, BT_FLOAT, BT_FLOAT)
104DEF_FUNCTION_TYPE_1 (BT_FN_DOUBLE_DOUBLE, BT_DOUBLE, BT_DOUBLE)
3c260e1d
KG
105DEF_FUNCTION_TYPE_1 (BT_FN_LONGDOUBLE_LONGDOUBLE,
106 BT_LONGDOUBLE, BT_LONGDOUBLE)
10841285
MM
107DEF_FUNCTION_TYPE_1 (BT_FN_COMPLEX_FLOAT_COMPLEX_FLOAT,
108 BT_COMPLEX_FLOAT, BT_COMPLEX_FLOAT)
109DEF_FUNCTION_TYPE_1 (BT_FN_COMPLEX_DOUBLE_COMPLEX_DOUBLE,
110 BT_COMPLEX_DOUBLE, BT_COMPLEX_DOUBLE)
3c260e1d
KG
111DEF_FUNCTION_TYPE_1 (BT_FN_COMPLEX_LONGDOUBLE_COMPLEX_LONGDOUBLE,
112 BT_COMPLEX_LONGDOUBLE, BT_COMPLEX_LONGDOUBLE)
10841285
MM
113DEF_FUNCTION_TYPE_1 (BT_FN_FLOAT_COMPLEX_FLOAT,
114 BT_FLOAT, BT_COMPLEX_FLOAT)
115DEF_FUNCTION_TYPE_1 (BT_FN_DOUBLE_COMPLEX_DOUBLE,
116 BT_DOUBLE, BT_COMPLEX_DOUBLE)
3c260e1d
KG
117DEF_FUNCTION_TYPE_1 (BT_FN_LONGDOUBLE_COMPLEX_LONGDOUBLE,
118 BT_LONGDOUBLE, BT_COMPLEX_LONGDOUBLE)
10841285
MM
119DEF_FUNCTION_TYPE_1 (BT_FN_PTR_UNSIGNED, BT_PTR, BT_UNSIGNED)
120DEF_FUNCTION_TYPE_1 (BT_FN_PTR_SIZE, BT_PTR, BT_SIZE)
121DEF_FUNCTION_TYPE_1 (BT_FN_INT_INT, BT_INT, BT_INT)
2928cd7a
RH
122DEF_FUNCTION_TYPE_1 (BT_FN_INT_LONG, BT_INT, BT_LONG)
123DEF_FUNCTION_TYPE_1 (BT_FN_INT_LONGLONG, BT_INT, BT_LONGLONG)
10841285 124DEF_FUNCTION_TYPE_1 (BT_FN_INT_PTR, BT_INT, BT_PTR)
98ff7c4d
KG
125DEF_FUNCTION_TYPE_1 (BT_FN_INT_FLOAT, BT_INT, BT_FLOAT)
126DEF_FUNCTION_TYPE_1 (BT_FN_INT_DOUBLE, BT_INT, BT_DOUBLE)
127DEF_FUNCTION_TYPE_1 (BT_FN_INT_LONGDOUBLE, BT_INT, BT_LONGDOUBLE)
128DEF_FUNCTION_TYPE_1 (BT_FN_LONG_FLOAT, BT_LONG, BT_FLOAT)
129DEF_FUNCTION_TYPE_1 (BT_FN_LONG_DOUBLE, BT_LONG, BT_DOUBLE)
130DEF_FUNCTION_TYPE_1 (BT_FN_LONG_LONGDOUBLE, BT_LONG, BT_LONGDOUBLE)
131DEF_FUNCTION_TYPE_1 (BT_FN_LONGLONG_FLOAT, BT_LONGLONG, BT_FLOAT)
132DEF_FUNCTION_TYPE_1 (BT_FN_LONGLONG_DOUBLE, BT_LONGLONG, BT_DOUBLE)
133DEF_FUNCTION_TYPE_1 (BT_FN_LONGLONG_LONGDOUBLE, BT_LONGLONG, BT_LONGDOUBLE)
10841285 134DEF_FUNCTION_TYPE_1 (BT_FN_VOID_PTR, BT_VOID, BT_PTR)
f458d1d5 135DEF_FUNCTION_TYPE_1 (BT_FN_SIZE_CONST_STRING, BT_SIZE, BT_CONST_STRING)
10841285
MM
136DEF_FUNCTION_TYPE_1 (BT_FN_INT_CONST_STRING, BT_INT, BT_CONST_STRING)
137DEF_FUNCTION_TYPE_1 (BT_FN_PTR_PTR, BT_PTR, BT_PTR)
138DEF_FUNCTION_TYPE_1 (BT_FN_VOID_VALIST_REF, BT_VOID, BT_VALIST_REF)
139DEF_FUNCTION_TYPE_1 (BT_FN_VOID_INT, BT_VOID, BT_INT)
1472e41c
RH
140DEF_FUNCTION_TYPE_1 (BT_FN_FLOAT_CONST_STRING, BT_FLOAT, BT_CONST_STRING)
141DEF_FUNCTION_TYPE_1 (BT_FN_DOUBLE_CONST_STRING, BT_DOUBLE, BT_CONST_STRING)
3c260e1d
KG
142DEF_FUNCTION_TYPE_1 (BT_FN_LONGDOUBLE_CONST_STRING,
143 BT_LONGDOUBLE, BT_CONST_STRING)
1331d16f 144DEF_FUNCTION_TYPE_1 (BT_FN_STRING_CONST_STRING, BT_STRING, BT_CONST_STRING)
10841285
MM
145
146DEF_FUNCTION_TYPE_2 (BT_FN_VOID_PTR_INT, BT_VOID, BT_PTR, BT_INT)
147DEF_FUNCTION_TYPE_2 (BT_FN_STRING_STRING_CONST_STRING,
148 BT_STRING, BT_STRING, BT_CONST_STRING)
149DEF_FUNCTION_TYPE_2 (BT_FN_INT_CONST_STRING_CONST_STRING,
150 BT_INT, BT_CONST_STRING, BT_CONST_STRING)
151DEF_FUNCTION_TYPE_2 (BT_FN_STRING_CONST_STRING_CONST_STRING,
152 BT_STRING, BT_CONST_STRING, BT_CONST_STRING)
153DEF_FUNCTION_TYPE_2 (BT_FN_SIZE_CONST_STRING_CONST_STRING,
154 BT_SIZE, BT_CONST_STRING, BT_CONST_STRING)
155DEF_FUNCTION_TYPE_2 (BT_FN_STRING_CONST_STRING_INT,
156 BT_STRING, BT_CONST_STRING, BT_INT)
157DEF_FUNCTION_TYPE_2 (BT_FN_INT_CONST_STRING_PTR,
158 BT_INT, BT_CONST_STRING, BT_PTR)
159DEF_FUNCTION_TYPE_2 (BT_FN_INT_INT_PTR,
160 BT_INT, BT_INT, BT_PTR)
161DEF_FUNCTION_TYPE_2 (BT_FN_VOID_PTRMODE_PTR,
162 BT_VOID, BT_PTRMODE, BT_PTR)
163DEF_FUNCTION_TYPE_2 (BT_FN_VOID_VALIST_REF_VALIST_ARG,
164 BT_VOID, BT_VALIST_REF, BT_VALIST_ARG)
165DEF_FUNCTION_TYPE_2 (BT_FN_LONG_LONG_LONG,
166 BT_LONG, BT_LONG, BT_LONG)
167DEF_FUNCTION_TYPE_2 (BT_FN_INT_PTR_CONST_STRING,
168 BT_INT, BT_PTR, BT_CONST_STRING)
f458d1d5
ZW
169DEF_FUNCTION_TYPE_2 (BT_FN_VOID_PTR_SIZE,
170 BT_VOID, BT_PTR, BT_SIZE)
46847aa6
RS
171DEF_FUNCTION_TYPE_2 (BT_FN_FLOAT_FLOAT_FLOAT,
172 BT_FLOAT, BT_FLOAT, BT_FLOAT)
173DEF_FUNCTION_TYPE_2 (BT_FN_DOUBLE_DOUBLE_DOUBLE,
174 BT_DOUBLE, BT_DOUBLE, BT_DOUBLE)
3c260e1d
KG
175DEF_FUNCTION_TYPE_2 (BT_FN_LONGDOUBLE_LONGDOUBLE_LONGDOUBLE,
176 BT_LONGDOUBLE, BT_LONGDOUBLE, BT_LONGDOUBLE)
a2a919aa
KG
177DEF_FUNCTION_TYPE_2 (BT_FN_FLOAT_FLOAT_FLOATPTR,
178 BT_FLOAT, BT_FLOAT, BT_FLOAT_PTR)
179DEF_FUNCTION_TYPE_2 (BT_FN_DOUBLE_DOUBLE_DOUBLEPTR,
180 BT_DOUBLE, BT_DOUBLE, BT_DOUBLE_PTR)
181DEF_FUNCTION_TYPE_2 (BT_FN_LONGDOUBLE_LONGDOUBLE_LONGDOUBLEPTR,
182 BT_LONGDOUBLE, BT_LONGDOUBLE, BT_LONGDOUBLE_PTR)
98ff7c4d
KG
183DEF_FUNCTION_TYPE_2 (BT_FN_FLOAT_FLOAT_LONGDOUBLE,
184 BT_FLOAT, BT_FLOAT, BT_LONGDOUBLE)
185DEF_FUNCTION_TYPE_2 (BT_FN_DOUBLE_DOUBLE_LONGDOUBLE,
186 BT_DOUBLE, BT_DOUBLE, BT_LONGDOUBLE)
187DEF_FUNCTION_TYPE_2 (BT_FN_FLOAT_FLOAT_INT,
188 BT_FLOAT, BT_FLOAT, BT_INT)
189DEF_FUNCTION_TYPE_2 (BT_FN_DOUBLE_DOUBLE_INT,
190 BT_DOUBLE, BT_DOUBLE, BT_INT)
191DEF_FUNCTION_TYPE_2 (BT_FN_LONGDOUBLE_LONGDOUBLE_INT,
192 BT_LONGDOUBLE, BT_LONGDOUBLE, BT_INT)
a2a919aa
KG
193DEF_FUNCTION_TYPE_2 (BT_FN_FLOAT_FLOAT_INTPTR,
194 BT_FLOAT, BT_FLOAT, BT_INT_PTR)
195DEF_FUNCTION_TYPE_2 (BT_FN_DOUBLE_DOUBLE_INTPTR,
196 BT_DOUBLE, BT_DOUBLE, BT_INT_PTR)
197DEF_FUNCTION_TYPE_2 (BT_FN_LONGDOUBLE_LONGDOUBLE_INTPTR,
198 BT_LONGDOUBLE, BT_LONGDOUBLE, BT_INT_PTR)
488f17e1
KG
199DEF_FUNCTION_TYPE_2 (BT_FN_FLOAT_INT_FLOAT,
200 BT_FLOAT, BT_INT, BT_FLOAT)
201DEF_FUNCTION_TYPE_2 (BT_FN_DOUBLE_INT_DOUBLE,
202 BT_DOUBLE, BT_INT, BT_DOUBLE)
203DEF_FUNCTION_TYPE_2 (BT_FN_LONGDOUBLE_INT_LONGDOUBLE,
204 BT_LONGDOUBLE, BT_INT, BT_LONGDOUBLE)
98ff7c4d
KG
205DEF_FUNCTION_TYPE_2 (BT_FN_FLOAT_FLOAT_LONG,
206 BT_FLOAT, BT_FLOAT, BT_LONG)
207DEF_FUNCTION_TYPE_2 (BT_FN_DOUBLE_DOUBLE_LONG,
208 BT_DOUBLE, BT_DOUBLE, BT_LONG)
209DEF_FUNCTION_TYPE_2 (BT_FN_LONGDOUBLE_LONGDOUBLE_LONG,
210 BT_LONGDOUBLE, BT_LONGDOUBLE, BT_LONG)
08291658
RS
211DEF_FUNCTION_TYPE_2 (BT_FN_INT_CONST_STRING_VALIST_ARG,
212 BT_INT, BT_CONST_STRING, BT_VALIST_ARG)
1331d16f
RS
213DEF_FUNCTION_TYPE_2 (BT_FN_PTR_SIZE_SIZE,
214 BT_PTR, BT_SIZE, BT_SIZE)
11bf0eb0
KG
215DEF_FUNCTION_TYPE_2 (BT_FN_COMPLEX_FLOAT_COMPLEX_FLOAT_COMPLEX_FLOAT,
216 BT_COMPLEX_FLOAT, BT_COMPLEX_FLOAT, BT_COMPLEX_FLOAT)
217DEF_FUNCTION_TYPE_2 (BT_FN_COMPLEX_DOUBLE_COMPLEX_DOUBLE_COMPLEX_DOUBLE,
218 BT_COMPLEX_DOUBLE, BT_COMPLEX_DOUBLE, BT_COMPLEX_DOUBLE)
219DEF_FUNCTION_TYPE_2 (BT_FN_COMPLEX_LONGDOUBLE_COMPLEX_LONGDOUBLE_COMPLEX_LONGDOUBLE,
220 BT_COMPLEX_LONGDOUBLE, BT_COMPLEX_LONGDOUBLE, BT_COMPLEX_LONGDOUBLE)
10841285
MM
221
222DEF_FUNCTION_TYPE_3 (BT_FN_STRING_STRING_CONST_STRING_SIZE,
223 BT_STRING, BT_STRING, BT_CONST_STRING, BT_SIZE)
224DEF_FUNCTION_TYPE_3 (BT_FN_INT_CONST_STRING_CONST_STRING_SIZE,
225 BT_INT, BT_CONST_STRING, BT_CONST_STRING, BT_SIZE)
f458d1d5
ZW
226DEF_FUNCTION_TYPE_3 (BT_FN_PTR_PTR_CONST_PTR_SIZE,
227 BT_PTR, BT_PTR, BT_CONST_PTR, BT_SIZE)
10841285
MM
228DEF_FUNCTION_TYPE_3 (BT_FN_INT_CONST_PTR_CONST_PTR_SIZE,
229 BT_INT, BT_CONST_PTR, BT_CONST_PTR, BT_SIZE)
f458d1d5
ZW
230DEF_FUNCTION_TYPE_3 (BT_FN_PTR_PTR_INT_SIZE,
231 BT_PTR, BT_PTR, BT_INT, BT_SIZE)
08291658
RS
232DEF_FUNCTION_TYPE_3 (BT_FN_VOID_PTR_INT_INT,
233 BT_VOID, BT_PTR, BT_INT, BT_INT)
e31603c4
JJ
234DEF_FUNCTION_TYPE_3 (BT_FN_VOID_CONST_PTR_PTR_SIZE,
235 BT_VOID, BT_CONST_PTR, BT_PTR, BT_SIZE)
08291658
RS
236DEF_FUNCTION_TYPE_3 (BT_FN_INT_STRING_CONST_STRING_VALIST_ARG,
237 BT_INT, BT_STRING, BT_CONST_STRING, BT_VALIST_ARG)
238DEF_FUNCTION_TYPE_3 (BT_FN_INT_CONST_STRING_CONST_STRING_VALIST_ARG,
239 BT_INT, BT_CONST_STRING, BT_CONST_STRING, BT_VALIST_ARG)
178b2b9f
RS
240DEF_FUNCTION_TYPE_3 (BT_FN_INT_PTR_CONST_STRING_VALIST_ARG,
241 BT_INT, BT_PTR, BT_CONST_STRING, BT_VALIST_ARG)
242DEF_FUNCTION_TYPE_3 (BT_FN_STRING_CONST_STRING_CONST_STRING_INT,
243 BT_STRING, BT_CONST_STRING, BT_CONST_STRING, BT_INT)
98ff7c4d
KG
244DEF_FUNCTION_TYPE_3 (BT_FN_FLOAT_FLOAT_FLOAT_FLOAT,
245 BT_FLOAT, BT_FLOAT, BT_FLOAT, BT_FLOAT)
246DEF_FUNCTION_TYPE_3 (BT_FN_DOUBLE_DOUBLE_DOUBLE_DOUBLE,
247 BT_DOUBLE, BT_DOUBLE, BT_DOUBLE, BT_DOUBLE)
248DEF_FUNCTION_TYPE_3 (BT_FN_LONGDOUBLE_LONGDOUBLE_LONGDOUBLE_LONGDOUBLE,
249 BT_LONGDOUBLE, BT_LONGDOUBLE, BT_LONGDOUBLE, BT_LONGDOUBLE)
a2a919aa
KG
250DEF_FUNCTION_TYPE_3 (BT_FN_FLOAT_FLOAT_FLOAT_INTPTR,
251 BT_FLOAT, BT_FLOAT, BT_FLOAT, BT_INT_PTR)
252DEF_FUNCTION_TYPE_3 (BT_FN_DOUBLE_DOUBLE_DOUBLE_INTPTR,
253 BT_DOUBLE, BT_DOUBLE, BT_DOUBLE, BT_INT_PTR)
254DEF_FUNCTION_TYPE_3 (BT_FN_LONGDOUBLE_LONGDOUBLE_LONGDOUBLE_INTPTR,
255 BT_LONGDOUBLE, BT_LONGDOUBLE, BT_LONGDOUBLE, BT_INT_PTR)
256DEF_FUNCTION_TYPE_3 (BT_FN_VOID_FLOAT_FLOATPTR_FLOATPTR,
257 BT_VOID, BT_FLOAT, BT_FLOAT_PTR, BT_FLOAT_PTR)
258DEF_FUNCTION_TYPE_3 (BT_FN_VOID_DOUBLE_DOUBLEPTR_DOUBLEPTR,
259 BT_VOID, BT_DOUBLE, BT_DOUBLE_PTR, BT_DOUBLE_PTR)
260DEF_FUNCTION_TYPE_3 (BT_FN_VOID_LONGDOUBLE_LONGDOUBLEPTR_LONGDOUBLEPTR,
261 BT_VOID, BT_LONGDOUBLE, BT_LONGDOUBLE_PTR, BT_LONGDOUBLE_PTR)
10841285
MM
262
263DEF_FUNCTION_TYPE_4 (BT_FN_SIZE_CONST_PTR_SIZE_SIZE_PTR,
264 BT_SIZE, BT_CONST_PTR, BT_SIZE, BT_SIZE, BT_PTR)
08291658
RS
265DEF_FUNCTION_TYPE_4 (BT_FN_INT_STRING_SIZE_CONST_STRING_VALIST_ARG,
266 BT_INT, BT_STRING, BT_SIZE, BT_CONST_STRING, BT_VALIST_ARG)
178b2b9f
RS
267DEF_FUNCTION_TYPE_4 (BT_FN_SIZE_STRING_SIZE_CONST_STRING_CONST_PTR,
268 BT_SIZE, BT_STRING, BT_SIZE, BT_CONST_STRING, BT_CONST_PTR)
10841285
MM
269
270DEF_FUNCTION_TYPE_VAR_0 (BT_FN_VOID_VAR, BT_VOID)
271DEF_FUNCTION_TYPE_VAR_0 (BT_FN_INT_VAR, BT_INT)
272DEF_FUNCTION_TYPE_VAR_0 (BT_FN_PTR_VAR, BT_PTR)
273
274DEF_FUNCTION_TYPE_VAR_1 (BT_FN_VOID_VALIST_REF_VAR,
275 BT_VOID, BT_VALIST_REF)
3bca17dd
PK
276DEF_FUNCTION_TYPE_VAR_1 (BT_FN_VOID_CONST_PTR_VAR,
277 BT_VOID, BT_CONST_PTR)
10841285
MM
278DEF_FUNCTION_TYPE_VAR_1 (BT_FN_INT_CONST_STRING_VAR,
279 BT_INT, BT_CONST_STRING)
280
281DEF_FUNCTION_TYPE_VAR_2 (BT_FN_INT_PTR_CONST_STRING_VAR,
282 BT_INT, BT_PTR, BT_CONST_STRING)
08291658
RS
283DEF_FUNCTION_TYPE_VAR_2 (BT_FN_INT_STRING_CONST_STRING_VAR,
284 BT_INT, BT_STRING, BT_CONST_STRING)
285DEF_FUNCTION_TYPE_VAR_2 (BT_FN_INT_CONST_STRING_CONST_STRING_VAR,
286 BT_INT, BT_CONST_STRING, BT_CONST_STRING)
287
288DEF_FUNCTION_TYPE_VAR_3 (BT_FN_INT_STRING_SIZE_CONST_STRING_VAR,
289 BT_INT, BT_STRING, BT_SIZE, BT_CONST_STRING)
178b2b9f
RS
290DEF_FUNCTION_TYPE_VAR_3 (BT_FN_SSIZE_STRING_SIZE_CONST_STRING_VAR,
291 BT_SSIZE, BT_STRING, BT_SIZE, BT_CONST_STRING)
10841285
MM
292
293DEF_POINTER_TYPE (BT_PTR_FN_VOID_VAR, BT_FN_VOID_VAR)
294DEF_FUNCTION_TYPE_3 (BT_FN_PTR_PTR_FN_VOID_VAR_PTR_SIZE,
295 BT_PTR, BT_PTR_FN_VOID_VAR, BT_PTR, BT_SIZE)