diff run/invariant_27.d @ 392:9faddc0de2ba

1) fixed meta data 2) evade dmd-0.118 loop code
author thomask
date Wed, 06 Apr 2005 18:56:06 +0000
parents
children 1e6afb94ce6d
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/run/invariant_27.d	Wed Apr 06 18:56:06 2005 +0000
@@ -0,0 +1,48 @@
+// $HeadURL$
+// $Date$
+// $Author$
+
+module dstress.run.invariant_27;
+
+int status;
+int inv;
+
+class MyClass{
+
+	this(){
+	}
+
+	public static void check(){
+		status++;
+	}
+
+	private void middle(){
+		check();
+	}
+
+	invariant{
+		middle();
+		inv++;
+	}
+}
+
+int main(){
+
+	MyClass o;
+	assert(status==0);
+	assert(inv==0);
+
+	o=new MyClass();
+	assert(status==1);
+	assert(inv==1);
+
+	o.check();
+	assert(status==2);
+	assert(inv==1);
+
+	MyClass.check();
+	assert(status==3);
+	assert(inv==1);
+
+	return 0;
+}