go-ethereum/accounts/abi
jwasinger fe95bfdc89
Some checks are pending
/ Linux Build (push) Waiting to run
/ Linux Build (arm) (push) Waiting to run
/ Docker Image (push) Waiting to run
accounts/abi: error when packing negative values in unsigned types (#31790)
This is an alternative approach to
https://github.com/ethereum/go-ethereum/pull/31607 , that doesn't break
backwards-compatibility with abigen.

Note that this does change the behavior of `Argument.Pack`: previously,
packing negative values for a `uint` parameter would cause them to be
represented in signed binary representation via two's complement. Now,
it will fail explicitly in this case.

However, I don't see a reason to support this functionality. The ABI
already explicitly supports signed integers. There's no reason that a
smart contract author would choose to store signed values in a `uint`
afaict.

---------

Co-authored-by: MariusVanDerWijden <m.vanderwijden@live.de>
2025-06-04 14:47:01 +02:00
..
abigen accounts/abi/abigen: remove unnecessary test files (#31804) 2025-05-12 11:31:48 +02:00
bind accounts/abi: include access-list in gas estimation (#31394) 2025-03-26 16:14:17 +01:00
abi.go accounts/abi: support unpacking solidity errors (#30738) 2024-12-10 14:30:24 +01:00
abi_test.go accounts/abi: support unpacking solidity errors (#30738) 2024-12-10 14:30:24 +01:00
abifuzzer_test.go accounts: run tests in parallel (#28544) 2023-12-04 14:55:06 +01:00
argument.go accounts/abi: improve unpack performance (#31387) 2025-03-14 15:27:38 +01:00
doc.go all: fix license headers one more time 2015-07-23 18:35:11 +02:00
error.go accounts/abi: context info on unpack-errors (#28529) 2023-11-21 09:16:57 +01:00
error_handling.go accounts/abi: error when packing negative values in unsigned types (#31790) 2025-06-04 14:47:01 +02:00
event.go accounts/abi/bind: fix duplicate field names in the generated go struct (#24924) 2022-06-07 08:38:54 +02:00
event_test.go build: update to golangci-lint 1.61.0 (#30587) 2024-10-14 19:25:22 +02:00
method.go accounts/abi: improve readability of method-to-string conversion (#28530) 2023-11-15 14:30:35 +01:00
method_test.go accounts: run tests in parallel (#28544) 2023-12-04 14:55:06 +01:00
pack.go accounts/abi: error when packing negative values in unsigned types (#31790) 2025-06-04 14:47:01 +02:00
pack_test.go accounts/abi: error when packing negative values in unsigned types (#31790) 2025-06-04 14:47:01 +02:00
packing_test.go accounts/abi: ABI explicit difference between Unpack and UnpackIntoInterface (#21091) 2020-09-28 14:10:26 +02:00
reflect.go all: fix various typos (#29542) 2024-04-16 15:44:00 +03:00
reflect_test.go build: update to golangci-lint 1.61.0 (#30587) 2024-10-14 19:25:22 +02:00
selector_parser.go accounts: replace noarg fmt.Errorf with errors.New (#27331) 2023-05-25 08:25:58 -04:00
selector_parser_test.go accounts: run tests in parallel (#28544) 2023-12-04 14:55:06 +01:00
topics.go accounts/abi: fix MakeTopics mutation of big.Int inputs (#30785) 2024-11-25 13:34:50 +01:00
topics_test.go accounts/abi: fix MakeTopics mutation of big.Int inputs (#30785) 2024-11-25 13:34:50 +01:00
type.go accounts/abi: handle ABIs with contract type parameter (#30315) 2024-08-20 12:26:35 +02:00
type_test.go all: fix various typos (#29600) 2024-04-23 13:09:42 +03:00
unpack.go account/abi: convert if-else-if chain to tagged switch (#27869) 2023-08-23 09:53:38 -04:00
unpack_test.go accounts/abi: error when packing negative values in unsigned types (#31790) 2025-06-04 14:47:01 +02:00
utils.go build: upgrade to go 1.19 (#25726) 2022-09-10 13:25:40 +02:00