changeset 378:e555e1460d7e

added tests for custom allocators
author thomask
date Sat, 02 Apr 2005 10:27:50 +0000
parents 58d40daf8407
children 60b4ba82210e
files nocompile/new_02.d nocompile/new_03.d nocompile/new_04.d nocompile/new_05.d nocompile/new_14.d nocompile/new_15.d nocompile/new_16.d nocompile/new_17.d nocompile/new_18.d nocompile/new_19.d nocompile/new_20.d nocompile/new_21.d nocompile/new_22.d run/new_06.d run/new_07.d run/new_08.d run/new_09.d run/new_10.d run/new_11.d run/new_12.d run/new_13.d
diffstat 21 files changed, 417 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/nocompile/new_02.d	Sat Apr 02 10:27:50 2005 +0000
@@ -0,0 +1,14 @@
+// $HeadURL$
+// $Date$
+// $Author$
+
+// __DSTRESS_ELINE__ 10
+
+module dstress.nocompile.new_02;
+
+class MyClass{
+	new(){
+		void* v;
+		return v;
+	}
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/nocompile/new_03.d	Sat Apr 02 10:27:50 2005 +0000
@@ -0,0 +1,14 @@
+// $HeadURL$
+// $Date$
+// $Author$
+
+// __DSTRESS_ELINE__ 10
+
+module dstress.nocompile.new_03;
+
+class MyClass{
+	void* new(size_t size){
+		void* v;
+		return v;
+	}
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/nocompile/new_04.d	Sat Apr 02 10:27:50 2005 +0000
@@ -0,0 +1,14 @@
+// $HeadURL$
+// $Date$
+// $Author$
+
+// __DSTRESS_ELINE__ 10
+
+module dstress.nocompile.new_04;
+
+class MyClass{
+	new(size_t size, byte blah){
+		void* v;
+		return v;
+	}
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/nocompile/new_05.d	Sat Apr 02 10:27:50 2005 +0000
@@ -0,0 +1,14 @@
+// $HeadURL$
+// $Date$
+// $Author$
+
+// __DSTRESS_ELINE__ 10
+
+module dstress.nocompile.new_05;
+
+class MyClass{
+	new(byte blah, size_t size){
+		void* v;
+		return v;
+	}
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/nocompile/new_14.d	Sat Apr 02 10:27:50 2005 +0000
@@ -0,0 +1,12 @@
+// $HeadURL$
+// $Date$
+// $Author$
+
+// __DSTRESS_ELINE__ 9
+
+module dstress.nocompile.new_14;
+
+new(size_t s){
+	void* v;
+	return v;
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/nocompile/new_15.d	Sat Apr 02 10:27:50 2005 +0000
@@ -0,0 +1,14 @@
+// $HeadURL$
+// $Date$
+// $Author$
+
+// __DSTRESS_ELINE__ 10
+
+module dstress.nocompile.new_15;
+
+void test(){
+	new(size_t s){
+		void* v;
+		return v;
+	}
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/nocompile/new_16.d	Sat Apr 02 10:27:50 2005 +0000
@@ -0,0 +1,16 @@
+// $HeadURL$
+// $Date$
+// $Author$
+
+// __DSTRESS_ELINE__ 11
+
+module dstress.nocompile.new_16;
+
+class MyClass{
+	void test(){
+		new(size_t s){
+			void* v;
+			return v;
+		}
+	}
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/nocompile/new_17.d	Sat Apr 02 10:27:50 2005 +0000
@@ -0,0 +1,16 @@
+// $HeadURL$
+// $Date$
+// $Author$
+
+// __DSTRESS_ELINE__ 11
+
+module dstress.nocompile.new_17;
+
+class MyClass{
+	this(){
+		new(size_t s){
+			void* v;
+			return v;
+		}
+	}
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/nocompile/new_18.d	Sat Apr 02 10:27:50 2005 +0000
@@ -0,0 +1,16 @@
+// $HeadURL$
+// $Date$
+// $Author$
+
+// __DSTRESS_ELINE__ 11
+
+module dstress.nocompile.new_18;
+
+class MyClass{
+	~this(){
+		new(size_t s){
+			void* v;
+			return v;
+		}
+	}
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/nocompile/new_19.d	Sat Apr 02 10:27:50 2005 +0000
@@ -0,0 +1,18 @@
+// $HeadURL$
+// $Date$
+// $Author$
+
+// __DSTRESS_ELINE__ 11
+
+module dstress.nocompile.new_19;
+
+class MyClass{
+	new(size_t ss){
+		new(size_t s){
+			void* v;
+			return v;
+		}
+		void* v;
+		return v;
+	}
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/nocompile/new_20.d	Sat Apr 02 10:27:50 2005 +0000
@@ -0,0 +1,16 @@
+// $HeadURL$
+// $Date$
+// $Author$
+
+// __DSTRESS_ELINE__ 11
+
+module dstress.nocompile.new_20;
+
+class MyClass{
+	invariant{
+		new(size_t s){
+			void* v;
+			return v;
+		}
+	}
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/nocompile/new_21.d	Sat Apr 02 10:27:50 2005 +0000
@@ -0,0 +1,16 @@
+// $HeadURL$
+// $Date$
+// $Author$
+
+// __DSTRESS_ELINE__ 11
+
+module dstress.nocompile.new_21;
+
+class MyClass{
+	unittest{
+		new(size_t s){
+			void* v;
+			return v;
+		}
+	}
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/nocompile/new_22.d	Sat Apr 02 10:27:50 2005 +0000
@@ -0,0 +1,12 @@
+// $HeadURL$
+// $Date$
+// $Author$
+
+// __DSTRESS_ELINE__ 9
+
+module dstress.nocompile.new_22;
+
+new(size_t t){
+	void* v;
+	return v;
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/run/new_06.d	Sat Apr 02 10:27:50 2005 +0000
@@ -0,0 +1,23 @@
+// $HeadURL$
+// $Date$
+// $Author$
+
+module dstress.run.new_06;
+
+extern(C)  void *malloc(size_t size);
+
+int counter;
+
+class MyClass{
+	new(size_t size){
+		counter++;
+		return malloc(size);
+	}
+}
+
+int main(){
+	assert(counter==0);
+	MyClass c = new MyClass();
+	assert(counter==1);
+	return 0;
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/run/new_07.d	Sat Apr 02 10:27:50 2005 +0000
@@ -0,0 +1,26 @@
+// $HeadURL$
+// $Date$
+// $Author$
+
+module dstress.run.new_07;
+
+extern(C)  void *malloc(size_t size);
+
+int counter;
+
+class Parent{
+	new(size_t size){
+		counter++;
+		return malloc(size);
+	}
+}
+
+class Child : Parent{
+}
+
+int main(){
+	assert(counter==0);
+	Child c = new Child();
+	assert(counter==1);
+	return 0;
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/run/new_08.d	Sat Apr 02 10:27:50 2005 +0000
@@ -0,0 +1,33 @@
+// $HeadURL$
+// $Date$
+// $Author$
+
+module dstress.run.new_08;
+
+extern(C)  void *malloc(size_t size);
+
+int counter;
+int counter2;
+
+class Parent{
+	new(size_t size){
+		counter++;
+		return malloc(size);
+	}
+}
+
+class Child : Parent{
+	new(size_t size){
+		counter2++;
+		return malloc(size);
+	}
+}
+
+int main(){
+	assert(counter==0);
+	assert(counter2==0);
+	Child c = new Child();
+	assert(counter==0);
+	assert(counter2==1);
+	return 0;
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/run/new_09.d	Sat Apr 02 10:27:50 2005 +0000
@@ -0,0 +1,31 @@
+// $HeadURL$
+// $Date$
+// $Auhthor$
+
+module dstress.run.new_09;
+
+int counter;
+
+extern(C) void* malloc(size_t size);
+
+class MyClass{
+	this(){
+		assert(counter==1);
+		counter+=2;
+	}
+
+	new(size_t size){
+		assert(counter==0);
+		counter++;
+		return malloc(size);
+	}			
+}
+
+int main(){
+	MyClass c;
+	assert(counter==0);
+	c = new MyClass();
+	assert(counter==3);
+	return 0;
+}
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/run/new_10.d	Sat Apr 02 10:27:50 2005 +0000
@@ -0,0 +1,29 @@
+// $HeadURL$
+// $Date$
+// $Auhthor$
+
+module dstress.run.new_10;
+
+int counter;
+
+extern(C) void* malloc(size_t size);
+
+class MyClass{
+	this(){
+		assert(counter==0);
+		counter++;
+	}
+
+	new(size_t size){
+		return malloc(size);
+	}			
+}
+
+int main(){
+	MyClass c;
+	assert(counter==0);
+	c = new MyClass();
+	assert(counter==1);
+	return 0;
+}
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/run/new_11.d	Sat Apr 02 10:27:50 2005 +0000
@@ -0,0 +1,29 @@
+// $HeadURL$
+// $Date$
+// $Auhthor$
+
+module dstress.run.new_11;
+
+int counter;
+
+extern(C) void* malloc(size_t size);
+
+class MyClass{
+	this(){
+	}
+
+	new(size_t size){
+		assert(counter==0);
+		counter++;
+		return malloc(size);
+	}			
+}
+
+int main(){
+	MyClass c;
+	assert(counter==0);
+	c = new MyClass();
+	assert(counter==1);
+	return 0;
+}
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/run/new_12.d	Sat Apr 02 10:27:50 2005 +0000
@@ -0,0 +1,27 @@
+// $HeadURL$
+// $Date$
+// $Author$
+
+module dstress.run.new_12;
+
+extern(C) void* malloc(size_t size);
+
+int counter;
+
+struct MyStruct{
+	int x;
+
+	new(size_t size){
+		counter++;
+		return malloc(size);
+	}
+}
+
+int main(){
+	assert(counter==0);
+	MyStruct m;
+	m.x=1;
+	assert(counter==1);
+	return 0;
+}
+
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/run/new_13.d	Sat Apr 02 10:27:50 2005 +0000
@@ -0,0 +1,27 @@
+// $HeadURL$
+// $Date$
+// $Author$
+
+module dstress.run.new_13;
+
+extern(C) void* malloc(size_t size);
+
+int counter;
+
+union MyUnion{
+	int x;
+
+	new(size_t size){
+		counter++;
+		return malloc(size);
+	}
+}
+
+int main(){
+	assert(counter==0);
+	MyUnion m;
+	m.x=1;
+	assert(counter==1);
+	return 0;
+}
+