The string interface (base_uint(const std::string&)
, as well as base_uint::SetHex
) is problematic for many reasons:
- It is unused (except in test-only code).
- It is redundant with the
uint256
string interface:std::string -> uint256 -> UintToArith256
. - It is brittle, because it inherits the brittle
uint256
string interface, which is brittle due to the use ofc_str()
(embedded null will be treated as end-of string), etc …
Instead of fixing the interface, remove it since it is unused and redundant with UintToArith256
.