#include #include #include #include struct A; struct B; template struct List { T *members; uintptr_t count; }; extern "C" { void bar(List b); void foo(List a); } // extern "C"