/Users/marco/src/px4/firmware/Firmware/src/lib/uavcan/libuavcan/include/uavcan/marshal/array.hpp:382:26: error: logical 'and' of mutually exclusive tests is always false [-Werror=logical-op]
if ((sz > 0) && ((sz - 1u) > (MaxSize_ - 1u))) // -Werror=type-limits
^
% MODULE_WORK_DIR = /Users/marco/src/px4/firmware/Firmware/Build/px4fmu-v2_default.build//Users/marco/src/px4/firmware/Firmware/src/modules/uavcan
CXX: /Users/marco/src/px4/firmware/Firmware/src/modules/uavcan/uavcan_configuration.cpp
In file included from /Users/marco/src/px4/firmware/Firmware/src/lib/uavcan/libuavcan/include/uavcan/marshal/types.hpp:9:0,
from dsdlc_generated/uavcan/Timestamp.hpp:13,
from /Users/marco/src/px4/firmware/Firmware/src/lib/uavcan/libuavcan/include/uavcan/time.hpp:11,
from /Users/marco/src/px4/firmware/Firmware/src/lib/uavcan/libuavcan/include/uavcan/uavcan.hpp:10,
from /Users/marco/src/px4/firmware/Firmware/src/modules/uavcan/uavcan_configuration.hpp:46,
from /Users/marco/src/px4/firmware/Firmware/src/modules/uavcan/uavcan_configuration.cpp:41:
/Users/marco/src/px4/firmware/Firmware/src/lib/uavcan/libuavcan/include/uavcan/marshal/array.hpp: In instantiation of 'int uavcan::Array<T, ArrayMode, MaxSize_>::decodeImpl(uavcan::ScalarCodec&, uavcan::TailArrayOptimizationMode, uavcan::TrueType) [with T = uavcan::IntegerSpec<8u, (uavcan::Signedness)0u, (uavcan::CastMode)0u>; uavcan::ArrayMode ArrayMode = (uavcan::ArrayMode)1u; unsigned int MaxSize_ = 255u; uavcan::TrueType = uavcan::BooleanType<true>]':
/Users/marco/src/px4/firmware/Firmware/src/lib/uavcan/libuavcan/include/uavcan/marshal/array.hpp:528:74: required from 'static int uavcan::Array<T, ArrayMode, MaxSize_>::decode(uavcan::Array<T, ArrayMode, MaxSize_>::SelfType&, uavcan::ScalarCodec&, uavcan::TailArrayOptimizationMode) [with T = uavcan::IntegerSpec<8u, (uavcan::Signedness)0u, (uavcan::CastMode)0u>; uavcan::ArrayMode ArrayMode = (uavcan::ArrayMode)1u; unsigned int MaxSize_ = 255u; uavcan::Array<T, ArrayMode, MaxSize_>::SelfType = uavcan::Array<uavcan::IntegerSpec<8u, (uavcan::Signedness)0u, (uavcan::CastMode)0u>, (uavcan::ArrayMode)1u, 255u>]'
dsdlc_generated/uavcan/protocol/HardwareVersion.hpp:237:109: required from 'static int uavcan::protocol::HardwareVersion_<_tmpl>::decode(uavcan::protocol::HardwareVersion_<_tmpl>::ReferenceType, uavcan::ScalarCodec&, uavcan::TailArrayOptimizationMode) [with int _tmpl = 0; uavcan::protocol::HardwareVersion_<_tmpl>::ReferenceType = uavcan::protocol::HardwareVersion_<0>&]'
dsdlc_generated/uavcan/protocol/GetNodeInfo.hpp:346:109: required from 'static int uavcan::protocol::GetNodeInfo_::Response_<_tmpl>::decode(uavcan::protocol::GetNodeInfo_::Response_<_tmpl>::ReferenceType, uavcan::ScalarCodec&, uavcan::TailArrayOptimizationMode) [with int _tmpl = 0; uavcan::protocol::GetNodeInfo_::Response_<_tmpl>::ReferenceType = uavcan::protocol::GetNodeInfo_::Response_<0>&]'
/Users/marco/src/px4/firmware/Firmware/src/lib/uavcan/libuavcan/include/uavcan/node/generic_subscriber.hpp:249:62: required from 'bool uavcan::GenericSubscriber<DataSpec, DataStruct, TransferListenerType>::decodeTransfer(uavcan::IncomingTransfer&) [with DataSpec = uavcan::protocol::GetNodeInfo_; DataStruct = uavcan::protocol::GetNodeInfo_::Response_<0>; TransferListenerType = uavcan::ServiceResponseTransferListener<357u>]'
/Users/marco/src/px4/firmware/Firmware/src/lib/uavcan/libuavcan/include/uavcan/node/generic_subscriber.hpp:266:32: required from 'void uavcan::GenericSubscriber<DataSpec, DataStruct, TransferListenerType>::handleIncomingTransfer(uavcan::IncomingTransfer&) [with DataSpec = uavcan::protocol::GetNodeInfo_; DataStruct = uavcan::protocol::GetNodeInfo_::Response_<0>; TransferListenerType = uavcan::ServiceResponseTransferListener<357u>]'
/Users/marco/src/px4/firmware/Firmware/src/lib/uavcan/libuavcan/include/uavcan/node/generic_subscriber.hpp:148:13: required from 'void uavcan::GenericSubscriber<DataSpec, DataStruct, TransferListenerType>::TransferForwarder::handleIncomingTransfer(uavcan::IncomingTransfer&) [with DataSpec = uavcan::protocol::GetNodeInfo_; DataStruct = uavcan::protocol::GetNodeInfo_::Response_<0>; TransferListenerType = uavcan::ServiceResponseTransferListener<357u>]'
/Users/marco/src/px4/firmware/Firmware/src/modules/uavcan/uavcan_configuration.cpp:545:1: required from here
/Users/marco/src/px4/firmware/Firmware/src/lib/uavcan/libuavcan/include/uavcan/marshal/array.hpp:382:26: error: logical 'and' of mutually exclusive tests is always false [-Werror=logical-op]
if ((sz > 0) && ((sz - 1u) > (MaxSize_ - 1u))) // -Werror=type-limits
^
compilation terminated due to -Wfatal-errors.
cc1plus: all warnings being treated as errors
make[2]: *** [uavcan_configuration.cpp.o] Error 1
make[1]: *** [/Users/marco/src/px4/firmware/Firmware/Build/px4fmu-v2_default.build//Users/marco/src/px4/firmware/Firmware/src/modules/uavcan/module.pre.o] Error 2
make: *** [/Users/marco/src/px4/firmware/Firmware/Build/px4fmu-v2_default.build/firmware.px4] Error 2