tendermint / go-amino

Protobuf3 with Interface support - Designed for blockchains (deterministic, upgradeable, fast, and compact)
Other
260 stars 78 forks source link

Make amino build on 32bit architectures #242

Closed liamsi closed 5 years ago

liamsi commented 5 years ago

Some constants in encoder.go are interpreted as int by default and they overflow ints on 32bit machines: encoder.go Similarly some values that seed the fuzzer: here for instance.

The first makes tendermint builds fail on certain architectures. This PR is a quick-fix for this issue. The changes made in this PR were tested (and fuzzed) with a i686 docker image (and locally for 64bit).

liamsi commented 5 years ago

Thanks for the review @greg-szabo. I think we were seeing errors in encoder.go because it was using that same variables defined in decoder.go. After #243 gets approved, I'll tag another release, which should make the arm/32bit builds work again.