Nikos Mavrogiannopoulos <[email protected]> writes:
> My concern
> is on the easiness to have a bug-free transition to 3.0 from 2.7.1.
I see. I don't think I'm going to remove the cast for nettle-3.1. I view
it as a feature, not a bug. The intent is to reduce the amount of casts
in application code, and provide something slightly safer.
I wonder if there are any other simple changes (besides documenting
potential problems) which would reduce upgrade problems?
Hmm, maybe, in the
(0 ? (encrypt)(&(ctx)->cipher, 0, (void *)0, (void *)0)
part of macro, intended for typechecking, one could change the 0
constant for the size argument to some larger constant which doesn't fit
in a plain int. E.g., consider the following test program:
#include <stdlib.h>
extern foo (int x);
int main (int argc, char **argv)
{
if (0)
foo (~(size_t)0);
return 0;
}
When I compile it with gcc, version 4.7.2, no optimization or special
warning flags, on x86_64, it produces a warning,
size_t-type-checking.c: In function `main':
size_t-type-checking.c:8:5: warning: overflow in implicit constant conversion
[-Woverflow]
Regards,
/Niels
--
Niels Möller. PGP-encrypted email is preferred. Keyid C0B98E26.
Internet email is subject to wholesale government surveillance.
_______________________________________________
nettle-bugs mailing list
[email protected]
http://lists.lysator.liu.se/mailman/listinfo/nettle-bugs