On Thursday, 19 September 2013 at 10:44:32 UTC, monarch_dodra
wrote:
On Thursday, 19 September 2013 at 10:38:37 UTC, Joseph Rushton
Wakeling wrote:
On 18/09/13 14:11, monarch_dodra wrote:
IMO, this is wrong. When calling a function with an out
contract, the arguments
should *also* be passed to the out contract directly. "out"
should not be
expected to run on the body's "sloppy seconds".
I'm not sure I understand your objection here. As I
understood it the whole point of an "out" contract was to
check the state of everything _after the function has exited_.
Exactly.
If the function has already exited, then why is the state of he
arguments modified? I though pass by value meant that the
function operated on its own copy?
What exactly would you like this to do? v only exists inside the
body of the function. There is no v after the function exits. If
you check v in the output contract then you are checking the
final value of v.