gpt4 book ai didi

compiler-errors - 不稳定的混音编译器错误 “Unknown exception during compilation”

转载 作者:行者123 更新时间:2023-12-02 10:53:35 25 4
gpt4 key购买 nike

Remix在线编译器会在相同代码和类似情况之间提供不稳定的错误消息。

Remix不断抛出“编译期间未知异常”。
当函数执行多个动态返回(三个uint []动态数组)时。

但是,当我调整返回两个动态数组的大小时,问题消失了。
现在我对其背后的原因一无所知。已经有切换不同的实用性版本。

//Remix在编译过程中引发Unknown异常。

function Determine_Result(uint GameId, uint RoundId) internal returns (uint[] memory WinnerUserId, uint[] memory DrawUserId, uint[] memory LoserUserId) {

uint[] memory Im_WinnerUserIdSet;
uint[] memory Im_DrawIdSet;
uint[] memory Im_LoserIdSet;

/*
...
*/

return (Im_WinnerUserIdSet, Im_DrawIdSet, Im_LoserIdSet);
}

//但是,这可行! :(
function Determine_Result(uint GameId, uint RoundId) internal returns (uint[] memory WinnerUserId, uint[] memory DrawUserId) {

uint[] memory Im_WinnerUserIdSet;
uint[] memory Im_DrawIdSet;
uint[] memory Im_LoserIdSet;

/*
...
*/
return (Im_WinnerUserIdSet, Im_DrawIdSet);
}

这是一个特定的问题吗?背后的原理是什么以及如何解决这个问题

拜托,我被这一天困住了

enter image description here

enter image description here

最佳答案

通过以下方式编辑函数可以修复您收到的我的错误。

    pragma solidity >=0.4.22 <0.6.0;

contract Test {
function Determine_Result() public pure returns (uint[] memory WinnerUserId, uint[] memory DrawUserId, uint[] memory LoserUserId) {

uint[] memory Im_WinnerUserIdSet;
uint[] memory Im_DrawIdSet;
uint[] memory Im_LoserIdSet;

/*
...
*/

return (Im_WinnerUserIdSet, Im_DrawIdSet, Im_LoserIdSet);
}

}

您的问题似乎与编译器版本有关。我编写的代码是在0.5.2版上编译的。您编写的代码在0.4.22版上编译,但在0.5.2版上不编译。

据我所知,这是您在函数内部声明了两个未使用的参数的结果。

尽管它在一种情况下出错,但在另一种情况下出错,但看起来仍然像是编译器中的错误,至少现在您知道是什么原因导致的。

关于compiler-errors - 不稳定的混音编译器错误 “Unknown exception during compilation”,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54034328/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com