view run/i/in_out_body_12_C.d @ 1630:d0efa3ae5522 default tip

run/mini/naked_asm5: New x86_64 ABI passes the arguments in reverse order.
author David Nadlinger <code@klickverbot.at>
date Sat, 23 Apr 2011 22:57:32 +0200
parents daef239f37cf
children
line wrap: on
line source

// $HeadURL$
// $Date$
// $Author$

// @author@	Deewiant <deewiant@gmail.com>
// @date@	2006-07-09
// @uri@	http://d.puremagic.com/issues/show_bug.cgi?id=247
// @desc@	[Issue 247] Cannot return from nested functions in contracts

module dstress.run.i.in_out_body_12_C;

int foo(int dummy)
out(result){
	static int checkParameters(int x) {
		if(x < 0){
			return checkParameters(-x);
		}else{
			return x % 2;
		}
	}

	assert(checkParameters(result) == 1);
} body {
	return dummy+1;
}

int main(){
	foo(4);

	return 0;
}