Different return type of backtrace function on FreeBSD
Jenkins is failing compilation on FreeBSD because its backtrace function is returning size_t
instead of int
. This leads to the compilation errors such as
../tor/src/common/backtrace.c:98:11: error: implicit conversion loses integer precision: 'size_t' (aka 'unsigned long') to 'int' [-Werror,-Wshorten-64-to-32]
depth = backtrace(cb_buf, MAX_DEPTH);
~ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
../tor/src/common/backtrace.c:130:11: error: implicit conversion loses integer precision: 'size_t' (aka 'unsigned long') to 'int' [-Werror,-Wshorten-64-to-32]
depth = backtrace(cb_buf, MAX_DEPTH);
~ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
../tor/src/common/backtrace.c:177:17: error: implicit conversion loses integer precision: 'size_t' (aka 'unsigned long') to 'int' [-Werror,-Wshorten-64-to-32]
int depth = backtrace(cb_buf, MAX_DEPTH);
~~~~~ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~