微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

超时免费 TON Solidity 错误:代码:3025 合同执行因错误而终止

如何解决超时免费 TON Solidity 错误:代码:3025 合同执行因错误而终止

免费 TON solidity 代码或执行错误。无法理解我的错误,我已经将代码压缩到最小:

cat ./SimpleStorage.sol

pragma solidity >=0.6.0;

contract SimpleStorage {
    uint storedData;
    function set(uint x) public {
        storedData = x;
    }
    function get() public view returns (uint) {
        return storedData;
    }
}

tonos-cli call 0:efbeed7533cae6f12869b665b610c30535397c5c1523f6b41561905807aed958 set '{"x":100}' --abi ./Simple.jsonStorage.abi

Input arguments:
address: 0:efbeed7533cae6f12869b665b610c30535397c5c1523f6b41561905807aed958
method: set
params: {"x":100}
abi: ./SimpleStorage.abi.json

然后结果我在超时时收到错误

code: 3025
message: Contract execution was terminated with error

解决方法

您需要在存储变量之前启用gas。 tvm.accept 可以做到。

  function set(uint x) public {
        tvm.accept();
        storedData = x;
  }

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。