view run/b/bug_expression_4275_B.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 b8c0195059d9
children
line wrap: on
line source

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

// @author@	Victor Nakoryakov <nail-mail@mail.ru>
// @date@	2005-07-07
// @uri@	http://www.digitalmars.com/pnews/read.php?server=news.digitalmars.com&group=digitalmars.D.bugs&artnum=4469

module dstress.run.b.bug_expression_4275_B;

class MyClass{
	template foo(T){
		T[] foo(){
			T[] x;
			return x;
		}
	}

	int dummy;
}

class Container{
	MyClass element(){
		MyClass x = new MyClass;
		return x;
	}
}

int main(){
	Container container = new Container();
	MyClass myclass = new MyClass();

	if(container.element().foo!(MyClass).sizeof != (MyClass[]).sizeof ){
		assert(0);
	}
	if(!(myclass.foo!(MyClass).length == 0 || myclass.foo!(MyClass)[0] is myclass )){
		assert(0);
	}

	return 0;
}