我在基于二进制智能链的硬币中遇到了keccal256错误。此错误发生在用cointool.app生成的令牌中。我偶然发现了这个例子。如何解决这个错误?https://blog.soliditylang.org/2021/03/23/keccak-optimizer-bug/感谢您的帮助。
函数0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470 (地址帐户)内部视图返回(bool) { //根据EIP-1052,0x0是未创建的帐户//和0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470;返回/用于没有代码的帐户返回的值,即keccak256('') bytes32编码哈希;bytes32 accountHash =0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470;// solwin-禁用-next-行内无内联程序集{code散列:= extcodehash散列(帐户)}返回(code散列!= accountHash && codehash != 0x0);
发布于 2021-09-08 02:38:13
正如博客文章中提到的,您需要使用SolityVersion0.8.3及更高版本来避免这个错误。因此,您需要部署一个新的硬币契约,因为前一个不能更改,因为它在区块链上是不变的。
https://ethereum.stackexchange.com/questions/109507
复制相似问题