pragma solidity ^0.5.3;
contract Inbox {
string public message;
function Inbox(string initialMessage) public {
message = initialMessage;
}
function setMessage(string newMessage) public {
message = newMessage;
}
function getMessage() public view returns (string) {
return getMessage;
}
}
错误:浏览器/Untitled.sol:3:1:ParserError:源文件需要不同的编译器版本(当前编译器为0.5.3-nightly.2019.1.15 + commit.6146c59a.Emscripten.clang-请注意,每夜构建是被认为严格小于发行版本 合同收件箱{
我使用的是正确的版本。我尝试调试并在论坛上查看,但找不到正确的解决方案。还有其他遇到相同问题的人吗?
答案 0 :(得分:1)
答案直接在您收到的错误消息中:
请注意,每晚构建的版本严格认为要低于已发布的版本
您指定在合同中使用版本0.5.3,该版本晚于所选的编译器。要解决此问题,您可以降低到0.5.2,也可以将编译指示更改为
['1', '+', '22', '-', '3', '*', '4', '/', '5']
有关更多信息,请查看this ticket。
答案 1 :(得分:0)
我建议使用solc-select
(https://github.com/crytic/solc-select),它将允许在solc版本之间轻松切换。