Run functional tests and benchmarks under the undefined behaviour sanitizer (UBSan).
This will make Travis automatically detect issues such as:
- #14242: Avoid triggering undefined behaviour (std::memset(nullptr, 0, 0)) if an invalid string is passed toDecodeSecret(...)
- #14239: Avoid dividing by zero (undefined behaviour) in EstimateMedianVal(policy)/ConnectTip(validation)/CreateTransaction(wallet)
- #13546: wallet: Avoid potential use of uninitialized value bnb_usedinCWallet::CreateTransaction(...)
Addresses issue #14059.