Ruby: ext/fiddle/libffi-3.2.1/testsuite/libffi.call/huge_struct.c File Reference

Ruby 3.0.5p211 (2022-11-24 revision ba5cf0f7c52d4d35cc6a173c89eda98ceffa2dcf)

Data Structures | Typedefs | Functions
huge_struct.c File Reference
`#include "ffitest.h"`

Go to the source code of this file.

## Data Structures
struct | BigStruct

## Typedefs
typedef struct BigStruct | BigStruct

## Functions
BigStruct | test_large_fn (uint8_t ui8_1, int8_t si8_1, uint16_t ui16_1, int16_t si16_1, uint32_t ui32_1, int32_t si32_1, uint64_t ui64_1, int64_t si64_1, float f_1, double d_1, long double ld_1, char *p_1, uint8_t ui8_2, int8_t si8_2, uint16_t ui16_2, int16_t si16_2, uint32_t ui32_2, int32_t si32_2, uint64_t ui64_2, int64_t si64_2, float f_2, double d_2, long double ld_2, char *p_2, uint8_t ui8_3, int8_t si8_3, uint16_t ui16_3, int16_t si16_3, uint32_t ui32_3, int32_t si32_3, uint64_t ui64_3, int64_t si64_3, float f_3, double d_3, long double ld_3, char *p_3, uint8_t ui8_4, int8_t si8_4, uint16_t ui16_4, int16_t si16_4, uint32_t ui32_4, int32_t si32_4, uint64_t ui64_4, int64_t si64_4, float f_4, double d_4, long double ld_4, char *p_4, uint8_t ui8_5, int8_t si8_5)
int | main (int argc __UNUSED__, const char **argv __UNUSED__)

## Typedef Documentation

## ◆ BigStruct

typedef struct BigStruct BigStruct

## Function Documentation

## ◆ main()

int main | ( | int argc | __UNUSED__,
|  | const char **argv | __UNUSED__
| ) |  |

Definition at line 220 of file huge_struct.c.

References BigStruct::a, BigStruct::aa, BigStruct::b, BigStruct::bb, BigStruct::c, BigStruct::cc, CHECK, BigStruct::d, BigStruct::dd, BigStruct::e, BigStruct::ee, BigStruct::f, f, BigStruct::ff, ffi_call(), FFI_DEFAULT_ABI, ffi_prep_cif(), ffi_prep_closure_loc(), BigStruct::g, BigStruct::gg, BigStruct::h, BigStruct::hh, BigStruct::i, BigStruct::ii, BigStruct::j, BigStruct::jj, BigStruct::k, BigStruct::kk, BigStruct::l, BigStruct::ll, BigStruct::m, BigStruct::mm, BigStruct::n, BigStruct::nn, NULL, BigStruct::o, BigStruct::oo, BigStruct::p, BigStruct::pp, PRId64, PRId8, PRIu64, PRIu8, BigStruct::q, BigStruct::qq, BigStruct::r, BigStruct::rr, BigStruct::s, BigStruct::ss, BigStruct::t, test_large_fn(), BigStruct::tt, BigStruct::u, uint64_t, BigStruct::uu, BigStruct::v, BigStruct::vv, BigStruct::w, BigStruct::ww, BigStruct::x, BigStruct::xx, BigStruct::y, and BigStruct::z.

## ◆ test_large_fn()

BigStruct test_large_fn | ( | uint8_t | ui8_1,
|  | int8_t | si8_1,
|  | uint16_t | ui16_1,
|  | int16_t | si16_1,
|  | uint32_t | ui32_1,
|  | int32_t | si32_1,
|  | uint64_t | ui64_1,
|  | int64_t | si64_1,
|  | float | f_1,
|  | double | d_1,
|  | long double | ld_1,
|  | char * | p_1,
|  | uint8_t | ui8_2,
|  | int8_t | si8_2,
|  | uint16_t | ui16_2,
|  | int16_t | si16_2,
|  | uint32_t | ui32_2,
|  | int32_t | si32_2,
|  | uint64_t | ui64_2,
|  | int64_t | si64_2,
|  | float | f_2,
|  | double | d_2,
|  | long double | ld_2,
|  | char * | p_2,
|  | uint8_t | ui8_3,
|  | int8_t | si8_3,
|  | uint16_t | ui16_3,
|  | int16_t | si16_3,
|  | uint32_t | ui32_3,
|  | int32_t | si32_3,
|  | uint64_t | ui64_3,
|  | int64_t | si64_3,
|  | float | f_3,
|  | double | d_3,
|  | long double | ld_3,
|  | char * | p_3,
|  | uint8_t | ui8_4,
|  | int8_t | si8_4,
|  | uint16_t | ui16_4,
|  | int16_t | si16_4,
|  | uint32_t | ui32_4,
|  | int32_t | si32_4,
|  | uint64_t | ui64_4,
|  | int64_t | si64_4,
|  | float | f_4,
|  | double | d_4,
|  | long double | ld_4,
|  | char * | p_4,
|  | uint8_t | ui8_5,
|  | int8_t | si8_5
| ) |  |

Definition at line 70 of file huge_struct.c.

References BigStruct::a, BigStruct::aa, BigStruct::b, BigStruct::bb, BigStruct::c, BigStruct::cc, BigStruct::d, BigStruct::dd, BigStruct::e, BigStruct::ee, BigStruct::f, BigStruct::ff, BigStruct::g, BigStruct::gg, BigStruct::h, BigStruct::hh, BigStruct::i, BigStruct::ii, BigStruct::j, BigStruct::jj, BigStruct::k, BigStruct::kk, BigStruct::l, BigStruct::ll, BigStruct::m, BigStruct::mm, BigStruct::n, BigStruct::nn, BigStruct::o, BigStruct::oo, BigStruct::p, BigStruct::pp, PRId64, PRId8, PRIu64, PRIu8, BigStruct::q, BigStruct::qq, BigStruct::r, BigStruct::rr, BigStruct::s, BigStruct::ss, BigStruct::t, BigStruct::tt, BigStruct::u, BigStruct::uu, BigStruct::v, BigStruct::vv, BigStruct::w, BigStruct::ww, BigStruct::x, BigStruct::xx, BigStruct::y, and BigStruct::z.

Referenced by main().