Когда я пытаюсь развернуть контракты, содержащие assert
и require
использующие трюфель, я получаю
Error: Undeclared identifier.
например:
pragma solidity ^0.4.8;
contract Owned{
address public owner = msg.sender;
modifier onlyOwner(){
assert(msg.sender == owner);
_;
}
function kill() onlyOwner{
require(msg.sender ==owner);
suicide(owner);
}
}
Я знаю, что в прошлом трюфель создавал свой собственный assert.sol
, но, конечно же, они обновили его, чтобы он соответствовал Solidity, и это не объясняет, почему он require
также терпит неудачу.
Буду очень признателен за любые мысли о том, как решить эту проблему.
Код отлично работает на моей машине. Я могу перенести и скомпилировать данный код.
Версия трюфеля, которую я использую, - 3.2.5.
Обновите до этой версии, исправит вашу проблему.
Санчит
Шульц
Санчит
Санчит