diff --git a/tests/mini/__asm1.d b/tests/mini/__asm1.d deleted file mode 100644 index f620ce62..00000000 --- a/tests/mini/__asm1.d +++ /dev/null @@ -1,22 +0,0 @@ -import ldc.llvmasm; -void main() { - version(X86) - { - int i; - __asm("movl $1, $0", "=*m,i", &i, 42); - assert(i == 42); - - int j = __asm!(int)("movl $1, %eax", "={ax},i", 42); - assert(j == 42); - - auto k = __asmtuple!(int,int)("mov $2, %eax ; mov $3, %edx", "={ax},={dx},i,i", 10, 20); - assert(k.v[0] == 10); - assert(k.v[1] == 20); - } - else version(PPC) - { - int j = 42; - int i = __asm!(int)("li $1, $0", "=r,*m", &j); - assert(i == 42); - } -} diff --git a/tests/mini/a.d b/tests/mini/a.d deleted file mode 100644 index 82d00715..00000000 --- a/tests/mini/a.d +++ /dev/null @@ -1,23 +0,0 @@ -module a; - -extern(C) int printf(char*, ...); - -int i = 42; - -void main() -{ - int j; - j = i; - int* p; - p = &j; - int k = *p; - assert(k == 42); - - byte b = -1; - int i = b; - assert(i == -1); - - int* p2 = p; - - printf("Done\n"); -} diff --git a/tests/mini/a_1.d b/tests/mini/a_1.d deleted file mode 100644 index fd126a8b..00000000 --- a/tests/mini/a_1.d +++ /dev/null @@ -1,34 +0,0 @@ -class Foo -{ - this(int j) - { - i = pi = j; - } - - int i; - -private: - - int pi; -} - -class Bar : Foo -{ - this(int j) - { - super(j); - baz = 42; - } - - int baz; -} - -void func() -{ - auto bar = new Bar(12); -} - -void main() -{ - func(); -} diff --git a/tests/mini/aa1.d b/tests/mini/aa1.d deleted file mode 100644 index 822733be..00000000 --- a/tests/mini/aa1.d +++ /dev/null @@ -1,15 +0,0 @@ -module aa1; - -void main() -{ - int[int] aai; - assert(aai is null); - aai[0] = 52; - assert(aai !is null); - int i = aai[0]; - assert(i == 52); - aai[32] = 123; - int j = aai[32]; - assert(i == 52); - assert(j == 123); -} diff --git a/tests/mini/aa1_1.d b/tests/mini/aa1_1.d deleted file mode 100644 index cb63f1d9..00000000 --- a/tests/mini/aa1_1.d +++ /dev/null @@ -1,21 +0,0 @@ -module tangotests.aa1_1; - -extern(C) int printf(char*,...); - -void main() -{ - int[int] map; - map[1] = 1; - map[10] = 1; - map[11] = 11; - map[14] = 41; - map[21] = 12; - map[23] = 32; - map[32] = 23; - map[201] = 102; - foreach(k,v; map) - { - printf("%d:%d ", k,v); - } - printf("\n"); -} diff --git a/tests/mini/aa2.d b/tests/mini/aa2.d deleted file mode 100644 index 36f3c44b..00000000 --- a/tests/mini/aa2.d +++ /dev/null @@ -1,12 +0,0 @@ -module aa2; - -void main() -{ - long[float] aa; - long* p = 2.0f in aa; - assert(!p); - aa[4f] = 23; - p = 4f in aa; - assert(p); - assert(*p == 23); -} diff --git a/tests/mini/aa2_1.d b/tests/mini/aa2_1.d deleted file mode 100644 index 1cef493d..00000000 --- a/tests/mini/aa2_1.d +++ /dev/null @@ -1,12 +0,0 @@ -module tangotests.aa2_1; - -int main() -{ - int[cdouble] x; - cdouble d=22.0+0.0i; - x[d] = 44; - if(44 != x[d]){ - assert(0); - } - return 0; -} diff --git a/tests/mini/aa3.d b/tests/mini/aa3.d deleted file mode 100644 index e31967a4..00000000 --- a/tests/mini/aa3.d +++ /dev/null @@ -1,27 +0,0 @@ -module aa3; - -extern(C) int printf(char*, ...); -alias char[] string; - -void main() -{ - int[string] aa; - {aa["hello"] = 1;} - {int* p = "" in aa;} - aa[" worl"] = 2; - aa["d"] = 3; - aa["thisisgreat"] = 10; - int sum; - string cat; - { - foreach(k,v;aa) - { - printf("int[%.*s] = %d\n", k.length, k.ptr, v); - sum += v; - cat ~= k; - } - } - assert(sum == 16); - printf("cat = %.*s\n", cat.length, cat.ptr); - assert(cat.length == 22); -} diff --git a/tests/mini/aa4.d b/tests/mini/aa4.d deleted file mode 100644 index 50999bbe..00000000 --- a/tests/mini/aa4.d +++ /dev/null @@ -1,20 +0,0 @@ -module aa4; - -void main() -{ - int[int] aa; - aa = addkey(aa,42,12); - int* p = haskey(aa,42); - assert(p && *p == 12); -} - -int[int] addkey(int[int] aa, int key, int val) -{ - aa[key] = val; - return aa; -} - -int* haskey(int[int] aa, int key) -{ - return key in aa; -} diff --git a/tests/mini/aa5.d b/tests/mini/aa5.d deleted file mode 100644 index c73e40b0..00000000 --- a/tests/mini/aa5.d +++ /dev/null @@ -1,9 +0,0 @@ -module aa5; - -void main() -{ - int[int] aa; - aa[42] = 1; - int i = aa[42]; - assert(i == 1); -} diff --git a/tests/mini/aa6.d b/tests/mini/aa6.d deleted file mode 100644 index be5d1b25..00000000 --- a/tests/mini/aa6.d +++ /dev/null @@ -1,27 +0,0 @@ -module aa6; - -extern(C) int printf(char*, ...); - -void main() -{ - int[int] aa; - aa = [1:1, 2:4, 3:9, 4:16]; - printf("---\n"); - foreach(int k, int v; aa) - printf("aa[%d] = %d\n", k, v); - aa.rehash; - printf("---\n"); - foreach(int k, int v; aa) - printf("aa[%d] = %d\n", k, v); - size_t n = aa.length; - assert(n == 4); - int[] keys = aa.keys; - assert(keys[] == [1,2,3,4][]); - int[] vals = aa.values; - assert(vals[] == [1,4,9,16][]); - aa.remove(3); - printf("---\n"); - foreach(int k, int v; aa) - printf("aa[%d] = %d\n", k, v); - assert(aa.length == 3); -} diff --git a/tests/mini/aa7.d b/tests/mini/aa7.d deleted file mode 100644 index b18679f7..00000000 --- a/tests/mini/aa7.d +++ /dev/null @@ -1,20 +0,0 @@ -// adapted from dstress.run.a.associative_array_19_ to catch regressions early - -module mini.aa7; - -extern (C) int printf(char*, ...); -extern (C) void gc_collect(); - - -int main(){ - char*[char] aa; - - char key = 'a'; - aa[key] = &key; - gc_collect(); - assert(aa[key] == &key); - assert(key in aa); - - return 0; -} - diff --git a/tests/mini/aaequality.d b/tests/mini/aaequality.d deleted file mode 100644 index 55eb10b6..00000000 --- a/tests/mini/aaequality.d +++ /dev/null @@ -1,48 +0,0 @@ -void test(K,V)(K k1, V v1, K k2, V v2, K k3, V v3) -{ - V[K] a, b; - a[k1] = v1; - a[k2] = v2; - assert(a != b); - assert(b != a); - assert(a == a); - assert(b == b); - - b[k1] = v1; - assert(a != b); - assert(b != a); - - b[k2] = v2; - assert(a == b); - assert(b == a); - - b[k1] = v2; - assert(a != b); - assert(b != a); - - b[k1] = v1; - b[k2] = v3; - assert(a != b); - assert(b != a); - - b[k2] = v2; - b[k3] = v3; - assert(a != b); - assert(b != a); -} - -void main() -{ - test!(int,int)(1, 2, 3, 4, 5, 6); - test!(char[],int)("abc", 2, "def", 4, "geh", 6); - test!(int,char[])(1, "abc", 2, "def", 3, "geh"); - test!(char[],char[])("123", "abc", "456", "def", "789", "geh"); - - Object a = new Object, b = new Object, c = new Object; - test!(Object, Object)(a, a, b, b, c, c); - - int[int] a2 = [1:2, 2:3, 3:4]; - int[int] b2 = [1:2, 2:5, 3:4]; - int[int] c2 = [1:2, 2:3]; - test!(int,int[int])(1,a2, 2,b2, 3,c2); -} \ No newline at end of file diff --git a/tests/mini/align1.d b/tests/mini/align1.d deleted file mode 100644 index ced1dfe7..00000000 --- a/tests/mini/align1.d +++ /dev/null @@ -1,19 +0,0 @@ -module tangotests.align1; - -extern(C) int printf(char*, ...); - -struct TLA -{ - char[3] tla; - char[] toString() { return tla; } - void dump() - { - printf("%.*s\n", 3, tla.ptr); - } -} - -void main() -{ - TLA fbi = TLA("FBI"); - fbi.dump(); -} diff --git a/tests/mini/alignment.d b/tests/mini/alignment.d deleted file mode 100644 index 93824044..00000000 --- a/tests/mini/alignment.d +++ /dev/null @@ -1,21 +0,0 @@ -module alignment; - -align(1) struct S -{ - ubyte b; - int i; - ubyte[2] b2; - long l; - real r; -} - -void main() -{ - byte b; - short s; - int i; - long l; - float f; - double d; - real r; -} diff --git a/tests/mini/alloca1.d b/tests/mini/alloca1.d deleted file mode 100644 index acae2d40..00000000 --- a/tests/mini/alloca1.d +++ /dev/null @@ -1,16 +0,0 @@ -module alloca1; - -pragma(alloca) void* alloca(uint); - -extern(C) int printf(char*, ...); - -void main() -{ - int n = 16; - int* p = cast(int*)alloca(n*int.sizeof); - int[] a = p[0..n]; - a[] = 0; - foreach(i,v; a) { - printf("a[%2d] = %d\n", i, v); - } -} diff --git a/tests/mini/andand.d b/tests/mini/andand.d deleted file mode 100644 index 4ad10558..00000000 --- a/tests/mini/andand.d +++ /dev/null @@ -1,3 +0,0 @@ -bool ok = false; -void f(){ ok = true; } void main() { bool b=true; b && f(); assert(ok); } - diff --git a/tests/mini/arrayinit.d b/tests/mini/arrayinit.d deleted file mode 100644 index e5c19bb0..00000000 --- a/tests/mini/arrayinit.d +++ /dev/null @@ -1,10 +0,0 @@ -module arrayinit; -float[4] ftable = [1,2,3,4]; -int[8] itable = [3:42,6:123]; - -private uint[7] crc32_table = [0x00000000,0x77073096,0xee0e612c,0x990951ba,0x076dc419,0x706af48f,0xe963a535]; - -void main() -{ - assert(crc32_table[3] == 0x990951ba); -} diff --git a/tests/mini/arrayinit1.d b/tests/mini/arrayinit1.d deleted file mode 100644 index 9a92126f..00000000 --- a/tests/mini/arrayinit1.d +++ /dev/null @@ -1,8 +0,0 @@ -void main() -{ - float m[4][4]; - - float* fp = &m[0][0]; - for (int i=0; i<16; i++,fp++) - assert(*fp !<>= 0); -} diff --git a/tests/mini/arrayinit2.d b/tests/mini/arrayinit2.d deleted file mode 100644 index c826da55..00000000 --- a/tests/mini/arrayinit2.d +++ /dev/null @@ -1,10 +0,0 @@ -// bug #191 - -int[3] a = [0: 0, 2: 42, 1: 1]; - -void main() -{ - assert(a[0] == 0); - assert(a[1] == 1); // fails! - assert(a[2] == 42); -} diff --git a/tests/mini/arrayops1.d b/tests/mini/arrayops1.d deleted file mode 100644 index b779d464..00000000 --- a/tests/mini/arrayops1.d +++ /dev/null @@ -1,17 +0,0 @@ -extern(C) int printf(char*, ...); - -void main() -{ - int[3] a = [1, 2, 3]; - int[3] b = [4, 5, 6]; - int[3] c; - - c[] = a[] + b[]; - - printf("c.ptr = %p\n", c.ptr); - printf("c.length = %lu\n", c.length); - - assert(c[0] == 5); - assert(c[1] == 7); - assert(c[2] == 9); -} diff --git a/tests/mini/arrayops2.d b/tests/mini/arrayops2.d deleted file mode 100644 index 98c9092c..00000000 --- a/tests/mini/arrayops2.d +++ /dev/null @@ -1,10 +0,0 @@ -void main() -{ - int[4] a = [1,2,3,4]; - int[4] b = [5,6,7,8]; - a[] += b[]; - assert(a[0] == 6); - assert(a[1] == 8); - assert(a[2] == 10); - assert(a[3] == 12); -} diff --git a/tests/mini/arrayops3.d b/tests/mini/arrayops3.d deleted file mode 100644 index 52999d92..00000000 --- a/tests/mini/arrayops3.d +++ /dev/null @@ -1,10 +0,0 @@ -void main() -{ - int[4] a = [1,2,3,4]; - int[4] b = [5,6,7,8]; - a[] += b[] / 2; - assert(a[0] == 3); - assert(a[1] == 5); - assert(a[2] == 6); - assert(a[3] == 8); -} diff --git a/tests/mini/arrayops4.d b/tests/mini/arrayops4.d deleted file mode 100644 index 4fa9a631..00000000 --- a/tests/mini/arrayops4.d +++ /dev/null @@ -1,29 +0,0 @@ -void main() -{ - auto a = new float[1024]; - auto b = new float[1024]; - auto c = new float[1024]; - - for (auto i=0; i<1024; i++) - { - a[i] = i; - b[i] = i*2; - c[i] = i*4; - } - - a[] = b[] + c[] / 2; - - foreach(i,v; a) - { - assert(eq(v, b[i] + c[i] / 2)); - } -} - -float abs(float x) -{ - return x<0?-x:x; -} -bool eq(float a, float b) -{ - return abs(a-b) <= float.epsilon; -} diff --git a/tests/mini/arrays1.d b/tests/mini/arrays1.d deleted file mode 100644 index 112b44f9..00000000 --- a/tests/mini/arrays1.d +++ /dev/null @@ -1,43 +0,0 @@ -module arrays1; - -extern(C) int printf(char*, ...); - -void integer() -{ - auto arr = new int[16]; - arr[1] = 42; - arr[6] = 555; - print_int(arr); - delete arr; -} - -void floating() -{ - auto arr = new float[6]; - arr[1] = 3.14159265; - arr[3] = 1.61803399; - print_float(arr); - delete arr; -} - -void print_int(int[] arr) -{ - printf("arr[%lu] = [", arr.length); - for (auto i=0; i a);} - {assert(a < c);} - {assert(c > a);} - {assert(b < c);} - {assert(c > b);} -} - -void main() -{ - ints(); -} diff --git a/tests/mini/arrays13.d b/tests/mini/arrays13.d deleted file mode 100644 index d2bb7c0a..00000000 --- a/tests/mini/arrays13.d +++ /dev/null @@ -1,18 +0,0 @@ -module arrays13; - -extern(C) int printf(char*, ...); - -void main() -{ - char[] a = "hello"; - - assert(a > "hel"); - assert(a >= "hel"); - assert(a < "helloo"); - assert(a <= "helloo"); - assert(a > "betty"); - assert(a >= "betty"); - assert(a == "hello"); - assert(a <= "hello"); - assert(a >= "hello"); -} diff --git a/tests/mini/arrays14.d b/tests/mini/arrays14.d deleted file mode 100644 index 5c8a5dbe..00000000 --- a/tests/mini/arrays14.d +++ /dev/null @@ -1,7 +0,0 @@ -module arrays14; - -void main() -{ - auto s = "hello world"; - auto d = s.dup; -} diff --git a/tests/mini/arrays16.d b/tests/mini/arrays16.d deleted file mode 100644 index 006819f6..00000000 --- a/tests/mini/arrays16.d +++ /dev/null @@ -1,30 +0,0 @@ -module mini.arrays16; - -void main() -{ - intarrays!(byte)(); - intarrays!(ubyte)(); - intarrays!(short)(); - intarrays!(ushort)(); - intarrays!(int)(); - intarrays!(uint)(); - intarrays!(long)(); - intarrays!(ulong)(); -} - -void intarrays(T)() -{ - T[] ia = [cast(T)1,2,3,4]; - T[] ib = [cast(T)1,2,3,4]; - T[] ic = [cast(T)1,2,3]; - T[] id = [cast(T)1,2,3,4,5]; - - assert(ia == ia); - assert(ia == ib); - assert(ia != ic); - assert(ia != id); - assert(ia > ic); - assert(ia !< ic); - assert(ia < id); - assert(ia !> id); -} diff --git a/tests/mini/arrays17.d b/tests/mini/arrays17.d deleted file mode 100644 index 8e0870c5..00000000 --- a/tests/mini/arrays17.d +++ /dev/null @@ -1,6 +0,0 @@ -module mini.arrays17; - -void main() -{ - const char[2][2] id = [1: "ab"]; -} diff --git a/tests/mini/arrays18.d b/tests/mini/arrays18.d deleted file mode 100644 index e29d9ebb..00000000 --- a/tests/mini/arrays18.d +++ /dev/null @@ -1,27 +0,0 @@ -module mini.arrays18; - -struct Str { int a,b; } -void main() { - Str[] arr = new Str[64]; - - auto tmp = Str(1,2); - arr[] = tmp; - assert(arr[0].a == 1); - assert(arr[0].b == 2); - assert(arr[13].a == 1); - assert(arr[13].b == 2); - assert(arr[42].a == 1); - assert(arr[42].b == 2); - assert(arr[63].a == 1); - assert(arr[63].b == 2); - - arr[] = Str(3,4); - assert(arr[0].a == 3); - assert(arr[0].b == 4); - assert(arr[13].a == 3); - assert(arr[13].b == 4); - assert(arr[42].a == 3); - assert(arr[42].b == 4); - assert(arr[63].a == 3); - assert(arr[63].b == 4); -} diff --git a/tests/mini/arrays19.d b/tests/mini/arrays19.d deleted file mode 100644 index 299cd545..00000000 --- a/tests/mini/arrays19.d +++ /dev/null @@ -1,9 +0,0 @@ -module mini.arrays19; - -extern(C) int printf(char*, ...); - -void main() -{ - bool var = ([] is null); - assert(var); -} diff --git a/tests/mini/arrays2.d b/tests/mini/arrays2.d deleted file mode 100644 index 25f95846..00000000 --- a/tests/mini/arrays2.d +++ /dev/null @@ -1,19 +0,0 @@ -char[] get() -{ - return "hello"; -} - -void param(char[] s) -{ -} - -void refparam(ref char[] s) -{ -} - -void main() -{ - char[] dstr = get(); - param(dstr); - refparam(dstr); -} diff --git a/tests/mini/arrays20.d b/tests/mini/arrays20.d deleted file mode 100644 index 4124500e..00000000 --- a/tests/mini/arrays20.d +++ /dev/null @@ -1,23 +0,0 @@ -module mini.arrays20; - -int[] foo() -{ - return [2,4,6]; -} - -int[] bar() -{ - return [1,3,5]; -} - -void main() -{ - auto a = foo(); - auto b = bar(); - assert(b[0] == 1); - assert(a[0] == 2); - assert(b[1] == 3); - assert(a[1] == 4); - assert(b[2] == 5); - assert(a[2] == 6); -} diff --git a/tests/mini/arrays3.d b/tests/mini/arrays3.d deleted file mode 100644 index 9a68c055..00000000 --- a/tests/mini/arrays3.d +++ /dev/null @@ -1,10 +0,0 @@ -module arrays3; - -void main() -{ - int[] arr; - {arr = new int[25];} - {assert(arr.length == 25);} - {arr.length = arr.length + 5;} - {assert(arr.length == 30);} -} diff --git a/tests/mini/arrays4.d b/tests/mini/arrays4.d deleted file mode 100644 index 8b63b90d..00000000 --- a/tests/mini/arrays4.d +++ /dev/null @@ -1,13 +0,0 @@ -module arrays4; - -void main() -{ - int[] arr; - arr ~= 3; - assert(arr.length == 1); - assert(arr[0] == 3); - arr ~= 5; - assert(arr.length == 2); - assert(arr[0] == 3); - assert(arr[1] == 5); -} diff --git a/tests/mini/arrays5.d b/tests/mini/arrays5.d deleted file mode 100644 index f5db9483..00000000 --- a/tests/mini/arrays5.d +++ /dev/null @@ -1,11 +0,0 @@ -module arrays5; -void main() -{ - auto arr = new float[5]; - {arr[4] = 1f;} - {assert(arr[0] !<>= 0f);} - {assert(arr[1] !<>= 0f);} - {assert(arr[2] !<>= 0f);} - {assert(arr[3] !<>= 0f);} - {assert(arr[4] == 1f);} -} diff --git a/tests/mini/arrays6.d b/tests/mini/arrays6.d deleted file mode 100644 index 0ebf2927..00000000 --- a/tests/mini/arrays6.d +++ /dev/null @@ -1,6 +0,0 @@ -module arrays6; - -void main() -{ - int[4] a = [1,2,3,4]; -} diff --git a/tests/mini/arrays7.d b/tests/mini/arrays7.d deleted file mode 100644 index 9e39a627..00000000 --- a/tests/mini/arrays7.d +++ /dev/null @@ -1,31 +0,0 @@ -module arrays7; - -extern(C) int printf(char*, ...); - -struct S -{ - int i; - float f; - long l; - - void print() - { - printf("%d %f %lx\n", i, f, l); - } -} - -void main() -{ - S[] arr; - S s; - assert(arr.length == 0); - arr ~= s; - assert(arr.length == 1); - arr ~= S(1,2.64,0xFFFF_FFFF_FFFF); - assert(arr.length == 2); - arr[0].print(); - arr[1].print(); - assert(arr[1].i == 1); - assert(arr[1].f > 2.63 && arr[1].f < 2.65); - assert(arr[1].l == 0xFFFF_FFFF_FFFF); -} diff --git a/tests/mini/arrays8.d b/tests/mini/arrays8.d deleted file mode 100644 index db289458..00000000 --- a/tests/mini/arrays8.d +++ /dev/null @@ -1,19 +0,0 @@ -module arrays8; - -extern(C) int printf(char*, ...); - -void main() -{ - char[] a = "hello "; - printf(" \"%s\".length = %u\n", a.ptr, a.length); - char[] b = "world"; - printf(" \"%s\".length = %u\n", b.ptr, b.length); - char[] c = a ~ b; - printf("After 'a ~ b':\n"); - printf(" \"%.*s\".length = %u\n", a.length, a.ptr, a.length); - printf(" \"%.*s\".length = %u\n", b.length, b.ptr, b.length); - printf(" \"%.*s\".length = %u\n", c.length, c.ptr, c.length); - assert(c.length == a.length + b.length); - assert(c !is a); - assert(c !is b); -} diff --git a/tests/mini/arrays9.d b/tests/mini/arrays9.d deleted file mode 100644 index afc2034e..00000000 --- a/tests/mini/arrays9.d +++ /dev/null @@ -1,8 +0,0 @@ -module arrays9; - -const int[] g = [1,2,3,4]; - -void main() -{ - -} diff --git a/tests/mini/asm1.d b/tests/mini/asm1.d deleted file mode 100644 index 5541be4d..00000000 --- a/tests/mini/asm1.d +++ /dev/null @@ -1,31 +0,0 @@ -module asm1; - -extern(C) int printf(char*, ...); - -void main() -{ - version(D_InlineAsm_X86) - { - int x; - asm - { - mov EAX, 42; - mov x, EAX; - } - printf("x = %d\n", x); - } - else version(D_InlineAsm_X86_64) - { - long x; - asm - { - movq RAX, 42L; - movq x, RAX; - } - printf("x = %ld\n", x); - } - else - { - static assert(0, "no inline asm for this platform yet"); - } -} diff --git a/tests/mini/asm10.d b/tests/mini/asm10.d deleted file mode 100644 index 6c77ef22..00000000 --- a/tests/mini/asm10.d +++ /dev/null @@ -1,31 +0,0 @@ -module asm10; - -struct S { - ushort first; - ushort second; - int unaccessed; -} - -void main() { - auto s = S(512, 42, -1); - ushort x = 0; - version(D_InlineAsm_X86) { - asm { - lea EAX, s; - mov CX, S.second[EAX]; - mov x, CX; - mov S.first[EAX], 640; - } - } else version(D_InlineAsm_X86_64) { - asm { - lea RAX, s; - mov CX, S.second[RAX]; - mov x, CX; - mov S.first[RAX], 640; - } - } - assert(x == 42); - assert(s.first == 640); - assert(s.second == 42); - assert(s.unaccessed == -1); -} diff --git a/tests/mini/asm1_1.d b/tests/mini/asm1_1.d deleted file mode 100644 index f5b5854f..00000000 --- a/tests/mini/asm1_1.d +++ /dev/null @@ -1,35 +0,0 @@ -module tangotests.asm1_1; - -extern(C) int printf(char*, ...); - -int main() -{ - int i = 12; - int* ip = &i; - printf("%d\n", i); - version (D_InlineAsm_X86) - { - asm - { - mov ECX, ip; - mov EAX, [ECX]; - add EAX, 8; - mul EAX, EAX; - mov [ECX], EAX; - } - } - else version (D_InlineAsm_X86_64) - { - asm - { - movq RCX, ip; - mov EAX, [RCX]; - add EAX, 8; - imul EAX, EAX; - mov [RCX], EAX; - } - } - printf("%d\n", i); - assert(i == 400); - return 0; -} diff --git a/tests/mini/asm2.d b/tests/mini/asm2.d deleted file mode 100644 index 2ce25902..00000000 --- a/tests/mini/asm2.d +++ /dev/null @@ -1,32 +0,0 @@ -module tangotests.asm2; - -extern(C) int printf(char*, ...); - -int main() -{ - int i = 40; - int j = 2; - version(D_InlineAsm_X86) - { - asm - { - mov EAX, i; - mov EBX, j; - add EAX, EBX; - mov i, EAX; - } - } - else version(D_InlineAsm_X86_64) - { - asm - { - mov EAX, i; - mov EBX, j; - add EAX, EBX; - mov i, EAX; - } - } - printf("42 = %d\n", i); - assert(i == 42); - return 0; -} diff --git a/tests/mini/asm3.d b/tests/mini/asm3.d deleted file mode 100644 index 3ec3c868..00000000 --- a/tests/mini/asm3.d +++ /dev/null @@ -1,27 +0,0 @@ -module tangotests.asm3; - -extern(C) int printf(char*, ...); - -void main() -{ - char* fmt = "Hello D World\n"; - printf(fmt); - version (D_InlineAsm_X86) - { - asm - { - push fmt; - call printf; - pop EAX; - } - } - else version(D_InlineAsm_X86_64) - { - asm - { - movq RDI, fmt; - xor AL, AL; - call printf; - } - } -} diff --git a/tests/mini/asm4.d b/tests/mini/asm4.d deleted file mode 100644 index ae57e5f5..00000000 --- a/tests/mini/asm4.d +++ /dev/null @@ -1,41 +0,0 @@ -module tangotests.asm4; - -extern(C) int printf(char*,...); - -void main() -{ - char* stmt = "yay!\n"; - char* fmt = "%s"; - version (D_InlineAsm_X86) - { - asm - { - jmp L2; - L1:; - jmp L3; - L2:; - jmp L1; - L3:; - push stmt; - call printf; - pop EAX; - } - } - else version(D_InlineAsm_X86_64) - { - asm - { - jmp L2; - L1:; - jmp L3; - L2:; - jmp L1; - L3:; - movq RDI, fmt; - movq RSI, stmt; - xor AL, AL; - call printf; - } - } - printf(fmt,stmt); -} diff --git a/tests/mini/asm5.d b/tests/mini/asm5.d deleted file mode 100644 index b1252f35..00000000 --- a/tests/mini/asm5.d +++ /dev/null @@ -1,33 +0,0 @@ -int foo() -{ - version(X86) - { - asm { mov EAX, 42; } - } else version(X86_64) - { - asm { movq RAX, 42; } - } - else static assert(0, "todo"); -} - -ulong bar() -{ - version(X86) - { - asm { mov EAX, 0xFF; mov EDX, 0xAA; } - } else version(X86_64) - { - asm { movq RAX, 0xAA000000FF; } - } - else static assert(0, "todo"); -} - -void main() -{ - long l = 1; - l = 2; - l = 4; - l = 8; - assert(foo() == 42); - assert(bar() == 0xAA000000FF); -} diff --git a/tests/mini/asm6.d b/tests/mini/asm6.d deleted file mode 100644 index 6ff06e44..00000000 --- a/tests/mini/asm6.d +++ /dev/null @@ -1,33 +0,0 @@ -extern(C) int printf(char*, ...); - -version (D_InlineAsm_X86) - version = InlineAsm_X86_Any; -version (D_InlineAsm_X86_64) - version = InlineAsm_X86_Any; - -void main() -{ - int a,b,c; - a = int.max-1; - b = 5; - version (InlineAsm_X86_Any) - { - asm - { - mov EAX, a; - mov ECX, b; - add EAX, ECX; - jo Loverflow; - mov c, EAX; - } - } - printf("a == %d\n", a); - printf("b == %d\n", b); - printf("c == %d\n", c); - assert(c == c); - return; - -Loverflow: -int y=0; - //assert(0, "overflow"); -} diff --git a/tests/mini/asm7.d b/tests/mini/asm7.d deleted file mode 100644 index 8b5f53ba..00000000 --- a/tests/mini/asm7.d +++ /dev/null @@ -1,71 +0,0 @@ -module tangotests.asm7; - -// test massive label collisions (runtime uses Loverflow too) -extern(C) int printf(char*, ...); - -void main() -{ - int a = add(1,2); - int s = sub(1,2); - assert(a == 3); - assert(s == -1); -} - -int add(int a, int b) -{ - int res; - version (D_InlineAsm_X86) - { - asm - { - mov EAX, a; - add EAX, b; - jo Loverflow; - mov res, EAX; - } - } - else version (D_InlineAsm_X86_64) - { - asm - { - mov EAX, a; - add EAX, b; - jo Loverflow; - mov res, EAX; - } - } - printf("%d\n",res); - return res; -Loverflow: - assert(0, "add overflow"); -} - -int sub(int a, int b) -{ - int res; - version (D_InlineAsm_X86) - { - asm - { - mov EAX, a; - sub EAX, b; - jo Loverflow; - mov res, EAX; - } - } - else version (D_InlineAsm_X86_64) - { - asm - { - mov EAX, a; - sub EAX, b; - jo Loverflow; - mov res, EAX; - } - } - printf("%d\n",res); - return res; -Loverflow: - assert(0, "sub overflow"); - int x; -} diff --git a/tests/mini/asm8.d b/tests/mini/asm8.d deleted file mode 100644 index c10e14e2..00000000 --- a/tests/mini/asm8.d +++ /dev/null @@ -1,401 +0,0 @@ -const float one_f = 1; -const double one_d = 1; -const real one_r = 1; - -int foo() -{ - version(X86) - { - asm { mov EAX, 42; } - } - else version (X86_64) - { - asm { mov EAX, 42; } - } - else static assert(0, "todo"); -} - -ulong bar() -{ - version(X86) - { - asm { mov EDX, 0xAA; mov EAX, 0xFF; } - } - else version (X86_64) - { - asm { movq RAX, 0xAA000000FF; } - } - else static assert(0, "todo"); -} - - -float onef() -{ - version(X86) - { - asm { fld1; } - } - else version (X86_64) - { - asm { movss XMM0, [one_f]; } - } - else static assert(0, "todo"); -} - -double oned() -{ - version(X86) - { - asm { fld1; } - } - else version (X86_64) - { - asm { movsd XMM0, [one_d]; } - } - else static assert(0, "todo"); -} - -real oner() -{ - version(X86) - { - asm { fld1; } - } - else version (X86_64) - { - asm { fld1; } - } - else static assert(0, "todo"); -} - -ifloat oneif() -{ - version(X86) - { - asm { fld1; } - } - else version (X86_64) - { - asm { movss XMM0, [one_f]; } - } - else static assert(0, "todo"); -} - -idouble oneid() -{ - version(X86) - { - asm { fld1; } - } - else version (X86_64) - { - asm { movsd XMM0, [one_d]; } - } - else static assert(0, "todo"); -} - -ireal oneir() -{ - version(X86) - { - asm { fld1; } - } - else version (X86_64) - { - asm { fld1; } - } - else static assert(0, "todo"); -} - - -const float two_f = 2; - -cfloat cf() -{ - version(X86) - { - asm { fld1; fld two_f; } - } - else version (X86_64) - { - asm - { - movss XMM0, [one_f]; - movss XMM1, [two_f]; - } - } - else static assert(0, "todo"); -} - -extern(C) cfloat cf_C() -{ - version(X86) - { - asm { - mov EAX, [one_f]; - mov EDX, [two_f]; - } - } - else version (X86_64) - { - asm { - mov EAX, [one_f]; - mov ECX, [two_f]; - - shl RCX, 32; - or RAX, RCX; - - movd XMM0, RAX; - } - } - else static assert(0, "todo"); -} - -cfloat cf2() -{ - version(X86) - { - asm - { - naked; - fld1; - fld two_f; - ret; - } - } - else version (X86_64) - { - asm - { - naked; - movss XMM0, [one_f]; - movss XMM1, [two_f]; - ret; - } - } - else static assert(0, "todo"); -} - -extern(C) cfloat cf2_C() -{ - version(X86) - { - asm - { - naked; - mov EAX, [one_f]; - mov EDX, [two_f]; - ret; - } - } - else version (X86_64) - { - asm { - naked; - mov EAX, [one_f]; - mov ECX, [two_f]; - - shl RCX, 32; - or RAX, RCX; - - movd XMM0, RAX; - ret; - } - } - else static assert(0, "todo"); -} - - -const double two_d = 2; - -cdouble cd() -{ - version(X86) - { - asm { fld1; fld two_d; } - } - else version (X86_64) - { - asm - { - leaq RAX, [one_d]; - leaq RCX, [two_d]; - movsd XMM0, [RAX]; - movsd XMM1, [RCX]; - } - } - else static assert(0, "todo"); -} - -cdouble cd2() -{ - version(X86) - { - asm - { - naked; - fld1; - fld two_d; - ret; - } - } - else version (X86_64) - { - asm - { - naked; - movsd XMM0, [one_d]; - movsd XMM1, [two_d]; - } - } - else static assert(0, "todo"); -} - - -const real two_r = 2.0; - -creal cr() -{ - version(X86) - { - asm { fld1; fld two_r; } - } - else version (X86_64) - { - asm { fld two_r; fld1; } - } - else static assert(0, "todo"); -} - -creal cr2() -{ - version(X86) - { - asm - { - naked; - fld1; - fld two_r; - ret; - } - } - else version (X86_64) - { - asm - { - naked; - fld two_r; - fld1; - ret; - } - } - else static assert(0, "todo"); -} - -void* vp() -{ - version(X86) - { - asm { mov EAX, 0x80; } - } - else version (X86_64) - { - asm { movq RAX, 0x80; } - } - else static assert(0, "todo"); -} - -int[int] gaa; - -int[int] aa() -{ - version(X86) - { - asm { mov EAX, gaa; } - } - else version (X86_64) - { - asm { movq RAX, gaa; } - } - else static assert(0, "todo"); -} - -Object gobj; - -Object ob() -{ - version(X86) - { - asm { mov EAX, gobj; } - } - else version (X86_64) - { - asm { movq RAX, gobj; } - } - else static assert(0, "todo"); -} - -char[] ghello = "hello world"; - -char[] str() -{ - version(X86) - { - asm { lea ECX, ghello; mov EAX, [ECX]; mov EDX, [ECX+4]; } - } - else version (X86_64) - { - asm { movq RAX, [ghello]; movq RDX, [ghello]+8; } - } - else static assert(0, "todo"); -} - -char[] delegate() dg() -{ - version(X86) - { - asm { mov EAX, gobj; lea EDX, Object.toString; } - } - else version (X86_64) - { - asm { movq RAX, [gobj]; leaq RDX, Object.toString; } - } - else static assert(0, "todo"); -} - -void main() -{ - gaa[4] = 5; - gobj = new Object; - auto adg = &gobj.toString; - - assert(foo() == 42); - assert(bar() == 0xAA000000FF); - assert(onef() == 1); - assert(oned() == 1); - assert(oner() == 1); - - assert(oneif() == 1i); - assert(oneid() == 1i); - assert(oneir() == 1i); - - assert(cf() == 1+2i); - assert(cf2() == 1+2i); - - assert(cf_C() == 1+2i); - assert(cf2_C() == 1+2i); - - assert(cd() == 1+2i); - assert(cd2() == 1+2i); - - assert(cr() == 1+2i); - assert(cr2() == 1+2i); - - assert(vp() == cast(void*)0x80); - assert(aa() is gaa); - assert(ob() is gobj); - assert(str() == "hello world"); - assert(dg()() == "object.Object"); -} - -extern(C) int printf(char*, ...); diff --git a/tests/mini/asm9.d b/tests/mini/asm9.d deleted file mode 100644 index bd4a459b..00000000 --- a/tests/mini/asm9.d +++ /dev/null @@ -1,28 +0,0 @@ -module asm9; - -version(X86) version = DoSome; -else version(X86_64) version = DoSome; - -T add(T, T t)(T a) { - asm { - add a, t; - } - return a; -} - -void main() { - version (DoSome) { - assert(add!(ubyte, 20)(10) == 30); - assert(add!(ushort, 20_000)(10_000) == 30_000); - assert(add!(uint, 2_000_000)(1_000_000) == 3_000_000); - } - version(X86_64) { - // 64-bit immediates aren't allowed on "ADD", nor are - // unsigned 32-bit ones, so make the template parameter - // fit in a 32-bit signed int. - // These values were chosen so that the lower 32-bits overflow - // and we can see the upper half of the 64-bit input increment. - auto result = add!(long, 2_000_000_000)(21_000_000_000); - assert(result == 23_000_000_000); - } -} diff --git a/tests/mini/assign.d b/tests/mini/assign.d deleted file mode 100644 index ce32d83f..00000000 --- a/tests/mini/assign.d +++ /dev/null @@ -1,23 +0,0 @@ -module assign; - -// this is taken from std.intrinsic from gdc - -int mybtc(uint *p, uint bitnum) -{ - uint * q = p + (bitnum / (uint.sizeof*8)); - uint mask = 1 << (bitnum & ((uint.sizeof*8) - 1)); - int result = *q & mask; - *q ^= mask; - return result ? -1 : 0; -} - -void main() -{ - uint i = 0xFFFF_FFFF; - int r = mybtc(&i, 31); - assert(r); - assert(i == 0x7FFF_FFFF); - r = mybtc(&i, 31); - assert(!r); - assert(i == 0xFFFF_FFFF); -} diff --git a/tests/mini/assign1.d b/tests/mini/assign1.d deleted file mode 100644 index a1d92d5d..00000000 --- a/tests/mini/assign1.d +++ /dev/null @@ -1,17 +0,0 @@ -module mini.assign1; - -extern(C) int printf(char*, ...); - -struct X -{ - int a; - alias a b; -} -void main() -{ - X e = void; - e.a = e.b = 5; - printf("%d - %d\n", e.a, e.b); - assert(e.a == 5); - assert(e.a == e.b); -} diff --git a/tests/mini/atomic1.d b/tests/mini/atomic1.d deleted file mode 100644 index b6cb1c17..00000000 --- a/tests/mini/atomic1.d +++ /dev/null @@ -1,12 +0,0 @@ -module mini.atomic1; - -pragma(intrinsic, "llvm.atomic.swap.i#.p0i#") - T atomic_swap(T)(T* ptr, T val); - -void main() -{ - int i = 42; - int j = atomic_swap(&i, 43); - assert(j == 42); - assert(i == 43); -} diff --git a/tests/mini/b.d b/tests/mini/b.d deleted file mode 100644 index 5975c4b4..00000000 --- a/tests/mini/b.d +++ /dev/null @@ -1,25 +0,0 @@ -module b; - -extern(C) int printf(char*, ...); - -struct S -{ - int i; - float[4] f; -} - -void main() -{ - S s; - int i = s.i; - int* p = &s.i; - *p = 42; - printf("%d == %d\n", *p, s.i); - - float* f = &s.f[0]; - printf("%f == %f\n", *f, s.f[0]); - *f = 3.1415; - printf("%f == %f\n", *f, s.f[0]); - s.f[0] = 123.456; - printf("%f == %f\n", *f, s.f[0]); -} diff --git a/tests/mini/bitops.d b/tests/mini/bitops.d deleted file mode 100644 index 4911c55d..00000000 --- a/tests/mini/bitops.d +++ /dev/null @@ -1,78 +0,0 @@ - -extern(C) int printf(char*, ...); - -void main() -{ - printf("Bitwise operations test\n"); - { ushort a = 0xFFF0; - ushort b = 0x0FFF; - assert((a&b) == 0x0FF0); - assert((a|b) == 0xFFFF); - assert((a^b) == 0xF00F); - } - { ubyte a = 0xFF; - ulong b = 0xFFFF_FFFF_FFFF_FFF0; - assert((a&b) == 0xF0); - } - { ushort s = 0xFF; - assert((s<<1) == s*2); - assert((s>>>1) == s/2); - } - { int s = -10; - assert((s>>1) == -5); - assert((s>>>1) != -5); - } - - { ushort a = 0xFFF0; - ushort b = 0x0FFF; - auto t = a; - t &= b; - assert(t == 0x0FF0); - t = a; - t |= b; - assert(t == 0xFFFF); - t = a; - t ^= b; - assert(t == 0xF00F); - } - { ubyte a = 0xFF; - ulong b = 0xFFFF_FFFF_FFFF_FFF0; - a &= b; - assert(a == 0xF0); - } - { ushort s = 0xFF; - auto t = s; - t <<= 1; - assert(t == (s*2)); - t = s; - t >>>= 1; - assert(t == s/2); - } - { int s = -10; - auto t = s; - t >>= 1; - assert(t == -5); - t = s; - t >>>= 1; - assert(t != -5); - } - { struct S - { - uint i; - ulong l; - }; - S s = S(1,4); - auto a = s.i | s.l; - assert(a == 5); - s.i = 0xFFFF_00FF; - s.l = 0xFFFF_FFFF_0000_FF00; - s.l ^= s.i; - assert(s.l == ulong.max); - s.i = 0x__FFFF_FF00; - s.l = 0xFF00FF_FF00; - s.i &= s.l; - assert(s.i == 0x00FF_FF00); - } - - printf(" SUCCESS\n"); -} diff --git a/tests/mini/boolexp.d b/tests/mini/boolexp.d deleted file mode 100644 index 43f09f9d..00000000 --- a/tests/mini/boolexp.d +++ /dev/null @@ -1,7 +0,0 @@ -bool got() { return true; } -extern(C) int printf(char*, ...); -void main() -{ - bool b = true && got(); - printf("%d\n", b ? 1 : 0); -} diff --git a/tests/mini/bug1.d b/tests/mini/bug1.d deleted file mode 100644 index 8cf95f61..00000000 --- a/tests/mini/bug1.d +++ /dev/null @@ -1,5 +0,0 @@ -module bug1; -struct Foo { Foo opSub(ref Foo b) { return Foo(); } } -struct Bar { Foo whee; } -void test(ref Bar moo) { Foo nngh; auto plonk = nngh - moo.whee; } -void main() { Bar bar; test(bar); } diff --git a/tests/mini/bug10.d b/tests/mini/bug10.d deleted file mode 100644 index 0d77f929..00000000 --- a/tests/mini/bug10.d +++ /dev/null @@ -1,24 +0,0 @@ -module bug10; -extern(C) int printf(char*, ...); - -class C -{ - char[] msg; - - this() - { - } - this(char[] msg) - { - this.msg = msg; - } -} - -void main() -{ - auto c = new C(); - c.msg = "world"; - auto b = new C("hello"); - printf("%.*s\n", b.msg.length, b.msg.ptr); - printf("%.*s\n", c.msg.length, c.msg.ptr); -} diff --git a/tests/mini/bug11.d b/tests/mini/bug11.d deleted file mode 100644 index 35718e88..00000000 --- a/tests/mini/bug11.d +++ /dev/null @@ -1,12 +0,0 @@ -module bug11; - -struct S -{ - int[4] arr; -} - -S s=S([1,2,3,4]); - -void main() -{ -} diff --git a/tests/mini/bug12.d b/tests/mini/bug12.d deleted file mode 100644 index 0da910ea..00000000 --- a/tests/mini/bug12.d +++ /dev/null @@ -1,6 +0,0 @@ -module bug12; - -void main() -{ - const char[] name="y"; -} diff --git a/tests/mini/bug13.d b/tests/mini/bug13.d deleted file mode 100644 index 48ee29e7..00000000 --- a/tests/mini/bug13.d +++ /dev/null @@ -1,18 +0,0 @@ -module bug13; - -void func1(ubyte[4]* arr) -{ - ubyte* b = &(*arr)[0]; - func2(&(*arr)[1]); -} - -void func2(ubyte* ptr) -{ - assert(*ptr == 2); -} - -void main() -{ - ubyte[4] arr = [cast(ubyte)1,2,3,4]; - func1(&arr); -} diff --git a/tests/mini/bug14.d b/tests/mini/bug14.d deleted file mode 100644 index be172bfe..00000000 --- a/tests/mini/bug14.d +++ /dev/null @@ -1,7 +0,0 @@ -module bug14; - -void main() -{ - int[] arr = new int[12]; - int i = arr[0]; -} diff --git a/tests/mini/bug15.d b/tests/mini/bug15.d deleted file mode 100644 index 30b10245..00000000 --- a/tests/mini/bug15.d +++ /dev/null @@ -1,17 +0,0 @@ -module bug15; - -bool bool1(bool b) { - if (b) return true; - else return false; -} - -bool bool2(bool b) { - if (b) {return true;} - else {return false;} -} - -void main() -{ - assert(bool1(true)); - assert(!bool2(false)); -} diff --git a/tests/mini/bug16.d b/tests/mini/bug16.d deleted file mode 100644 index da38d759..00000000 --- a/tests/mini/bug16.d +++ /dev/null @@ -1,11 +0,0 @@ -module bug16; - -void func(long val) -{ - val >>= 32; -} - -void main() -{ - func(64L); -} diff --git a/tests/mini/bug163_void_condexp.d b/tests/mini/bug163_void_condexp.d deleted file mode 100644 index 8683d533..00000000 --- a/tests/mini/bug163_void_condexp.d +++ /dev/null @@ -1,18 +0,0 @@ - -static foocalled = false; -static barcalled = false; -void foo() { foocalled = true; } -void bar() { barcalled = true; } - -void f(bool b) -{ - return b ? foo() : bar(); -} - -void main() -{ - f(true); - assert(foocalled && !barcalled); - f(false); - assert(foocalled && barcalled); -} diff --git a/tests/mini/bug17.d b/tests/mini/bug17.d deleted file mode 100644 index 663106bd..00000000 --- a/tests/mini/bug17.d +++ /dev/null @@ -1,13 +0,0 @@ -module bug17; - -struct Vec -{ - Vec opAdd(ref Vec b) { return Vec(); } - Vec opMul(double a) { return Vec(); } -} -void main() -{ - Vec foo; - Vec bar; - auto whee=foo+bar*1f; -} diff --git a/tests/mini/bug18.d b/tests/mini/bug18.d deleted file mode 100644 index 5444f104..00000000 --- a/tests/mini/bug18.d +++ /dev/null @@ -1,11 +0,0 @@ -module bug18; - -struct S { - int[9] i; -} - -void main() -{ - int[9] i; - auto s = S(i); -} diff --git a/tests/mini/bug189_interfacecast.d b/tests/mini/bug189_interfacecast.d deleted file mode 100644 index 1fa29764..00000000 --- a/tests/mini/bug189_interfacecast.d +++ /dev/null @@ -1,11 +0,0 @@ -interface I {} -class A : I {} -class B : A {} - -void main () { - A a = new A; - I i = a; - - assert(!cast(B)a); - assert(!cast(B)i); -} diff --git a/tests/mini/bug19.d b/tests/mini/bug19.d deleted file mode 100644 index 4f0c66a9..00000000 --- a/tests/mini/bug19.d +++ /dev/null @@ -1,7 +0,0 @@ -module bug19; - -void main() -{ - auto dg = (int i) { return i*2; }; - assert(dg(2) == 4); -} diff --git a/tests/mini/bug198_ctfestructinit.d b/tests/mini/bug198_ctfestructinit.d deleted file mode 100644 index 63828a7b..00000000 --- a/tests/mini/bug198_ctfestructinit.d +++ /dev/null @@ -1,12 +0,0 @@ -struct Color { - uint c; - static Color opCall(uint _c) { Color ret; ret.c = _c; return ret; } -} - -// run at compile time -static const Color white = Color(0xffffffff); - -void main() -{ - assert(white.c == 0xffffffff); -} diff --git a/tests/mini/bug199_ctfestructinit.d b/tests/mini/bug199_ctfestructinit.d deleted file mode 100644 index 7e9ee2b4..00000000 --- a/tests/mini/bug199_ctfestructinit.d +++ /dev/null @@ -1,25 +0,0 @@ -struct Color { - uint c; - -} - -struct Vertex { - double x, y; - Color c; - static Vertex opCall(double x, double y, Color c) { - Vertex ret; - ret.x = x; - ret.y = y; - ret.c = c; - return ret; - } -} - -void main() { - Color c = {0xffffffff}; - - auto v = Vertex(1, 5, c); - - assert(v.x == 1 && v.y == 5); // passes - assert(v.c.c == 0xffffffff); // fails in LDC -} \ No newline at end of file diff --git a/tests/mini/bug2.d b/tests/mini/bug2.d deleted file mode 100644 index 4ff40ec9..00000000 --- a/tests/mini/bug2.d +++ /dev/null @@ -1,4 +0,0 @@ -module bug2; -struct Vec { Vec barf() { return Vec(); } } -class test { this(Vec whee) { } } -void main() { Vec whee; new test(whee.barf()); } diff --git a/tests/mini/bug20.d b/tests/mini/bug20.d deleted file mode 100644 index ca3235b7..00000000 --- a/tests/mini/bug20.d +++ /dev/null @@ -1,19 +0,0 @@ -module bug20; -extern(C) int printf(char*, ...); - -void func(void delegate() dg) -{ - dg(); -} - -void main() -{ - int i = 42; - void delegate() dg = { - i++; - }; - printf("i = %d\n",i); - func(dg); - printf("i = %d\n",i); - assert(i == 43); -} diff --git a/tests/mini/bug21.d b/tests/mini/bug21.d deleted file mode 100644 index e4a226e2..00000000 --- a/tests/mini/bug21.d +++ /dev/null @@ -1,17 +0,0 @@ -module bug21; -extern(C) int printf(char*, ...); - -void main() -{ - int i = 42; - auto a = { - int j = i*2; - auto b = { - return j; - }; - return b(); - }; - int i2 = a(); - printf("%d\n", i2); - assert(i2 == i*2); -} diff --git a/tests/mini/bug22.d b/tests/mini/bug22.d deleted file mode 100644 index 13edb826..00000000 --- a/tests/mini/bug22.d +++ /dev/null @@ -1,12 +0,0 @@ -module bug22; -extern(C) int printf(char*, ...); - -void main() -{ - int i; - delegate { - i = 42; - }(); - printf("%d\n", i); - assert(i == 42); -} diff --git a/tests/mini/bug23.d b/tests/mini/bug23.d deleted file mode 100644 index ff98e2ad..00000000 --- a/tests/mini/bug23.d +++ /dev/null @@ -1,15 +0,0 @@ -module bug23; -extern(C) int printf(char*, ...); - -void main() -{ - int i; - delegate { - i++; - delegate { - i++; - }(); - }(); - printf("%d\n", i); - assert(i == 2); -} diff --git a/tests/mini/bug24.d b/tests/mini/bug24.d deleted file mode 100644 index c987454c..00000000 --- a/tests/mini/bug24.d +++ /dev/null @@ -1,22 +0,0 @@ -module bug24; -extern(C) int printf(char*, ...); - -struct S -{ - long l; - float f; -} - -void main() -{ - S s = S(3L,2f); - delegate { - S t = S(4L, 1f); - delegate { - s.l += t.l; - s.f += t.f; - }(); - }(); - printf("%lu %f\n", s.l, s.f); - assert(s.l == 7 && s.f == 3); -} diff --git a/tests/mini/bug25.d b/tests/mini/bug25.d deleted file mode 100644 index b5a90185..00000000 --- a/tests/mini/bug25.d +++ /dev/null @@ -1,13 +0,0 @@ -module bug25; -extern(C) int printf(char*, ...); - -void main() -{ - int i = 2; - delegate { - i = i*i; - i += i*i; - }(); - printf("%d\n", i); - assert(i == 20); -} diff --git a/tests/mini/bug27.d b/tests/mini/bug27.d deleted file mode 100644 index 403d271a..00000000 --- a/tests/mini/bug27.d +++ /dev/null @@ -1,17 +0,0 @@ -module bug27; - -int func(int a, int b) -{ - if (a == b) - return 0; - else if (a < b) - return -1; - else - return 1; -} - -void main() -{ - int i = func(3,4); - assert(i == -1); -} diff --git a/tests/mini/bug28.d b/tests/mini/bug28.d deleted file mode 100644 index 582bdd1a..00000000 --- a/tests/mini/bug28.d +++ /dev/null @@ -1,17 +0,0 @@ -module bug28; - -void main() -{ - char[] a = "hello"; - char[] b = "hello"; - char[] c = "world"; - char[] d = "somethingelse"; - assert(a == a); - assert(a == b); - assert(a != c); - assert(b != c); - assert(a != d); - assert(b != d); - assert(c != d); - assert(d == d); -} diff --git a/tests/mini/bug29.d b/tests/mini/bug29.d deleted file mode 100644 index 2c6ee007..00000000 --- a/tests/mini/bug29.d +++ /dev/null @@ -1,16 +0,0 @@ -module bug29; -extern(C) int printf(char*, ...); - -void main() -{ - int[] arr16 = new int[4]; - { - void[] arr = arr16; - { - printf("%lu\n", arr.length); - { - assert(arr.length == 16); - } - } - } -} diff --git a/tests/mini/bug3.d b/tests/mini/bug3.d deleted file mode 100644 index 05b76672..00000000 --- a/tests/mini/bug3.d +++ /dev/null @@ -1,24 +0,0 @@ -module bug3; - -struct S -{ - int[] arr; - char[5] ch; -} - -class C -{ - int[] arr; - char[4] crs; -} - -void main() -{ - S s; - s.arr = new int[5]; - s.arr[1] = 32; - int i; - i = s.arr[0]; - //assert(s.arr[0] == 0); - //assert(s.arr[1] == 32); -} diff --git a/tests/mini/bug30.d b/tests/mini/bug30.d deleted file mode 100644 index 95f19e4e..00000000 --- a/tests/mini/bug30.d +++ /dev/null @@ -1,22 +0,0 @@ -module bug30; - -void main() -{ - int[] a = new int[4]; - {a[0] = 1; - a[1] = 2; - a[2] = 3; - a[3] = 4;} - int[] b = new int[4]; - {b[0] = 1; - b[1] = 2; - b[2] = 3; - b[3] = 4;} - int[] c = new int[4]; - {c[0] = 1; - c[1] = 2; - c[2] = 4; - c[3] = 3;} - {assert(a == b);} - {assert(a != c);} -} diff --git a/tests/mini/bug308_double_finally.d b/tests/mini/bug308_double_finally.d deleted file mode 100644 index 961aa581..00000000 --- a/tests/mini/bug308_double_finally.d +++ /dev/null @@ -1,20 +0,0 @@ -extern(C) int printf(char*, ...); - -long foo(ref int p) { - try { return 0; } - finally { - p++; - throw new Object; - } -} - -void main() { - int p = 0; - try { - foo(p); - assert(0); - } catch { - } - printf("Number of types scope(exit) was executed : %d\n", p); - assert(p == 1); -} \ No newline at end of file diff --git a/tests/mini/bug32.d b/tests/mini/bug32.d deleted file mode 100644 index 10bcb566..00000000 --- a/tests/mini/bug32.d +++ /dev/null @@ -1,15 +0,0 @@ -module bug32; -extern(C) int printf(char*, ...); - -struct S -{ - char[] getName() { return name; } - char[] name; -} - -void main() -{ - S s = S("Kyle"); - char[] name = s.name; - printf("%.*s\n", name.length, name.ptr); -} diff --git a/tests/mini/bug33.d b/tests/mini/bug33.d deleted file mode 100644 index 6bf5d542..00000000 --- a/tests/mini/bug33.d +++ /dev/null @@ -1,33 +0,0 @@ -module bug33; - -extern(C) int memcmp(void*,void*,size_t); - -private int string_cmp(char[] s1, char[] s2) -{ - auto len = s1.length; - if (s2.length < len) - len = s2.length; - int result = memcmp(s1.ptr, s2.ptr, len); - if (result == 0) - result = cast(int)(cast(ptrdiff_t)s1.length - cast(ptrdiff_t)s2.length); - return result; -} - -struct S -{ - char[] toString() - { - return "S"; - } -} - -int func() -{ - S a,b; - return string_cmp(a.toString(),b.toString()); -} - -void main() -{ - assert(func() == 0); -} diff --git a/tests/mini/bug34.d b/tests/mini/bug34.d deleted file mode 100644 index ac9af211..00000000 --- a/tests/mini/bug34.d +++ /dev/null @@ -1,55 +0,0 @@ -module bug34; - -class MyTypeInfo_Pointer -{ - char[] toString() { return m_next.toString() ~ "*"; } - - int opEquals(Object o) - { TypeInfo_Pointer c; - - return this is o || - ((c = cast(TypeInfo_Pointer)o) !is null && - this.m_next == c.m_next); - } - - hash_t getHash(void *p) - { - return cast(uint)*cast(void* *)p; - } - - int equals(void *p1, void *p2) - { - return cast(int)(*cast(void* *)p1 == *cast(void* *)p2); - } - - int compare(void *p1, void *p2) - { - if (*cast(void* *)p1 < *cast(void* *)p2) - return -1; - else if (*cast(void* *)p1 > *cast(void* *)p2) - return 1; - else - return 0; - } - - size_t tsize() - { - return (void*).sizeof; - } - - void swap(void *p1, void *p2) - { void* tmp; - tmp = *cast(void**)p1; - *cast(void**)p1 = *cast(void**)p2; - *cast(void**)p2 = tmp; - } - - TypeInfo next() { return m_next; } - uint flags() { return 1; } - - TypeInfo m_next; -} - -void main() -{ -} diff --git a/tests/mini/bug35.d b/tests/mini/bug35.d deleted file mode 100644 index ccdbb5cd..00000000 --- a/tests/mini/bug35.d +++ /dev/null @@ -1,7 +0,0 @@ -module bug35; - -private const char[10] digits = "0123456789"; /// 0..9 - -void main() -{ -} diff --git a/tests/mini/bug36.d b/tests/mini/bug36.d deleted file mode 100644 index d8071895..00000000 --- a/tests/mini/bug36.d +++ /dev/null @@ -1,8 +0,0 @@ -module bug36; - -void main() -{ - int[] a; - void* cp = cast(void*)a; - -} diff --git a/tests/mini/bug37.d b/tests/mini/bug37.d deleted file mode 100644 index edb83c86..00000000 --- a/tests/mini/bug37.d +++ /dev/null @@ -1,7 +0,0 @@ -module bug37; - -void main() -{ - char[] a = "hello"; - assert(a !is null); -} diff --git a/tests/mini/bug372.d b/tests/mini/bug372.d deleted file mode 100644 index 83b0e1d6..00000000 --- a/tests/mini/bug372.d +++ /dev/null @@ -1,14 +0,0 @@ -class A { - class B { - } -} - -class C : A { - void test () { - B foo = new B(); - } -} - -int main () { - return 0; -} diff --git a/tests/mini/bug38.d b/tests/mini/bug38.d deleted file mode 100644 index d6de79e5..00000000 --- a/tests/mini/bug38.d +++ /dev/null @@ -1,12 +0,0 @@ -module bug38; - -void func(int* p) -{ - p++; -} - -void main() -{ - int i; - func(&i); -} diff --git a/tests/mini/bug39.d b/tests/mini/bug39.d deleted file mode 100644 index 8168c3e7..00000000 --- a/tests/mini/bug39.d +++ /dev/null @@ -1,13 +0,0 @@ -module bug39; - -struct S -{ - long l; -} - -void main() -{ - S s; - s.l = 23; - void* p = &s; -} diff --git a/tests/mini/bug4.d b/tests/mini/bug4.d deleted file mode 100644 index 19d1a0a4..00000000 --- a/tests/mini/bug4.d +++ /dev/null @@ -1,13 +0,0 @@ -module bug4; - -int func(int i) -{ - i += 2; - i -= 3; - return i; -} - -void main() -{ - assert(func(4) == 3); -} diff --git a/tests/mini/bug40.d b/tests/mini/bug40.d deleted file mode 100644 index 12f88d80..00000000 --- a/tests/mini/bug40.d +++ /dev/null @@ -1,12 +0,0 @@ -module bug40; - -char[] func(void* p) -{ - return null; -} - -void main() -{ - char[] function(void*) fp = &func; - assert(fp(null) is null); -} diff --git a/tests/mini/bug41.d b/tests/mini/bug41.d deleted file mode 100644 index c4d6c32d..00000000 --- a/tests/mini/bug41.d +++ /dev/null @@ -1,10 +0,0 @@ -module bug41; - -void main() -{ - char[] a = "hello world"; - char* ap = a.ptr; - size_t i = 5; - char[] b = ap[0..i]; - assert(b == "hello"); -} diff --git a/tests/mini/bug42.d b/tests/mini/bug42.d deleted file mode 100644 index 516d309f..00000000 --- a/tests/mini/bug42.d +++ /dev/null @@ -1,10 +0,0 @@ -module bug42; - -void main() { - int i = 2; - switch (i) { - case 0: - case 1: - default: - } -} diff --git a/tests/mini/bug43.d b/tests/mini/bug43.d deleted file mode 100644 index 6014ca4c..00000000 --- a/tests/mini/bug43.d +++ /dev/null @@ -1,16 +0,0 @@ -module bug43; - -struct S -{ - ubyte[3] vals; -} - -void func(ubyte[3] v) -{ -} - -void main() -{ - S s; - func(s.vals); -} diff --git a/tests/mini/bug44.d b/tests/mini/bug44.d deleted file mode 100644 index db1d5cfb..00000000 --- a/tests/mini/bug44.d +++ /dev/null @@ -1,20 +0,0 @@ -module bug44; - -struct rgb -{ - long l; -} - -void foo() -{ -} - -rgb test() { - scope(exit) foo(); - return rgb(); -} - -void main() -{ - rgb r = test(); -} diff --git a/tests/mini/bug45.d b/tests/mini/bug45.d deleted file mode 100644 index b873089c..00000000 --- a/tests/mini/bug45.d +++ /dev/null @@ -1,11 +0,0 @@ -module bug45; - -void foo() { - int bar; - scope(exit) { bar++; } - if (bar) return; -} - -void main() { - foo(); -} diff --git a/tests/mini/bug47.d b/tests/mini/bug47.d deleted file mode 100644 index 8529e119..00000000 --- a/tests/mini/bug47.d +++ /dev/null @@ -1,15 +0,0 @@ -module bug47; - -bool func(bool a, bool b) -{ - if (a) b = false; - return b; -} - -void main() -{ - assert(func(0,0) == 0); - assert(func(0,1) == 1); - assert(func(1,0) == 0); - assert(func(1,1) == 0); -} diff --git a/tests/mini/bug48.d b/tests/mini/bug48.d deleted file mode 100644 index 86169136..00000000 --- a/tests/mini/bug48.d +++ /dev/null @@ -1,10 +0,0 @@ -module bug48; - -size_t func(void *p) -{ - return cast(size_t)*cast(void* *)p; -} - -void main() -{ -} diff --git a/tests/mini/bug49.d b/tests/mini/bug49.d deleted file mode 100644 index 6c1b17da..00000000 --- a/tests/mini/bug49.d +++ /dev/null @@ -1,15 +0,0 @@ -module bug49; - -struct S -{ - int i; - long l; -} - -void main() -{ - S s; - s.i = 0x__FFFF_FF00; - s.l = 0xFF00FF_FF00; - s.i &= s.l; -} diff --git a/tests/mini/bug5.d b/tests/mini/bug5.d deleted file mode 100644 index 9ac4bc17..00000000 --- a/tests/mini/bug5.d +++ /dev/null @@ -1,17 +0,0 @@ -module bug5; - -struct hah { - static hah f() - { - hah res; - return res; - } - hah g() - { - return hah.init; - } -} - -void main() -{ -} diff --git a/tests/mini/bug50.d b/tests/mini/bug50.d deleted file mode 100644 index c9fa4774..00000000 --- a/tests/mini/bug50.d +++ /dev/null @@ -1,28 +0,0 @@ -module bug50; -extern(C) int printf(char*, ...); - -struct S -{ - int i; - float f; - long l; - - void print() - { - printf("%d %f %lx\n", i, f, l); - } -} - -void main() -{ - S s; - s.print(); - s = S(1,2,3); - s.print(); - - S[] arr; - {arr ~= s;} - {arr[0].print();} - {arr ~= S(1,2,3);} - {arr[1].print();} -} diff --git a/tests/mini/bug51.d b/tests/mini/bug51.d deleted file mode 100644 index 9ad6d32f..00000000 --- a/tests/mini/bug51.d +++ /dev/null @@ -1,10 +0,0 @@ -module bug51; -const ubyte[3] arr1 = 1; -const ubyte[3] arr2 = [1]; -const ubyte[3] arr3 = [1:1]; -void main() -{ - assert(arr1 == [cast(ubyte)1,1,1][]); - assert(arr2 == [cast(ubyte)1,0,0][]); - assert(arr3 == [cast(ubyte)0,1,0][]); -} diff --git a/tests/mini/bug52.d b/tests/mini/bug52.d deleted file mode 100644 index 5551f7c0..00000000 --- a/tests/mini/bug52.d +++ /dev/null @@ -1,5 +0,0 @@ -module bug52; -struct Vec { double x,y,z; } -struct Pair(T, U) { T first; U second; } -typedef Pair!(double, Vec) Hit; -void main() {} diff --git a/tests/mini/bug53.d b/tests/mini/bug53.d deleted file mode 100644 index da6b05a1..00000000 --- a/tests/mini/bug53.d +++ /dev/null @@ -1,6 +0,0 @@ -module bug53; -class Foo { - final void bar() {} - void test() { bar(); } -} -void main() {} diff --git a/tests/mini/bug54.d b/tests/mini/bug54.d deleted file mode 100644 index 9c404059..00000000 --- a/tests/mini/bug54.d +++ /dev/null @@ -1,17 +0,0 @@ -module bug54; - -extern(C) size_t strlen(char*); - -// creating args for main -void d_main_args(size_t n, char** args, ref char[][] res) -{ - assert(res.length == n); - foreach(i,v; args[0..n]) - { - res[i] = v[0 .. strlen(v)]; - } -} - -void main() -{ -} diff --git a/tests/mini/bug55.d b/tests/mini/bug55.d deleted file mode 100644 index 72f6df71..00000000 --- a/tests/mini/bug55.d +++ /dev/null @@ -1,21 +0,0 @@ -module bug55; -extern(C) int printf(char*, ...); - -int atoi(char[] s) { - int i, fac=1; - bool neg = (s.length) && (s[0] == '-'); - char[] a = neg ? s[1..$] : s; - foreach_reverse(c; a) { - i += (c-'0') * fac; - fac *= 10; - } - return !neg ? i : -i; -} - -void main() -{ - printf("64213 = %d\n", atoi("64213")); - printf("-64213 = %d\n", atoi("-64213")); - assert(atoi("64213") == 64213); - assert(atoi("-64213") == -64213); -} diff --git a/tests/mini/bug56.d b/tests/mini/bug56.d deleted file mode 100644 index d47846e2..00000000 --- a/tests/mini/bug56.d +++ /dev/null @@ -1,8 +0,0 @@ -module bug56; - -void main() -{ - int[] a; - a = [1,2,3]; - {int[] b = [4,5,6];} -} \ No newline at end of file diff --git a/tests/mini/bug59.d b/tests/mini/bug59.d deleted file mode 100644 index a7b45741..00000000 --- a/tests/mini/bug59.d +++ /dev/null @@ -1,20 +0,0 @@ -module bug59; - -void main() -{ - int[2] a = 0; - //func(a); - a[0] = 1; - int i = a[0]; - int* p = &a[0]; -} - -void func(int[2] a) -{ - int* p = cast(int*)a; -} - -void func2(int[4] a) -{ - int* p = 3+cast(int*)a; -} diff --git a/tests/mini/bug6.d b/tests/mini/bug6.d deleted file mode 100644 index 11ceb055..00000000 --- a/tests/mini/bug6.d +++ /dev/null @@ -1,15 +0,0 @@ -module bug6; -class wrong { } -void bark(ref wrong s) { s = new wrong; } -void foo(wrong tree) { - auto old = tree; - bark(tree); - assert(old !is tree); -} -void main() -{ - auto w = new wrong; - auto old = w; - foo(w); - assert(w is old); -} diff --git a/tests/mini/bug60.d b/tests/mini/bug60.d deleted file mode 100644 index b487136b..00000000 --- a/tests/mini/bug60.d +++ /dev/null @@ -1,18 +0,0 @@ -module bug60; -extern(C) int printf(char*, ...); - -void func(T...)(T t) -{ - foreach(v;t) { - if (v.length) { - foreach(i;v) { - printf("%d\n", i); - } - } - } -} -void main() -{ - auto a = [1,2,3]; - func(a); -} diff --git a/tests/mini/bug61.d b/tests/mini/bug61.d deleted file mode 100644 index 6b367d8f..00000000 --- a/tests/mini/bug61.d +++ /dev/null @@ -1,27 +0,0 @@ -module bug61; -extern(C) int printf(char*, ...); - -void main() -{ - int[3] a = [42,4,141414]; - printf("empty:\n"); - foreach(v; a[3..$]) { - printf("int = %d\n", v); - } - printf("one element:\n"); - foreach(v; a[2..$]) { - printf("int = %d\n", v); - } - printf("all elements:\n"); - foreach(v; a) { - printf("int = %d\n", v); - } - printf("empty reversed:\n"); - foreach_reverse(v; a[3..$]) { - printf("int = %d\n", v); - } - printf("all elements reversed:\n"); - foreach_reverse(v; a) { - printf("int = %d\n", v); - } -} diff --git a/tests/mini/bug62.d b/tests/mini/bug62.d deleted file mode 100644 index 8d71f2bc..00000000 --- a/tests/mini/bug62.d +++ /dev/null @@ -1,13 +0,0 @@ -module bug62; -extern(C) int printf(char*, ...); - -void main() -{ - int[] arr = [1,2,5,7,9]; - int i = 0; - foreach(v; arr) { - i += v; - } - printf("sum = %d\n", i); - assert(i == 24); -} \ No newline at end of file diff --git a/tests/mini/bug63.d b/tests/mini/bug63.d deleted file mode 100644 index 33a32e01..00000000 --- a/tests/mini/bug63.d +++ /dev/null @@ -1,11 +0,0 @@ -module bug63; -extern(C) int printf(char*, ...); - -void main() -{ - static void notnested() - { - printf("hello world\n"); - } - notnested(); -} diff --git a/tests/mini/bug64.d b/tests/mini/bug64.d deleted file mode 100644 index efc22537..00000000 --- a/tests/mini/bug64.d +++ /dev/null @@ -1,10 +0,0 @@ -module bug64; - -void main() -{ - float f; - float* p = &f; - float* end1 = p+1; - float* end2 = 1+p; - assert(end1 is end2); -} diff --git a/tests/mini/bug7.d b/tests/mini/bug7.d deleted file mode 100644 index 9dd22f57..00000000 --- a/tests/mini/bug7.d +++ /dev/null @@ -1,14 +0,0 @@ -module bug7; - -class love { } -void bug() { - love[] child; - child.length=1; - assert(child[0] is null); - child[0]=null; - assert(child[0] is null); -} -void main() -{ - bug(); -} diff --git a/tests/mini/bug70.d b/tests/mini/bug70.d deleted file mode 100644 index 06591266..00000000 --- a/tests/mini/bug70.d +++ /dev/null @@ -1,9 +0,0 @@ -module bug70; - -void main() -{ - for (;false;) - { - break; - } -} diff --git a/tests/mini/bug72.d b/tests/mini/bug72.d deleted file mode 100644 index 8ca1bced..00000000 --- a/tests/mini/bug72.d +++ /dev/null @@ -1,8 +0,0 @@ -module bug72; - -void main() -{ - char c = void; - int i = void; - c += i; -} diff --git a/tests/mini/bug73.d b/tests/mini/bug73.d deleted file mode 100644 index a7afbe3c..00000000 --- a/tests/mini/bug73.d +++ /dev/null @@ -1,19 +0,0 @@ -int find(char[] s, dchar c) -{ - // c is a universal character - foreach (int i, dchar c2; s) - { - if (c == c2) - return i; - } - return -1; -} - -void main() -{ - char[] hello = "hello world"; - int i = find(hello, 'w'); - assert(i == 6); - i = find(hello, 'z'); - assert(i == -1); -} diff --git a/tests/mini/bug74.d b/tests/mini/bug74.d deleted file mode 100644 index b02edbf5..00000000 --- a/tests/mini/bug74.d +++ /dev/null @@ -1,12 +0,0 @@ -module bug74; - -char[] sformat(char[] s, ...) -{ - TypeInfo[] ti = _arguments; - void* args = _argptr; - return ""; -} - -void main() -{ -} diff --git a/tests/mini/bug75.d b/tests/mini/bug75.d deleted file mode 100644 index 978286e2..00000000 --- a/tests/mini/bug75.d +++ /dev/null @@ -1,13 +0,0 @@ -module bug75; - -void func(void delegate() dg) -{ -} - -void main() -{ - void nested() { - } - //func(&nested); - void delegate() dg = &nested; -} diff --git a/tests/mini/bug76.d b/tests/mini/bug76.d deleted file mode 100644 index 71ebde5e..00000000 --- a/tests/mini/bug76.d +++ /dev/null @@ -1,9 +0,0 @@ -module bug76; -char[] fmt(...) -{ - return ""; -} -void main() -{ - char[] s = fmt(); -} diff --git a/tests/mini/bug77.d b/tests/mini/bug77.d deleted file mode 100644 index a9a6db57..00000000 --- a/tests/mini/bug77.d +++ /dev/null @@ -1,19 +0,0 @@ -module bug77; -import tango.stdc.string; -void main() -{ - size_t len; - void func2() - { - char* prefix = ""; - - void func() - { - len = strlen(prefix); - assert(len == 0); - } - - func(); - } - func2(); -} diff --git a/tests/mini/bug78.d b/tests/mini/bug78.d deleted file mode 100644 index 68a011d1..00000000 --- a/tests/mini/bug78.d +++ /dev/null @@ -1,8 +0,0 @@ -module bug78; - -void main() -{ - typedef int int_t = 42; - int_t i; - assert(i == int_t.init); -} \ No newline at end of file diff --git a/tests/mini/bug8.d b/tests/mini/bug8.d deleted file mode 100644 index 9081a533..00000000 --- a/tests/mini/bug8.d +++ /dev/null @@ -1,21 +0,0 @@ -module bug8; - -void main() -{ - s = newS(); -} - -S* s; - -struct S -{ - int i; -} - -S* newS() -{ - auto tmp = new S; - tmp.i = 4; - return tmp; -} - diff --git a/tests/mini/bug80.d b/tests/mini/bug80.d deleted file mode 100644 index 4317d381..00000000 --- a/tests/mini/bug80.d +++ /dev/null @@ -1,11 +0,0 @@ -module bug80; -extern(C) int printf(char*, ...); - -void main() -{ - byte b = 10; - int i = b += 2; - printf("byte=%d int=%d\n", b, i); - assert(b == 12); - assert(i == 12); -} diff --git a/tests/mini/bug9.d b/tests/mini/bug9.d deleted file mode 100644 index 0833d2f5..00000000 --- a/tests/mini/bug9.d +++ /dev/null @@ -1,34 +0,0 @@ -module bug9; -extern(C) int printf(char*, ...); - -struct rgb -{ - ubyte[3] values; - rgb average(rgb other) - { - rgb res; - foreach (id, ref v; res.values) v=(values[id]+other.values[id])/2; - return res; - } - void print() - { - printf("[%d,%d,%d]\n", values[0], values[1], values[2]); - } -} - -void main() -{ - rgb a,b; - a.values[0] = 10; - a.values[1] = 20; - a.values[2] = 30; - b.values[0] = 30; - b.values[1] = 20; - b.values[2] = 10; - rgb avg = a.average(b); - avg.print(); - assert(avg.values[0] == 20); - assert(avg.values[1] == 20); - assert(avg.values[2] == 20); -} - diff --git a/tests/mini/c.d b/tests/mini/c.d deleted file mode 100644 index 9584d862..00000000 --- a/tests/mini/c.d +++ /dev/null @@ -1,10 +0,0 @@ -module c; - -void main() -{ - ushort a = 0xFFF0; - ushort b = 0x0FFF; - auto t = a & b; - a &= b; - assert(t == a); -} diff --git a/tests/mini/callingconv1.d b/tests/mini/callingconv1.d deleted file mode 100644 index 9b0a92e4..00000000 --- a/tests/mini/callingconv1.d +++ /dev/null @@ -1,60 +0,0 @@ -module mini.callingconv1; - -extern(C) int printf(char*, ...); - -float foo(float a, float b) -{ - return a + b; -} - -void main() -{ - float a = 1.5; - float b = 2.5; - float c; - - version(D_InlineAsm_X86) - { - version(Windows) - { - asm - { - movss XMM0, [a]; - movss XMM1, [b]; - movss [ESP], XMM1; - movss [ESP]+4, XMM0; - call foo; - fstp [c]-4; - movss XMM0, [c]-4; - movss [c], XMM0; - } - } else - { - - asm - { - mov EAX, [a]; - push EAX; - mov EAX, [b]; - push EAX; - call foo; - fstp c; - } - } - } - else version(D_InlineAsm_X86_64) - { - asm - { - movss XMM0, [a]; - movss XMM1, [b]; - call foo; - movss [c], XMM0; - } - } - printf("%f\n", c); - - assert(c == 4.0); - - printf("passed %f\n", c); -} diff --git a/tests/mini/calls1.d b/tests/mini/calls1.d deleted file mode 100644 index 76446544..00000000 --- a/tests/mini/calls1.d +++ /dev/null @@ -1,66 +0,0 @@ -module calls1; -import tango.core.Vararg; -extern(C) int printf(char*, ...); -void main() -{ - {int a = byVal1(3);} - {int a = void; byRef1(a);} - {char[] c = void; refType(c);} - {char[] c = void; refTypeByRef(c);} - {S s = void; structByVal(s);} - {S s = void; structByRef(s);} - {S s = void; structByPtr(&s);} - {printf("c-varargs %d %d %d\n", 1,2,3);} - {int i=3; float f=24.7; dvararg(i,f);} - {char[] s = "hello"; dvarargRefTy(s);} - {char[] ss = "hello world!"; dvarargRefTy(ss);} -} - -int byVal1(int a) -{ - return a; -} - -void byRef1(ref int a) -{ - a = 3; -} - -void refType(char[] s) -{ -} - -void refTypeByRef(ref char[] s) -{ -} - -struct S -{ - float f; - double d; - long l; - byte b; -} - -void structByVal(S s) -{ -} - -void structByRef(ref S s) -{ -} - -void structByPtr(S* s) -{ -} - -void dvararg(...) -{ - printf("%d %.1f\n", va_arg!(int)(_argptr), va_arg!(float)(_argptr)); -} - -void dvarargRefTy(...) -{ - char[] s = va_arg!(char[])(_argptr); - printf("%.*s\n", s.length, s.ptr); -} diff --git a/tests/mini/classes.d b/tests/mini/classes.d deleted file mode 100644 index 5acdd4c4..00000000 --- a/tests/mini/classes.d +++ /dev/null @@ -1,19 +0,0 @@ -extern(C) int printf(char*, ...); - -class C -{ - int i; - void p() - { - printf("%d\n", i); - } -} - -void main() -{ - printf("should print 4\n"); - C c = new C; - c.i = 4; - c.p(); - //delete c; -} diff --git a/tests/mini/classes1.d b/tests/mini/classes1.d deleted file mode 100644 index 2bc66149..00000000 --- a/tests/mini/classes1.d +++ /dev/null @@ -1,37 +0,0 @@ -module tangotests.classes1; - -class Outer -{ - int data; - - class Inner - { - long data; - - this(long d) - { - data = d*2; - } - } - - void func() - { - auto i = new Inner(data); - data += (i.data/4); - } - - this(int d) - { - data = d; - } -} - -void main() -{ - scope c = new Outer(100); - c.func(); - int d = c.data; - printf("150 = %d\n", d); -} - -extern(C) int printf(char*, ...); diff --git a/tests/mini/classes10.d b/tests/mini/classes10.d deleted file mode 100644 index 083e452c..00000000 --- a/tests/mini/classes10.d +++ /dev/null @@ -1,17 +0,0 @@ -module classes10; - -class C -{ - int i; - override char[] toString() - { - return "foobar"; - } -} - -void main() -{ - Object o = new C; - char[] s = o.toString(); - assert(s == "foobar"); -} diff --git a/tests/mini/classes11.d b/tests/mini/classes11.d deleted file mode 100644 index b31347d5..00000000 --- a/tests/mini/classes11.d +++ /dev/null @@ -1,16 +0,0 @@ -module classes11; -extern(C) int printf(char*, ...); - -void main() -{ - static class C - { - void func() - { - printf("Hello world\n"); - } - } - - scope c = new C; - c.func(); -} diff --git a/tests/mini/classes12.d b/tests/mini/classes12.d deleted file mode 100644 index 916c267e..00000000 --- a/tests/mini/classes12.d +++ /dev/null @@ -1,34 +0,0 @@ -class C -{ - int a; - union - { - int i; - double d; - } - int z; -} - -void func() -{ - scope c = new C; - access1(c); - assert(c.i == 42); - access2(c); - assert(c.d == 2.5); -} - -void access1(C c) -{ - c.i = 42; -} - -void access2(C c) -{ - c.d = 2.5; -} - -void main() -{ - func(); -} diff --git a/tests/mini/classes13_bug239.d b/tests/mini/classes13_bug239.d deleted file mode 100644 index 0db5c2e7..00000000 --- a/tests/mini/classes13_bug239.d +++ /dev/null @@ -1,28 +0,0 @@ -extern(C) int printf(char*, ...); - -class A { - bool Afoo = false; - void foo() { Afoo = true; } -} - -class B : A {} - -class C : B { - bool Cfoo = false; - void foo() { Cfoo = true; } -} - -void main() -{ - scope c1 = new C(); - c1.foo(); - assert(c1.Cfoo && !c1.Afoo); - - scope c2 = new C(); - c2.B.foo(); - assert(!c2.Cfoo && c2.Afoo); - - scope c3 = new C(); - c3.A.foo(); - assert(!c3.Cfoo && c3.Afoo); -} diff --git a/tests/mini/classes2.d b/tests/mini/classes2.d deleted file mode 100644 index 65039c4a..00000000 --- a/tests/mini/classes2.d +++ /dev/null @@ -1,25 +0,0 @@ -extern(C) int printf(char*, ...); - -class A -{ - int i; - void f() - { - printf("A.f\n"); - } -} - -class B : A -{ - long l; - void f() - { - printf("B.f\n"); - } -} - -void main() -{ - A a = new B; - a.f(); -} diff --git a/tests/mini/classes3.d b/tests/mini/classes3.d deleted file mode 100644 index 09dbc80d..00000000 --- a/tests/mini/classes3.d +++ /dev/null @@ -1,33 +0,0 @@ -class C -{ - int c; - long f(long l) - { - return l; - } -} - -class D : C -{ - int d; - override long f(long l) - { - return l*2; - } -} - -void main() -{ - scope c = new C; - assert(c.f(25L) == 25); - scope d = new D; - assert(d.f(25L) == 50); - C cd = d; - assert(cd.f(25L) == 50); - assert(func(d,25L) == 50); -} - -long func(C c, long l) -{ - return c.f(l); -} diff --git a/tests/mini/classes4.d b/tests/mini/classes4.d deleted file mode 100644 index dcbd54e8..00000000 --- a/tests/mini/classes4.d +++ /dev/null @@ -1,38 +0,0 @@ -extern(C) int printf(char*, ...); - -class A -{ - int i = 42; - double df = 3.1415; - this() - { - } - char[] toString() - { - return "A:Object"; - } -} - -class B : A -{ - ubyte b; - char[] toString() - { - return "B:A"; - } -} - -void main() -{ - scope a = new A; - char[] as = a.toString; - {printf("a.toString = '%.*s'\n", as.length, as.ptr);} - - Object o = a; - char[] os = o.toString; - {printf("o.toString = '%.*s'\n", os.length, os.ptr);} - - scope b = new B; - char[] bs = b.toString; - {printf("b.toString = '%.*s'\n", bs.length, bs.ptr);} -} diff --git a/tests/mini/classes5.d b/tests/mini/classes5.d deleted file mode 100644 index 0b06bbf9..00000000 --- a/tests/mini/classes5.d +++ /dev/null @@ -1,24 +0,0 @@ -module classes5; -extern(C) int printf(char*, ...); - -struct S -{ - long l; -} - -class C -{ - C c; - S s; -} - -void main() -{ - C c = new C; - long* lp = void; - {c.s.l = 64;} - {assert(c.s.l == 64);} - {lp = &c.s.l;} - {assert(*lp == 64);} - printf("classes5 success\n"); -} diff --git a/tests/mini/classes6.d b/tests/mini/classes6.d deleted file mode 100644 index 0a67662d..00000000 --- a/tests/mini/classes6.d +++ /dev/null @@ -1,38 +0,0 @@ -module classes6; -extern(C) int printf(char*, ...); - -class C -{ - void f() - { - printf("world\n"); - } -} - -class D : C -{ - void f() - { - printf("moon\n"); - } -} - - -extern(C) -{ - void srand(uint seed); - int rand(); -} - -import ldc.intrinsics; - -void main() -{ - C c; - srand(readcyclecounter()); - if (rand() % 2) - c = new C; - else - c = new D; - c.f(); -} diff --git a/tests/mini/classes7.d b/tests/mini/classes7.d deleted file mode 100644 index 12be32e5..00000000 --- a/tests/mini/classes7.d +++ /dev/null @@ -1,21 +0,0 @@ -module classes7; - -class C -{ - int i=0; - void f() - { - i=42; - } - void g() - { - f(); - } -} - -void main() -{ - scope c = new C; - c.g(); - assert(c.i == 42); -} diff --git a/tests/mini/classes8.d b/tests/mini/classes8.d deleted file mode 100644 index b96bc7cf..00000000 --- a/tests/mini/classes8.d +++ /dev/null @@ -1,22 +0,0 @@ -class A { - int i; - int l; - this(bool b,bool b2=false) { - if (b) this = new B; - i = 4; - if (b2) this = new C; - l = 64; - } -} -class B : A{ - this() { - super(false); - } -} -class C : A{ - this() { - super(false); - } -} -void main() { -} diff --git a/tests/mini/classes9.d b/tests/mini/classes9.d deleted file mode 100644 index 42586d9c..00000000 --- a/tests/mini/classes9.d +++ /dev/null @@ -1,47 +0,0 @@ -module classes9; - -class C -{ -} - -class D : C -{ -} - -class E -{ -} - -class F : E -{ -} - -void main() -{ - { - D d = new D; - { - C c = d; - assert(c !is null); - D d2 = cast(D)c; - assert(d2 !is null); - E e = cast(E)d; - assert(e is null); - F f = cast(F)d; - assert(f is null); - } - } - { - F f = new F; - { - E e = f; - assert(e !is null); - F f2 = cast(F)e; - assert(f2 !is null); - C c = cast(C)f; - assert(c is null); - D d2 = cast(D)f; - assert(d2 is null); - } - } -} diff --git a/tests/mini/classinfo1.d b/tests/mini/classinfo1.d deleted file mode 100644 index a5dd90ef..00000000 --- a/tests/mini/classinfo1.d +++ /dev/null @@ -1,30 +0,0 @@ -module classinfo1; - -extern(C) int printf(char*, ...); - -class NoPtrs -{ -} - -class HasPtrs -{ - void* p; -} - -void main() -{ - { - ClassInfo ci = NoPtrs.classinfo; - char[] name = ci.name; - printf("%.*s\n", name.length, name.ptr); - assert(ci.name == "classinfo1.NoPtrs"); - assert(ci.flags & 2); - } - { - ClassInfo ci = HasPtrs.classinfo; - char[] name = ci.name; - printf("%.*s\n", name.length, name.ptr); - assert(ci.name == "classinfo1.HasPtrs"); - assert(!(ci.flags & 2)); - } -} diff --git a/tests/mini/classinfo2.d b/tests/mini/classinfo2.d deleted file mode 100644 index 338cd8af..00000000 --- a/tests/mini/classinfo2.d +++ /dev/null @@ -1,17 +0,0 @@ -module classinfo2; - -class C -{ -} - -class D : C -{ -} - -void main() -{ - D d; - d = new D; - ClassInfo ci = d.classinfo; - assert(ci is D.classinfo); -} diff --git a/tests/mini/classinfo3.d b/tests/mini/classinfo3.d deleted file mode 100644 index 05bf394e..00000000 --- a/tests/mini/classinfo3.d +++ /dev/null @@ -1,29 +0,0 @@ -module classinfo3; - -class C -{ - int i; - float f; - long l; - int j; -} - -void main() -{ - auto c = C.classinfo; - if (c.offTi !is null) - { - assert(c.offTi.length == 4); - - size_t base = 2*size_t.sizeof; - - assert(c.offTi[0].offset == base); - assert(c.offTi[0].ti == typeid(int)); - assert(c.offTi[1].offset == base+4); - assert(c.offTi[1].ti == typeid(float)); - assert(c.offTi[2].offset == base+8); - assert(c.offTi[2].ti == typeid(long)); - assert(c.offTi[3].offset == base+16); - assert(c.offTi[3].ti == typeid(int)); - } -} diff --git a/tests/mini/classinfo4.d b/tests/mini/classinfo4.d deleted file mode 100644 index 50f03cf5..00000000 --- a/tests/mini/classinfo4.d +++ /dev/null @@ -1,43 +0,0 @@ -module classinfo4; - -class C -{ -} - -class D : C -{ - this() - { - } - ~this() - { - } -} - -template T() -{ - ~this() - { - } -} - -class E : D -{ - this() - { - } - ~this() - { - } - mixin T; -} - -void main() -{ - assert(C.classinfo.defaultConstructor is null); - assert(C.classinfo.destructor is null); - assert(D.classinfo.defaultConstructor !is null); - assert(D.classinfo.destructor !is null); - assert(E.classinfo.defaultConstructor !is null); - assert(E.classinfo.destructor !is null); -} diff --git a/tests/mini/classinfo5.d b/tests/mini/classinfo5.d deleted file mode 100644 index 7bd58916..00000000 --- a/tests/mini/classinfo5.d +++ /dev/null @@ -1,13 +0,0 @@ -extern(C) int printf(char*, ...); - -class BaseClass {} - -void main() -{ - Object o_cr = BaseClass.classinfo.create(); - Object o_new = new BaseClass; - printf("CIaddr: %X\n", cast(size_t*)BaseClass.classinfo); - printf("Create: %X\n", cast(size_t*)o_cr.classinfo); - printf("New: %X\n", cast(size_t*)o_new.classinfo); - assert(cast(size_t*)o_cr.classinfo == cast(size_t*)o_new.classinfo); -} diff --git a/tests/mini/comma.d b/tests/mini/comma.d deleted file mode 100644 index 7d7fb953..00000000 --- a/tests/mini/comma.d +++ /dev/null @@ -1,11 +0,0 @@ -module comma; - -void main() -{ - int i=0,j=0; - for (; i<10; i++,j++) - { - } - assert(i == 10); - assert(j == 10); -} diff --git a/tests/mini/compile_asm1.d b/tests/mini/compile_asm1.d deleted file mode 100644 index 6caf1dcc..00000000 --- a/tests/mini/compile_asm1.d +++ /dev/null @@ -1,11 +0,0 @@ -extern(C) int printf(char*, ...); -void main() -{ - void* i; - asm - { - mov EAX, FS:4; - mov i, EAX; - } - printf("FS:4 = %p\n", i); -} diff --git a/tests/mini/compile_asm_fpinstr_compare.d b/tests/mini/compile_asm_fpinstr_compare.d deleted file mode 100644 index d354572e..00000000 --- a/tests/mini/compile_asm_fpinstr_compare.d +++ /dev/null @@ -1,31 +0,0 @@ -void main() { -asm { - fmul; - fmul ST, ST(1); - fmul ST(1), ST; - fmulp; - fmulp ST(1), ST; - - fdiv; - fdiv ST, ST(1); - fdiv ST(1), ST; - fdivp; - fdivp ST(1), ST; - fdivr; - fdivr ST, ST(1); - fdivr ST(1), ST; - fdivrp; - fdivrp ST(1), ST; - - fsub; - fsub ST, ST(1); - fsub ST(1), ST; - fsubp; - fsubp ST(1), ST; - fsubr; - fsubr ST, ST(1); - fsubr ST(1), ST; - fsubrp; - fsubrp ST(1), ST; -} -} \ No newline at end of file diff --git a/tests/mini/compile_bug164_stringinitcast.d b/tests/mini/compile_bug164_stringinitcast.d deleted file mode 100644 index eab798c1..00000000 --- a/tests/mini/compile_bug164_stringinitcast.d +++ /dev/null @@ -1,2 +0,0 @@ -const C = "foo"; -char[] var = C; diff --git a/tests/mini/compile_bug174_enclosing_on_break.d b/tests/mini/compile_bug174_enclosing_on_break.d deleted file mode 100644 index 8972f310..00000000 --- a/tests/mini/compile_bug174_enclosing_on_break.d +++ /dev/null @@ -1,5 +0,0 @@ -void main() -{ - scope Object o; - switch(0) {} -} diff --git a/tests/mini/compile_bug26.d b/tests/mini/compile_bug26.d deleted file mode 100644 index d8863afc..00000000 --- a/tests/mini/compile_bug26.d +++ /dev/null @@ -1,8 +0,0 @@ -module bug26; - -extern int i; - -void main() -{ - int j = i; -} diff --git a/tests/mini/compile_bug305.d b/tests/mini/compile_bug305.d deleted file mode 100644 index 6e03d72d..00000000 --- a/tests/mini/compile_bug305.d +++ /dev/null @@ -1,7 +0,0 @@ -module bug305; - -class E { - void A() { - alias E m; - } -} diff --git a/tests/mini/compile_bug_ldc_154.d b/tests/mini/compile_bug_ldc_154.d deleted file mode 100644 index f3e7b551..00000000 --- a/tests/mini/compile_bug_ldc_154.d +++ /dev/null @@ -1,9 +0,0 @@ -template toInt(char[4] arg) -{ - const uint toInt = (cast(uint[]) arg)[0]; - } - - void main() - { - auto i = toInt!("abcd"); - } diff --git a/tests/mini/compile_ctfe_dup.d b/tests/mini/compile_ctfe_dup.d deleted file mode 100644 index f4a86a37..00000000 --- a/tests/mini/compile_ctfe_dup.d +++ /dev/null @@ -1,4 +0,0 @@ -char[] foobar() { - return "foobar".dup; -} -const char[] foo = foobar(); diff --git a/tests/mini/compile_delegate.d b/tests/mini/compile_delegate.d deleted file mode 100644 index 24aea06b..00000000 --- a/tests/mini/compile_delegate.d +++ /dev/null @@ -1,13 +0,0 @@ -class A(T) -{ - void foo(void delegate (T) d) {} - - void bar() - { - foo(delegate void (T t) {}); - } -} - -class B: A!(B) {} - -class C: A!(C) {} diff --git a/tests/mini/compile_delegatetuple.d b/tests/mini/compile_delegatetuple.d deleted file mode 100644 index 2416c796..00000000 --- a/tests/mini/compile_delegatetuple.d +++ /dev/null @@ -1,14 +0,0 @@ -alias char[] string; -template Unstatic(T) { alias T Unstatic; } -template Unstatic(T: T[]) { alias T[] Unstatic; } -template StupleMembers(T...) { - static if (T.length) { - const int id=T[0..$-1].length; - const string str=StupleMembers!(T[0..$-1]).str~"Unstatic!(T["~id.stringof~"]) _"~id.stringof~"; "; - } else const string str=""; -} - -struct Stuple(T...) { - mixin(StupleMembers!(T).str); -} -Stuple!(string, void delegate(float)) foo; diff --git a/tests/mini/compile_funcptr1.d b/tests/mini/compile_funcptr1.d deleted file mode 100644 index f4c1a877..00000000 --- a/tests/mini/compile_funcptr1.d +++ /dev/null @@ -1,4 +0,0 @@ -module mini.compile_funcptr1; - -void a() { } -void function() b = &a; diff --git a/tests/mini/compile_nested1.d b/tests/mini/compile_nested1.d deleted file mode 100644 index f0ce1cd3..00000000 --- a/tests/mini/compile_nested1.d +++ /dev/null @@ -1 +0,0 @@ -void append(lazy char[] exp) { char[] s = exp; } diff --git a/tests/mini/compile_nested2.d b/tests/mini/compile_nested2.d deleted file mode 100644 index e05a4ffc..00000000 --- a/tests/mini/compile_nested2.d +++ /dev/null @@ -1,13 +0,0 @@ -void test(void delegate() spam) -{ - static void foo() // static is the problem - { - uint x; - void peek() { x = 0; } - } - - void bar() - { - spam(); - } -} diff --git a/tests/mini/compile_rawvardeclinfinally.d b/tests/mini/compile_rawvardeclinfinally.d deleted file mode 100644 index 73bc58f1..00000000 --- a/tests/mini/compile_rawvardeclinfinally.d +++ /dev/null @@ -1,8 +0,0 @@ -void foo() { - void delegate()[] bar; - try { - } finally { - foreach (dg; bar) - dg(); - } -} diff --git a/tests/mini/compile_scope_exit_foreach.d b/tests/mini/compile_scope_exit_foreach.d deleted file mode 100644 index 201f097a..00000000 --- a/tests/mini/compile_scope_exit_foreach.d +++ /dev/null @@ -1,14 +0,0 @@ -module scope_exit_foreach; - -void bar(size_t); - -long foo(ubyte[] arr) { - scope(exit) { - foreach (ref b; arr) { - bar(b); - } - } - if (arr.length == 3) - return 0; - return arr.length; -} diff --git a/tests/mini/compile_structs1.d b/tests/mini/compile_structs1.d deleted file mode 100644 index c371a142..00000000 --- a/tests/mini/compile_structs1.d +++ /dev/null @@ -1,4 +0,0 @@ -struct Foo { int a, b, c; union Data { } Data data; } -struct Bar { int a, b; } -struct Baz { int a; union { Foo foo; Bar bar; } } -void test() { Baz baz; if (baz.bar.a) return; } diff --git a/tests/mini/complex1.d b/tests/mini/complex1.d deleted file mode 100644 index 6dd13f6c..00000000 --- a/tests/mini/complex1.d +++ /dev/null @@ -1,17 +0,0 @@ -module complex1; - -void main() -{ - cfloat cf1 = 3f + 0i; - cfloat cf2 = 4f + 1i; - cfloat cf3 = func(); - auto c1 = cf1 + cf2; - auto c2 = cf2 - cf3; - auto c3 = cf1 * cf3; - auto c4 = cf2 / cf3; -} - -cfloat func() -{ - return 3f + 1i; -} diff --git a/tests/mini/complex2.d b/tests/mini/complex2.d deleted file mode 100644 index 76bf02e5..00000000 --- a/tests/mini/complex2.d +++ /dev/null @@ -1,10 +0,0 @@ -module complex2; - -void main() -{ - cdouble c = 3.0 + 0i; - cdouble d = 2.0 + 0i; - cdouble c1 = c + 3.0; - cdouble c2 = c - 3.0i; - cdouble c3 = c / 2.0; -} diff --git a/tests/mini/complex3.d b/tests/mini/complex3.d deleted file mode 100644 index 49d253ae..00000000 --- a/tests/mini/complex3.d +++ /dev/null @@ -1,9 +0,0 @@ -module complex3; - -void main() -{ - cfloat c1 = 1f + 0i; - cfloat c2 = 0f + 0i; - c2 += 1f + 0i; - assert(c1 == c2); -} diff --git a/tests/mini/complex4.d b/tests/mini/complex4.d deleted file mode 100644 index 8dbc41f4..00000000 --- a/tests/mini/complex4.d +++ /dev/null @@ -1,8 +0,0 @@ -module complex4; - -void main() -{ - cfloat c = 2f + 3fi; - float r = cast(float)c; - ifloat i = cast(ifloat)c; -} \ No newline at end of file diff --git a/tests/mini/complex5.d b/tests/mini/complex5.d deleted file mode 100644 index 996b4bec..00000000 --- a/tests/mini/complex5.d +++ /dev/null @@ -1,13 +0,0 @@ -module complex5; - -void main() -{ - cfloat c = 3+2i; - foo(c); -} - -void foo(cfloat c) -{ - assert(c.re > 2.9999 && c.re < 3.0001); - assert(c.im > 1.9999i && c.im < 2.0001i); -} diff --git a/tests/mini/cond.d b/tests/mini/cond.d deleted file mode 100644 index 2f14a737..00000000 --- a/tests/mini/cond.d +++ /dev/null @@ -1,45 +0,0 @@ -extern(C) int printf(char*, ...); - -version=AndAnd; -version=OrOr; - -version(AndAnd) -void andand1() -{ - int a,b; - a = 4; - b = 5; - assert(a == 4); - assert(b == 5); - assert(a+b == 9); - assert(a == 4 && b == 5); - assert(a != 3 && b == 5); - assert(a > 2); - assert(a < 54); - assert(a < b); - assert(a > b-2); - - int apb = a+b; - int amb = a*b; - assert(apb < amb && apb > a); -} - -version(OrOr) -void oror1() -{ - int a,b; - a = 10; - b = 1000; - assert(a); - assert(b); - assert(a || b); - assert(a > b || a < b); -} - -void main() -{ - printf("Conditionals test\n"); - version(AndAnd) andand1(); - version(OrOr) oror1(); - printf(" SUCCESS\n"); -} diff --git a/tests/mini/cond1.d b/tests/mini/cond1.d deleted file mode 100644 index 79c55bef..00000000 --- a/tests/mini/cond1.d +++ /dev/null @@ -1,8 +0,0 @@ -module cond1; - -void main() -{ - double a = 2; - double b = 4; - double c = (a > 0) ? a : b; -} diff --git a/tests/mini/condexp.d b/tests/mini/condexp.d deleted file mode 100644 index 511419b3..00000000 --- a/tests/mini/condexp.d +++ /dev/null @@ -1,14 +0,0 @@ -module condexp; - -int f() -{ - return 42; -} - -void main() -{ - int i = f() < 25 ? -1 : 1; - /*int j = f() > 25 ? 1 : -1; - assert(i); - assert(!j);*/ -} diff --git a/tests/mini/condexp1.d b/tests/mini/condexp1.d deleted file mode 100644 index 3a67dfec..00000000 --- a/tests/mini/condexp1.d +++ /dev/null @@ -1,12 +0,0 @@ -module condexp1; - -void main() -{ - char[] a = "hello"; - char[] b = "world"; - int i = 42; - { - char[] c = i > 50 ? b : a; - assert(c is a); - } -} diff --git a/tests/mini/const1.d b/tests/mini/const1.d deleted file mode 100644 index b37052be..00000000 --- a/tests/mini/const1.d +++ /dev/null @@ -1,15 +0,0 @@ -module mini.const1; - -void* g = cast(void*)&foobar; - -int foobar() -{ - return 42; -} - -void main() -{ - auto fn = cast(int function())g; - int i = fn(); - assert(i == 42); -} diff --git a/tests/mini/const2.d b/tests/mini/const2.d deleted file mode 100644 index 4e3c3bd6..00000000 --- a/tests/mini/const2.d +++ /dev/null @@ -1,7 +0,0 @@ -int[10] test; -int* t = &test[3]; - -void main() -{ - assert(t is &test[3]); -} diff --git a/tests/mini/conststructliteral.d b/tests/mini/conststructliteral.d deleted file mode 100644 index 353f9042..00000000 --- a/tests/mini/conststructliteral.d +++ /dev/null @@ -1,27 +0,0 @@ -struct S { int i; } - -const S s1; -static this() { s1 = S(5); } -const S s2 = { 5 }; -const S s3 = S(5); -S foo() { S t; t.i = 5; return t; } -const S s4 = foo(); - -const ps1 = &s1; -const ps2 = &s2; -//const ps3 = &s3; // these could be made to work -//const ps4 = &s4; - -extern(C) int printf(char*,...); -void main() { - printf("%p %p\n", ps1, ps2); - printf("%p %p %p %p\n", &s1, &s2, &s3, &s4); - - assert(ps1 == ps1); - assert(ps2 == ps2); - assert(&s1 == &s1); - assert(&s2 == &s2); - assert(&s3 == &s3); - assert(&s4 == &s4); -} - diff --git a/tests/mini/cyclic.d b/tests/mini/cyclic.d deleted file mode 100644 index b591b8ac..00000000 --- a/tests/mini/cyclic.d +++ /dev/null @@ -1,16 +0,0 @@ -void main() -{ - S t; -} - -struct T -{ - int i; - S* s; -} - -struct S -{ - long i; - T* t; -} diff --git a/tests/mini/d.d b/tests/mini/d.d deleted file mode 100644 index 25cf8d3c..00000000 --- a/tests/mini/d.d +++ /dev/null @@ -1,50 +0,0 @@ -module d; - -void main() -{ - int delegate() dg; - - struct S - { - int i; - long l; - float f; - - int func() - { - return 42; - } - } - - S s; - auto dg2 = &s.func; - int i = dg2(); - assert(i == 42); - - i = f(dg2, 1); - assert(i == 43); -} - -int f(int delegate() dg, int i) -{ - return dg() + i; -} - -/* -struct S -{ - int i; - float f; - int square() - { - return i*i; - } -} - -S s; - -void main() -{ - auto dg = &s.square; -} -*/ \ No newline at end of file diff --git a/tests/mini/delegate.d b/tests/mini/delegate.d deleted file mode 100644 index 5e14fd33..00000000 --- a/tests/mini/delegate.d +++ /dev/null @@ -1,9 +0,0 @@ -class C { void foo() {} } - -void main() -{ - C c = new C; - void delegate() dlg = &c.foo; - - assert(dlg); -} diff --git a/tests/mini/delegate2.d b/tests/mini/delegate2.d deleted file mode 100644 index fb186ae6..00000000 --- a/tests/mini/delegate2.d +++ /dev/null @@ -1,12 +0,0 @@ -module mini.delegate2; - -void main() -{ - int foo = 42; - int bar() - { - return foo; - } - int delegate() dg = &bar; - assert(dg() == foo); -} diff --git a/tests/mini/delegate3.d b/tests/mini/delegate3.d deleted file mode 100644 index 06c3d644..00000000 --- a/tests/mini/delegate3.d +++ /dev/null @@ -1,18 +0,0 @@ -module bar; - -class S -{ - int i; - final int foo() - { - return i; - } -} - -void main() -{ - auto s = new S; - s.i = 42; - auto dg = &s.foo; - assert(dg() == 42); -} diff --git a/tests/mini/dgfuncptr.d b/tests/mini/dgfuncptr.d deleted file mode 100644 index 7132c5d3..00000000 --- a/tests/mini/dgfuncptr.d +++ /dev/null @@ -1,9 +0,0 @@ -void main() -{ - void foo() {} - - auto dg = &foo; - - if(dg.funcptr is null) - { assert(0); } -} diff --git a/tests/mini/dgs.d b/tests/mini/dgs.d deleted file mode 100644 index 76917f89..00000000 --- a/tests/mini/dgs.d +++ /dev/null @@ -1,87 +0,0 @@ - -extern(C) int printf(char*, ...); - -struct S -{ - int i; - int square() - { - return i*i; - } - int plus(int a) - { - return i + a; - } - int minus(int a) - { - return i - a; - } - int delegate(int) get(char op) - { - int delegate(int) rval; - if (op == '+') - rval = + - else if (op == '-') - rval = − - return rval; - } -} - -int calldg1(int delegate(int) dg, int i) -{ - return dg(i); -} - -void delegate() retdg() -{ - void delegate() dg; - return dg; -} - -void getretdg() -{ - void delegate() dg; - dg = retdg(); -} - -class C -{ - int i; - void m() - { - i = 42; - } -} - -void getclassdg() -{ - scope c = new C; - void delegate() dg = &c.m; - assert(c.i != 42); - dg(); - assert(c.i == 42); -} - -void main() -{ - printf("Delegate test\n"); - S s = S(4); - - auto dg = &s.square; - //assert(dg() == 16); - //dg(); - - /*auto dg1 = &s.plus; - assert(dg1(6) == 10); - - auto dg2 = &s.minus; - assert(calldg1(dg2,30) == -26); - - auto dg3 = s.get('+'); - assert(dg3(16) == 20); - - getretdg(); - getclassdg();*/ - - printf(" SUCCESS\n"); -} diff --git a/tests/mini/dotproduct.d b/tests/mini/dotproduct.d deleted file mode 100644 index ad171290..00000000 --- a/tests/mini/dotproduct.d +++ /dev/null @@ -1,36 +0,0 @@ -extern(C) int printf(char*, ...); - -struct vec3 -{ - float x,y,z; - - float dot(ref vec3 v) - { - return x*v.x + y*v.y + z*v.z; - } - - void print(char[] n) - { - printf("%.*s = vec3(%.4f, %.4f, %.4f)\n", n.length, n.ptr, x,y,z); - } -} - -int main() -{ - printf("Dot Product test\n"); - - const f = 0.7071067811865474617; - vec3 v = vec3(f,f,0); - vec3 w = vec3(f,0,f); - - v.print("v"); - w.print("w"); - - auto dp = v.dot(w); - printf("v · w = %f\n", dp); - assert(dp > 0.4999 && dp < 0.5001); - - printf(" SUCCESS\n"); - return 0; -} - diff --git a/tests/mini/dottypeexp.d b/tests/mini/dottypeexp.d deleted file mode 100644 index 2f165c81..00000000 --- a/tests/mini/dottypeexp.d +++ /dev/null @@ -1,4 +0,0 @@ -extern(C) int printf(char*, ...); -template Foo() { void test() { printf("test\n"); typeof(this).whee(); } } -class Bar { void whee() { printf("whee\n"); } mixin Foo!(); } -void main() { (new Bar).test(); } diff --git a/tests/mini/e.d b/tests/mini/e.d deleted file mode 100644 index 075f0ba0..00000000 --- a/tests/mini/e.d +++ /dev/null @@ -1,25 +0,0 @@ -module e; - -extern(C) int printf(char*, ...); - -struct C -{ - float x=0,y=0; - - float dot(ref C b) - { - return x*b.x + y*b.y; - } -} - -void main() -{ - C a,b; - a.x = 2; - a.y = 6; - b.x = 3; - b.y = 5; - float f = a.dot(b); - printf("%f\n", f); - assert(f == 36); -} diff --git a/tests/mini/emptytuple.d b/tests/mini/emptytuple.d deleted file mode 100644 index 8f1fed4e..00000000 --- a/tests/mini/emptytuple.d +++ /dev/null @@ -1,8 +0,0 @@ -template T(B...) { - typedef B TArgs; -} - -int main(){ - alias T!() instantiate; - return 0; -} diff --git a/tests/mini/enum1.d b/tests/mini/enum1.d deleted file mode 100644 index 0fac02ff..00000000 --- a/tests/mini/enum1.d +++ /dev/null @@ -1,12 +0,0 @@ -module enum1; - -void main() -{ - enum { - HELLO, - WORLD - } - - assert(HELLO == 0); - assert(WORLD == 1); -} diff --git a/tests/mini/enum2.d b/tests/mini/enum2.d deleted file mode 100644 index e48964c1..00000000 --- a/tests/mini/enum2.d +++ /dev/null @@ -1,10 +0,0 @@ -module enum2; - -void main() -{ - enum E { - A,B - } - E e = E.B; - assert(e == E.B); -} diff --git a/tests/mini/enum3.d b/tests/mini/enum3.d deleted file mode 100644 index 38b4c377..00000000 --- a/tests/mini/enum3.d +++ /dev/null @@ -1,15 +0,0 @@ -module enum3; - -enum GE : ushort -{ - A,B,C -} - -void main() -{ - GE e = GE.B; - size_t s = GE.sizeof; - assert(e == 1); - assert(e.sizeof == s); - assert(s == 2); -} diff --git a/tests/mini/f.d b/tests/mini/f.d deleted file mode 100644 index 13aeee4d..00000000 --- a/tests/mini/f.d +++ /dev/null @@ -1,11 +0,0 @@ -module f; - -struct S -{ - long l; -} - -void main() -{ - S s; -} diff --git a/tests/mini/fiber.d b/tests/mini/fiber.d deleted file mode 100644 index bc9d7dc8..00000000 --- a/tests/mini/fiber.d +++ /dev/null @@ -1,20 +0,0 @@ -private import tango.core.Thread; - -extern(C) void printf(char*, ...); - -void foo() -{ - printf("-- I am here\n"); - Fiber.yield(); - printf("-- Now I am here\n"); -} - -void main() -{ - Fiber f = new Fiber(&foo); - - printf("Running f once\n"); - f.call(); - printf("Running f again\n"); - f.call(); -} diff --git a/tests/mini/floatcmp.d b/tests/mini/floatcmp.d deleted file mode 100644 index 306bdb35..00000000 --- a/tests/mini/floatcmp.d +++ /dev/null @@ -1,161 +0,0 @@ -module floatcmp; -extern(C) int printf(char*, ...); - -void eq() -{ - float _3 = 3; - assert(!(_3 == 4)); - assert(!(_3 == 2)); - assert(_3 == 3); - assert(!(_3 == float.nan)); -} - -void neq() -{ - float _3 = 3; - assert(_3 != 4); - assert(_3 != 2); - assert(!(_3 != 3)); - assert(_3 != float.nan); -} - -void gt() -{ - float _3 = 3; - assert(_3 > 2); - assert(!(_3 > 4)); - assert(!(_3 > 3)); - assert(!(_3 > float.nan)); -} - -void ge() -{ - float _3 = 3; - assert(_3 >= 2); - assert(!(_3 >= 4)); - assert(_3 >= 3); - assert(!(_3 >= float.nan)); -} - -void lt() -{ - float _3 = 3; - assert(_3 < 4); - assert(!(_3 < 2)); - assert(!(_3 < 3)); - assert(!(_3 < float.nan)); -} - -void le() -{ - float _3 = 3; - assert(_3 <= 4); - assert(!(_3 <= 2)); - assert(_3 <= 3); - assert(!(_3 <= float.nan)); -} - -void uno() -{ - float _3 = 3; - assert(!(_3 !<>= 2)); - assert(!(_3 !<>= 3)); - assert(!(_3 !<>= 4)); - assert(_3 !<>= float.nan); -} - -void lg() -{ - float _3 = 3; - assert(_3 <> 4); - assert(_3 <> 2); - assert(!(_3 <> 3)); - assert(!(_3 <> float.nan)); -} - -void lge() -{ - float _3 = 3; - assert(_3 <>= 4); - assert(_3 <>= 2); - assert(_3 <>= 3); - assert(!(_3 <>= float.nan)); -} - -void ugt() -{ - float _3 = 3; - assert(_3 !<= 2); - assert(!(_3 !<= 4)); - assert(!(_3 !<= 3)); - assert(_3 !<= float.nan); -} - -void uge() -{ - float _3 = 3; - assert(_3 !< 2); - assert(!(_3 !< 4)); - assert(_3 !< 3); - assert(_3 !< float.nan); -} - -void ult() -{ - float _3 = 3; - assert(_3 !>= 4); - assert(!(_3 !>= 2)); - assert(!(_3 !>= 3)); - assert(_3 !>= float.nan); -} - -void ule() -{ - float _3 = 3; - assert(_3 !> 4); - assert(!(_3 !> 2)); - assert(_3 !> 3); - assert(_3 !> float.nan); -} - -void ueq() -{ - float _3 = 3; - assert(!(_3 !<> 2)); - assert(!(_3 !<> 4)); - assert(_3 !<> 3); - assert(_3 !<> float.nan); -} - -void main() -{ - printf("floating point comparison test\n"); - - eq(); - neq(); - gt(); - ge(); - lt(); - le(); - uno(); - lg(); - lge(); - ugt(); - uge(); - ult(); - ule(); - ueq(); - - printf(" SUCCESS\n"); -} - -/+ -void gt() -{ - float _3 = 3; - assert(); - assert(); - assert(); - assert(); -} -+/ diff --git a/tests/mini/foreach1.d b/tests/mini/foreach1.d deleted file mode 100644 index 7349c907..00000000 --- a/tests/mini/foreach1.d +++ /dev/null @@ -1,17 +0,0 @@ -module foreach1; -extern(C) int printf(char*, ...); - -void main() -{ - static arr = [1,2,3,4,5]; - - printf("forward"); - foreach(v;arr) { - printf(" %d",v); - } - printf("\nreverse"); - foreach_reverse(v;arr) { - printf(" %d",v); - } - printf("\n"); -} diff --git a/tests/mini/foreach10.d b/tests/mini/foreach10.d deleted file mode 100644 index 1551847a..00000000 --- a/tests/mini/foreach10.d +++ /dev/null @@ -1,19 +0,0 @@ -module foreach10; - -extern(C) int printf(char*, ...); - -void main() { - char* last = null; - printf("The addresses should increment:\n"); - foreach (ref c; "bar") { - auto a = { - printf("%x '%c'\n", c, c); - return &c; - }; - auto nw = a(); - printf("ptr = %p\n", nw); - if (last != null) - assert(nw == last+1); - last = nw; - } -} diff --git a/tests/mini/foreach11.d b/tests/mini/foreach11.d deleted file mode 100644 index 95eec7da..00000000 --- a/tests/mini/foreach11.d +++ /dev/null @@ -1,18 +0,0 @@ -module foreach11; - -extern(C) int printf(char*, ...); - -void main() { - char* last = null; - printf("The addresses should remain constant:\n"); - foreach (c; "bar") { - auto a = { - printf("%x '%c'\n", c, c); - printf("ptr = %p\n", &c); - if (last) - assert(last == &c); - }; - a(); - last = &c; - } -} diff --git a/tests/mini/foreach2.d b/tests/mini/foreach2.d deleted file mode 100644 index ee008e9c..00000000 --- a/tests/mini/foreach2.d +++ /dev/null @@ -1,15 +0,0 @@ -module foreach2; -extern(C) int printf(char*, ...); -void main() -{ - static arr = [1.0, 2.0, 4.0, 8.0, 16.0]; - foreach(i,v; arr) - { - printf("arr[%d] = %f\n", i, v); - } - printf("-------------------------------\n"); - foreach_reverse(i,v; arr) - { - printf("arr[%d] = %f\n", i, v); - } -} diff --git a/tests/mini/foreach3.d b/tests/mini/foreach3.d deleted file mode 100644 index 8f2fd1f8..00000000 --- a/tests/mini/foreach3.d +++ /dev/null @@ -1,19 +0,0 @@ -module foreach3; -extern(C) int printf(char*, ...); -void main() -{ - static str = ['h','e','l','l','o']; - foreach(i,v; str) { - printf("%c",v); - } - printf("\n"); - - foreach(i,v; str) { - v++; - } - - foreach(i,v; str) { - printf("%c",v); - } - printf("\n"); -} diff --git a/tests/mini/foreach4.d b/tests/mini/foreach4.d deleted file mode 100644 index d5f6105f..00000000 --- a/tests/mini/foreach4.d +++ /dev/null @@ -1,9 +0,0 @@ -module foreach4; -extern(C) int printf(char*, ...); -void main() -{ - int[] arr = new int[4]; - foreach(i,v;arr) { - printf("arr[%u] = %d\n",i,v); - } -} diff --git a/tests/mini/foreach5.d b/tests/mini/foreach5.d deleted file mode 100644 index fb4ddf75..00000000 --- a/tests/mini/foreach5.d +++ /dev/null @@ -1,24 +0,0 @@ -module foreach5; -extern(C) int printf(char*, ...); -void main() -{ - int[3] arr = [1,2,3]; - - foreach(v;arr) { - v++; - } - - printf("%d\n", arr[0]); - assert(arr[0] == 1); - assert(arr[1] == 2); - assert(arr[2] == 3); - - foreach(ref v;arr) { - v++; - } - - printf("%d\n", arr[0]); - assert(arr[0] == 2); - assert(arr[1] == 3); - assert(arr[2] == 4); -} diff --git a/tests/mini/foreach6.d b/tests/mini/foreach6.d deleted file mode 100644 index 1884ea23..00000000 --- a/tests/mini/foreach6.d +++ /dev/null @@ -1,15 +0,0 @@ -module mini.foreach6; - -struct S -{ - long l; - float f; -} - -void main() -{ - S[4] arr = void; - foreach(i,v;arr) { - v = S(i, i*2.5); - } -} diff --git a/tests/mini/foreach7.d b/tests/mini/foreach7.d deleted file mode 100644 index fb9517ba..00000000 --- a/tests/mini/foreach7.d +++ /dev/null @@ -1,12 +0,0 @@ -module foreach7; - -void main() -{ - int[4] a = [1,2,3,4]; - int i; - foreach(v; a[0..3]) - { - i += v; - } - assert(i == 6); -} diff --git a/tests/mini/foreach8.d b/tests/mini/foreach8.d deleted file mode 100644 index e3d12855..00000000 --- a/tests/mini/foreach8.d +++ /dev/null @@ -1,19 +0,0 @@ -module mini.foreach8; - -extern(C) int printf(char*, ...); - -int main(){ - dchar[] array="\u2260"; - printf("array[0] == %u\n", array[0]); - int test=0; - int count=0; - assert(count==0); - foreach(int index, char obj; array){ - printf("%d\n", obj); - test+=obj; - count++; - } - assert(count==3); - assert(test==0x20b); - return 0; -} diff --git a/tests/mini/foreach9.d b/tests/mini/foreach9.d deleted file mode 100644 index c9c63607..00000000 --- a/tests/mini/foreach9.d +++ /dev/null @@ -1,24 +0,0 @@ -module mini.foreach9; -extern(C) int printf(char* str, ...); - -struct array2d(T) { - int test() { - printf("%p\n", cast(void*) this); - foreach (x; *this) { - printf("%p\n", cast(void*) this); - } - return true; - } - int opApply(int delegate(ref int) dg) { - int x; - return dg(x), 0; - } -} - -unittest { - array2d!(int) test; - test.test(); - //int i = 0; i /= i; -} - -void main() { } diff --git a/tests/mini/forwdecl.d b/tests/mini/forwdecl.d deleted file mode 100644 index 562b7da4..00000000 --- a/tests/mini/forwdecl.d +++ /dev/null @@ -1,11 +0,0 @@ -struct S -{ - S* s; - S** ss; - S*[4] s4; -} - -void main() -{ - S s; -} diff --git a/tests/mini/forwdecl1.d b/tests/mini/forwdecl1.d deleted file mode 100644 index c8674067..00000000 --- a/tests/mini/forwdecl1.d +++ /dev/null @@ -1,12 +0,0 @@ -struct Foo; - -Foo* foo() -{ - return null; -} - -void main() -{ - Foo* f = foo(); - assert(f is null); -} diff --git a/tests/mini/funcptr.d b/tests/mini/funcptr.d deleted file mode 100644 index 7006ded0..00000000 --- a/tests/mini/funcptr.d +++ /dev/null @@ -1,68 +0,0 @@ -extern(C) int printf(char*, ...); - -int return_six() -{ - return 6; -} - -int add_int(int a, int b) -{ - return a+b; -} - -int sub_int(int a, int b) -{ - return a-b; -} - -alias int function(int,int) binfn_t; - -int binop_int(binfn_t op, int a, int b) -{ - return op(a,b); -} - -binfn_t get_binop_int(char op) -{ - binfn_t fn; - if (op == '+') - fn = &add_int; - else if (op == '-') - fn = &sub_int; - return fn; -} - -extern(C) float mul_float(float a, float b) -{ - return a * b; -} - -void function_pointers() -{ - int function() fn = &return_six; - assert(fn() == 6); - - binfn_t binfn = &add_int; - assert(binfn(4,1045) == 1049); - - assert(binop_int(binfn, 10,656) == 666); - - binfn = get_binop_int('+'); - assert(binop_int(binfn, 10,100) == 110); - binfn = get_binop_int('-'); - assert(binop_int(binfn, 10,100) == -90); - - { - auto ffn = &mul_float; - float ftmp = mul_float(2.5,5); - assert(ftmp == 12.5); - assert(ftmp > 12.49 && ftmp < 12.51); - } -} - -void main() -{ - printf("Function pointer test\n"); - function_pointers(); - printf(" SUCCESS\n"); -} diff --git a/tests/mini/funcs.d b/tests/mini/funcs.d deleted file mode 100644 index faf000c9..00000000 --- a/tests/mini/funcs.d +++ /dev/null @@ -1,50 +0,0 @@ -extern(C) int printf(char*, ...); - -void main() -{ - printf("Testing functions\n"); - int i = 5; - assert(a(i) == 110); - assert(i == 11); - - S s; - s.i = 5; - d(s); - assert(s.i == 5); - e(s); - assert(s.i == 6); - - printf(" SUCCESS\n"); -} - -int a(ref int i) -{ - i*=2; - return b(i); -} - -int b(ref int i) -{ - i++; - return c(i); -} - -int c(int i) -{ - return i*10; -} - -struct S -{ - int i; -} - -void d(S s) -{ - s.i++; -} - -void e(ref S s) -{ - s.i++; -} diff --git a/tests/mini/funcs2.d b/tests/mini/funcs2.d deleted file mode 100644 index 5dcce3b7..00000000 --- a/tests/mini/funcs2.d +++ /dev/null @@ -1,9 +0,0 @@ -module funcs2; - -void func() -{ -} - -void main() -{ -} diff --git a/tests/mini/g.d b/tests/mini/g.d deleted file mode 100644 index 47932a90..00000000 --- a/tests/mini/g.d +++ /dev/null @@ -1,15 +0,0 @@ -module g; - -extern(C) int printf(char*, ...); - -void func(char[] str) -{ - printf("%.*s\n", str.length, str.ptr); -} - -void main() -{ - char[] arr = "Hello World!"; - func(arr); - func("ditto"); -} diff --git a/tests/mini/gc1.d b/tests/mini/gc1.d deleted file mode 100644 index c79613b9..00000000 --- a/tests/mini/gc1.d +++ /dev/null @@ -1,15 +0,0 @@ -module tangotests.gc1; - -void main() -{ - int[] arr; - - for (int i=0; i<100; ++i) - { - arr ~= new int[1000]; - } - - printf("arr.length = %u\n", arr.length); -} - -extern(C) int printf(char*, ...); \ No newline at end of file diff --git a/tests/mini/gc_datasegment.d b/tests/mini/gc_datasegment.d deleted file mode 100644 index f804c37c..00000000 --- a/tests/mini/gc_datasegment.d +++ /dev/null @@ -1,15 +0,0 @@ -extern(C) void gc_collect(); - -class C -{ - int i = 42; -} - -C data; - -void main() -{ - data = new C; - gc_collect(); - assert(data.i == 42); -} diff --git a/tests/mini/globals1.d b/tests/mini/globals1.d deleted file mode 100644 index 35e9c7ab..00000000 --- a/tests/mini/globals1.d +++ /dev/null @@ -1,11 +0,0 @@ -module globals1; -extern(C) int printf(char*, ...); - -char[] gstr = "hello world"; - -void main() -{ - printf("%.*s\n", gstr.length, gstr.ptr); - char[] str = gstr; - printf("%.*s\n", str.length, str.ptr); -} diff --git a/tests/mini/globals2.d b/tests/mini/globals2.d deleted file mode 100644 index 5a33be71..00000000 --- a/tests/mini/globals2.d +++ /dev/null @@ -1,12 +0,0 @@ -module globals2; - -template Bool(bool b) -{ - const bool Bool = b; -} - -void main() -{ - assert(Bool!(true)); - assert(!Bool!(false)); -} diff --git a/tests/mini/goto1.d b/tests/mini/goto1.d deleted file mode 100644 index 2d66453f..00000000 --- a/tests/mini/goto1.d +++ /dev/null @@ -1,11 +0,0 @@ -module goto1; - -void main() -{ - int i; - goto lbl; - i++; -lbl: - assert(i == 0); -} - diff --git a/tests/mini/h.d b/tests/mini/h.d deleted file mode 100644 index 805f5c88..00000000 --- a/tests/mini/h.d +++ /dev/null @@ -1,27 +0,0 @@ -interface Iin -{ - void[] read(size_t n); -} - -interface Iout -{ - size_t write(void[] d); -} - -class C : Iin -{ - void[] read(size_t n) - { - return null; - } - - size_t write(void[] d) - { - return 0; - } -} - -void main() -{ - scope c = new C; -} diff --git a/tests/mini/i.d b/tests/mini/i.d deleted file mode 100644 index 06b6d117..00000000 --- a/tests/mini/i.d +++ /dev/null @@ -1,20 +0,0 @@ -interface IN -{ - void func(); -} -abstract class AC -{ - abstract void func(); - long ll; -} -class C : AC -{ - void func() - { - } -} - -void main() -{ - scope c = new C; -} diff --git a/tests/mini/imag1.d b/tests/mini/imag1.d deleted file mode 100644 index 83ef1de0..00000000 --- a/tests/mini/imag1.d +++ /dev/null @@ -1,7 +0,0 @@ -module imag1; - -void main() -{ - ifloat f = 1.0i; - auto x = 2.0i*f; -} diff --git a/tests/mini/innerclass1.d b/tests/mini/innerclass1.d deleted file mode 100644 index 0633753c..00000000 --- a/tests/mini/innerclass1.d +++ /dev/null @@ -1,30 +0,0 @@ -module innerclass1; -extern(C) int printf(char*, ...); - -class Outer -{ - int i; - class Inner - { - int func() - { - return i; - } - } -} - -void main() -{ - Outer o = new Outer; - { - o.i = 42; - { - auto i = o.new Inner; - { - int x = i.func(); - assert(x == 42); - } - } - } - printf("SUCCESS\n"); -} diff --git a/tests/mini/interface1.d b/tests/mini/interface1.d deleted file mode 100644 index ee215702..00000000 --- a/tests/mini/interface1.d +++ /dev/null @@ -1,24 +0,0 @@ -module interface1; - -extern(C) int printf(char*,...); - -interface Inter -{ - void func(); -} - -class Class : Inter -{ - override void func() - { - printf("hello world\n"); - } -} - -void main() -{ - scope c = new Class; - c.func(); - Inter i = c; - i.func(); -} diff --git a/tests/mini/interface2.d b/tests/mini/interface2.d deleted file mode 100644 index f3e7e8a8..00000000 --- a/tests/mini/interface2.d +++ /dev/null @@ -1,37 +0,0 @@ -module interface2; - -extern(C) int printf(char*,...); - -interface A -{ - void a(); -} - -interface B -{ - void b(); -} - -class C : A,B -{ - int i = 0; - override void a() - { - printf("hello from C.a\n"); - } - override void b() - { - printf("hello from C.b\n"); - } -} - -void main() -{ - scope c = new C; - {c.a(); - c.b();} - {A a = c; - a.a();} - {B b = c; - b.b();} -} diff --git a/tests/mini/interface3.d b/tests/mini/interface3.d deleted file mode 100644 index 448f46c1..00000000 --- a/tests/mini/interface3.d +++ /dev/null @@ -1,30 +0,0 @@ -module interface3; - -extern(C) int printf(char*,...); - -interface I -{ - void func(); -} - -class C : I -{ - int i = 42; - override void func() - { - printf("hello %d from %p\n", i, this); - i++; - } -} - -void main() -{ - auto c = new C; - {c.func();} - { - I i = c; - {i.func();} - } - {printf("final %d\n", c.i);} - {assert(c.i == 44);} -} diff --git a/tests/mini/interface4.d b/tests/mini/interface4.d deleted file mode 100644 index 141a0edf..00000000 --- a/tests/mini/interface4.d +++ /dev/null @@ -1,35 +0,0 @@ -module interface4; - -extern(C) int printf(char*,...); - -interface I -{ - void func(); -} - -interface I2 -{ - void func(); -} - -class C : I,I2 -{ - int i = 42; - override void func() - { - printf("hello %d\n", i); - i++; - } -} - -void main() -{ - scope c = new C; - c.func(); - I i = c; - i.func(); - I2 i2 = c; - i2.func(); - printf("final %d\n", c.i); - assert(c.i == 45); -} diff --git a/tests/mini/interface5.d b/tests/mini/interface5.d deleted file mode 100644 index f51e0ea0..00000000 --- a/tests/mini/interface5.d +++ /dev/null @@ -1,34 +0,0 @@ -module interface5; - -extern(C) int printf(char*,...); - -interface I -{ - void func(); -} - -class C : I -{ - int i; - void func() - { - printf("C\n"); - i++; - } -} - -void main() -{ - C c = new C; - c.func(); - { - I i = c; - i.func(); - - C c2 = cast(C)i; - c2.func(); - - c.func(); - assert(c.i == 4); - } -} diff --git a/tests/mini/interface6.d b/tests/mini/interface6.d deleted file mode 100644 index 9d6f036e..00000000 --- a/tests/mini/interface6.d +++ /dev/null @@ -1,46 +0,0 @@ -module interface6; - -extern(C) int printf(char*,...); - -interface I -{ - void Ifunc(); -} - -interface J -{ - void Jfunc(); -} - -class C : I,J -{ - int i; - int j; - void Ifunc() - { - i++; - } - void Jfunc() - { - j++; - } -} - -void main() -{ - C c = new C; - c.Ifunc(); - c.Jfunc(); - I i = c; - i.Ifunc(); - J j = c; - j.Jfunc(); - C c2 = cast(C)i; - c2.Ifunc(); - c2.Jfunc(); - C c3 = cast(C)j; - c3.Ifunc(); - c3.Jfunc(); - assert(c.i == 4); - assert(c.j == 4); -} diff --git a/tests/mini/interface7.d b/tests/mini/interface7.d deleted file mode 100644 index d0b2c43f..00000000 --- a/tests/mini/interface7.d +++ /dev/null @@ -1,23 +0,0 @@ -module interface7; - -extern(C) int printf(char*,...); - -interface I -{ -} - -class C : I -{ -} - -void main() -{ - I i = new C; - ClassInfo ci = i.classinfo; - char[] name = ci.name; - printf("ci.name = %.*s\n", name.length, name.ptr); - ClassInfo cI = I.classinfo; - name = cI.name; - printf("cI.name = %.*s\n", name.length, name.ptr); - assert(ci is cI); -} diff --git a/tests/mini/interface8.d b/tests/mini/interface8.d deleted file mode 100644 index a896826a..00000000 --- a/tests/mini/interface8.d +++ /dev/null @@ -1,59 +0,0 @@ -interface InputStream -{ - void foo(); -} - -interface OutputStream -{ - void bar(); -} - -interface IConduit : InputStream, OutputStream -{ - abstract uint bufferSize(); -} - -class Conduit : IConduit -{ - abstract uint bufferSize(); - abstract void foo(); - abstract void bar(); -} - -interface Selectable -{ - void car(); -} - -class DeviceConduit : Conduit, Selectable -{ - override uint bufferSize () - { - return 1024 * 16; - } - override void foo() {} - override void bar() {} - override void car() {} - int handle; -} - -class ConsoleConduit : DeviceConduit -{ - override void foo() {} - bool redirected; -} - -class OtherConduit : Conduit -{ - abstract uint bufferSize(); - override void foo() {} - override void bar() {} -} - -void main() -{ - auto c = new ConsoleConduit; - IConduit ci = c; - assert(c.bufferSize == ci.bufferSize); -} - diff --git a/tests/mini/intrinsics.d b/tests/mini/intrinsics.d deleted file mode 100644 index 70bb7c1b..00000000 --- a/tests/mini/intrinsics.d +++ /dev/null @@ -1,28 +0,0 @@ -import ldc.intrinsics; - -extern(C) int printf(char*,...); -extern(C) int scanf(char*,...); - -void main() -{ - float f; - printf("Enter float: "); - //scanf("%f", &f); - f = 1.22345; - float sf = llvm_sqrt(f); - printf("sqrt(%f) = %f\n", f, sf); - - double d; - printf("Enter double: "); - //scanf("%lf", &d); - d = 2.2311167895435245; - double sd = llvm_sqrt(d); - printf("sqrt(%lf) = %lf\n", d, sd); - - real r; - printf("Enter real: "); - //scanf("%llf", &r); - r = 3.2311167891231231234754764576; - real sr = llvm_sqrt(r); - printf("sqrt(%Lf) = %Lf\n", r, sr); -} diff --git a/tests/mini/intrinsics_ovf.d b/tests/mini/intrinsics_ovf.d deleted file mode 100644 index 34f6836b..00000000 --- a/tests/mini/intrinsics_ovf.d +++ /dev/null @@ -1,77 +0,0 @@ -module intrinsics_ovf; - - -//version = PRINTF; - -version(PRINTF) - extern(C) int printf(char*, ...); - - -import ldc.intrinsics; - - -int saddo(int a, int b, out bool overflow) { - auto Result = llvm_sadd_with_overflow(a, b); - overflow = Result.overflow; - return Result.result; -} - -int uaddo(int a, int b, out bool overflow) { - auto Result = llvm_uadd_with_overflow(a, b); - overflow = Result.overflow; - return Result.result; -} - -int smulo(int a, int b, out bool overflow) { - auto Result = llvm_smul_with_overflow(a, b); - overflow = Result.overflow; - return Result.result; -} - -/* -uint umulo(uint a, uint b, out bool overflow) { - auto Result = llvm_umul_with_overflow(a, b); - overflow = Result.overflow; - return Result.result; -} -*/ - -void test(int function(int, int, out bool) fn, - int a, int b, int result_e, bool ovf_e) { - version(PRINTF) - printf("%8x :: %8x :: %8x :: %.*s\n", a, b, result_e, - (ovf_e ? "true" : "false")); - - bool ovf; - int result = fn(a, b, ovf); - - version(PRINTF) - printf("____________________ %8x :: %.*s\n", result, - (ovf ? "true" : "false")); - - assert(ovf == ovf_e); - assert(result == result_e); -} - -void main() { - test(&saddo, int.min, int.min, int.min + int.min, true); - test(&saddo, int.min, int.max, int.min + int.max, false); - test(&saddo, 1, int.max, 1 + int.max, true); - test(&saddo, 1, 2, 3, false); - test(&saddo, -1, -2, -3, false); - - test(&uaddo, 0, uint.max, 0 + uint.max, false); - test(&uaddo, 1, uint.max, 1 + uint.max, true); - test(&uaddo, 1, 2, 3, false); - - test(&smulo, int.min, int.min, int.min * int.min, true); - test(&smulo, int.min, int.max, int.min * int.max, true); - test(&smulo, int.max, int.max, int.max * int.max, true); - test(&smulo, 1, int.max, 1 * int.max, false); - test(&smulo, 2, int.max/2, 2 * (int.max/2), false); - test(&smulo, 2, int.max/2 + 1, 2 * (int.max/2 + 1), true); - test(&smulo, 2, int.min/2, 2 * (int.min/2), false); - test(&smulo, 2, int.min/2 - 1, 2 * (int.min/2 - 1), true); - test(&smulo, 1, 2, 2, false); - test(&smulo, -1, -2, 2, false); -} diff --git a/tests/mini/j.d b/tests/mini/j.d deleted file mode 100644 index 60990880..00000000 --- a/tests/mini/j.d +++ /dev/null @@ -1,44 +0,0 @@ -module j; - -interface Inter1 -{ - int func1(); -} - -interface Inter2 -{ - int func2(); -} - -class C12 : Inter1, Inter2 -{ - int func1() - { - return 1; - } - int func2() - { - return 2; - } -} - -void func(Object c) -{ - auto i1 = cast(Inter1)c; - assert(i1.func1() == 1); - auto i2 = cast(Inter2)c; - assert(i2.func2() == 2); - auto j1 = cast(Inter1)i2; - assert(j1.func1() == 1); - auto j2 = cast(Inter2)i1; - assert(j2.func2() == 2); -} - -void main() -{ - scope c = new C12; - func(c); - printf("OK\n"); -} - -extern(C) int printf(char*,...); diff --git a/tests/mini/k.d b/tests/mini/k.d deleted file mode 100644 index 133d10ab..00000000 --- a/tests/mini/k.d +++ /dev/null @@ -1,31 +0,0 @@ -interface Inter -{ - int func(); -} - -extern(C) int printf(char*, ...); - -class InterClass : Inter -{ - int func() - { - return printf("InterClass.func()\n"); - } -} - -alias int delegate() dg_t; - -void main() -{ - scope c = new InterClass; - - { - Inter i = cast(Inter)c; - { - dg_t dg = &i.func; - { - int j = dg(); - } - } - } -} diff --git a/tests/mini/lazy1.d b/tests/mini/lazy1.d deleted file mode 100644 index aed64581..00000000 --- a/tests/mini/lazy1.d +++ /dev/null @@ -1,13 +0,0 @@ -module tangotests.lazy1; - -extern(C) int printf(char*, ...); - -void main() -{ - lazystr("whee\n"); -} - -void lazystr(lazy char[] msg) -{ - printf("%.*s", msg.length, msg.ptr); -} diff --git a/tests/mini/lazy2.d b/tests/mini/lazy2.d deleted file mode 100644 index c2e46552..00000000 --- a/tests/mini/lazy2.d +++ /dev/null @@ -1,18 +0,0 @@ -module tangotests.lazy2; - -extern(C) int printf(char*, ...); - -void main() -{ - lazy1("hello\n"); -} - -void lazy1(lazy char[] str) -{ - lazy2(str); -} - -void lazy2(lazy char[] msg) -{ - printf("%.*s", msg.length, msg.ptr); -} diff --git a/tests/mini/loops1.d b/tests/mini/loops1.d deleted file mode 100644 index b7952746..00000000 --- a/tests/mini/loops1.d +++ /dev/null @@ -1,12 +0,0 @@ -module tangotests.loops1; - -void main() -{ - size_t n; - int x; - ushort foo; - for (n=0; n<8; n++,x++) - { - foo >>= 1; - } -} diff --git a/tests/mini/m.d b/tests/mini/m.d deleted file mode 100644 index c1480207..00000000 --- a/tests/mini/m.d +++ /dev/null @@ -1,18 +0,0 @@ -void main() -{ - int* e = __errno_location(); - printf("&errno = %p\n", e); - printf("errno = %d\n", *e); -} - -extern(C): -version(darwin) { - int* __error(); - alias __error __errno_location; -} else version (Windows) { - int* strerror(); - alias strerror __errno_location; -} else { - int* __errno_location(); -} -int printf(char*,...); diff --git a/tests/mini/mainargs1.d b/tests/mini/mainargs1.d deleted file mode 100644 index 5f9f56db..00000000 --- a/tests/mini/mainargs1.d +++ /dev/null @@ -1,11 +0,0 @@ -module mainargs1; - -extern(C) int printf(char*,...); - -void main(char[][] args) -{ - foreach(v; args) - { - printf("%.*s\n", v.length, v.ptr); - } -} diff --git a/tests/mini/mainvoidreturn.d b/tests/mini/mainvoidreturn.d deleted file mode 100644 index f7edf437..00000000 --- a/tests/mini/mainvoidreturn.d +++ /dev/null @@ -1,7 +0,0 @@ -void foo() -{} - -void main() -{ - return foo(); -} diff --git a/tests/mini/marray1.d b/tests/mini/marray1.d deleted file mode 100644 index 7e451d74..00000000 --- a/tests/mini/marray1.d +++ /dev/null @@ -1,19 +0,0 @@ -module tangotest.marray1; - -void main() -{ - int[][] arr; - int[] a = [1,2]; - int[] b = [6,7,8,9]; - arr ~= a; - arr ~= b; - assert(a.length == 2); - assert(b.length == 4); - assert(arr.length == 2); - assert(arr[0][0] == 1); - assert(arr[0][1] == 2); - assert(arr[1][0] == 6); - assert(arr[1][1] == 7); - assert(arr[1][2] == 8); - assert(arr[1][3] == 9); -} diff --git a/tests/mini/marray2.d b/tests/mini/marray2.d deleted file mode 100644 index 9ce8ce91..00000000 --- a/tests/mini/marray2.d +++ /dev/null @@ -1,15 +0,0 @@ -module tangotests.marray2; - -void main() -{ - int[][] ma = new int[][](2,4); - assert(ma.length == 2); - assert(ma[0].length == 4); - assert(ma[1].length == 4); - ma[0][3] = 32; - ma[1][2] = 123; - ma[0][0] = 55; - assert(ma[0][3] == 32); - assert(ma[1][2] == 123); - assert(ma[0][0] == 55); -} diff --git a/tests/mini/marray3.d b/tests/mini/marray3.d deleted file mode 100644 index a4c83bf1..00000000 --- a/tests/mini/marray3.d +++ /dev/null @@ -1,23 +0,0 @@ -module tangotests.marray3; - -void main() -{ - int[][][] ma = new int[][][](2,4,3); - assert(ma.length == 2); - assert(ma[0].length == 4); - assert(ma[0][0].length == 3); - assert(ma[0][1].length == 3); - assert(ma[0][2].length == 3); - assert(ma[0][3].length == 3); - assert(ma[1].length == 4); - assert(ma[1][0].length == 3); - assert(ma[1][1].length == 3); - assert(ma[1][2].length == 3); - assert(ma[1][3].length == 3); - ma[0][3][0] = 32; - ma[1][2][1] = 123; - ma[0][0][2] = 55; - assert(ma[0][3][0] == 32); - assert(ma[1][2][1] == 123); - assert(ma[0][0][2] == 55); -} diff --git a/tests/mini/mem2.d b/tests/mini/mem2.d deleted file mode 100644 index b7381a10..00000000 --- a/tests/mini/mem2.d +++ /dev/null @@ -1,11 +0,0 @@ -module tangotests.mem2; - -void main() -{ - int* ip = new int; - assert(*ip == 0); - *ip = 4; - assert(*ip == 4); - delete ip; - assert(ip is null); -} diff --git a/tests/mini/mem3.d b/tests/mini/mem3.d deleted file mode 100644 index 2fabd9ba..00000000 --- a/tests/mini/mem3.d +++ /dev/null @@ -1,12 +0,0 @@ -module tangotests.mem3; - -void main() -{ - int[] arr; - arr ~= [1,2,3]; - assert(arr[0] == 1); - assert(arr[1] == 2); - assert(arr[2] == 3); - delete arr; - assert(arr is null); -} diff --git a/tests/mini/mem5.d b/tests/mini/mem5.d deleted file mode 100644 index 758dd3f8..00000000 --- a/tests/mini/mem5.d +++ /dev/null @@ -1,24 +0,0 @@ -module tangotests.mem5; - -class SC -{ - int* ip; - this() - { - ip = new int; - } - ~this() - { - delete ip; - } - void check() - { - assert(ip !is null); - } -} - -void main() -{ - scope sc = new SC; - sc.check(); -} diff --git a/tests/mini/mem6.d b/tests/mini/mem6.d deleted file mode 100644 index e91bae93..00000000 --- a/tests/mini/mem6.d +++ /dev/null @@ -1,17 +0,0 @@ -module tangotests.mem6; - -extern(C) int printf(char*,...); - -int main(){ - int[] index; - char[] value; - - foreach(int i, char c; "_\U00012345-"){ - printf("str[%d] = %d\n", i , cast(int)c); - index ~= i; - //value ~= c; - } - printf("done\n"); - - return 0; -} diff --git a/tests/mini/memory1.d b/tests/mini/memory1.d deleted file mode 100644 index 691a64b9..00000000 --- a/tests/mini/memory1.d +++ /dev/null @@ -1,12 +0,0 @@ -module memory1; - -extern(C) int printf(char*,...); - -void main() -{ - auto a = new int[16]; - {printf("array.length = %u\n", a.length);} - {a.length = a.length + 1;} - {printf("array.length = %u\n", a.length);} - {assert(a.length == 17);} -} diff --git a/tests/mini/missingti.d b/tests/mini/missingti.d deleted file mode 100644 index 10c29613..00000000 --- a/tests/mini/missingti.d +++ /dev/null @@ -1,9 +0,0 @@ -class MyClass -{ -} - -void main() -{ - MyClass[] l; - l.sort; -} diff --git a/tests/mini/moduleinfo1.d b/tests/mini/moduleinfo1.d deleted file mode 100644 index f807f133..00000000 --- a/tests/mini/moduleinfo1.d +++ /dev/null @@ -1,33 +0,0 @@ -module moduleinfo1; - -static this() -{ -} - -static this() -{ -} - -static ~this() -{ -} - -static ~this() -{ -} - -unittest -{ -} - -class C -{ -} - -class D : C -{ -} - -void main() -{ -} diff --git a/tests/mini/moduleinfo2.d b/tests/mini/moduleinfo2.d deleted file mode 100644 index a1666dc3..00000000 --- a/tests/mini/moduleinfo2.d +++ /dev/null @@ -1,12 +0,0 @@ -module moduleinfo2; - -extern(C) int printf(char*, ...); - -void main() -{ - printf("listing modules:\n"); - foreach(m; ModuleInfo) - { - printf(" %.*s\n", m.name.length, m.name.ptr); - } -} diff --git a/tests/mini/multiarr1.d b/tests/mini/multiarr1.d deleted file mode 100644 index 9258ef19..00000000 --- a/tests/mini/multiarr1.d +++ /dev/null @@ -1,21 +0,0 @@ -module multiarr1; - -void main() -{ - int[16][16] a; - assert(a[0][0] == 0); - assert(a[0][1] == 0); - assert(a[0][2] == 0); - assert(a[0][3] == 0); - assert(a[10][13] == 0); - assert(a[15][15] == 0); - a[10][13] = 42; - assert(a[0][0] == 0); - assert(a[10][13] == 42); - assert(a[15][15] == 0); - { - int* l = cast(int*)a; - l += 10*16+13; - assert(*l == 42); - } -} diff --git a/tests/mini/multiarr2.d b/tests/mini/multiarr2.d deleted file mode 100644 index d2919f14..00000000 --- a/tests/mini/multiarr2.d +++ /dev/null @@ -1,7 +0,0 @@ -module multiarr2; - -void main() -{ - static float[1][2][3] arr; - assert(arr[2][1][0] !<>= float.nan); -} diff --git a/tests/mini/multiarr3.d b/tests/mini/multiarr3.d deleted file mode 100644 index 8fb240f7..00000000 --- a/tests/mini/multiarr3.d +++ /dev/null @@ -1,10 +0,0 @@ -module multiarr3; - -void main() -{ - static int[2][2] arr = [[1,2],[3,4]]; - assert(arr[0][0] == 1); - assert(arr[0][1] == 2); - assert(arr[1][0] == 3); - assert(arr[1][1] == 4); -} diff --git a/tests/mini/multiarr4.d b/tests/mini/multiarr4.d deleted file mode 100644 index e6e39094..00000000 --- a/tests/mini/multiarr4.d +++ /dev/null @@ -1,14 +0,0 @@ -module multiarr4; -extern(C) int printf(char*, ...); - -void main() -{ - char[][] a; - a.length = 2; - a[0] = "hello"; - a[1] = "world"; - foreach(v;a) - { - printf("%.*s\n", v.length, v.ptr); - } -} diff --git a/tests/mini/mutablearrayinit.d b/tests/mini/mutablearrayinit.d deleted file mode 100644 index 95b00cd3..00000000 --- a/tests/mini/mutablearrayinit.d +++ /dev/null @@ -1,9 +0,0 @@ -void main() -{ - static int[] b = [1, 2]; - b[0] = 2; - - typedef int[] ia = [1,2]; - static ia a; - a[0] = 5; -} \ No newline at end of file diff --git a/tests/mini/n.d b/tests/mini/n.d deleted file mode 100644 index 4706bd40..00000000 --- a/tests/mini/n.d +++ /dev/null @@ -1,18 +0,0 @@ -struct Structure -{ - static void static_method() - { - } - - void method() - { - } -} - -void main() -{ - //Structure.static_method(); - - Structure s; - s.method(); -} diff --git a/tests/mini/naked_asm1.d b/tests/mini/naked_asm1.d deleted file mode 100644 index c651d0e6..00000000 --- a/tests/mini/naked_asm1.d +++ /dev/null @@ -1,30 +0,0 @@ -extern(C) int printf(char*, ...); - -void main() -{ - int i = func(); - printf("%d\n", i); - assert(i == 42); -} - -int func() -{ - version (D_InlineAsm_X86) - { - asm - { - naked; - mov EAX, 42; - ret; - } - } - else version(D_InlineAsm_X86_64) - { - asm - { - naked; - movq RAX, 42; - ret; - } - } -} diff --git a/tests/mini/naked_asm2.d b/tests/mini/naked_asm2.d deleted file mode 100644 index e2e95138..00000000 --- a/tests/mini/naked_asm2.d +++ /dev/null @@ -1,30 +0,0 @@ -int foo() -{ - static size_t fourty2 = 42; - version(X86) - asm - { - naked; - mov EAX, fourty2; - ret; - } - else version (X86_64) - { - asm - { - naked; - movq RAX,fourty2; - ret; - } - } - else static assert(0, "todo"); -} - -void main() -{ - int i = foo(); - printf("i == %d\n", i); - assert(i == 42); -} - -extern(C) int printf(char*, ...); diff --git a/tests/mini/naked_asm3.d b/tests/mini/naked_asm3.d deleted file mode 100644 index adaf0e14..00000000 --- a/tests/mini/naked_asm3.d +++ /dev/null @@ -1,28 +0,0 @@ -int foo() -{ - enum { fourty2 = 42 } - version(X86) - asm - { - naked; - mov EAX, fourty2; - ret; - } - else version(X86_64) - asm - { - naked; - mov EAX, fourty2; - ret; - } - else static assert(0, "todo"); -} - -void main() -{ - int i = foo(); - printf("i == %d\n", i); - assert(i == 42); -} - -extern(C) int printf(char*, ...); diff --git a/tests/mini/naked_asm4.d b/tests/mini/naked_asm4.d deleted file mode 100644 index 116a92c9..00000000 --- a/tests/mini/naked_asm4.d +++ /dev/null @@ -1,25 +0,0 @@ -void foo() -{ - version(X86) - asm - { - naked; - jmp pass; - hlt; -pass: ret; - } - else version(X86_64) - asm - { - naked; - jmp pass; - hlt; -pass: ret; - } - else static assert(0, "todo"); -} - -void main() -{ - foo(); -} diff --git a/tests/mini/naked_asm5.d b/tests/mini/naked_asm5.d deleted file mode 100644 index c133fe24..00000000 --- a/tests/mini/naked_asm5.d +++ /dev/null @@ -1,34 +0,0 @@ -int foo(int op)(int a, int b) -{ - version(X86) - { - const OP = (op == '+') ? "add" : "sub"; - version (Windows) - { - asm { naked; } - mixin("asm{push EBP;mov EBP,ESP;sub ESP,8;mov ECX,[EBP+8];"~OP~" EAX, ECX;add ESP,8;pop EBP;}"); - asm { ret; } - } else - { - asm { naked; } - mixin("asm{"~OP~" EAX, [ESP+4];}"); - asm { ret 4; } - } - } - else version(X86_64) - { - const OP = (op == '+') ? "add" : "sub"; - asm { naked; } - mixin("asm{"~OP~" ESI,EDI; mov EAX, ESI;}"); - asm { ret; } - } - else static assert(0, "todo"); -} - -void main() -{ - int i = foo!('+')(2, 4); - assert(i == 6); - i = foo!('-')(2, 4); - assert(i == 2); -} diff --git a/tests/mini/naked_asm6.d b/tests/mini/naked_asm6.d deleted file mode 100644 index fa86742d..00000000 --- a/tests/mini/naked_asm6.d +++ /dev/null @@ -1,20 +0,0 @@ -extern(C) int printf(char*, ...); - -ulong retval() { - version (X86) - asm { naked; mov EAX, 0xff; mov EDX, 0xaa; ret; } - else version (X86_64) - asm { naked; mov RAX, 0xaa000000ff; ret; } -} - -ulong retval2() { - return (cast(ulong)0xaa << 32) | 0xff; -} - -void main() { - auto a = retval(); - auto b = retval2(); - printf("%llu\n%llu\n", retval(), retval2()); - assert(a == 0xaa000000ff); - assert(a == b); -} diff --git a/tests/mini/neg.d b/tests/mini/neg.d deleted file mode 100644 index 6514265b..00000000 --- a/tests/mini/neg.d +++ /dev/null @@ -1,13 +0,0 @@ -module neg; - -void main() -{ - int i = 32; - long l = 55; - float f = 23; - double d = 4; - assert(-i == -32); - assert(-l == -55); - assert(-f == -23); - assert(-d == -4); -} diff --git a/tests/mini/nested1.d b/tests/mini/nested1.d deleted file mode 100644 index a08a9a53..00000000 --- a/tests/mini/nested1.d +++ /dev/null @@ -1,13 +0,0 @@ -module nested1; - -void func(int i) -{ - (){ - assert(i == 3); - }(); -} - -void main() -{ - func(3); -} diff --git a/tests/mini/nested10.d b/tests/mini/nested10.d deleted file mode 100644 index 52f85a28..00000000 --- a/tests/mini/nested10.d +++ /dev/null @@ -1,22 +0,0 @@ -module nested10; - -extern(C) int printf(char*, ...); - -void main() -{ - int j = 3; - void F() - { - int i = j; - printf("F: i = %d, j = %d\n", i, j); - void G() - { - printf("G: i = %d, j = %d\n", i, j); - j += i; - } - G(); - } - F(); - printf("6 = %d\n", j); - assert(j == 6); -} diff --git a/tests/mini/nested11.d b/tests/mini/nested11.d deleted file mode 100644 index f71c2d5e..00000000 --- a/tests/mini/nested11.d +++ /dev/null @@ -1,44 +0,0 @@ -module nested11; - -extern(C) int printf(char*, ...); - -void main() -{ - int i; - - void f() - { - i++; - - void g() - { - i++; - - void h() - { - printf("i = %d\n", i); - } - - h(); - } - - g(); - } - - f(); - assert(i == 2); - - void foo() - { - i = 42; - } - - void bar() - { - foo(); - } - - bar(); - printf("i = %d\n", i); - assert(i == 42); -} diff --git a/tests/mini/nested12.d b/tests/mini/nested12.d deleted file mode 100644 index f716a57a..00000000 --- a/tests/mini/nested12.d +++ /dev/null @@ -1,23 +0,0 @@ -module nested12; - -extern(C) int printf(char*, ...); - -void main() -{ - func(); -} - -void func() -{ - void a(int i) - { - printf("%d\n", i); - } - - void b() - { - a(42); - } - - b(); -} diff --git a/tests/mini/nested13.d b/tests/mini/nested13.d deleted file mode 100644 index 06f7cc47..00000000 --- a/tests/mini/nested13.d +++ /dev/null @@ -1,32 +0,0 @@ -module mini.nested13; - -extern(C) int printf(char*, ...); - -void main() -{ - int var = 2; - - void exec(void delegate() dg) - { - printf("var = %d\n", var); - dg(); - } - - void foo() - { - printf("var = %d\n", var); - assert(var == 5); - } - - void bar() - { - printf("var = %d\n", var); - var += 3; - exec(&foo); - } - - printf("var = %d\n", var); - exec(&bar); - - return; -} diff --git a/tests/mini/nested14.d b/tests/mini/nested14.d deleted file mode 100644 index befd3e88..00000000 --- a/tests/mini/nested14.d +++ /dev/null @@ -1,27 +0,0 @@ -module mini.nested14; - -extern(C) int printf(char*, ...); - -class C -{ - void foo() - { - void bar() - { - car(); - } - - bar(); - } - - void car() - { - printf("great\n"); - } -} - -void main() -{ - scope c = new C; - c.foo(); -} diff --git a/tests/mini/nested15.d b/tests/mini/nested15.d deleted file mode 100644 index ca096b4f..00000000 --- a/tests/mini/nested15.d +++ /dev/null @@ -1,35 +0,0 @@ -// $HeadURL: svn://svn.berlios.de/dstress/trunk/run/t/this_13_A.d $ -// $Date: 2006-12-31 20:59:08 +0100 (Sun, 31 Dec 2006) $ -// $Author: thomask $ - -// @author@ Frank Benoit -// @date@ 2006-10-09 -// @uri@ http://d.puremagic.com/issues/show_bug.cgi?id=419 -// @desc@ [Issue 419] New: Anonymous classes are not working. - -// added to mini to catch regressions earlier - -module mini.nested15; - -class I { - abstract void get( char[] s ); -} - -class C{ - void init(){ - I i = new class() I { - void get( char[] s ){ - func(); - } - }; - } - void func( ){ } -} - -int main(){ - C c = new C(); - c.init(); - - return 0; -} - diff --git a/tests/mini/nested16.d b/tests/mini/nested16.d deleted file mode 100644 index bb68d98a..00000000 --- a/tests/mini/nested16.d +++ /dev/null @@ -1,31 +0,0 @@ -module mini.nested16; - -void main() -{ - int idx = 123; - int func(int* idp) - { - void foo() - { - void bar(int* idp) - { - auto c = new class - { - void mem() - { - scope(exit) ++*idp; - } - }; - auto dg = () { - c.mem(); - }; - dg(); - } - bar(idp); - ++*idp; - } - foo(); - return ++*idp; - } - assert(func(&idx) == 126); -} diff --git a/tests/mini/nested17.d b/tests/mini/nested17.d deleted file mode 100644 index 3056dfc2..00000000 --- a/tests/mini/nested17.d +++ /dev/null @@ -1,45 +0,0 @@ -// $HeadURL: svn://svn.berlios.de/dstress/trunk/run/n/nested_class_03_A.d $ -// $Date: 2005-06-18 09:15:32 +0200 (Sat, 18 Jun 2005) $ -// $Author: thomask $ - -// @author@ John C -// @date@ 2005-06-09 -// @uri@ news:d88vta$vak$1@digitaldaemon.com - -//module dstress.run.n.nested_class_03_A; -module mini.nested17; - -interface Inner{ - int value(); -} - -class Outer{ - int x; - - Inner test(){ - printf("val = %d\n", x); - return new class Inner { - int y; - - this(){ - printf("val = %d\n", x); - y=x; - } - - int value(){ - return y; - } - }; - } -} - -int main(){ - Outer o = new Outer(); - o.x=2; - int val = o.test().value(); - printf("val = %d\n", val); - assert(val == o.x); - return 0; -} - -extern(C) int printf(char*, ...); diff --git a/tests/mini/nested19.d b/tests/mini/nested19.d deleted file mode 100644 index 773b47d0..00000000 --- a/tests/mini/nested19.d +++ /dev/null @@ -1,27 +0,0 @@ -module mini.nested19; - -void main() -{ - int i = 1; - - class C - { - int j = 2; - void func() - { - int k = 3; - - void foo() - { - i = i+j+k; - } - - foo(); - } - } - - auto c = new C; - c.func(); - - assert(i == 6); -} diff --git a/tests/mini/nested2.d b/tests/mini/nested2.d deleted file mode 100644 index e707ac4d..00000000 --- a/tests/mini/nested2.d +++ /dev/null @@ -1,16 +0,0 @@ -module nested2; - -void func(ref int i) -{ - delegate { - assert(i == 3); - i++; - }(); -} - -void main() -{ - int i = 3; - func(i); - assert(i == 4); -} diff --git a/tests/mini/nested20.d b/tests/mini/nested20.d deleted file mode 100644 index 39e6f99f..00000000 --- a/tests/mini/nested20.d +++ /dev/null @@ -1,17 +0,0 @@ -extern(C) int printf(char*, ...); - -void main() -{ - int[] arr = [1]; - foreach(s; arr) - { - void foo() - { - printf("n %d\n", s); - } - - printf("o1 %d\n", s); - foo(); - printf("o2 %d\n", s); - } -} diff --git a/tests/mini/nested21.d b/tests/mini/nested21.d deleted file mode 100644 index 3a6c52b6..00000000 --- a/tests/mini/nested21.d +++ /dev/null @@ -1,16 +0,0 @@ -module nested21; - -extern(C) int printf(char*, ...); - -void main() { - int i = 42; - int foo() { return i; } - int bar() { - int j = 47; - int baz() { return j; } - return foo() + baz(); - } - auto result = bar(); - printf("%d\n", result); - assert(result == 42 + 47); -} diff --git a/tests/mini/nested3.d b/tests/mini/nested3.d deleted file mode 100644 index 68203d4b..00000000 --- a/tests/mini/nested3.d +++ /dev/null @@ -1,12 +0,0 @@ -module nested3; - -void main() -{ - int i; - void test() - { - i = 3; - } - test(); - assert(i == 3); -} diff --git a/tests/mini/nested4.d b/tests/mini/nested4.d deleted file mode 100644 index 721cfbbd..00000000 --- a/tests/mini/nested4.d +++ /dev/null @@ -1,12 +0,0 @@ -module nested4; - -void func(void delegate() dg) { - auto v = (){ - dg(); - }; -} - -void main() -{ - func({}); -} diff --git a/tests/mini/nested5.d b/tests/mini/nested5.d deleted file mode 100644 index 890eda3a..00000000 --- a/tests/mini/nested5.d +++ /dev/null @@ -1,23 +0,0 @@ -module nested5; -extern(C) int printf(char*, ...); - -void main() -{ - int i = 42; - - printf("Hello world %d\n", i++); - - class C - { - void func() - { - printf("Hello nested world %d\n", i++); - //i++; - } - } - - auto c = new C; - c.func(); - printf("i = %d\n", i); - assert(i == 44); -} diff --git a/tests/mini/nested6.d b/tests/mini/nested6.d deleted file mode 100644 index 3ec6a843..00000000 --- a/tests/mini/nested6.d +++ /dev/null @@ -1,33 +0,0 @@ -module nested6; -extern(C) int printf(char*, ...); - -void main() -{ - int i = 42; - - printf("main() %d\n", i++); - - class C - { - void func() - { - printf("C.func() %d\n", i++); - - class C2 - { - void func2() - { - printf("C2.func2() %d\n", i++); - } - } - - auto c2 = new C2; - c2.func2(); - } - } - - auto c = new C; - c.func(); - - assert(i == 45); -} diff --git a/tests/mini/nested6a.d b/tests/mini/nested6a.d deleted file mode 100644 index ba266c33..00000000 --- a/tests/mini/nested6a.d +++ /dev/null @@ -1,42 +0,0 @@ -module nested6a; -extern(C) int printf(char*, ...); - -void main() -{ - int i = 42; - - printf("main() %d\n", i++); - - class C - { - int j; - void func() - { - int k; - printf("C.func() %d\n", i++); - - class C2 - { - int l; - void func2() - { - printf("in C2.func2()\n"); - printf("C2.func2() %d\n", i++); - } - int m; - } - - { - printf("new C2\n"); - auto c2 = new C2; - printf("C2.func2()\n"); - c2.func2(); - } - int n; - } - int o; - } - - auto c = new C; - c.func(); -} diff --git a/tests/mini/nested7.d b/tests/mini/nested7.d deleted file mode 100644 index 2b8ca728..00000000 --- a/tests/mini/nested7.d +++ /dev/null @@ -1,33 +0,0 @@ -module nested7; -extern(C) int printf(char*, ...); - -void main() -{ - int i; - i = 52; - printf("i = %d\n", i); - - void func() - { - i++; - - void func2() - { - i++; - - void func3() - { - i++; - } - - func3(); - } - - func2(); - } - - func(); - - printf("i = %d\n", i); - assert(i == 55); -} diff --git a/tests/mini/nested8.d b/tests/mini/nested8.d deleted file mode 100644 index 681c093b..00000000 --- a/tests/mini/nested8.d +++ /dev/null @@ -1,31 +0,0 @@ -module nested8; -extern(C) int printf(char*, ...); - -void main() -{ - int i = 1; - void func() - { - printf("func()\n"); - i++; - void func2() - { - printf(" func2()\n"); - int j = i + 1; - void func3() - { - printf(" func3()\n"); - j++; - printf(" done = %d\n", j); - } - func3(); - i = j; - printf(" done = %d\n", j); - } - func2(); - printf("done\n"); - } - func(); - printf("i == %d\n", i); - assert(i == 4); -} diff --git a/tests/mini/nested9.d b/tests/mini/nested9.d deleted file mode 100644 index e0a21ff8..00000000 --- a/tests/mini/nested9.d +++ /dev/null @@ -1,14 +0,0 @@ -module nested9; -extern(C) int printf(char*, ...); - -void main() -{ - int i = 42; - int func() - { - return i + 1; - } - int j = func(); - printf("j = %d\n", j); - assert(j == 43); -} diff --git a/tests/mini/nocompile_initoverlap1.d b/tests/mini/nocompile_initoverlap1.d deleted file mode 100644 index 26b9d2c4..00000000 --- a/tests/mini/nocompile_initoverlap1.d +++ /dev/null @@ -1,8 +0,0 @@ -struct Vector { - union { float x; float y; } - const static Vector zero = { x : 0, y : 0 }; -} - -struct HBoxLayout { - Vector padding = Vector.zero; -} diff --git a/tests/mini/nocompile_initoverlap2.d b/tests/mini/nocompile_initoverlap2.d deleted file mode 100644 index 334367cc..00000000 --- a/tests/mini/nocompile_initoverlap2.d +++ /dev/null @@ -1,8 +0,0 @@ -struct S -{ - union - { - float f = 1; - int i = 2; - } -} diff --git a/tests/mini/norun_debug1.d b/tests/mini/norun_debug1.d deleted file mode 100644 index 44267fe2..00000000 --- a/tests/mini/norun_debug1.d +++ /dev/null @@ -1,17 +0,0 @@ -module mini.norun_debug1; - -void main() -{ - int* ptr = cast(int*) 1; - - // all these should be inspectable - int i = 1; - int j = 2; - long k = 3; - float l = 4.521; - ubyte m = 5; - - *ptr = 0;//cast(int)(i+j+k+l+m); -} - -extern(C) int printf(char*, ...); diff --git a/tests/mini/norun_debug10.d b/tests/mini/norun_debug10.d deleted file mode 100644 index 35cb4e97..00000000 --- a/tests/mini/norun_debug10.d +++ /dev/null @@ -1,21 +0,0 @@ -module mini.norun_debug10; - -struct Vec2 -{ - float x,y; -} - -void main() -{ - Vec2 v2; - char[] str = "hello"; - int i = void; - float f = 3.14; - func(v2, v2, str, i, f); -} - -void func(Vec2 v2, ref Vec2 rv2, char[] str, out int i, ref float f) -{ - int* fail = cast(int*) 1; - *fail = 0; -} diff --git a/tests/mini/norun_debug11.d b/tests/mini/norun_debug11.d deleted file mode 100644 index 67c70182..00000000 --- a/tests/mini/norun_debug11.d +++ /dev/null @@ -1,33 +0,0 @@ -module mini.norun_debug11; - -class C -{ -} - -class D : C -{ - int i = 42; -} - -class E : D -{ - float fp = 3.14f; -} - -class F : E -{ - F f; -} - -void main() -{ - auto c = new C; - auto d = new D; - auto e = new E; - auto f = new F; - - auto ci = c.classinfo; - - int* fail = cast(int*) 1; - *fail = 0; -} diff --git a/tests/mini/norun_debug12.d b/tests/mini/norun_debug12.d deleted file mode 100644 index 0be7f655..00000000 --- a/tests/mini/norun_debug12.d +++ /dev/null @@ -1,24 +0,0 @@ -module mini.norun_debug12; - -interface I -{ - int foo(); -} - -class C : I -{ - int i = 24; - int foo() - { - return i; - } -} - -void main() -{ - scope c = new C; - I i = c; - - int* fail = cast(int*) 1; - *fail = 0; -} diff --git a/tests/mini/norun_debug2.d b/tests/mini/norun_debug2.d deleted file mode 100644 index 8491fb95..00000000 --- a/tests/mini/norun_debug2.d +++ /dev/null @@ -1,15 +0,0 @@ -module mini.norun_debug2; - -import tango.stdc.stdlib : rand; - -void main() -{ - size_t iter; - while (iter < 25) - { - if (rand() % 20 == 10) - *cast(int*)1 = 0; - ++iter; - } - assert(0); -} diff --git a/tests/mini/norun_debug3.d b/tests/mini/norun_debug3.d deleted file mode 100644 index 236ebdd5..00000000 --- a/tests/mini/norun_debug3.d +++ /dev/null @@ -1,10 +0,0 @@ -module mini.norun_debug3; - -void main() -{ - int i = 42; - int* ip = &i; - - int* fail = cast(int*) 1; - *fail = 0; -} diff --git a/tests/mini/norun_debug4.d b/tests/mini/norun_debug4.d deleted file mode 100644 index 850303a2..00000000 --- a/tests/mini/norun_debug4.d +++ /dev/null @@ -1,11 +0,0 @@ -module mini.norun_debug4; - -void main() -{ - char c = 'c'; - wchar wc = 'w'; - dchar dc = 'd'; - - int* fail = cast(int*) 1; - *fail = 32; -} diff --git a/tests/mini/norun_debug5.d b/tests/mini/norun_debug5.d deleted file mode 100644 index a6e44330..00000000 --- a/tests/mini/norun_debug5.d +++ /dev/null @@ -1,15 +0,0 @@ -module mini.norun_debug5; - -void main() -{ - int i = 32; - real r = 3.1415; - real* p = &r; - func(i,r,p); -} - -void func(int i, real r, real* p) -{ - int* fail = cast(int*) 1; - *fail = 666; -} diff --git a/tests/mini/norun_debug6.d b/tests/mini/norun_debug6.d deleted file mode 100644 index 9740a651..00000000 --- a/tests/mini/norun_debug6.d +++ /dev/null @@ -1,9 +0,0 @@ -module mini.norun_debug6; - -void main() -{ - char[] str = "hello world :)"; - - int* fail = cast(int*) 1; - *fail = 32; -} diff --git a/tests/mini/norun_debug7.d b/tests/mini/norun_debug7.d deleted file mode 100644 index 8db36d6e..00000000 --- a/tests/mini/norun_debug7.d +++ /dev/null @@ -1,9 +0,0 @@ -module mini.norun_debug7; - -int gi; - -void main() -{ - int* fail = cast(int*) 1; - *fail = 0; -} diff --git a/tests/mini/norun_debug8.d b/tests/mini/norun_debug8.d deleted file mode 100644 index c77b0b52..00000000 --- a/tests/mini/norun_debug8.d +++ /dev/null @@ -1,31 +0,0 @@ -module mini.norun_debug8; - -struct Str -{ - size_t len; - void* ptr; -} - -struct Foo -{ - long l; - Bar bar; -} - -struct Bar -{ - float x,y,z; - Foo* foo; -} - -void main() -{ - Str str; - Foo foo; - foo.l = 42; - foo.bar.y = 3.1415; - foo.bar.foo = &foo; - - int* fail = cast(int*) 1; - *fail = 0; -} diff --git a/tests/mini/norun_debug9.d b/tests/mini/norun_debug9.d deleted file mode 100644 index acc5ce0e..00000000 --- a/tests/mini/norun_debug9.d +++ /dev/null @@ -1,18 +0,0 @@ -module mini.norun_debug9; - -struct Foo -{ - int a,b,c; - - void func() - { - int* fail = cast(int*) 1; - *fail = 0; - } -} - -void main() -{ - Foo foo = Foo(1,10,73); - foo.func(); -} diff --git a/tests/mini/o.d b/tests/mini/o.d deleted file mode 100644 index 1d224a45..00000000 --- a/tests/mini/o.d +++ /dev/null @@ -1,24 +0,0 @@ -extern(C) int printf(char*, ...); - -void func() -{ - try - { - printf("try\n"); - return; - } - catch - { - printf("catch\n"); - } - finally - { - printf("finally\n"); - } - return; -} - -void main() -{ - func(); -} diff --git a/tests/mini/packed1.d b/tests/mini/packed1.d deleted file mode 100644 index 060ea2b5..00000000 --- a/tests/mini/packed1.d +++ /dev/null @@ -1,24 +0,0 @@ -module mini.packed1; - -extern(C) int printf(char*, ...); - -align(1) -struct PackedStruct -{ - ubyte ub; - float f; - long l; - short s; - ubyte ub2; - short s2; -} - -void main() -{ - PackedStruct[2] a = void; - void* begin = a.ptr; - void* end = &a[1]; - ptrdiff_t sz = end - begin; - printf("size = 18 = %u = %u\n", PackedStruct.sizeof, sz); - assert(sz == 18); -} \ No newline at end of file diff --git a/tests/mini/pointers.d b/tests/mini/pointers.d deleted file mode 100644 index e2c93611..00000000 --- a/tests/mini/pointers.d +++ /dev/null @@ -1,22 +0,0 @@ -module pointers; - -struct S -{ - long l; -} - -void main() -{ - int j = 42; - int* p = &j; - - auto t = *p; - *p ^= t; - - *p = ~t; - - S s; - S* sp = &s; - *sp = s; - s = *sp; -} diff --git a/tests/mini/pt.d b/tests/mini/pt.d deleted file mode 100644 index e202252e..00000000 --- a/tests/mini/pt.d +++ /dev/null @@ -1,30 +0,0 @@ - -extern(C) int printf(char*, ...); - -int main() -{ - char[16] s = void; - { - char[] sd = s; - { - s[0] = 'a'; - s[1] = 'b'; - s[2] = 'c'; - } - - printf("%p %p\n", s.ptr, sd.ptr); - printf("%c%c%c\n", s[0], s[1], s[2]); - } - - char[16] s1 = void; - char[16] s2 = void; - char[] d1 = s1; - - { - printf("%p\n%p\n%p\n", s1.ptr, s2.ptr, d1.ptr); - } - - int[16] arr; - - return 0; -} diff --git a/tests/mini/ptrarith.d b/tests/mini/ptrarith.d deleted file mode 100644 index 85bbfeb6..00000000 --- a/tests/mini/ptrarith.d +++ /dev/null @@ -1,35 +0,0 @@ -extern(C) int printf(char*, ...); - -void main() -{ - printf("Pointer arithmetic test\n"); - int* p; - printf("0x%x\n", p); - assert(p++ is null); - assert(cast(size_t)p == 4); - printf("0x%x\n", p); - p--; - assert(p is null); - printf("0x%x\n", p); - int d = 4; - p+=d; - printf("0x%x\n", p); - assert(cast(size_t)p == 16); - d = 2; - p+=d; - printf("0x%x\n", p); - assert(cast(size_t)p == 0x18); - d = 6; - p-=d; - printf("0x%x\n", p); - assert(p is null); - printf(" SUCCESS\n"); -} - -void fill_byte_array(ubyte* a, size_t n, ubyte v) -{ - auto p = a; - auto end = a+n; - while (p !is end) - *p++ = v; -} diff --git a/tests/mini/ptrcond.d b/tests/mini/ptrcond.d deleted file mode 100644 index 4fd5870f..00000000 --- a/tests/mini/ptrcond.d +++ /dev/null @@ -1,8 +0,0 @@ -module mini.ptrcond; - -void main() -{ - char[4]* cp; - void* vp = &cp; - assert(cp < vp); -} diff --git a/tests/mini/r.d b/tests/mini/r.d deleted file mode 100644 index b36cec7a..00000000 --- a/tests/mini/r.d +++ /dev/null @@ -1,27 +0,0 @@ -extern(C) int printf(char*, ...); - -class C -{ - void dump() - { - printf("C dumped\n"); - } -} - -void heap() -{ - auto c = new C; - c.dump(); -} - -void stack() -{ - scope c = new C; - c.dump(); -} - -void main() -{ - heap(); - stack(); -} diff --git a/tests/mini/real1.d b/tests/mini/real1.d deleted file mode 100644 index eed4c192..00000000 --- a/tests/mini/real1.d +++ /dev/null @@ -1,14 +0,0 @@ -module mini.real1; - -extern(C) -{ -real tanl(real x); -int printf(char*, ...); -} - -void main() -{ - real ans = tanl(0.785398163398); - printf("%llf\n", ans); - assert(ans > 0.999 && ans < 1.001); -} diff --git a/tests/mini/s.d b/tests/mini/s.d deleted file mode 100644 index adebc923..00000000 --- a/tests/mini/s.d +++ /dev/null @@ -1,84 +0,0 @@ -module s; - -interface Inter -{ - void inter(); -} - -interface Inter2 -{ - void inter2(); -} - -interface InterOne : Inter -{ - void interOne(); -} - -abstract class ClassAbstract : InterOne -{ - abstract void inter(); - abstract void interOne(); -} - -class TheClassOne : ClassAbstract -{ - void inter() - { - } - void interOne() - { - } -} - -class TheClassTwo : TheClassOne, Inter2 -{ - long l; - double d; - - void inter2() - { - } -} - -extern(C) int printf(char*, ...); - -void main() -{ - printf("classinfo test\n"); - { - auto c = new TheClassOne; - { - auto ci = c.classinfo; - printf("ci = %.*s\n", ci.name.length, ci.name.ptr); - printf("ci.interfaces.length = %lu\n", ci.interfaces.length); - foreach (i, iface; ci.interfaces) - printf("i[%d] = %.*s\n", i, iface.classinfo.name.length, iface.classinfo.name.ptr); - } - } - { - auto c = new TheClassTwo; - { - auto ci = c.classinfo; - printf("ci = %.*s\n", ci.name.length, ci.name.ptr); - printf("ci.interfaces.length = %lu\n", ci.interfaces.length); - foreach (i, iface; ci.interfaces) - printf("i[%d] = %.*s\n", i, iface.classinfo.name.length, iface.classinfo.name.ptr); - } - InterOne i = c; - { - auto ci = i.classinfo; - printf("ci = %.*s\n", ci.name.length, ci.name.ptr); - } - auto i2 = cast(Inter2)c; - { - auto ci = i2.classinfo; - printf("ci = %.*s\n", ci.name.length, ci.name.ptr); - } - auto o = cast(Object)i2; - { - auto ci = o.classinfo; - printf("ci = %.*s\n", ci.name.length, ci.name.ptr); - } - } -} diff --git a/tests/mini/scope1.d b/tests/mini/scope1.d deleted file mode 100644 index 236126ff..00000000 --- a/tests/mini/scope1.d +++ /dev/null @@ -1,10 +0,0 @@ -module scope1; -extern(C) int printf(char*, ...); -void main() -{ - printf("1\n"); - { - scope(exit) printf("2\n"); - } - printf("3\n"); -} diff --git a/tests/mini/scope2.d b/tests/mini/scope2.d deleted file mode 100644 index a1e49395..00000000 --- a/tests/mini/scope2.d +++ /dev/null @@ -1,8 +0,0 @@ -module scope2; -extern(C) int printf(char*, ...); -void main() -{ - scope(exit) printf("exit\n"); - scope(failure) printf("failure\n"); - scope(success) printf("success\n"); -} diff --git a/tests/mini/scope3.d b/tests/mini/scope3.d deleted file mode 100644 index e054fed7..00000000 --- a/tests/mini/scope3.d +++ /dev/null @@ -1,10 +0,0 @@ -module scope3; -extern(C) int printf(char*, ...); -void main() -{ - int i; - while (i < 10) { - scope(success) i++; - } - printf("%d\n", i); -} diff --git a/tests/mini/scope4.d b/tests/mini/scope4.d deleted file mode 100644 index 4b372abc..00000000 --- a/tests/mini/scope4.d +++ /dev/null @@ -1,13 +0,0 @@ -module scope4; -int main() -{ - int i; - try - { - return i; - } - finally - { - //i = 1; - } -} diff --git a/tests/mini/scope5.d b/tests/mini/scope5.d deleted file mode 100644 index 5f2951eb..00000000 --- a/tests/mini/scope5.d +++ /dev/null @@ -1,27 +0,0 @@ -module scope5; - -int i; - -void func(int a, int b) -{ - i = 0; - { - scope(exit) i++; - if (a) { - scope(exit) i++; - if (b) return; - i++; - } - } - i++; -} - -void main() -{ - func(0,0); - assert(i == 2); - func(1,1); - assert(i == 2); - func(1,0); - assert(i == 4); -} diff --git a/tests/mini/sextzext.d b/tests/mini/sextzext.d deleted file mode 100644 index a795bc9f..00000000 --- a/tests/mini/sextzext.d +++ /dev/null @@ -1,68 +0,0 @@ -module mini.sextzext; - -void main() -{ - byte sb = sextreturn1(); - short ss = sextreturn2(); - assert(ss == -2); - assert(sb == -2); - assert(sextparam1(-42) == -42); - assert(sextparam2(-42) == -42); - - ubyte ub = zextreturn1(); - ushort us = zextreturn2(); - assert(ub == 2); - assert(us == 2); - assert(zextparam1(42) == 42); - assert(zextparam2(42) == 42); - - assert(getchar() == 'a'); - assert(passchar('z') == 'z'); - -} - -byte sextreturn1() -{ - return -2; -} -short sextreturn2() -{ - return -2; -} - -ubyte zextreturn1() -{ - return 2; -} -ushort zextreturn2() -{ - return 2; -} - -byte sextparam1(byte b) -{ - return b; -} -short sextparam2(short s) -{ - return s; -} - -ubyte zextparam1(ubyte b) -{ - return b; -} -ushort zextparam2(ushort s) -{ - return s; -} - -char getchar() -{ - return 'a'; -} - -char passchar(char ch) -{ - return ch; -} diff --git a/tests/mini/sieve.d b/tests/mini/sieve.d deleted file mode 100644 index fdb0743d..00000000 --- a/tests/mini/sieve.d +++ /dev/null @@ -1,33 +0,0 @@ -/* Eratosthenes Sieve prime number calculation. */ - -extern(C) int printf(char*, ...); - -bool flags[8191]; - -int main() -{ int i, prime, k, count, iter; - - printf("10 iterations\n"); - for (iter = 1; - iter <= 10; - iter++) - { - count = 0; - flags[] = true; - for (i = 0; i < flags.length; i++) - { if (flags[i]) - { - prime = i + i + 3; - k = i + prime; - while (k < flags.length) - { - flags[k] = false; - k += prime; - } - count += 1; - } - } - } - printf("%d primes\n", count); - return 0; -} diff --git a/tests/mini/slices.d b/tests/mini/slices.d deleted file mode 100644 index d0467a40..00000000 --- a/tests/mini/slices.d +++ /dev/null @@ -1,34 +0,0 @@ -module slices; - -void main() -{ - //char[] a = "hello world"; - //char[5] b = a[0..5]; - - //char* cp = a.ptr; - //char[] c = cp[0..1]; -} - -char[] first5(char[] str) -{ - char* p = str.ptr; - return p[0..5]; -} - -int[] one() -{ - static int i; - return (&i)[0..1]; -} - -void[] init() -{ -static char c; -return (&c)[0 .. 1]; -} - -void[] init2() - { static char c; - - return (cast(char *)&c)[0 .. 1]; - } \ No newline at end of file diff --git a/tests/mini/slices2.d b/tests/mini/slices2.d deleted file mode 100644 index 37ffc06b..00000000 --- a/tests/mini/slices2.d +++ /dev/null @@ -1,5 +0,0 @@ -void main() -{ - int[10] arr = void; - int[]* ptr = &arr[1..3]; -} diff --git a/tests/mini/sqrts.d b/tests/mini/sqrts.d deleted file mode 100644 index d8c63d63..00000000 --- a/tests/mini/sqrts.d +++ /dev/null @@ -1,12 +0,0 @@ -module sqrts; - -import tango.stdc.math; - -double sqrt(double d) -{ - return tango.stdc.math.sqrt(d); -} - -void main() -{ -} diff --git a/tests/mini/static_ctor.d b/tests/mini/static_ctor.d deleted file mode 100644 index 7a2af363..00000000 --- a/tests/mini/static_ctor.d +++ /dev/null @@ -1,16 +0,0 @@ -extern(C) int printf(char*, ...); - -static this() -{ - printf("static this\n"); -} - -static ~this() -{ - printf("static ~this\n"); -} - -void main() -{ - printf("main\n"); -} diff --git a/tests/mini/staticarrays.d b/tests/mini/staticarrays.d deleted file mode 100644 index 1d76c99d..00000000 --- a/tests/mini/staticarrays.d +++ /dev/null @@ -1,78 +0,0 @@ -extern(C) int printf(char*, ...); - -void numbers() -{ - bool[8] bools; - char[8] chars; - byte[8] bytes; - short[8] shorts; - int[8] ints; - long[8] longs; - float[8] floats; - double[8] doubles; - real[8] reals; - { - bools[7] = true; - floats[7] = 3.14159265; - { - printf("bools[0] = %d, bools[7] = %d\n", bools[0], bools[7]); - printf("floats[0] = %f, floats[7] = %f\n", floats[0], floats[7]); - } - } -} - -struct S -{ - int i = 42; - void print() - { - printf("S.i = %d\n", i); - } -} - -class C -{ - int i; - this() - { - i = 3; - } - void print() - { - printf("C.i = %d\n", i); - } -} - -void refs() -{ - void*[5] voids; - S*[5] structs; - C[5] classes; - - { - voids[0] = cast(void*)0xA; - printf("void* = %p\n", voids[0]); - } - { - structs[0] = new S; - structs[0].print(); - delete structs[0]; - } - { - classes[0] = new C; - classes[0].print(); - delete classes[0]; - } -} - -void vals() -{ - S[5] structs; -} - -void main() -{ - numbers(); - refs(); - vals(); -} diff --git a/tests/mini/staticvars.d b/tests/mini/staticvars.d deleted file mode 100644 index 0a901a02..00000000 --- a/tests/mini/staticvars.d +++ /dev/null @@ -1,13 +0,0 @@ -module staticvars; - -int func() -{ - static int i; - return i++; -} - -void main() -{ - assert(func() == 0); - assert(func() == 1); -} diff --git a/tests/mini/strings1.d b/tests/mini/strings1.d deleted file mode 100644 index 1c1e721e..00000000 --- a/tests/mini/strings1.d +++ /dev/null @@ -1,15 +0,0 @@ -module strings1; -extern(C) int printf(char*, ...); -void f(char[11] buffer) -{ - printf("%.*s\n", buffer.length, buffer.ptr); -} - -void main() -{ - char[11] buffer; - char[] hello = "hello world"; - {buffer[] = hello[];} - {f(buffer);} - {f("eleven char");} -} diff --git a/tests/mini/strings2.d b/tests/mini/strings2.d deleted file mode 100644 index c826acce..00000000 --- a/tests/mini/strings2.d +++ /dev/null @@ -1,5 +0,0 @@ -void main() -{ - char[] s = ""; - assert(s); -} diff --git a/tests/mini/structinit.d b/tests/mini/structinit.d deleted file mode 100644 index 3a92dd35..00000000 --- a/tests/mini/structinit.d +++ /dev/null @@ -1,25 +0,0 @@ -module structinit; - -import structinit2; - -struct S -{ - uint ui; - float f; - long l; - real r; -} - -S adef; - -S a = { 1, 2.0f }; -S b = { f:2.0f, l:42 }; - -Imp imp; - -void main() -{ - //assert(a == S.init); - //assert(b == S(0,3.14f,0,real.init)); -} - diff --git a/tests/mini/structinit2.d b/tests/mini/structinit2.d deleted file mode 100644 index 5b1f1169..00000000 --- a/tests/mini/structinit2.d +++ /dev/null @@ -1,16 +0,0 @@ -module structinit2; - -struct Imp -{ - int i; - long l; - float f; -} - -void main() -{ - Imp i; - assert(i.i == 0); - assert(i.l == 0L); - assert(i.f !<>= 0.0f); -} diff --git a/tests/mini/structinit3.d b/tests/mini/structinit3.d deleted file mode 100644 index 4d4d5edc..00000000 --- a/tests/mini/structinit3.d +++ /dev/null @@ -1,13 +0,0 @@ -struct S { - int a; int b; int c; int d = 7; -} -void test(int i) { - S s = { 1, i }; // q.a = 1, q.b = i, q.c = 0, q.d = 7 - assert(s.a == 1); - assert(s.b == i); - assert(s.c == 0); // line 8 - assert(s.d == 7); -} -void main() { - test(42); -} diff --git a/tests/mini/structinit4.d b/tests/mini/structinit4.d deleted file mode 100644 index d9e23f0b..00000000 --- a/tests/mini/structinit4.d +++ /dev/null @@ -1,18 +0,0 @@ -// testcase from bug #199 - -struct Color { - uint c; - -} - -struct Vertex { - Color c; -} - -void main() { - Color c = {0xffffffff}; - - auto v = Vertex(c); - - assert(v.c.c == 0xffffffff); // fails in LDC -} diff --git a/tests/mini/structinit5.d b/tests/mini/structinit5.d deleted file mode 100644 index cf344185..00000000 --- a/tests/mini/structinit5.d +++ /dev/null @@ -1,11 +0,0 @@ -struct Vertex { - uint[1] c; -} - -void main() { - uint[1] c = 0xffffffff; - - auto v = Vertex(c); - - assert(v.c[0] == 0xffffffff); // fails in LDC -} diff --git a/tests/mini/structs.d b/tests/mini/structs.d deleted file mode 100644 index b107f52a..00000000 --- a/tests/mini/structs.d +++ /dev/null @@ -1,13 +0,0 @@ -struct S -{ - int func() - { - return 42; - } -} - -void main() -{ - S s; - int i = s.func(); -} diff --git a/tests/mini/structs2.d b/tests/mini/structs2.d deleted file mode 100644 index de9045ce..00000000 --- a/tests/mini/structs2.d +++ /dev/null @@ -1,13 +0,0 @@ -module structs2; - -struct S -{ - int i; - char c; - S* s; - char[4] ca; -} - -void main() -{ -} diff --git a/tests/mini/structs3.d b/tests/mini/structs3.d deleted file mode 100644 index 79e72f1b..00000000 --- a/tests/mini/structs3.d +++ /dev/null @@ -1,30 +0,0 @@ -module structs3; - -struct S -{ - char c; - float f; -} - -struct T -{ - S s; - long l; -} - -void main() -{ - T t; - float f = void; - float* fp = void; - {f = t.s.f;} - {t.s.f = 0.0;} - {fp = &t.s.f;} - {*fp = 1.0;} - {assert(t.s.f == 1.0);} - {assert(*(&t.s.f) == 1.0);} - {t.s.c = 'a';} - {assert(t.s.c == 'a');} - {t.l = 64;} - {assert(t.l == 64);} -} diff --git a/tests/mini/structs4.d b/tests/mini/structs4.d deleted file mode 100644 index 18e2bc70..00000000 --- a/tests/mini/structs4.d +++ /dev/null @@ -1,26 +0,0 @@ -module structs4; - -struct S{ - int a; - T t; -} - -struct T{ - int b; - U u; -} - -struct U{ - int c; -} - -void main() -{ - S s; - s.a = 3; - s.t = T.init; - s.t.b = 4; - s.t.u = U.init; - s.t.u.c = 5; - //{assert(s.t.u.c == 5);} -} diff --git a/tests/mini/structs5.d b/tests/mini/structs5.d deleted file mode 100644 index 405871b9..00000000 --- a/tests/mini/structs5.d +++ /dev/null @@ -1,23 +0,0 @@ -module structs5; - -void main() -{ - {S s = S();} - {T t = T(1);} - {U u = U();} -} - -struct S -{ -} - -struct T -{ - int i; -} - -struct U -{ - S s; - long l; -} diff --git a/tests/mini/structs6.d b/tests/mini/structs6.d deleted file mode 100644 index 52b66a92..00000000 --- a/tests/mini/structs6.d +++ /dev/null @@ -1,15 +0,0 @@ -module structs6; - -struct S -{ - float f; -} - -void func(S s) -{ -} - -void main() -{ - func(S()); -} diff --git a/tests/mini/structs7.d b/tests/mini/structs7.d deleted file mode 100644 index aa5fe708..00000000 --- a/tests/mini/structs7.d +++ /dev/null @@ -1,14 +0,0 @@ -module structs7; - -struct S -{ - int i; - long l; -} - -void main() -{ - S s = void; - int i = s.i; - long l = s.l; -} diff --git a/tests/mini/structs8.d b/tests/mini/structs8.d deleted file mode 100644 index c8e707c7..00000000 --- a/tests/mini/structs8.d +++ /dev/null @@ -1,54 +0,0 @@ -module test.structs8; - -struct S -{ - int a,b; -} - -void main() -{ - S a = S(1,2); - S b = S(2,3); - S c = S(3,4); - S d = S(2,3); - - assert(a == a); - assert(a != b); - assert(a != c); - assert(a != d); - - assert(b != a); - assert(b == b); - assert(b != c); - assert(b == d); - - assert(c != a); - assert(c != b); - assert(c == c); - assert(c != d); - - assert(d != a); - assert(d == b); - assert(d != c); - assert(d == d); - - assert(a is a); - assert(a !is b); - assert(a !is c); - assert(a !is d); - - assert(b !is a); - assert(b is b); - assert(b !is c); - assert(b is d); - - assert(c !is a); - assert(c !is b); - assert(c is c); - assert(c !is d); - - assert(d !is a); - assert(d is b); - assert(d !is c); - assert(d is d); -} diff --git a/tests/mini/switch1.d b/tests/mini/switch1.d deleted file mode 100644 index 9ab19569..00000000 --- a/tests/mini/switch1.d +++ /dev/null @@ -1,15 +0,0 @@ -module switch1; - -void main() -{ - int i = 2; - int r; - switch (i) - { - case 1: r+=1; break; - case 2: r-=2; - case 3: r=3; break; - default: r=-1; - } - assert(r == 3); -} diff --git a/tests/mini/switch2.d b/tests/mini/switch2.d deleted file mode 100644 index b11d18a9..00000000 --- a/tests/mini/switch2.d +++ /dev/null @@ -1,13 +0,0 @@ -module switch2; -extern(C) int printf(char*, ...); - -void main() -{ - int i = 2; - switch(i) - { - case 0: assert(0); - case 1,2: printf("hello world\n"); break; - default: assert(0); - } -} diff --git a/tests/mini/switch3.d b/tests/mini/switch3.d deleted file mode 100644 index 0a745f27..00000000 --- a/tests/mini/switch3.d +++ /dev/null @@ -1,25 +0,0 @@ -module switch3; -extern(C) int printf(char*, ...); - -void main() -{ - char[] str = "hello"; - int i; - switch(str) - { - case "world": - i = 1; - assert(0); - case "hello": - i = 2; - break; - case "a","b","c": - i = 3; - assert(0); - default: - i = 4; - assert(0); - } - assert(i == 2); - printf("SUCCESS\n"); -} diff --git a/tests/mini/switch4.d b/tests/mini/switch4.d deleted file mode 100644 index 605ee0fd..00000000 --- a/tests/mini/switch4.d +++ /dev/null @@ -1,9 +0,0 @@ -module tangotests.switch1; - -void main() -{ - switch(0) - { - default: - } -} diff --git a/tests/mini/switch5.d b/tests/mini/switch5.d deleted file mode 100644 index afbe215b..00000000 --- a/tests/mini/switch5.d +++ /dev/null @@ -1,15 +0,0 @@ -module tangotests.switch2; - -void main() -{ - int i=0; - switch(i) - { - case 0: - return; - case 1: - return; - default: - assert(0); - } -} diff --git a/tests/mini/switch6.d b/tests/mini/switch6.d deleted file mode 100644 index 27b92234..00000000 --- a/tests/mini/switch6.d +++ /dev/null @@ -1,21 +0,0 @@ -module tangotests.switch3; - -void main() -{ - int i = 2; - - switch(i) - { - case 0,1,4,5,6,7,8,9: - assert(0); - case 2: - return; - case 3: - { - i++; - case 11: - i++; - } - return; - } -} diff --git a/tests/mini/sync1.d b/tests/mini/sync1.d deleted file mode 100644 index d4571729..00000000 --- a/tests/mini/sync1.d +++ /dev/null @@ -1,8 +0,0 @@ -module sync1; - -void main() -{ - int i; - int j; - synchronized j = i; -} diff --git a/tests/mini/sync1_1.d b/tests/mini/sync1_1.d deleted file mode 100644 index eed77902..00000000 --- a/tests/mini/sync1_1.d +++ /dev/null @@ -1,7 +0,0 @@ -module tangotests.sync1; - -void main() -{ - size_t id; - synchronized id = 4; -} diff --git a/tests/mini/sync2.d b/tests/mini/sync2.d deleted file mode 100644 index 30358a27..00000000 --- a/tests/mini/sync2.d +++ /dev/null @@ -1,18 +0,0 @@ -module tangotests.sync2; - -class Lock -{ -} - -const Lock lock; - -static this() -{ - lock = new Lock; -} - -void main() -{ - size_t id; - synchronized(lock) id = 2; -} diff --git a/tests/mini/sync3.d b/tests/mini/sync3.d deleted file mode 100644 index ed218cc4..00000000 --- a/tests/mini/sync3.d +++ /dev/null @@ -1,17 +0,0 @@ -module tangotests.sync3; - -void main() -{ - int i = foo(); -} - -int foo() -{ - int res; - synchronized - { - scope(exit) res--; - res++; - return res; - } -} diff --git a/tests/mini/t.d b/tests/mini/t.d deleted file mode 100644 index 9591261f..00000000 --- a/tests/mini/t.d +++ /dev/null @@ -1,34 +0,0 @@ -interface MyInterface -{ - int func(); -} - -class MyClass : MyInterface -{ - int var; - int func() - { - return var; - } -} - -void func1(MyInterface i) -{ - int delegate() dg = &i.func; - func2(dg); -} - -extern(C) int printf(char*, ...); - -void func2(int delegate() dg) -{ - int i = dg(); - printf("%d\n", i); -} - -void main() -{ - auto c = new MyClass; - c.var = 42; - func1(c); -} diff --git a/tests/mini/terms.d b/tests/mini/terms.d deleted file mode 100644 index 5727cf99..00000000 --- a/tests/mini/terms.d +++ /dev/null @@ -1,45 +0,0 @@ -module terms; - -void f() -{ - int i = 42; - if (i > 25) - return; - if (i < 25) { - return; - } - - if (i > 100) - return; - else - return; - - if (i < 1000) { - return; - } - else { - return; - } -} - -void main() -{ - int i = 42; - if (i > 25) - return; - if (i < 25) { - return; - } - - if (i > 100) - return; - else - return; - - if (i < 1000) { - return; - } - else { - return; - } -} diff --git a/tests/mini/throw1.d b/tests/mini/throw1.d deleted file mode 100644 index d78ccbd9..00000000 --- a/tests/mini/throw1.d +++ /dev/null @@ -1,27 +0,0 @@ -module throw1; - -extern(C) int rand(); - -class C -{ -} - -void func(bool b) -{ - if (b) - throw new C; -} - -int main() -{ - bool b = true; - try - { - func(b); - } - catch(Object) - { - return 0; - } - return 1; -} diff --git a/tests/mini/tryfinally1.d b/tests/mini/tryfinally1.d deleted file mode 100644 index f1b526b1..00000000 --- a/tests/mini/tryfinally1.d +++ /dev/null @@ -1,10 +0,0 @@ -void main() -{ - try - { - } - finally - { - debug {} // the debug statement body can be anything - } -} diff --git a/tests/mini/tuple1.d b/tests/mini/tuple1.d deleted file mode 100644 index 739aab4d..00000000 --- a/tests/mini/tuple1.d +++ /dev/null @@ -1,18 +0,0 @@ -module tuple1; - -template Tuple(T...) { - alias T Tuple; -} - -struct S -{ - int i; - long l; -} - -void main() -{ - S s = S(Tuple!(1,2L)); - assert(s.i == 1); - assert(s.l == 2); -} diff --git a/tests/mini/tuple_and_vararg.d b/tests/mini/tuple_and_vararg.d deleted file mode 100644 index a6d3d901..00000000 --- a/tests/mini/tuple_and_vararg.d +++ /dev/null @@ -1,13 +0,0 @@ -// Based on dstress.run.t.tuple_15_A; - -module tuple_and_vararg; - -template TypeTuple(TList...){ - alias TList TypeTuple; -} - -void main(){ - auto y = function(TypeTuple!(uint,uint) ab, ...){}; - y(1, 2); - y(1, 2, "foo", 3.0); -} diff --git a/tests/mini/tuplestruct.d b/tests/mini/tuplestruct.d deleted file mode 100644 index b40493c6..00000000 --- a/tests/mini/tuplestruct.d +++ /dev/null @@ -1,15 +0,0 @@ -struct V(T...) { - T v; -} - -alias V!(float, int) MyV; - -void main() -{ - assert(MyV.sizeof == float.sizeof + int.sizeof); - auto f = 3.75f; - auto v = MyV(f, 3); - assert(v.v[0] == 3.75f); - assert(v.v[1] == 3); -} - diff --git a/tests/mini/tupleval.d b/tests/mini/tupleval.d deleted file mode 100644 index 7a7313bf..00000000 --- a/tests/mini/tupleval.d +++ /dev/null @@ -1,30 +0,0 @@ -module foo; - -template ParameterTupleOf( Fn ) -{ - static if( is( Fn Params == function ) ) - alias Params ParameterTupleOf; - else static if( is( Fn Params == delegate ) ) - alias ParameterTupleOf!(Params) ParameterTupleOf; - else static if( is( Fn Params == Params* ) ) - alias ParameterTupleOf!(Params) ParameterTupleOf; - else - static assert( false, "Argument has no parameters." ); -} - -struct S -{ - int opApply(T)(T dg) - { - alias ParameterTupleOf!(T) U; - U u; - u[0] = 1; - u[1] = 2; - return 0; - } -} - -void main() -{ - foreach(int x, int y; S()){} -} diff --git a/tests/mini/typeinfo.d b/tests/mini/typeinfo.d deleted file mode 100644 index 30755f48..00000000 --- a/tests/mini/typeinfo.d +++ /dev/null @@ -1,10 +0,0 @@ -module typeinfo; -extern(C) int printf(char*, ...); - -void main() -{ - auto ti = typeid(int); - char[] str = ti.toString(); - printf("%.*s\n", str.length, str.ptr); - assert(str == "int"); -} diff --git a/tests/mini/typeinfo10.d b/tests/mini/typeinfo10.d deleted file mode 100644 index 1d375c2b..00000000 --- a/tests/mini/typeinfo10.d +++ /dev/null @@ -1,67 +0,0 @@ -module typeinfo10; - -struct S -{ - long l; - float f; - void* vp; - - hash_t toHash() - { - return l + cast(size_t)f; - } - - int opEquals(S s) - { - return (s.l == l) && (s.f == f); - } - - int opCmp(S a) - { - if (l == a.l) { - return (f < a.f) ? -1 : (f > a.f) ? 1 : 0; - } - return (l < a.l) ? -1 : 1; - } - - char[] toString() - { - return "S instance"; - } -} - -void main() -{ - S s=S(-1, 0); - S t=S(-1, 1); - S u=S(11,-1); - S v=S(12,13); - - { - assert(s == s); - assert(s != t); - assert(s != v); - assert(s < t); - assert(u > s); - assert(v > u); - } - - { - auto ti = typeid(S); - assert(ti.getHash(&s) == s.toHash()); - assert(ti.equals(&s,&s)); - assert(!ti.equals(&s,&t)); - assert(!ti.equals(&s,&v)); - assert(ti.compare(&s,&s) == 0); - assert(ti.compare(&s,&t) < 0); - assert(ti.compare(&u,&s) > 0); - assert(ti.compare(&v,&u) > 0); - { - auto tis = cast(TypeInfo_Struct)ti; - char[] delegate() structToString; - structToString.ptr = &s; - structToString.funcptr = tis.xtoString; - assert(structToString() == s.toString()); - } - } -} diff --git a/tests/mini/typeinfo11.d b/tests/mini/typeinfo11.d deleted file mode 100644 index adb71770..00000000 --- a/tests/mini/typeinfo11.d +++ /dev/null @@ -1,10 +0,0 @@ -module typeinfo11; - -void main() -{ - int[4] a; - TypeInfo ti; - ti = typeid(typeof(a)); - assert(ti.next() is typeid(int)); - assert(ti.tsize() == 16); -} diff --git a/tests/mini/typeinfo12.d b/tests/mini/typeinfo12.d deleted file mode 100644 index 28eef21c..00000000 --- a/tests/mini/typeinfo12.d +++ /dev/null @@ -1,9 +0,0 @@ -module typeinfo12; - -class C -{ -} - -void main() -{ -} diff --git a/tests/mini/typeinfo13.d b/tests/mini/typeinfo13.d deleted file mode 100644 index 5c3b3528..00000000 --- a/tests/mini/typeinfo13.d +++ /dev/null @@ -1,13 +0,0 @@ -module typeinfo13; - -void main() -{ - float[long] aa; - auto ti = typeid(typeof(aa)); - assert(ti.toString() == "float[long]"); - assert(ti.next() is typeid(float)); - assert(ti.tsize() == size_t.sizeof); - auto aati = cast(TypeInfo_AssociativeArray)ti; - assert(aati.value is typeid(float)); - assert(aati.key is typeid(long)); -} diff --git a/tests/mini/typeinfo2.d b/tests/mini/typeinfo2.d deleted file mode 100644 index fb3d1f3f..00000000 --- a/tests/mini/typeinfo2.d +++ /dev/null @@ -1,14 +0,0 @@ -module typeinfo2; - -void main() -{ - auto ti = typeid(float); - float f = 2.5; - hash_t fh = ti.getHash(&f); - assert(ti.next is null); - float g = 4.0; - ti.swap(&f,&g); - assert(f == 4.0 && g == 2.5); - assert(fh == *cast(uint*)(&g)); - assert(!ti.flags); -} diff --git a/tests/mini/typeinfo3.d b/tests/mini/typeinfo3.d deleted file mode 100644 index 84481e19..00000000 --- a/tests/mini/typeinfo3.d +++ /dev/null @@ -1,14 +0,0 @@ -module typeinfo3; - -typedef int int_t; - -void main() -{ - /*int_t i; - auto ti = typeid(typeof(i)); - printf("%s\n",ti.toString.ptr); - assert(ti.toString() == "typeinfo3.int_t"); - assert(ti.next !is null); - assert(ti.next.toString() == "int"); - assert(ti.init is null);*/ -} diff --git a/tests/mini/typeinfo4.d b/tests/mini/typeinfo4.d deleted file mode 100644 index 3031392f..00000000 --- a/tests/mini/typeinfo4.d +++ /dev/null @@ -1,11 +0,0 @@ -module typeinfo4; - -void main() -{ - auto ti = typeid(void*); - assert(ti.toString() == "void*"); - assert(ti.tsize() == size_t.sizeof); - void* a = null; - void* b = a + 1; - assert(ti.compare(&a,&b) < 0); -} diff --git a/tests/mini/typeinfo5.d b/tests/mini/typeinfo5.d deleted file mode 100644 index a9a37284..00000000 --- a/tests/mini/typeinfo5.d +++ /dev/null @@ -1,11 +0,0 @@ -module typeinfo5; - -void main() -{ - enum E : uint { - A,B,C - } - auto ti = typeid(E); - assert(ti.next() is typeid(uint)); - assert(ti.init is null); -} diff --git a/tests/mini/typeinfo6.d b/tests/mini/typeinfo6.d deleted file mode 100644 index 79efbfa7..00000000 --- a/tests/mini/typeinfo6.d +++ /dev/null @@ -1,8 +0,0 @@ -module typeinfo6; - -void main() -{ - auto ti = typeid(int[]); - assert(ti.toString() == "int[]"); - assert(ti.next() is typeid(int)); -} diff --git a/tests/mini/typeinfo7.d b/tests/mini/typeinfo7.d deleted file mode 100644 index 12cd3574..00000000 --- a/tests/mini/typeinfo7.d +++ /dev/null @@ -1,14 +0,0 @@ -module typeinfo7; -extern(C) int printf(char*, ...); -int func(long) -{ - return 0; -} - -void main() -{ - auto ti = typeid(typeof(func)); - auto s = ti.toString; - printf("%.*s\n", s.length, s.ptr); - assert(s == "int()"); -} diff --git a/tests/mini/typeinfo8.d b/tests/mini/typeinfo8.d deleted file mode 100644 index eebe4c88..00000000 --- a/tests/mini/typeinfo8.d +++ /dev/null @@ -1,17 +0,0 @@ -module typeinfo8; -extern(C) int printf(char*, ...); -struct S -{ - void func() - { - } -} - -void main() -{ - S a; - auto ti = typeid(typeof(&a.func)); - auto s = ti.toString; - printf("%.*s\n", s.length, s.ptr); - assert(s == "void delegate()"); -} diff --git a/tests/mini/typeinfo9.d b/tests/mini/typeinfo9.d deleted file mode 100644 index 42141c6f..00000000 --- a/tests/mini/typeinfo9.d +++ /dev/null @@ -1,10 +0,0 @@ -module typeinfo9; - -typedef int int_t = 42; - -void main() -{ - auto i = typeid(int_t).init; - assert(i.length == int_t.sizeof); - assert(*cast(int_t*)i.ptr == 42); -} diff --git a/tests/mini/union1.d b/tests/mini/union1.d deleted file mode 100644 index ee0e1381..00000000 --- a/tests/mini/union1.d +++ /dev/null @@ -1,14 +0,0 @@ -module union1; - -union U -{ - float f; - int i; -} - -void main() -{ - float f = 2; - U u = U(f); - assert(u.i == *cast(int*)&f); -} diff --git a/tests/mini/union2.d b/tests/mini/union2.d deleted file mode 100644 index 8b2ed5be..00000000 --- a/tests/mini/union2.d +++ /dev/null @@ -1,18 +0,0 @@ -module union2; - -union U -{ - float f; - long l; -} - -U u; - -void main() -{ - assert(u.f !<>= 0); - { - uint* p = 1 + cast(uint*)&u; - {assert(*p == 0);} - } -} diff --git a/tests/mini/union3.d b/tests/mini/union3.d deleted file mode 100644 index 950b653e..00000000 --- a/tests/mini/union3.d +++ /dev/null @@ -1,13 +0,0 @@ -module union3; - -union vec3 -{ - struct { float x,y,z; } - float[3] xyz; -} - -void main() -{ - vec3 v; - assert(&v.y is &v.xyz[1]); -} diff --git a/tests/mini/union4.d b/tests/mini/union4.d deleted file mode 100644 index a63f5895..00000000 --- a/tests/mini/union4.d +++ /dev/null @@ -1,15 +0,0 @@ -module union4; - -union U { - struct { float x,y,z; } - float[3] xyz; -} - -void main() { - const float[3] a = [1f,2,3]; - U u = U(1,2,3); - assert(u.xyz == a); - assert(u.x == 1); - assert(u.y == 2); - assert(u.z == 3); -} diff --git a/tests/mini/union5.d b/tests/mini/union5.d deleted file mode 100644 index 2b6ade69..00000000 --- a/tests/mini/union5.d +++ /dev/null @@ -1,36 +0,0 @@ -module union5; - -union S -{ - T t; - U u; - uint i; - struct { - ushort sl,sh; - } -} - -struct T -{ - int i; -} - -struct U -{ - float f; -} - -void main() -{ - S s; - assert(s.t.i == 0); - assert(s.u.f == 0); - s.t.i = -1; - assert(s.i == 0xFFFF_FFFF); - float f = 3.1415; - s.u.f = f; - uint pi = *cast(uint*)&f; - assert(s.i == pi); - assert(s.sl == (pi&0xFFFF)); - assert(s.sh == (pi>>>16)); -} diff --git a/tests/mini/union6.d b/tests/mini/union6.d deleted file mode 100644 index 01e33375..00000000 --- a/tests/mini/union6.d +++ /dev/null @@ -1,20 +0,0 @@ -module union6; - -struct S -{ - byte a; - byte b; -} -union U -{ - byte a; - byte b; - S c; -} - -void main() -{ - U u; - auto a = u.c.b; - //auto c = u.s.l; -} diff --git a/tests/mini/union7.d b/tests/mini/union7.d deleted file mode 100644 index f7b3fda9..00000000 --- a/tests/mini/union7.d +++ /dev/null @@ -1,47 +0,0 @@ -module union7; - -struct Union -{ - union { - double g; - struct { - short s1,s2,s3,s4; - } - } - union { - float f; - long l; - } -} - -Union a = { f:4f }; -Union b = { 3.0, f:2 }; -Union c = { l:42, g:2.0 }; -Union d = { s2:3 }; -Union e = { s1:3, s4:4, l:5 }; - -void main() -{ - assert(a.f == 4f); - assert(a.g !<>= 0.0); - assert((a.l>>>32) == 0); - - assert(b.g == 3.0); - assert(b.f == 2f); - - assert(c.l == 42); - assert(c.g == 2.0); - - assert(d.s1 == 0); - assert(d.s2 == 3); - assert(d.s3 == 0); - assert(d.s4 == 0); - {assert(d.f !<>= 0f);} - {} - assert(e.s1 == 3); - assert(e.s2 == 0); - assert(e.s3 == 0); - {assert(e.s4 == 4);} - {} - assert(e.l == 5); -} diff --git a/tests/mini/unittest1.d b/tests/mini/unittest1.d deleted file mode 100644 index 0f41290d..00000000 --- a/tests/mini/unittest1.d +++ /dev/null @@ -1,10 +0,0 @@ -module unittest1; - -void main() -{ -} - -unittest -{ - printf("hello\n"); -} diff --git a/tests/mini/unrolled.d b/tests/mini/unrolled.d deleted file mode 100644 index 84122e6f..00000000 --- a/tests/mini/unrolled.d +++ /dev/null @@ -1,15 +0,0 @@ -module unrolled; - -extern(C) int printf(char*, ...); - -void test(T...)(T t) { - foreach (value; t) { - printf("%d\n", value); - if (value == 2) - break; - } -} - -void main() { - test(1,4,3); -} diff --git a/tests/mini/v2d.d b/tests/mini/v2d.d deleted file mode 100644 index 366a11f3..00000000 --- a/tests/mini/v2d.d +++ /dev/null @@ -1,32 +0,0 @@ -extern(C) int printf(char*, ...); - -struct V2D(T) -{ - T x,y; - - T dot(ref V2D v) - { - return x*v.x + y*v.y; - } - - V2D opAdd(ref V2D v) - { - return V2D(x+v.x, y+v.y); - } -} - -alias V2D!(float) V2Df; - -void main() -{ - printf("V2D test\n"); - auto up = V2Df(0.0f, 1.0f); - auto right = V2Df(1.0f, 0.0f); - assert(up.dot(right) == 0.0f); - auto upright = up + right; - assert(upright.x == 1.0f && upright.y == 1.0f); - auto copy = upright; - copy.x++; - assert(copy.x > upright.x); - printf(" SUCCESS\n"); -} diff --git a/tests/mini/vararg1.d b/tests/mini/vararg1.d deleted file mode 100644 index 7b5f2ab8..00000000 --- a/tests/mini/vararg1.d +++ /dev/null @@ -1,20 +0,0 @@ -module vararg1; - -import tango.stdc.stdarg; - -extern(C) int add(int n, ...) -{ - va_list ap=void; - va_start(ap, n); - int r; - for (int i=0; i