view run/i/in_out_body_12_C.d @ 1103:246bfd1f5ef5

[Issue 247] Cannot return from nested functions in contracts Deewiant <deewiant@gmail.com> 2006-07-09 news:bug-247-3@http.d.puremagic.com/issues/
author thomask
date Tue, 15 Aug 2006 09:45:30 +0000
parents
children daef239f37cf
line wrap: on
line source

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

// @author@	Deewiant <deewiant@gmail.com>
// @date@	2006-07-09
// @uri@	news:bug-247-3@http.d.puremagic.com/issues/
// @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;
}