| #include <cstdarg> | |
| #include <cstdint> | |
| #include <cstdlib> | |
| #include <ostream> | |
| #include <new> | |
| struct Opaque; | |
| template<typename T = void> | |
| struct Option; | |
| struct Foo { | |
| const Opaque *x; | |
| Opaque *y; | |
| void (*z)(); | |
| void (**zz)(); | |
| }; | |
| union Bar { | |
| const Opaque *x; | |
| Opaque *y; | |
| void (*z)(); | |
| void (**zz)(); | |
| }; | |
| extern "C" { | |
| void root(const Opaque *a, Opaque *b, Foo c, Bar d, Option<Opaque*> *e, void (*f)(const Opaque*)); | |
| } // extern "C" |