Good work! Unfortunately I cannot compile the bignum.h macros with
Clang since the expansion order seems different (looks like type2 is
not expanded):
In file included from
/Users/jonasw/hacks/Pike/git/pike79/src/modules/Gmp/mpz_glue.c:37:
/Users/jonasw/hacks/Pike/git/pike79/src/bignum.h:179:1: error: expected ';' at
end of declaration
GEN_OF2(64, 128)
^
/Users/jonasw/hacks/Pike/git/pike79/src/bignum.h:175:25: note: expanded from
macro 'GEN_OF2'
#define GEN_OF2(s1, s2) _GEN_OF2(INT ## s1, INT ## s2, s1)\
^
/Users/jonasw/hacks/Pike/git/pike79/src/bignum.h:49:20: note: expanded from
macro '_GEN_OF2'
unsigned type2 res; \
^