memwipe + arm, error: implicit declaration, error: nested extern
Somewhere between 0.3.3 and 0.3.4, a compilation error was introduced on arm achhitectures+compilers. On armhf and arm64,
gcc -DHAVE_CONFIG_H -I. -I./src/ext -Isrc/ext -I./src/ext/trunnel -I./src/trunnel -I./src/common -Isrc/common -I./src/ext/trunnel -I./src/trunnel -I./src/or -Isrc/or -DSHARE_DATADIR="\"/share\"" -DLOCALSTATEDIR="\"/var\"" -DBINDIR="\"/bin\"" -I./src -DTOR_UNIT_TESTS -DHAVE_MODULE_DIRAUTH=1 -I./src/common -g -O2 -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -fstack-protector-all -Wstack-protector --param ssp-buffer-size=1 -fPIE -fasynchronous-unwind-tables -Wall -fno-strict-aliasing -Waddress -Warray-bounds -Wdate-time -Wdouble-promotion -Wextra -Wfloat-conversion -Winit-self -Wlogical-op -Wmissing-field-initializers -Wmissing-format-attribute -Wmissing-noreturn -Wnormalized=nfkc -Woverlength-strings -Woverride-init -Wshadow -Wshift-count-negative -Wshift-count-overflow -Wsizeof-array-argument -Wstrict-overflow=1 -Wsuggest-attribute=format -Wsuggest-attribute=noreturn -Wswitch-bool -Wsync-nand -Wtrampolines -Wunused-but-set-parameter -Wunused-but-set-variable -Wunused-local-typedefs -Wvariadic-macros -W -Wfloat-equal -Wundef -Wpointer-arith -Wstrict-prototypes -Wmissing-prototypes -Wwrite-strings -Wredundant-decls -Wchar-subscripts -Wcomment -Wformat=2 -Wwrite-strings -Wnested-externs -Wbad-function-cast -Wswitch-enum -Waggregate-return -Wpacked -Wunused -Wunused-parameter -Wold-style-definition -Wmissing-declarations -Werror -MT src/common/src_common_libor_crypto_testing_a-compress.o -MD -MP -MF src/common/.deps/src_common_libor_crypto_testing_a-compress.Tpo -c -o src/common/src_common_libor_crypto_testing_a-compress.o `test -f 'src/common/compress.c' || echo './'`src/common/compress.c
src/common/aes.c: In function ‘aes_cipher_free_’:
src/common/aes.c:339:3: error: implicit declaration of function ‘memwipe’ [-Werror=implicit-function-declaration]
memwipe(cipher, 0, sizeof(aes_cnt_cipher_t));
^
src/common/aes.c:339:3: error: nested extern declaration of ‘memwipe’ [-Werror=nested-externs]
Trac:
Username: chadmiller