]> git.ipfire.org Git - thirdparty/gcc.git/blame - gcc/builtin-types.def
* builtin-types.def
[thirdparty/gcc.git] / gcc / builtin-types.def
CommitLineData
fa426235 1/* Copyright (C) 2001, 2002, 2003 Free Software Foundation, Inc.
d2d4bdde 2
f12b58b3 3This file is part of GCC.
d2d4bdde 4
f12b58b3 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.
d2d4bdde 9
f12b58b3 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.
d2d4bdde 14
15You should have received a copy of the GNU General Public License
f12b58b3 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. */
d2d4bdde 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)
03901330 43 DEF_FUNCTION_TYPE_VAR_3 (ENUM, RETURN, ARG1, ARG2, ARG3)
d2d4bdde 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)
00eb5190 70DEF_PRIMITIVE_TYPE (BT_LONGDOUBLE, long_double_type_node)
d2d4bdde 71DEF_PRIMITIVE_TYPE (BT_COMPLEX_FLOAT, complex_float_type_node)
72DEF_PRIMITIVE_TYPE (BT_COMPLEX_DOUBLE, complex_double_type_node)
00eb5190 73DEF_PRIMITIVE_TYPE (BT_COMPLEX_LONGDOUBLE, complex_long_double_type_node)
d2d4bdde 74
75DEF_PRIMITIVE_TYPE (BT_PTR, ptr_type_node)
76DEF_PRIMITIVE_TYPE (BT_CONST_PTR, const_ptr_type_node)
771d21fa 77DEF_PRIMITIVE_TYPE (BT_PTRMODE, (*lang_hooks.types.type_for_mode)(ptr_mode, 0))
4070bd43 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)
654ef926 82DEF_PRIMITIVE_TYPE (BT_SIZE, size_type_node)
b9b15671 83DEF_PRIMITIVE_TYPE (BT_SSIZE, signed_size_type_node)
d2d4bdde 84DEF_PRIMITIVE_TYPE (BT_STRING, string_type_node)
85DEF_PRIMITIVE_TYPE (BT_CONST_STRING, const_string_type_node)
d2d4bdde 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)
92c43e3c 93DEF_FUNCTION_TYPE_0 (BT_FN_FLOAT, BT_FLOAT)
94DEF_FUNCTION_TYPE_0 (BT_FN_DOUBLE, BT_DOUBLE)
00eb5190 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)
d2d4bdde 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)
00eb5190 105DEF_FUNCTION_TYPE_1 (BT_FN_LONGDOUBLE_LONGDOUBLE,
106 BT_LONGDOUBLE, BT_LONGDOUBLE)
d2d4bdde 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)
00eb5190 111DEF_FUNCTION_TYPE_1 (BT_FN_COMPLEX_LONGDOUBLE_COMPLEX_LONGDOUBLE,
112 BT_COMPLEX_LONGDOUBLE, BT_COMPLEX_LONGDOUBLE)
d2d4bdde 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)
00eb5190 117DEF_FUNCTION_TYPE_1 (BT_FN_LONGDOUBLE_COMPLEX_LONGDOUBLE,
118 BT_LONGDOUBLE, BT_COMPLEX_LONGDOUBLE)
d2d4bdde 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)
6a08d0ab 122DEF_FUNCTION_TYPE_1 (BT_FN_INT_LONG, BT_INT, BT_LONG)
123DEF_FUNCTION_TYPE_1 (BT_FN_INT_LONGLONG, BT_INT, BT_LONGLONG)
d2d4bdde 124DEF_FUNCTION_TYPE_1 (BT_FN_INT_PTR, BT_INT, BT_PTR)
e88e2794 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)
d2d4bdde 134DEF_FUNCTION_TYPE_1 (BT_FN_VOID_PTR, BT_VOID, BT_PTR)
455730ef 135DEF_FUNCTION_TYPE_1 (BT_FN_SIZE_CONST_STRING, BT_SIZE, BT_CONST_STRING)
d2d4bdde 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)
b0db7939 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)
00eb5190 142DEF_FUNCTION_TYPE_1 (BT_FN_LONGDOUBLE_CONST_STRING,
143 BT_LONGDOUBLE, BT_CONST_STRING)
32ef1cd2 144DEF_FUNCTION_TYPE_1 (BT_FN_STRING_CONST_STRING, BT_STRING, BT_CONST_STRING)
d2d4bdde 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)
455730ef 169DEF_FUNCTION_TYPE_2 (BT_FN_VOID_PTR_SIZE,
170 BT_VOID, BT_PTR, BT_SIZE)
fa426235 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)
00eb5190 175DEF_FUNCTION_TYPE_2 (BT_FN_LONGDOUBLE_LONGDOUBLE_LONGDOUBLE,
176 BT_LONGDOUBLE, BT_LONGDOUBLE, BT_LONGDOUBLE)
4070bd43 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)
e88e2794 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)
4070bd43 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)
847749e5 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)
e88e2794 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)
03901330 211DEF_FUNCTION_TYPE_2 (BT_FN_INT_CONST_STRING_VALIST_ARG,
212 BT_INT, BT_CONST_STRING, BT_VALIST_ARG)
32ef1cd2 213DEF_FUNCTION_TYPE_2 (BT_FN_PTR_SIZE_SIZE,
214 BT_PTR, BT_SIZE, BT_SIZE)
61b922e7 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)
d2d4bdde 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)
455730ef 226DEF_FUNCTION_TYPE_3 (BT_FN_PTR_PTR_CONST_PTR_SIZE,
227 BT_PTR, BT_PTR, BT_CONST_PTR, BT_SIZE)
d2d4bdde 228DEF_FUNCTION_TYPE_3 (BT_FN_INT_CONST_PTR_CONST_PTR_SIZE,
229 BT_INT, BT_CONST_PTR, BT_CONST_PTR, BT_SIZE)
455730ef 230DEF_FUNCTION_TYPE_3 (BT_FN_PTR_PTR_INT_SIZE,
231 BT_PTR, BT_PTR, BT_INT, BT_SIZE)
03901330 232DEF_FUNCTION_TYPE_3 (BT_FN_VOID_PTR_INT_INT,
233 BT_VOID, BT_PTR, BT_INT, BT_INT)
c4950093 234DEF_FUNCTION_TYPE_3 (BT_FN_VOID_CONST_PTR_PTR_SIZE,
235 BT_VOID, BT_CONST_PTR, BT_PTR, BT_SIZE)
03901330 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)
b9b15671 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)
e88e2794 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)
4070bd43 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)
d2d4bdde 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)
03901330 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)
b9b15671 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)
d2d4bdde 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)
82086392 276DEF_FUNCTION_TYPE_VAR_1 (BT_FN_VOID_CONST_PTR_VAR,
277 BT_VOID, BT_CONST_PTR)
d2d4bdde 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)
03901330 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)
b9b15671 290DEF_FUNCTION_TYPE_VAR_3 (BT_FN_SSIZE_STRING_SIZE_CONST_STRING_VAR,
291 BT_SSIZE, BT_STRING, BT_SIZE, BT_CONST_STRING)
d2d4bdde 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)