view run/bug_20041226_E.d @ 1330:f3f715978184

Georg Wrede <georg@iki.fi> 2007-01-07 mail:45A120F5.1050108@iki.fi
author thomask
date Sat, 13 Jan 2007 10:33:49 +0000
parents 1e6afb94ce6d
children 52c9e86b6486
line wrap: on
line source

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

// @author@	h3r3tic <foo@bar.baz>
// @date@	2004-12-26
// @uri@	news:cqmufn$26oj$1@digitaldaemon.com
// @url@	nntp://digitalmars.com/digitalmars.D.bugs/2606

module dstress.run.bug_20041226_E;

void dummy(...){
}

struct vec3{
	vec3 opSub(vec3 a){
		vec3 x;
		return x;
	}
}

struct Face{
	vec3	a;
}

struct Mesh{
	Face[]	faces;
}
	
struct GeomObject{
	Mesh	mesh;
	char[]	name;
	vec3		xlate;
}

class AseLoader{
	this(){
		GeomObject go;
		go.name = "NODE";
		geomObjects ~= go;
	}
	
	GeomObject[]	geomObjects;
}


void extractTriangles(GeomObject geomObj){
	void foobar(){
		try{
			dummy("name: ", geomObj.name);

			return;
		}catch(Object err){
			throw err;
		}
	}
	
	foobar();
}

int main(){
	try{
		AseLoader al = new AseLoader;
	
		foreach(GeomObject go; al.geomObjects){
			dummy("processing ", go.name);
			extractTriangles(go);
		}
	}catch(Object err){
		dummy("Exception caught:", err);
	}
	
	return 0;
}