remix.ethereum.orgのブロックハッシュ機能に問題があります。異なるコードで何度か試みたにもかかわらず、ブロックハッシュ関数は常に問題を引き起こし、その結果、すべての変数がゼロの値で返されます。
以下の場合、_previousBlockNumber変数は常にゼロを返します。ブロックハッシュ関数の行がコメントアウトされている場合、エラーは発生せず、少なくとも_previousBlockNumber変数は正しく返されます。
いくつかの異なるバージョンのコンパイラを試しました。
pragma solidity ^0.5.5;
contract Test {
    constructor() public {
    }
    function rand() public view returns(uint,bytes32) {
        uint _previousBlockNumber;
        bytes32 _previousBlockHash;
        _previousBlockNumber = uint(block.number - 1);
        bytes32 _previousBlockHash = bytes32(blockhash(_previousBlockNumber)); 
        return (_previousBlockNumber,_previousBlockHash);
    }   
}
バグの問題ですか?
助けてくれてありがとう。
