| from libc.stdint cimport int8_t, int16_t, int32_t, int64_t, intptr_t |
| from libc.stdint cimport uint8_t, uint16_t, uint32_t, uint64_t, uintptr_t |
| cdef extern from *: |
| ctypedef bint bool |
| ctypedef struct va_list |
| |
| cdef extern from *: |
| |
| cdef enum: |
| X # = 2, |
| Y, |
| ctypedef uint32_t C; |
| |
| cdef struct A: |
| int32_t _0; |
| |
| cdef struct B: |
| int32_t x; |
| float y; |
| |
| cdef struct D: |
| uint8_t List; |
| uintptr_t Of; |
| B Things; |
| |
| cdef enum: |
| Foo, |
| Bar, |
| Baz, |
| ctypedef uint8_t F_Tag; |
| |
| cdef struct Bar_Body: |
| F_Tag tag; |
| uint8_t x; |
| int16_t y; |
| |
| cdef union F: |
| F_Tag tag; |
| int16_t foo; |
| Bar_Body bar; |
| |
| cdef enum: |
| Hello, |
| There, |
| Everyone, |
| ctypedef uint8_t H_Tag; |
| |
| cdef struct There_Body: |
| uint8_t x; |
| int16_t y; |
| |
| cdef struct H: |
| H_Tag tag; |
| int16_t hello; |
| There_Body there; |
| |
| cdef enum: |
| ThereAgain, |
| SomethingElse, |
| ctypedef uint8_t I_Tag; |
| |
| cdef struct ThereAgain_Body: |
| uint8_t x; |
| int16_t y; |
| |
| cdef struct I: |
| I_Tag tag; |
| ThereAgain_Body there_again; |
| |
| void root(A a, B b, C c, D d, F f, H h, I i); |