1/* Copyright (C) 2001-2016 Free Software Foundation, Inc. 2 3This file is part of GCC. 4 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 3, or (at your option) any later 8version. 9 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. 14 15You should have received a copy of the GNU General Public License 16along with GCC; see the file COPYING3. If not see 17<http://www.gnu.org/licenses/>. */ 18 19/* This header provides a declarative way of describing the types that 20 are used when declaring builtin functions. 21 22 Before including this header, you must define the following macros: 23 24 DEF_PRIMITIVE_TYPE (ENUM, TYPE) 25 26 The ENUM is an identifier indicating which type is being defined. 27 TYPE is an expression for a `tree' that represents the type. 28 29 DEF_FUNCTION_TYPE_0 (ENUM, RETURN) 30 DEF_FUNCTION_TYPE_1 (ENUM, RETURN, ARG1) 31 DEF_FUNCTION_TYPE_2 (ENUM, RETURN, ARG1, ARG2) 32 [...] 33 34 These macros describe function types. ENUM is as above. The 35 RETURN type is one of the enumerals already defined. ARG1, ARG2, 36 etc, give the types of the arguments, similarly. 37 38 DEF_FUNCTION_TYPE_VAR_0 (ENUM, RETURN) 39 DEF_FUNCTION_TYPE_VAR_1 (ENUM, RETURN, ARG1) 40 DEF_FUNCTION_TYPE_VAR_2 (ENUM, RETURN, ARG1, ARG2) 41 [...] 42 43 Similar, but for function types that take variable arguments. 44 For example: 45 46 DEF_FUNCTION_TYPE_1 (BT_INT_DOUBLE, BT_INT, BT_DOUBLE) 47 48 describes the type `int ()(double)', using the enumeral 49 BT_INT_DOUBLE, whereas: 50 51 DEF_FUNCTION_TYPE_VAR_1 (BT_INT_DOUBLE_VAR, BT_INT, BT_DOUBLE) 52 53 describes the type `int ()(double, ...)'. 54 55 DEF_POINTER_TYPE (ENUM, TYPE) 56 57 This macro describes a pointer type. ENUM is as above; TYPE is 58 the type pointed to. */ 59 60DEF_PRIMITIVE_TYPE (BT_VOID, void_type_node) 61DEF_PRIMITIVE_TYPE (BT_BOOL, boolean_type_node) 62DEF_PRIMITIVE_TYPE (BT_INT, integer_type_node) 63DEF_PRIMITIVE_TYPE (BT_UINT, unsigned_type_node) 64DEF_PRIMITIVE_TYPE (BT_LONG, long_integer_type_node) 65DEF_PRIMITIVE_TYPE (BT_ULONG, long_unsigned_type_node) 66DEF_PRIMITIVE_TYPE (BT_LONGLONG, long_long_integer_type_node) 67DEF_PRIMITIVE_TYPE (BT_ULONGLONG, long_long_unsigned_type_node) 68DEF_PRIMITIVE_TYPE (BT_INTMAX, intmax_type_node) 69DEF_PRIMITIVE_TYPE (BT_UINTMAX, uintmax_type_node) 70DEF_PRIMITIVE_TYPE (BT_UINT16, uint16_type_node) 71DEF_PRIMITIVE_TYPE (BT_UINT32, uint32_type_node) 72DEF_PRIMITIVE_TYPE (BT_UINT64, uint64_type_node) 73DEF_PRIMITIVE_TYPE (BT_WORD, (*lang_hooks.types.type_for_mode) (word_mode, 1)) 74DEF_PRIMITIVE_TYPE (BT_UNWINDWORD, (*lang_hooks.types.type_for_mode) 75 (targetm.unwind_word_mode (), 1)) 76DEF_PRIMITIVE_TYPE (BT_FLOAT, float_type_node) 77DEF_PRIMITIVE_TYPE (BT_DOUBLE, double_type_node) 78DEF_PRIMITIVE_TYPE (BT_LONGDOUBLE, long_double_type_node) 79DEF_PRIMITIVE_TYPE (BT_COMPLEX_FLOAT, complex_float_type_node) 80DEF_PRIMITIVE_TYPE (BT_COMPLEX_DOUBLE, complex_double_type_node) 81DEF_PRIMITIVE_TYPE (BT_COMPLEX_LONGDOUBLE, complex_long_double_type_node) 82 83DEF_PRIMITIVE_TYPE (BT_PTR, ptr_type_node) 84DEF_PRIMITIVE_TYPE (BT_FILEPTR, fileptr_type_node) 85DEF_PRIMITIVE_TYPE (BT_CONST_PTR, const_ptr_type_node) 86DEF_PRIMITIVE_TYPE (BT_VOLATILE_PTR, 87 build_pointer_type 88 (build_qualified_type (void_type_node, 89 TYPE_QUAL_VOLATILE))) 90DEF_PRIMITIVE_TYPE (BT_CONST_VOLATILE_PTR, 91 build_pointer_type 92 (build_qualified_type (void_type_node, 93 TYPE_QUAL_VOLATILE|TYPE_QUAL_CONST))) 94DEF_PRIMITIVE_TYPE (BT_PTRMODE, (*lang_hooks.types.type_for_mode)(ptr_mode, 0)) 95DEF_PRIMITIVE_TYPE (BT_INT_PTR, integer_ptr_type_node) 96DEF_PRIMITIVE_TYPE (BT_FLOAT_PTR, float_ptr_type_node) 97DEF_PRIMITIVE_TYPE (BT_DOUBLE_PTR, double_ptr_type_node) 98DEF_PRIMITIVE_TYPE (BT_CONST_DOUBLE_PTR, 99 build_pointer_type 100 (build_qualified_type (double_type_node, 101 TYPE_QUAL_CONST))) 102DEF_PRIMITIVE_TYPE (BT_LONGDOUBLE_PTR, long_double_ptr_type_node) 103DEF_PRIMITIVE_TYPE (BT_PID, pid_type_node) 104DEF_PRIMITIVE_TYPE (BT_SIZE, size_type_node) 105DEF_PRIMITIVE_TYPE (BT_SSIZE, signed_size_type_node) 106DEF_PRIMITIVE_TYPE (BT_WINT, wint_type_node) 107DEF_PRIMITIVE_TYPE (BT_STRING, string_type_node) 108DEF_PRIMITIVE_TYPE (BT_CONST_STRING, const_string_type_node) 109 110DEF_PRIMITIVE_TYPE (BT_DFLOAT32, dfloat32_type_node) 111DEF_PRIMITIVE_TYPE (BT_DFLOAT64, dfloat64_type_node) 112DEF_PRIMITIVE_TYPE (BT_DFLOAT128, dfloat128_type_node) 113DEF_PRIMITIVE_TYPE (BT_DFLOAT32_PTR, dfloat32_ptr_type_node) 114DEF_PRIMITIVE_TYPE (BT_DFLOAT64_PTR, dfloat64_ptr_type_node) 115DEF_PRIMITIVE_TYPE (BT_DFLOAT128_PTR, dfloat128_ptr_type_node) 116 117DEF_PRIMITIVE_TYPE (BT_VALIST_REF, va_list_ref_type_node) 118DEF_PRIMITIVE_TYPE (BT_VALIST_ARG, va_list_arg_type_node) 119 120DEF_PRIMITIVE_TYPE (BT_I1, builtin_type_for_size (BITS_PER_UNIT*1, 1)) 121DEF_PRIMITIVE_TYPE (BT_I2, builtin_type_for_size (BITS_PER_UNIT*2, 1)) 122DEF_PRIMITIVE_TYPE (BT_I4, builtin_type_for_size (BITS_PER_UNIT*4, 1)) 123DEF_PRIMITIVE_TYPE (BT_I8, builtin_type_for_size (BITS_PER_UNIT*8, 1)) 124DEF_PRIMITIVE_TYPE (BT_I16, builtin_type_for_size (BITS_PER_UNIT*16, 1)) 125 126DEF_PRIMITIVE_TYPE (BT_BND, pointer_bounds_type_node) 127 128DEF_POINTER_TYPE (BT_PTR_CONST_STRING, BT_CONST_STRING) 129DEF_POINTER_TYPE (BT_PTR_UINT, BT_UINT) 130DEF_POINTER_TYPE (BT_PTR_LONG, BT_LONG) 131DEF_POINTER_TYPE (BT_PTR_ULONG, BT_ULONG) 132DEF_POINTER_TYPE (BT_PTR_LONGLONG, BT_LONGLONG) 133DEF_POINTER_TYPE (BT_PTR_ULONGLONG, BT_ULONGLONG) 134DEF_POINTER_TYPE (BT_PTR_PTR, BT_PTR) 135 136DEF_FUNCTION_TYPE_0 (BT_FN_VOID, BT_VOID) 137DEF_FUNCTION_TYPE_0 (BT_FN_BOOL, BT_BOOL) 138DEF_FUNCTION_TYPE_0 (BT_FN_PTR, BT_PTR) 139DEF_FUNCTION_TYPE_0 (BT_FN_CONST_STRING, BT_CONST_STRING) 140DEF_FUNCTION_TYPE_0 (BT_FN_PID, BT_PID) 141DEF_FUNCTION_TYPE_0 (BT_FN_INT, BT_INT) 142DEF_FUNCTION_TYPE_0 (BT_FN_UINT, BT_UINT) 143DEF_FUNCTION_TYPE_0 (BT_FN_FLOAT, BT_FLOAT) 144DEF_FUNCTION_TYPE_0 (BT_FN_DOUBLE, BT_DOUBLE) 145/* For "long double" we use LONGDOUBLE (not LONG_DOUBLE) to 146 distinguish it from two types in sequence, "long" followed by 147 "double". */ 148DEF_FUNCTION_TYPE_0 (BT_FN_LONGDOUBLE, BT_LONGDOUBLE) 149DEF_FUNCTION_TYPE_0 (BT_FN_DFLOAT32, BT_DFLOAT32) 150DEF_FUNCTION_TYPE_0 (BT_FN_DFLOAT64, BT_DFLOAT64) 151DEF_FUNCTION_TYPE_0 (BT_FN_DFLOAT128, BT_DFLOAT128) 152 153DEF_FUNCTION_TYPE_1 (BT_FN_LONG_LONG, BT_LONG, BT_LONG) 154DEF_FUNCTION_TYPE_1 (BT_FN_LONGLONG_LONGLONG, BT_LONGLONG, BT_LONGLONG) 155DEF_FUNCTION_TYPE_1 (BT_FN_INTMAX_INTMAX, BT_INTMAX, BT_INTMAX) 156DEF_FUNCTION_TYPE_1 (BT_FN_FLOAT_FLOAT, BT_FLOAT, BT_FLOAT) 157DEF_FUNCTION_TYPE_1 (BT_FN_DOUBLE_DOUBLE, BT_DOUBLE, BT_DOUBLE) 158DEF_FUNCTION_TYPE_1 (BT_FN_LONGDOUBLE_LONGDOUBLE, 159 BT_LONGDOUBLE, BT_LONGDOUBLE) 160DEF_FUNCTION_TYPE_1 (BT_FN_COMPLEX_FLOAT_COMPLEX_FLOAT, 161 BT_COMPLEX_FLOAT, BT_COMPLEX_FLOAT) 162DEF_FUNCTION_TYPE_1 (BT_FN_COMPLEX_DOUBLE_COMPLEX_DOUBLE, 163 BT_COMPLEX_DOUBLE, BT_COMPLEX_DOUBLE) 164DEF_FUNCTION_TYPE_1 (BT_FN_COMPLEX_LONGDOUBLE_COMPLEX_LONGDOUBLE, 165 BT_COMPLEX_LONGDOUBLE, BT_COMPLEX_LONGDOUBLE) 166DEF_FUNCTION_TYPE_1 (BT_FN_FLOAT_COMPLEX_FLOAT, 167 BT_FLOAT, BT_COMPLEX_FLOAT) 168DEF_FUNCTION_TYPE_1 (BT_FN_DOUBLE_COMPLEX_DOUBLE, 169 BT_DOUBLE, BT_COMPLEX_DOUBLE) 170DEF_FUNCTION_TYPE_1 (BT_FN_LONGDOUBLE_COMPLEX_LONGDOUBLE, 171 BT_LONGDOUBLE, BT_COMPLEX_LONGDOUBLE) 172DEF_FUNCTION_TYPE_1 (BT_FN_COMPLEX_FLOAT_FLOAT, 173 BT_COMPLEX_FLOAT, BT_FLOAT) 174DEF_FUNCTION_TYPE_1 (BT_FN_COMPLEX_DOUBLE_DOUBLE, 175 BT_COMPLEX_DOUBLE, BT_DOUBLE) 176DEF_FUNCTION_TYPE_1 (BT_FN_COMPLEX_LONGDOUBLE_LONGDOUBLE, 177 BT_COMPLEX_LONGDOUBLE, BT_LONGDOUBLE) 178DEF_FUNCTION_TYPE_1 (BT_FN_PTR_UINT, BT_PTR, BT_UINT) 179DEF_FUNCTION_TYPE_1 (BT_FN_PTR_SIZE, BT_PTR, BT_SIZE) 180DEF_FUNCTION_TYPE_1 (BT_FN_INT_INT, BT_INT, BT_INT) 181DEF_FUNCTION_TYPE_1 (BT_FN_INT_UINT, BT_INT, BT_UINT) 182DEF_FUNCTION_TYPE_1 (BT_FN_INT_LONG, BT_INT, BT_LONG) 183DEF_FUNCTION_TYPE_1 (BT_FN_INT_ULONG, BT_INT, BT_ULONG) 184DEF_FUNCTION_TYPE_1 (BT_FN_INT_LONGLONG, BT_INT, BT_LONGLONG) 185DEF_FUNCTION_TYPE_1 (BT_FN_INT_ULONGLONG, BT_INT, BT_ULONGLONG) 186DEF_FUNCTION_TYPE_1 (BT_FN_INT_INTMAX, BT_INT, BT_INTMAX) 187DEF_FUNCTION_TYPE_1 (BT_FN_INT_UINTMAX, BT_INT, BT_UINTMAX) 188DEF_FUNCTION_TYPE_1 (BT_FN_INT_PTR, BT_INT, BT_PTR) 189DEF_FUNCTION_TYPE_1 (BT_FN_INT_FLOAT, BT_INT, BT_FLOAT) 190DEF_FUNCTION_TYPE_1 (BT_FN_INT_DOUBLE, BT_INT, BT_DOUBLE) 191DEF_FUNCTION_TYPE_1 (BT_FN_INT_LONGDOUBLE, BT_INT, BT_LONGDOUBLE) 192DEF_FUNCTION_TYPE_1 (BT_FN_INT_DFLOAT32, BT_INT, BT_DFLOAT32) 193DEF_FUNCTION_TYPE_1 (BT_FN_INT_DFLOAT64, BT_INT, BT_DFLOAT64) 194DEF_FUNCTION_TYPE_1 (BT_FN_INT_DFLOAT128, BT_INT, BT_DFLOAT128) 195DEF_FUNCTION_TYPE_1 (BT_FN_LONG_FLOAT, BT_LONG, BT_FLOAT) 196DEF_FUNCTION_TYPE_1 (BT_FN_LONG_DOUBLE, BT_LONG, BT_DOUBLE) 197DEF_FUNCTION_TYPE_1 (BT_FN_LONG_LONGDOUBLE, BT_LONG, BT_LONGDOUBLE) 198DEF_FUNCTION_TYPE_1 (BT_FN_LONGLONG_FLOAT, BT_LONGLONG, BT_FLOAT) 199DEF_FUNCTION_TYPE_1 (BT_FN_LONGLONG_DOUBLE, BT_LONGLONG, BT_DOUBLE) 200DEF_FUNCTION_TYPE_1 (BT_FN_LONGLONG_LONGDOUBLE, BT_LONGLONG, BT_LONGDOUBLE) 201DEF_FUNCTION_TYPE_1 (BT_FN_VOID_PTR, BT_VOID, BT_PTR) 202DEF_FUNCTION_TYPE_1 (BT_FN_SIZE_CONST_STRING, BT_SIZE, BT_CONST_STRING) 203DEF_FUNCTION_TYPE_1 (BT_FN_INT_CONST_STRING, BT_INT, BT_CONST_STRING) 204DEF_FUNCTION_TYPE_1 (BT_FN_PTR_PTR, BT_PTR, BT_PTR) 205DEF_FUNCTION_TYPE_1 (BT_FN_VOID_VALIST_REF, BT_VOID, BT_VALIST_REF) 206DEF_FUNCTION_TYPE_1 (BT_FN_VOID_INT, BT_VOID, BT_INT) 207DEF_FUNCTION_TYPE_1 (BT_FN_FLOAT_CONST_STRING, BT_FLOAT, BT_CONST_STRING) 208DEF_FUNCTION_TYPE_1 (BT_FN_DOUBLE_CONST_STRING, BT_DOUBLE, BT_CONST_STRING) 209DEF_FUNCTION_TYPE_1 (BT_FN_LONGDOUBLE_CONST_STRING, 210 BT_LONGDOUBLE, BT_CONST_STRING) 211DEF_FUNCTION_TYPE_1 (BT_FN_DFLOAT32_CONST_STRING, BT_DFLOAT32, BT_CONST_STRING) 212DEF_FUNCTION_TYPE_1 (BT_FN_DFLOAT64_CONST_STRING, BT_DFLOAT64, BT_CONST_STRING) 213DEF_FUNCTION_TYPE_1 (BT_FN_DFLOAT128_CONST_STRING, 214 BT_DFLOAT128, BT_CONST_STRING) 215DEF_FUNCTION_TYPE_1 (BT_FN_STRING_CONST_STRING, BT_STRING, BT_CONST_STRING) 216DEF_FUNCTION_TYPE_1 (BT_FN_UNWINDWORD_PTR, BT_UNWINDWORD, BT_PTR) 217DEF_FUNCTION_TYPE_1 (BT_FN_INT_WINT, BT_INT, BT_WINT) 218DEF_FUNCTION_TYPE_1 (BT_FN_WINT_WINT, BT_WINT, BT_WINT) 219DEF_FUNCTION_TYPE_1 (BT_FN_DFLOAT32_DFLOAT32, BT_DFLOAT32, BT_DFLOAT32) 220DEF_FUNCTION_TYPE_1 (BT_FN_DFLOAT64_DFLOAT64, BT_DFLOAT64, BT_DFLOAT64) 221DEF_FUNCTION_TYPE_1 (BT_FN_DFLOAT128_DFLOAT128, BT_DFLOAT128, BT_DFLOAT128) 222DEF_FUNCTION_TYPE_1 (BT_FN_VOID_VPTR, BT_VOID, BT_VOLATILE_PTR) 223DEF_FUNCTION_TYPE_1 (BT_FN_VOID_PTRPTR, BT_VOID, BT_PTR_PTR) 224DEF_FUNCTION_TYPE_1 (BT_FN_VOID_CONST_PTR, BT_VOID, BT_CONST_PTR) 225DEF_FUNCTION_TYPE_1 (BT_FN_UINT_UINT, BT_UINT, BT_UINT) 226DEF_FUNCTION_TYPE_1 (BT_FN_ULONG_ULONG, BT_ULONG, BT_ULONG) 227DEF_FUNCTION_TYPE_1 (BT_FN_ULONGLONG_ULONGLONG, BT_ULONGLONG, BT_ULONGLONG) 228DEF_FUNCTION_TYPE_1 (BT_FN_UINT16_UINT16, BT_UINT16, BT_UINT16) 229DEF_FUNCTION_TYPE_1 (BT_FN_UINT32_UINT32, BT_UINT32, BT_UINT32) 230DEF_FUNCTION_TYPE_1 (BT_FN_UINT64_UINT64, BT_UINT64, BT_UINT64) 231DEF_FUNCTION_TYPE_1 (BT_FN_BOOL_INT, BT_BOOL, BT_INT) 232DEF_FUNCTION_TYPE_1 (BT_FN_PTR_CONST_PTR, BT_PTR, BT_CONST_PTR) 233DEF_FUNCTION_TYPE_1 (BT_FN_CONST_PTR_CONST_PTR, BT_CONST_PTR, BT_CONST_PTR) 234DEF_FUNCTION_TYPE_1 (BT_FN_BND_CONST_PTR, BT_BND, BT_CONST_PTR) 235DEF_FUNCTION_TYPE_1 (BT_FN_CONST_PTR_BND, BT_CONST_PTR, BT_BND) 236 237DEF_POINTER_TYPE (BT_PTR_FN_VOID_PTR, BT_FN_VOID_PTR) 238 239DEF_FUNCTION_TYPE_2 (BT_FN_VOID_PTR_INT, BT_VOID, BT_PTR, BT_INT) 240DEF_FUNCTION_TYPE_2 (BT_FN_STRING_STRING_CONST_STRING, 241 BT_STRING, BT_STRING, BT_CONST_STRING) 242DEF_FUNCTION_TYPE_2 (BT_FN_INT_CONST_STRING_CONST_STRING, 243 BT_INT, BT_CONST_STRING, BT_CONST_STRING) 244DEF_FUNCTION_TYPE_2 (BT_FN_STRING_CONST_STRING_CONST_STRING, 245 BT_STRING, BT_CONST_STRING, BT_CONST_STRING) 246DEF_FUNCTION_TYPE_2 (BT_FN_SIZE_CONST_STRING_CONST_STRING, 247 BT_SIZE, BT_CONST_STRING, BT_CONST_STRING) 248DEF_FUNCTION_TYPE_2 (BT_FN_STRING_CONST_STRING_INT, 249 BT_STRING, BT_CONST_STRING, BT_INT) 250DEF_FUNCTION_TYPE_2 (BT_FN_STRING_CONST_STRING_SIZE, 251 BT_STRING, BT_CONST_STRING, BT_SIZE) 252DEF_FUNCTION_TYPE_2 (BT_FN_INT_CONST_STRING_FILEPTR, 253 BT_INT, BT_CONST_STRING, BT_FILEPTR) 254DEF_FUNCTION_TYPE_2 (BT_FN_INT_INT_FILEPTR, 255 BT_INT, BT_INT, BT_FILEPTR) 256DEF_FUNCTION_TYPE_2 (BT_FN_VOID_PTRMODE_PTR, 257 BT_VOID, BT_PTRMODE, BT_PTR) 258DEF_FUNCTION_TYPE_2 (BT_FN_VOID_PTR_PTRMODE, 259 BT_VOID, BT_PTR, BT_PTRMODE) 260DEF_FUNCTION_TYPE_2 (BT_FN_VOID_VALIST_REF_VALIST_ARG, 261 BT_VOID, BT_VALIST_REF, BT_VALIST_ARG) 262DEF_FUNCTION_TYPE_2 (BT_FN_LONG_LONG_LONG, 263 BT_LONG, BT_LONG, BT_LONG) 264DEF_FUNCTION_TYPE_2 (BT_FN_INT_PTR_CONST_STRING, 265 BT_INT, BT_PTR, BT_CONST_STRING) 266DEF_FUNCTION_TYPE_2 (BT_FN_VOID_PTR_SIZE, 267 BT_VOID, BT_PTR, BT_SIZE) 268DEF_FUNCTION_TYPE_2 (BT_FN_FLOAT_FLOAT_FLOAT, 269 BT_FLOAT, BT_FLOAT, BT_FLOAT) 270DEF_FUNCTION_TYPE_2 (BT_FN_DOUBLE_DOUBLE_DOUBLE, 271 BT_DOUBLE, BT_DOUBLE, BT_DOUBLE) 272DEF_FUNCTION_TYPE_2 (BT_FN_LONGDOUBLE_LONGDOUBLE_LONGDOUBLE, 273 BT_LONGDOUBLE, BT_LONGDOUBLE, BT_LONGDOUBLE) 274DEF_FUNCTION_TYPE_2 (BT_FN_FLOAT_FLOAT_FLOATPTR, 275 BT_FLOAT, BT_FLOAT, BT_FLOAT_PTR) 276DEF_FUNCTION_TYPE_2 (BT_FN_DOUBLE_DOUBLE_DOUBLEPTR, 277 BT_DOUBLE, BT_DOUBLE, BT_DOUBLE_PTR) 278DEF_FUNCTION_TYPE_2 (BT_FN_LONGDOUBLE_LONGDOUBLE_LONGDOUBLEPTR, 279 BT_LONGDOUBLE, BT_LONGDOUBLE, BT_LONGDOUBLE_PTR) 280DEF_FUNCTION_TYPE_2 (BT_FN_FLOAT_FLOAT_LONGDOUBLE, 281 BT_FLOAT, BT_FLOAT, BT_LONGDOUBLE) 282DEF_FUNCTION_TYPE_2 (BT_FN_DOUBLE_DOUBLE_LONGDOUBLE, 283 BT_DOUBLE, BT_DOUBLE, BT_LONGDOUBLE) 284DEF_FUNCTION_TYPE_2 (BT_FN_FLOAT_FLOAT_INT, 285 BT_FLOAT, BT_FLOAT, BT_INT) 286DEF_FUNCTION_TYPE_2 (BT_FN_DOUBLE_DOUBLE_INT, 287 BT_DOUBLE, BT_DOUBLE, BT_INT) 288DEF_FUNCTION_TYPE_2 (BT_FN_LONGDOUBLE_LONGDOUBLE_INT, 289 BT_LONGDOUBLE, BT_LONGDOUBLE, BT_INT) 290DEF_FUNCTION_TYPE_2 (BT_FN_FLOAT_FLOAT_INTPTR, 291 BT_FLOAT, BT_FLOAT, BT_INT_PTR) 292DEF_FUNCTION_TYPE_2 (BT_FN_DOUBLE_DOUBLE_INTPTR, 293 BT_DOUBLE, BT_DOUBLE, BT_INT_PTR) 294DEF_FUNCTION_TYPE_2 (BT_FN_LONGDOUBLE_LONGDOUBLE_INTPTR, 295 BT_LONGDOUBLE, BT_LONGDOUBLE, BT_INT_PTR) 296DEF_FUNCTION_TYPE_2 (BT_FN_FLOAT_INT_FLOAT, 297 BT_FLOAT, BT_INT, BT_FLOAT) 298DEF_FUNCTION_TYPE_2 (BT_FN_DOUBLE_INT_DOUBLE, 299 BT_DOUBLE, BT_INT, BT_DOUBLE) 300DEF_FUNCTION_TYPE_2 (BT_FN_LONGDOUBLE_INT_LONGDOUBLE, 301 BT_LONGDOUBLE, BT_INT, BT_LONGDOUBLE) 302DEF_FUNCTION_TYPE_2 (BT_FN_FLOAT_FLOAT_LONG, 303 BT_FLOAT, BT_FLOAT, BT_LONG) 304DEF_FUNCTION_TYPE_2 (BT_FN_DOUBLE_DOUBLE_LONG, 305 BT_DOUBLE, BT_DOUBLE, BT_LONG) 306DEF_FUNCTION_TYPE_2 (BT_FN_LONGDOUBLE_LONGDOUBLE_LONG, 307 BT_LONGDOUBLE, BT_LONGDOUBLE, BT_LONG) 308DEF_FUNCTION_TYPE_2 (BT_FN_INT_CONST_STRING_VALIST_ARG, 309 BT_INT, BT_CONST_STRING, BT_VALIST_ARG) 310DEF_FUNCTION_TYPE_2 (BT_FN_PTR_SIZE_SIZE, 311 BT_PTR, BT_SIZE, BT_SIZE) 312DEF_FUNCTION_TYPE_2 (BT_FN_PTR_PTR_SIZE, 313 BT_PTR, BT_PTR, BT_SIZE) 314DEF_FUNCTION_TYPE_2 (BT_FN_COMPLEX_FLOAT_COMPLEX_FLOAT_COMPLEX_FLOAT, 315 BT_COMPLEX_FLOAT, BT_COMPLEX_FLOAT, BT_COMPLEX_FLOAT) 316DEF_FUNCTION_TYPE_2 (BT_FN_COMPLEX_DOUBLE_COMPLEX_DOUBLE_COMPLEX_DOUBLE, 317 BT_COMPLEX_DOUBLE, BT_COMPLEX_DOUBLE, BT_COMPLEX_DOUBLE) 318DEF_FUNCTION_TYPE_2 (BT_FN_COMPLEX_LONGDOUBLE_COMPLEX_LONGDOUBLE_COMPLEX_LONGDOUBLE, 319 BT_COMPLEX_LONGDOUBLE, BT_COMPLEX_LONGDOUBLE, BT_COMPLEX_LONGDOUBLE) 320DEF_FUNCTION_TYPE_2 (BT_FN_VOID_PTR_PTR, BT_VOID, BT_PTR, BT_PTR) 321DEF_FUNCTION_TYPE_2 (BT_FN_INT_CONST_STRING_PTR_CONST_STRING, 322 BT_INT, BT_CONST_STRING, BT_PTR_CONST_STRING) 323DEF_FUNCTION_TYPE_2 (BT_FN_SIZE_CONST_PTR_INT, BT_SIZE, BT_CONST_PTR, BT_INT) 324DEF_FUNCTION_TYPE_2 (BT_FN_I1_VPTR_I1, BT_I1, BT_VOLATILE_PTR, BT_I1) 325DEF_FUNCTION_TYPE_2 (BT_FN_I2_VPTR_I2, BT_I2, BT_VOLATILE_PTR, BT_I2) 326DEF_FUNCTION_TYPE_2 (BT_FN_I4_VPTR_I4, BT_I4, BT_VOLATILE_PTR, BT_I4) 327DEF_FUNCTION_TYPE_2 (BT_FN_I8_VPTR_I8, BT_I8, BT_VOLATILE_PTR, BT_I8) 328DEF_FUNCTION_TYPE_2 (BT_FN_I16_VPTR_I16, BT_I16, BT_VOLATILE_PTR, BT_I16) 329DEF_FUNCTION_TYPE_2 (BT_FN_BOOL_LONGPTR_LONGPTR, 330 BT_BOOL, BT_PTR_LONG, BT_PTR_LONG) 331DEF_FUNCTION_TYPE_2 (BT_FN_BOOL_ULONGLONGPTR_ULONGLONGPTR, 332 BT_BOOL, BT_PTR_ULONGLONG, BT_PTR_ULONGLONG) 333DEF_FUNCTION_TYPE_2 (BT_FN_I1_CONST_VPTR_INT, BT_I1, BT_CONST_VOLATILE_PTR, 334 BT_INT) 335DEF_FUNCTION_TYPE_2 (BT_FN_I2_CONST_VPTR_INT, BT_I2, BT_CONST_VOLATILE_PTR, 336 BT_INT) 337DEF_FUNCTION_TYPE_2 (BT_FN_I4_CONST_VPTR_INT, BT_I4, BT_CONST_VOLATILE_PTR, 338 BT_INT) 339DEF_FUNCTION_TYPE_2 (BT_FN_I8_CONST_VPTR_INT, BT_I8, BT_CONST_VOLATILE_PTR, 340 BT_INT) 341DEF_FUNCTION_TYPE_2 (BT_FN_I16_CONST_VPTR_INT, BT_I16, BT_CONST_VOLATILE_PTR, 342 BT_INT) 343DEF_FUNCTION_TYPE_2 (BT_FN_VOID_VPTR_INT, BT_VOID, BT_VOLATILE_PTR, BT_INT) 344DEF_FUNCTION_TYPE_2 (BT_FN_BOOL_VPTR_INT, BT_BOOL, BT_VOLATILE_PTR, BT_INT) 345DEF_FUNCTION_TYPE_2 (BT_FN_BOOL_SIZE_CONST_VPTR, BT_BOOL, BT_SIZE, 346 BT_CONST_VOLATILE_PTR) 347DEF_FUNCTION_TYPE_2 (BT_FN_BOOL_INT_BOOL, BT_BOOL, BT_INT, BT_BOOL) 348DEF_FUNCTION_TYPE_2 (BT_FN_VOID_UINT_UINT, BT_VOID, BT_UINT, BT_UINT) 349DEF_FUNCTION_TYPE_2 (BT_FN_PTR_CONST_PTR_SIZE, BT_PTR, BT_CONST_PTR, BT_SIZE) 350DEF_FUNCTION_TYPE_2 (BT_FN_PTR_CONST_PTR_CONST_PTR, BT_PTR, BT_CONST_PTR, BT_CONST_PTR) 351DEF_FUNCTION_TYPE_2 (BT_FN_VOID_PTRPTR_CONST_PTR, BT_VOID, BT_PTR_PTR, BT_CONST_PTR) 352DEF_FUNCTION_TYPE_2 (BT_FN_VOID_CONST_PTR_SIZE, BT_VOID, BT_CONST_PTR, BT_SIZE) 353DEF_FUNCTION_TYPE_2 (BT_FN_VOID_PTR_BND, BT_VOID, BT_PTR, BT_BND) 354DEF_FUNCTION_TYPE_2 (BT_FN_CONST_PTR_CONST_PTR_CONST_PTR, BT_CONST_PTR, BT_CONST_PTR, BT_CONST_PTR) 355DEF_FUNCTION_TYPE_2 (BT_FN_BND_CONST_PTR_SIZE, BT_BND, BT_CONST_PTR, BT_SIZE) 356 357DEF_POINTER_TYPE (BT_PTR_FN_VOID_PTR_PTR, BT_FN_VOID_PTR_PTR) 358 359DEF_FUNCTION_TYPE_3 (BT_FN_STRING_STRING_CONST_STRING_SIZE, 360 BT_STRING, BT_STRING, BT_CONST_STRING, BT_SIZE) 361DEF_FUNCTION_TYPE_3 (BT_FN_INT_CONST_STRING_CONST_STRING_SIZE, 362 BT_INT, BT_CONST_STRING, BT_CONST_STRING, BT_SIZE) 363DEF_FUNCTION_TYPE_3 (BT_FN_PTR_PTR_CONST_PTR_SIZE, 364 BT_PTR, BT_PTR, BT_CONST_PTR, BT_SIZE) 365DEF_FUNCTION_TYPE_3 (BT_FN_VOID_PTR_CONST_PTR_SIZE, 366 BT_VOID, BT_PTR, BT_CONST_PTR, BT_SIZE) 367DEF_FUNCTION_TYPE_3 (BT_FN_INT_CONST_PTR_CONST_PTR_SIZE, 368 BT_INT, BT_CONST_PTR, BT_CONST_PTR, BT_SIZE) 369DEF_FUNCTION_TYPE_3 (BT_FN_PTR_PTR_INT_SIZE, 370 BT_PTR, BT_PTR, BT_INT, BT_SIZE) 371DEF_FUNCTION_TYPE_3 (BT_FN_VOID_PTR_INT_SIZE, 372 BT_VOID, BT_PTR, BT_INT, BT_SIZE) 373DEF_FUNCTION_TYPE_3 (BT_FN_VOID_PTR_INT_INT, 374 BT_VOID, BT_PTR, BT_INT, BT_INT) 375DEF_FUNCTION_TYPE_3 (BT_FN_VOID_CONST_PTR_PTR_SIZE, 376 BT_VOID, BT_CONST_PTR, BT_PTR, BT_SIZE) 377DEF_FUNCTION_TYPE_3 (BT_FN_INT_STRING_CONST_STRING_VALIST_ARG, 378 BT_INT, BT_STRING, BT_CONST_STRING, BT_VALIST_ARG) 379DEF_FUNCTION_TYPE_3 (BT_FN_INT_CONST_STRING_CONST_STRING_VALIST_ARG, 380 BT_INT, BT_CONST_STRING, BT_CONST_STRING, BT_VALIST_ARG) 381DEF_FUNCTION_TYPE_3 (BT_FN_INT_FILEPTR_CONST_STRING_VALIST_ARG, 382 BT_INT, BT_FILEPTR, BT_CONST_STRING, BT_VALIST_ARG) 383DEF_FUNCTION_TYPE_3 (BT_FN_INT_PTR_PTR_PTR, 384 BT_INT, BT_PTR, BT_PTR, BT_PTR) 385DEF_FUNCTION_TYPE_3 (BT_FN_STRING_CONST_STRING_CONST_STRING_INT, 386 BT_STRING, BT_CONST_STRING, BT_CONST_STRING, BT_INT) 387DEF_FUNCTION_TYPE_3 (BT_FN_FLOAT_FLOAT_FLOAT_FLOAT, 388 BT_FLOAT, BT_FLOAT, BT_FLOAT, BT_FLOAT) 389DEF_FUNCTION_TYPE_3 (BT_FN_DOUBLE_DOUBLE_DOUBLE_DOUBLE, 390 BT_DOUBLE, BT_DOUBLE, BT_DOUBLE, BT_DOUBLE) 391DEF_FUNCTION_TYPE_3 (BT_FN_LONGDOUBLE_LONGDOUBLE_LONGDOUBLE_LONGDOUBLE, 392 BT_LONGDOUBLE, BT_LONGDOUBLE, BT_LONGDOUBLE, BT_LONGDOUBLE) 393DEF_FUNCTION_TYPE_3 (BT_FN_FLOAT_FLOAT_FLOAT_INTPTR, 394 BT_FLOAT, BT_FLOAT, BT_FLOAT, BT_INT_PTR) 395DEF_FUNCTION_TYPE_3 (BT_FN_DOUBLE_DOUBLE_DOUBLE_INTPTR, 396 BT_DOUBLE, BT_DOUBLE, BT_DOUBLE, BT_INT_PTR) 397DEF_FUNCTION_TYPE_3 (BT_FN_LONGDOUBLE_LONGDOUBLE_LONGDOUBLE_INTPTR, 398 BT_LONGDOUBLE, BT_LONGDOUBLE, BT_LONGDOUBLE, BT_INT_PTR) 399DEF_FUNCTION_TYPE_3 (BT_FN_VOID_FLOAT_FLOATPTR_FLOATPTR, 400 BT_VOID, BT_FLOAT, BT_FLOAT_PTR, BT_FLOAT_PTR) 401DEF_FUNCTION_TYPE_3 (BT_FN_VOID_DOUBLE_DOUBLEPTR_DOUBLEPTR, 402 BT_VOID, BT_DOUBLE, BT_DOUBLE_PTR, BT_DOUBLE_PTR) 403DEF_FUNCTION_TYPE_3 (BT_FN_VOID_LONGDOUBLE_LONGDOUBLEPTR_LONGDOUBLEPTR, 404 BT_VOID, BT_LONGDOUBLE, BT_LONGDOUBLE_PTR, BT_LONGDOUBLE_PTR) 405DEF_FUNCTION_TYPE_3 (BT_FN_VOID_PTR_PTR_PTR, BT_VOID, BT_PTR, BT_PTR, BT_PTR) 406DEF_FUNCTION_TYPE_3 (BT_FN_INT_CONST_STRING_PTR_CONST_STRING_PTR_CONST_STRING, 407 BT_INT, BT_CONST_STRING, BT_PTR_CONST_STRING, BT_PTR_CONST_STRING) 408DEF_FUNCTION_TYPE_3 (BT_FN_INT_INT_CONST_STRING_VALIST_ARG, 409 BT_INT, BT_INT, BT_CONST_STRING, BT_VALIST_ARG) 410DEF_FUNCTION_TYPE_3 (BT_FN_BOOL_VPTR_I1_I1, BT_BOOL, BT_VOLATILE_PTR, 411 BT_I1, BT_I1) 412DEF_FUNCTION_TYPE_3 (BT_FN_BOOL_VPTR_I2_I2, BT_BOOL, BT_VOLATILE_PTR, 413 BT_I2, BT_I2) 414DEF_FUNCTION_TYPE_3 (BT_FN_BOOL_VPTR_I4_I4, BT_BOOL, BT_VOLATILE_PTR, 415 BT_I4, BT_I4) 416DEF_FUNCTION_TYPE_3 (BT_FN_BOOL_VPTR_I8_I8, BT_BOOL, BT_VOLATILE_PTR, 417 BT_I8, BT_I8) 418DEF_FUNCTION_TYPE_3 (BT_FN_BOOL_VPTR_I16_I16, BT_BOOL, BT_VOLATILE_PTR, 419 BT_I16, BT_I16) 420DEF_FUNCTION_TYPE_3 (BT_FN_I1_VPTR_I1_I1, BT_I1, BT_VOLATILE_PTR, BT_I1, BT_I1) 421DEF_FUNCTION_TYPE_3 (BT_FN_I2_VPTR_I2_I2, BT_I2, BT_VOLATILE_PTR, BT_I2, BT_I2) 422DEF_FUNCTION_TYPE_3 (BT_FN_I4_VPTR_I4_I4, BT_I4, BT_VOLATILE_PTR, BT_I4, BT_I4) 423DEF_FUNCTION_TYPE_3 (BT_FN_I8_VPTR_I8_I8, BT_I8, BT_VOLATILE_PTR, BT_I8, BT_I8) 424DEF_FUNCTION_TYPE_3 (BT_FN_I16_VPTR_I16_I16, BT_I16, BT_VOLATILE_PTR, 425 BT_I16, BT_I16) 426DEF_FUNCTION_TYPE_3 (BT_FN_PTR_CONST_PTR_INT_SIZE, BT_PTR, 427 BT_CONST_PTR, BT_INT, BT_SIZE) 428DEF_FUNCTION_TYPE_3 (BT_FN_I1_VPTR_I1_INT, BT_I1, BT_VOLATILE_PTR, BT_I1, BT_INT) 429DEF_FUNCTION_TYPE_3 (BT_FN_I2_VPTR_I2_INT, BT_I2, BT_VOLATILE_PTR, BT_I2, BT_INT) 430DEF_FUNCTION_TYPE_3 (BT_FN_I4_VPTR_I4_INT, BT_I4, BT_VOLATILE_PTR, BT_I4, BT_INT) 431DEF_FUNCTION_TYPE_3 (BT_FN_I8_VPTR_I8_INT, BT_I8, BT_VOLATILE_PTR, BT_I8, BT_INT) 432DEF_FUNCTION_TYPE_3 (BT_FN_I16_VPTR_I16_INT, BT_I16, BT_VOLATILE_PTR, BT_I16, BT_INT) 433DEF_FUNCTION_TYPE_3 (BT_FN_VOID_VPTR_I1_INT, BT_VOID, BT_VOLATILE_PTR, BT_I1, BT_INT) 434DEF_FUNCTION_TYPE_3 (BT_FN_VOID_VPTR_I2_INT, BT_VOID, BT_VOLATILE_PTR, BT_I2, BT_INT) 435DEF_FUNCTION_TYPE_3 (BT_FN_VOID_VPTR_I4_INT, BT_VOID, BT_VOLATILE_PTR, BT_I4, BT_INT) 436DEF_FUNCTION_TYPE_3 (BT_FN_VOID_VPTR_I8_INT, BT_VOID, BT_VOLATILE_PTR, BT_I8, BT_INT) 437DEF_FUNCTION_TYPE_3 (BT_FN_VOID_VPTR_I16_INT, BT_VOID, BT_VOLATILE_PTR, BT_I16, BT_INT) 438DEF_FUNCTION_TYPE_3 (BT_FN_INT_PTRPTR_SIZE_SIZE, BT_INT, BT_PTR_PTR, BT_SIZE, BT_SIZE) 439DEF_FUNCTION_TYPE_3 (BT_FN_PTR_CONST_PTR_CONST_PTR_SIZE, BT_PTR, BT_CONST_PTR, BT_CONST_PTR, BT_SIZE) 440DEF_FUNCTION_TYPE_3 (BT_FN_VOID_CONST_PTR_BND_CONST_PTR, BT_VOID, BT_CONST_PTR, BT_BND, BT_CONST_PTR) 441DEF_FUNCTION_TYPE_3 (BT_FN_BOOL_INT_INT_INTPTR, BT_BOOL, BT_INT, BT_INT, 442 BT_INT_PTR) 443DEF_FUNCTION_TYPE_3 (BT_FN_BOOL_LONG_LONG_LONGPTR, BT_BOOL, BT_LONG, BT_LONG, 444 BT_PTR_LONG) 445DEF_FUNCTION_TYPE_3 (BT_FN_BOOL_LONGLONG_LONGLONG_LONGLONGPTR, BT_BOOL, 446 BT_LONGLONG, BT_LONGLONG, BT_PTR_LONGLONG) 447DEF_FUNCTION_TYPE_3 (BT_FN_BOOL_UINT_UINT_UINTPTR, BT_BOOL, BT_UINT, BT_UINT, 448 BT_PTR_UINT) 449DEF_FUNCTION_TYPE_3 (BT_FN_BOOL_ULONG_ULONG_ULONGPTR, BT_BOOL, BT_ULONG, 450 BT_ULONG, BT_PTR_ULONG) 451DEF_FUNCTION_TYPE_3 (BT_FN_BOOL_ULONGLONG_ULONGLONG_ULONGLONGPTR, BT_BOOL, 452 BT_ULONGLONG, BT_ULONGLONG, BT_PTR_ULONGLONG) 453 454DEF_FUNCTION_TYPE_4 (BT_FN_SIZE_CONST_PTR_SIZE_SIZE_FILEPTR, 455 BT_SIZE, BT_CONST_PTR, BT_SIZE, BT_SIZE, BT_FILEPTR) 456DEF_FUNCTION_TYPE_4 (BT_FN_INT_STRING_SIZE_CONST_STRING_VALIST_ARG, 457 BT_INT, BT_STRING, BT_SIZE, BT_CONST_STRING, BT_VALIST_ARG) 458DEF_FUNCTION_TYPE_4 (BT_FN_SIZE_STRING_SIZE_CONST_STRING_CONST_PTR, 459 BT_SIZE, BT_STRING, BT_SIZE, BT_CONST_STRING, BT_CONST_PTR) 460DEF_FUNCTION_TYPE_4 (BT_FN_PTR_PTR_CONST_PTR_SIZE_SIZE, 461 BT_PTR, BT_PTR, BT_CONST_PTR, BT_SIZE, BT_SIZE) 462DEF_FUNCTION_TYPE_4 (BT_FN_PTR_PTR_INT_SIZE_SIZE, 463 BT_PTR, BT_PTR, BT_INT, BT_SIZE, BT_SIZE) 464DEF_FUNCTION_TYPE_4 (BT_FN_STRING_STRING_CONST_STRING_SIZE_SIZE, 465 BT_STRING, BT_STRING, BT_CONST_STRING, BT_SIZE, BT_SIZE) 466DEF_FUNCTION_TYPE_4 (BT_FN_INT_FILEPTR_INT_CONST_STRING_VALIST_ARG, 467 BT_INT, BT_FILEPTR, BT_INT, BT_CONST_STRING, BT_VALIST_ARG) 468DEF_FUNCTION_TYPE_4 (BT_FN_VOID_OMPFN_PTR_UINT_UINT, 469 BT_VOID, BT_PTR_FN_VOID_PTR, BT_PTR, BT_UINT, BT_UINT) 470DEF_FUNCTION_TYPE_4 (BT_FN_VOID_PTR_WORD_WORD_PTR, 471 BT_VOID, BT_PTR, BT_WORD, BT_WORD, BT_PTR) 472DEF_FUNCTION_TYPE_4 (BT_FN_VOID_SIZE_VPTR_PTR_INT, BT_VOID, BT_SIZE, 473 BT_VOLATILE_PTR, BT_PTR, BT_INT) 474DEF_FUNCTION_TYPE_4 (BT_FN_VOID_SIZE_CONST_VPTR_PTR_INT, BT_VOID, BT_SIZE, 475 BT_CONST_VOLATILE_PTR, BT_PTR, BT_INT) 476DEF_FUNCTION_TYPE_4 (BT_FN_BOOL_UINT_LONGPTR_LONGPTR_LONGPTR, 477 BT_BOOL, BT_UINT, BT_PTR_LONG, BT_PTR_LONG, BT_PTR_LONG) 478DEF_FUNCTION_TYPE_4 (BT_FN_BOOL_UINT_ULLPTR_ULLPTR_ULLPTR, 479 BT_BOOL, BT_UINT, BT_PTR_ULONGLONG, BT_PTR_ULONGLONG, 480 BT_PTR_ULONGLONG) 481DEF_FUNCTION_TYPE_4 (BT_FN_VOID_UINT_PTR_INT_PTR, BT_VOID, BT_INT, BT_PTR, 482 BT_INT, BT_PTR) 483 484DEF_FUNCTION_TYPE_5 (BT_FN_INT_STRING_INT_SIZE_CONST_STRING_VALIST_ARG, 485 BT_INT, BT_STRING, BT_INT, BT_SIZE, BT_CONST_STRING, 486 BT_VALIST_ARG) 487DEF_FUNCTION_TYPE_5 (BT_FN_BOOL_LONG_LONG_LONG_LONGPTR_LONGPTR, 488 BT_BOOL, BT_LONG, BT_LONG, BT_LONG, 489 BT_PTR_LONG, BT_PTR_LONG) 490DEF_FUNCTION_TYPE_5 (BT_FN_VOID_SIZE_VPTR_PTR_PTR_INT, BT_VOID, BT_SIZE, 491 BT_VOLATILE_PTR, BT_PTR, BT_PTR, BT_INT) 492DEF_FUNCTION_TYPE_5 (BT_FN_BOOL_VPTR_PTR_I1_INT_INT, 493 BT_BOOL, BT_VOLATILE_PTR, BT_PTR, BT_I1, BT_INT, BT_INT) 494DEF_FUNCTION_TYPE_5 (BT_FN_BOOL_VPTR_PTR_I2_INT_INT, 495 BT_BOOL, BT_VOLATILE_PTR, BT_PTR, BT_I2, BT_INT, BT_INT) 496DEF_FUNCTION_TYPE_5 (BT_FN_BOOL_VPTR_PTR_I4_INT_INT, 497 BT_BOOL, BT_VOLATILE_PTR, BT_PTR, BT_I4, BT_INT, BT_INT) 498DEF_FUNCTION_TYPE_5 (BT_FN_BOOL_VPTR_PTR_I8_INT_INT, 499 BT_BOOL, BT_VOLATILE_PTR, BT_PTR, BT_I8, BT_INT, BT_INT) 500DEF_FUNCTION_TYPE_5 (BT_FN_BOOL_VPTR_PTR_I16_INT_INT, 501 BT_BOOL, BT_VOLATILE_PTR, BT_PTR, BT_I16, BT_INT, BT_INT) 502DEF_FUNCTION_TYPE_5 (BT_FN_VOID_INT_SIZE_PTR_PTR_PTR, 503 BT_VOID, BT_INT, BT_SIZE, BT_PTR, BT_PTR, BT_PTR) 504DEF_FUNCTION_TYPE_5 (BT_FN_VOID_OMPFN_PTR_UINT_UINT_UINT, 505 BT_VOID, BT_PTR_FN_VOID_PTR, BT_PTR, BT_UINT, BT_UINT, 506 BT_UINT) 507DEF_FUNCTION_TYPE_5 (BT_FN_BOOL_UINT_LONGPTR_LONG_LONGPTR_LONGPTR, 508 BT_BOOL, BT_UINT, BT_PTR_LONG, BT_LONG, BT_PTR_LONG, 509 BT_PTR_LONG) 510DEF_FUNCTION_TYPE_5 (BT_FN_BOOL_UINT_ULLPTR_ULL_ULLPTR_ULLPTR, 511 BT_BOOL, BT_UINT, BT_PTR_ULONGLONG, BT_ULONGLONG, 512 BT_PTR_ULONGLONG, BT_PTR_ULONGLONG) 513 514DEF_FUNCTION_TYPE_6 (BT_FN_INT_STRING_SIZE_INT_SIZE_CONST_STRING_VALIST_ARG, 515 BT_INT, BT_STRING, BT_SIZE, BT_INT, BT_SIZE, 516 BT_CONST_STRING, BT_VALIST_ARG) 517DEF_FUNCTION_TYPE_6 (BT_FN_BOOL_LONG_LONG_LONG_LONG_LONGPTR_LONGPTR, 518 BT_BOOL, BT_LONG, BT_LONG, BT_LONG, BT_LONG, 519 BT_PTR_LONG, BT_PTR_LONG) 520DEF_FUNCTION_TYPE_6 (BT_FN_BOOL_BOOL_ULL_ULL_ULL_ULLPTR_ULLPTR, 521 BT_BOOL, BT_BOOL, BT_ULONGLONG, BT_ULONGLONG, 522 BT_ULONGLONG, BT_PTR_ULONGLONG, BT_PTR_ULONGLONG) 523DEF_FUNCTION_TYPE_6 (BT_FN_BOOL_VPTR_PTR_I1_BOOL_INT_INT, 524 BT_BOOL, BT_VOLATILE_PTR, BT_PTR, BT_I1, BT_BOOL, BT_INT, 525 BT_INT) 526DEF_FUNCTION_TYPE_6 (BT_FN_BOOL_VPTR_PTR_I2_BOOL_INT_INT, 527 BT_BOOL, BT_VOLATILE_PTR, BT_PTR, BT_I2, BT_BOOL, BT_INT, 528 BT_INT) 529DEF_FUNCTION_TYPE_6 (BT_FN_BOOL_VPTR_PTR_I4_BOOL_INT_INT, 530 BT_BOOL, BT_VOLATILE_PTR, BT_PTR, BT_I4, BT_BOOL, BT_INT, 531 BT_INT) 532DEF_FUNCTION_TYPE_6 (BT_FN_BOOL_VPTR_PTR_I8_BOOL_INT_INT, 533 BT_BOOL, BT_VOLATILE_PTR, BT_PTR, BT_I8, BT_BOOL, BT_INT, 534 BT_INT) 535DEF_FUNCTION_TYPE_6 (BT_FN_BOOL_VPTR_PTR_I16_BOOL_INT_INT, 536 BT_BOOL, BT_VOLATILE_PTR, BT_PTR, BT_I16, BT_BOOL, BT_INT, 537 BT_INT) 538DEF_FUNCTION_TYPE_6 (BT_FN_BOOL_SIZE_VPTR_PTR_PTR_INT_INT, BT_BOOL, BT_SIZE, 539 BT_VOLATILE_PTR, BT_PTR, BT_PTR, BT_INT, BT_INT) 540 541DEF_FUNCTION_TYPE_7 (BT_FN_VOID_OMPFN_PTR_UINT_LONG_LONG_LONG_UINT, 542 BT_VOID, BT_PTR_FN_VOID_PTR, BT_PTR, BT_UINT, 543 BT_LONG, BT_LONG, BT_LONG, BT_UINT) 544DEF_FUNCTION_TYPE_7 (BT_FN_BOOL_BOOL_ULL_ULL_ULL_ULL_ULLPTR_ULLPTR, 545 BT_BOOL, BT_BOOL, BT_ULONGLONG, BT_ULONGLONG, 546 BT_ULONGLONG, BT_ULONGLONG, 547 BT_PTR_ULONGLONG, BT_PTR_ULONGLONG) 548DEF_FUNCTION_TYPE_7 (BT_FN_VOID_INT_SIZE_PTR_PTR_PTR_UINT_PTR, 549 BT_VOID, BT_INT, BT_SIZE, BT_PTR, BT_PTR, BT_PTR, BT_UINT, 550 BT_PTR) 551 552DEF_FUNCTION_TYPE_8 (BT_FN_VOID_OMPFN_PTR_UINT_LONG_LONG_LONG_LONG_UINT, 553 BT_VOID, BT_PTR_FN_VOID_PTR, BT_PTR, BT_UINT, 554 BT_LONG, BT_LONG, BT_LONG, BT_LONG, BT_UINT) 555 556DEF_FUNCTION_TYPE_9 (BT_FN_VOID_OMPFN_PTR_OMPCPYFN_LONG_LONG_BOOL_UINT_PTR_INT, 557 BT_VOID, BT_PTR_FN_VOID_PTR, BT_PTR, 558 BT_PTR_FN_VOID_PTR_PTR, BT_LONG, BT_LONG, 559 BT_BOOL, BT_UINT, BT_PTR, BT_INT) 560DEF_FUNCTION_TYPE_9 (BT_FN_VOID_INT_OMPFN_SIZE_PTR_PTR_PTR_UINT_PTR_PTR, 561 BT_VOID, BT_INT, BT_PTR_FN_VOID_PTR, BT_SIZE, BT_PTR, 562 BT_PTR, BT_PTR, BT_UINT, BT_PTR, BT_PTR) 563 564DEF_FUNCTION_TYPE_11 (BT_FN_VOID_OMPFN_PTR_OMPCPYFN_LONG_LONG_UINT_LONG_INT_LONG_LONG_LONG, 565 BT_VOID, BT_PTR_FN_VOID_PTR, BT_PTR, 566 BT_PTR_FN_VOID_PTR_PTR, BT_LONG, BT_LONG, 567 BT_UINT, BT_LONG, BT_INT, BT_LONG, BT_LONG, BT_LONG) 568DEF_FUNCTION_TYPE_11 (BT_FN_VOID_OMPFN_PTR_OMPCPYFN_LONG_LONG_UINT_LONG_INT_ULL_ULL_ULL, 569 BT_VOID, BT_PTR_FN_VOID_PTR, BT_PTR, 570 BT_PTR_FN_VOID_PTR_PTR, BT_LONG, BT_LONG, 571 BT_UINT, BT_LONG, BT_INT, 572 BT_ULONGLONG, BT_ULONGLONG, BT_ULONGLONG) 573 574DEF_FUNCTION_TYPE_VAR_0 (BT_FN_VOID_VAR, BT_VOID) 575DEF_FUNCTION_TYPE_VAR_0 (BT_FN_INT_VAR, BT_INT) 576DEF_FUNCTION_TYPE_VAR_0 (BT_FN_PTR_VAR, BT_PTR) 577DEF_FUNCTION_TYPE_VAR_0 (BT_FN_BOOL_VAR, BT_BOOL) 578 579DEF_FUNCTION_TYPE_VAR_1 (BT_FN_VOID_VALIST_REF_VAR, 580 BT_VOID, BT_VALIST_REF) 581DEF_FUNCTION_TYPE_VAR_1 (BT_FN_VOID_CONST_PTR_VAR, 582 BT_VOID, BT_CONST_PTR) 583DEF_FUNCTION_TYPE_VAR_1 (BT_FN_INT_CONST_STRING_VAR, 584 BT_INT, BT_CONST_STRING) 585DEF_FUNCTION_TYPE_VAR_1 (BT_FN_UINT32_UINT32_VAR, 586 BT_UINT32, BT_UINT32) 587DEF_FUNCTION_TYPE_VAR_1 (BT_FN_VOID_LONG_VAR, 588 BT_VOID, BT_LONG) 589DEF_FUNCTION_TYPE_VAR_1 (BT_FN_VOID_ULL_VAR, 590 BT_VOID, BT_ULONGLONG) 591 592DEF_FUNCTION_TYPE_VAR_2 (BT_FN_INT_FILEPTR_CONST_STRING_VAR, 593 BT_INT, BT_FILEPTR, BT_CONST_STRING) 594DEF_FUNCTION_TYPE_VAR_2 (BT_FN_INT_STRING_CONST_STRING_VAR, 595 BT_INT, BT_STRING, BT_CONST_STRING) 596DEF_FUNCTION_TYPE_VAR_2 (BT_FN_INT_CONST_STRING_CONST_STRING_VAR, 597 BT_INT, BT_CONST_STRING, BT_CONST_STRING) 598DEF_FUNCTION_TYPE_VAR_2 (BT_FN_INT_INT_CONST_STRING_VAR, 599 BT_INT, BT_INT, BT_CONST_STRING) 600DEF_FUNCTION_TYPE_VAR_2 (BT_FN_PTR_CONST_PTR_SIZE_VAR, BT_PTR, 601 BT_CONST_PTR, BT_SIZE) 602DEF_FUNCTION_TYPE_VAR_2 (BT_FN_VOID_INT_INT_VAR, BT_VOID, 603 BT_INT, BT_INT) 604 605DEF_FUNCTION_TYPE_VAR_3 (BT_FN_INT_STRING_SIZE_CONST_STRING_VAR, 606 BT_INT, BT_STRING, BT_SIZE, BT_CONST_STRING) 607DEF_FUNCTION_TYPE_VAR_3 (BT_FN_SSIZE_STRING_SIZE_CONST_STRING_VAR, 608 BT_SSIZE, BT_STRING, BT_SIZE, BT_CONST_STRING) 609DEF_FUNCTION_TYPE_VAR_3 (BT_FN_INT_FILEPTR_INT_CONST_STRING_VAR, 610 BT_INT, BT_FILEPTR, BT_INT, BT_CONST_STRING) 611 612DEF_FUNCTION_TYPE_VAR_4 (BT_FN_INT_STRING_INT_SIZE_CONST_STRING_VAR, 613 BT_INT, BT_STRING, BT_INT, BT_SIZE, BT_CONST_STRING) 614 615DEF_FUNCTION_TYPE_VAR_5 (BT_FN_INT_STRING_SIZE_INT_SIZE_CONST_STRING_VAR, 616 BT_INT, BT_STRING, BT_SIZE, BT_INT, BT_SIZE, 617 BT_CONST_STRING) 618 619DEF_FUNCTION_TYPE_VAR_5 (BT_FN_INT_INT_INT_INT_INT_INT_VAR, 620 BT_INT, BT_INT, BT_INT, BT_INT, BT_INT, BT_INT) 621 622DEF_FUNCTION_TYPE_VAR_6 (BT_FN_VOID_INT_OMPFN_SIZE_PTR_PTR_PTR_VAR, 623 BT_VOID, BT_INT, BT_PTR_FN_VOID_PTR, BT_SIZE, 624 BT_PTR, BT_PTR, BT_PTR) 625 626DEF_FUNCTION_TYPE_VAR_7 (BT_FN_VOID_INT_SIZE_PTR_PTR_PTR_INT_INT_VAR, 627 BT_VOID, BT_INT, BT_SIZE, BT_PTR, BT_PTR, 628 BT_PTR, BT_INT, BT_INT) 629 630DEF_POINTER_TYPE (BT_PTR_FN_VOID_VAR, BT_FN_VOID_VAR) 631DEF_FUNCTION_TYPE_3 (BT_FN_PTR_PTR_FN_VOID_VAR_PTR_SIZE, 632 BT_PTR, BT_PTR_FN_VOID_VAR, BT_PTR, BT_SIZE) 633 634 635DEF_FUNCTION_TYPE_1 (BT_FN_I1_VPTR, BT_I1, BT_VOLATILE_PTR) 636DEF_FUNCTION_TYPE_1 (BT_FN_I2_VPTR, BT_I2, BT_VOLATILE_PTR) 637DEF_FUNCTION_TYPE_1 (BT_FN_I4_VPTR, BT_I4, BT_VOLATILE_PTR) 638DEF_FUNCTION_TYPE_1 (BT_FN_I8_VPTR, BT_I8, BT_VOLATILE_PTR) 639DEF_FUNCTION_TYPE_1 (BT_FN_FLOAT_VPTR, BT_FLOAT, BT_VOLATILE_PTR) 640DEF_FUNCTION_TYPE_1 (BT_FN_DOUBLE_CONST_DOUBLE_PTR, BT_DOUBLE, BT_DOUBLE_PTR) 641DEF_FUNCTION_TYPE_1 (BT_FN_LDOUBLE_VPTR, BT_LONGDOUBLE, BT_VOLATILE_PTR) 642 643DEF_FUNCTION_TYPE_2 (BT_FN_VOID_VPTR_I1, BT_VOID, BT_VOLATILE_PTR, BT_I1) 644DEF_FUNCTION_TYPE_2 (BT_FN_VOID_VPTR_I2, BT_VOID, BT_VOLATILE_PTR, BT_I2) 645DEF_FUNCTION_TYPE_2 (BT_FN_VOID_VPTR_I4, BT_VOID, BT_VOLATILE_PTR, BT_I4) 646DEF_FUNCTION_TYPE_2 (BT_FN_VOID_VPTR_I8, BT_VOID, BT_VOLATILE_PTR, BT_I8) 647DEF_FUNCTION_TYPE_2 (BT_FN_VOID_VPTR_FLOAT, BT_VOID, BT_VOLATILE_PTR, BT_FLOAT) 648DEF_FUNCTION_TYPE_2 (BT_FN_VOID_VPTR_DOUBLE, BT_VOID, 649 BT_VOLATILE_PTR, BT_DOUBLE) 650DEF_FUNCTION_TYPE_2 (BT_FN_VOID_VPTR_LDOUBLE, BT_VOID, 651 BT_VOLATILE_PTR, BT_LONGDOUBLE) 652DEF_FUNCTION_TYPE_2 (BT_FN_VOID_VPTR_SIZE, BT_VOID, 653 BT_VOLATILE_PTR, BT_SIZE) 654