td@gin: ~/src/scrypt/test (compile-tests)
$ clang --version
Ubuntu clang version 3.4-1ubuntu3 (tags/RELEASE_34/final) (based on LLVM 3.4)
Target: x86_64-pc-linux-gnu
Thread model: posix
td@gin: ~/src/scrypt/test (compile-tests)
$ CC=clang bmake
clang -O2 -Wno-error -I .. -DCONFIG_H_FILE=\"config_freebsd.h\" -I ../libcperciva/alg -I ../libcperciva/cpusupport -I ../lib/crypto -I ../libcperciva/util -I . -D CPUSUPPORT_CONFIG_FILE=\"cpusupport-config.h\" -Wall -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Wno-uninitialized -Wreturn-type -Wcast-qual -Wpointer-arith -Wwrite-strings -Wswitch -Wshadow -Werror -c main.c
main.c:35:17: error: passing 'const char *' to parameter of type
'const uint8_t *' (aka 'const unsigned char *') converts between pointers
to integer types with different sign [-Werror,-Wpointer-sign]
crypto_scrypt(test->passwd, strlen(test->passwd),
^~~~~~~~~~~~
../lib/crypto/crypto_scrypt.h:44:34: note: passing argument to parameter here
int crypto_scrypt(const uint8_t *, size_t, const uint8_t *, size_t, uint64_t,
^
main.c:36:7: error: passing 'const char *' to parameter of type
'const uint8_t *' (aka 'const unsigned char *') converts between pointers
to integer types with different sign [-Werror,-Wpointer-sign]
test->salt, strlen(test->salt),
^~~~~~~~~~
../lib/crypto/crypto_scrypt.h:44:59: note: passing argument to parameter here
int crypto_scrypt(const uint8_t *, size_t, const uint8_t *, size_t, uint64_t,
^
main.c:37:34: error: passing 'char [64]' to parameter of type 'uint8_t *'
(aka 'unsigned char *') converts between pointers to integer types with
different sign [-Werror,-Wpointer-sign]
test->N, test->r, test->p, kbuf, 64);
^~~~
../lib/crypto/crypto_scrypt.h:45:34: note: passing argument to parameter here
uint32_t, uint32_t, uint8_t *, size_t);
^
3 errors generated.
*** Error code 1
Stop.
bmake: stopped in /home/td/src/scrypt/test