2

Simple contract, one function.

function getSha256(uint32 nonce) returns (bytes32 hash) {
    return sha256(nonce);
}

> contractInstance.getSha256.call(1);
Error: Error: VM Exception while executing eth_call: stack underflow
4
  • this may be related to testrpc ot truffle
    – Badr Bellaj
    Commented May 30, 2017 at 8:49
  • Actually I believe the testrpc issue is the case. The code works fine, but should not be throwing that error. It only happens after I make a back explicit cast and try to run it after making a correction Commented May 30, 2017 at 11:08
  • open then an issue on their github
    – Badr Bellaj
    Commented May 30, 2017 at 11:24
  • I haven't cornered the STR exactly yet, ty Commented May 30, 2017 at 13:29

1 Answer 1

2

Try adding the constant modifier as follows:

pragma solidity ^0.4.10;

contract Test {
    function getSha256(uint32 nonce) constant returns (bytes32 hash) {
        return sha256(nonce);
    }
}

And here is the Remix screen showing that it works:

enter image description here

If you don't add the constant modifier, you will have to execute your call as a transaction.

See What is the difference between a transaction and a call? for further information.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.