nisse@lysator.liu.se (Niels Möller) writes:
- Introduce a poly1305_update function, and use preprocessor casting tricks to define poly1305_aes128_update (and any other poly1305_*_update) as an alias.
Done, then undone;
I tried the same trick for a different function, and it turns out it actually don't work with gcc. See http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59905, it will be interesting to see if anyone else agrees it is a bug.
And the only fully kosher and portable way is to introduce a large number of wrapper functions, like
foo (struct foo_ctx *ctx, ...); foo_wrapper (void *p, ...) { return foo(p) ;}
I'd prefer to not do that.
Regards, /Niels