{ print "#include <" $0 ">" }' >>abi.cc
echo 'typedef long long long_long; typedef long double long_double;' >>abi.cc
echo 'struct size{int i;}; struct align{int i;};' >>abi.cc
echo '#define p(s,t) void x_##t(s t x, s t* ptr, size(*y)[sizeof(s t)], align(*z)[__alignof__(s t)]){}' >>abi.cc
{ print "#include <" $0 ">" }' >>abi.cc
echo 'typedef long long long_long; typedef long double long_double;' >>abi.cc
echo 'struct size{int i;}; struct align{int i;};' >>abi.cc
echo '#define p(s,t) void x_##t(s t x, s t* ptr, size(*y)[sizeof(s t)], align(*z)[__alignof__(s t)]){}' >>abi.cc