view run/break_09.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 ec5e144583ea
children
line wrap: on
line source

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

module dstress.run.break_09;

int status;

int test(string[] args){

loop:	while(1){
		try{
			try{
				if(args.length==1){
					break loop;
				}
			}finally{
				if(0 != status){
					assert(0);
				}
				status+=2;
			}
		}finally{
			if(2 != status){
				assert(0);
			}
			status+=3;
		}
		return 0;
	}
	return -1;
}

int main(string[] args){
	if(0 != status ){
		assert(0);
	}
	if(1 != args.length ){
		assert(0);
	}
	if(-1 != test(args) ){
		assert(0);
	}
	if(5 != status ){
		assert(0);
	}
	return 0;
}