#include #include #include #include struct A; struct B; struct List_A { struct A *members; uintptr_t count; }; struct List_B { struct B *members; uintptr_t count; }; #ifdef __cplusplus extern "C" { #endif // __cplusplus void foo(struct List_A a); void bar(struct List_B b); #ifdef __cplusplus } // extern "C" #endif // __cplusplus