import std.stdio; void foo() { float f = x % y; double d = x % y; real r = x % y; result = (x < y); // false if x or y is nan assert(e == 0); int array[17]; array[] = value; int array[17]; for (i = 0; i < array.length; i++) func(array[i]); int array[17]; foreach (int value; array) func(value); int[] array; array.length = array.length + 1; array[array.length - 1] = x; char[] s1; char[] s2; char[] s; s = s1 ~ s2; s ~= "hello"; writefln("Calling all cars %s times!", ntimes); Louter: for (i = 0; i < 10; i++) { for (j = 0; j < 10; j++) { if (j == 3) break Louter; if (j == 4) continue Louter; } } // break Louter goes here typedef bit bHandle; typedef int iHandle = -1; typedef void *Handle = cast(void *)(-1); Handle h; h = func(); if (h != Handle.init) ; char[] string = "hello"; if (string < "betty") ; int *p = address; volatile { i = *p; } char[] ml = "This text spans multiple lines "; } void dostring(char[] s) { switch (s) { case "hello":; case "goodbye":; case "maybe":; default:; } } struct ABC { int z; // z is aligned to the default align (1) int x; // x is byte aligned align (4) { ... // declarations in {} are dword aligned } align (2) : // switch to word alignment from here on int y; // y is word aligned } struct Foo { int i; union { struct { int x; long y; } char *p; } } struct Foo { int x; int y; } // note there is no terminating ; Foo foo; struct Foo { int x; int y; } off = Foo.y.offsetof; union U { int a; long b; } U x = { a:5 }; struct S { int a; int b; } S x = { b:3, a:5 }; int[3] a = [ 3, 2, 0 ]; int[3] a = [ 3, 2 ]; // unsupplied initializers are 0, just like in C int[3] a = [ 2:0, 0:3, 1:2 ]; int[3] a = [ 2:0, 0:3, 2 ]; // if not supplied, the index is the // previous one plus one. enum color { black, red, green } int[3] c = [ black:3, green:2, red:5 ]; char[] file = `c:\root\file.c`; char[] quoteString = \" r"[^\\]*(\\.[^\\]*)*" \"; char[] hello = "hello world" \n; char[] foo_ascii = "hello"; // string is taken to be ascii wchar[] foo_wchar = "hello"; // string is taken to be wchar enum COLORS { red, blue, green }; char[][COLORS.max + 1] cstring = [ COLORS.red : "red", COLORS.blue : "blue", COLORS.green : "green", ]; const ushort table1[16] = [ 0x00A7, 0x0322, 0x07AD, 0x0428, 0x0536, 0x06B3, 0x023C, 0x01B9 ]; const ushort table2[16] = [ 0x0000, 0x0385, 0x070A, 0x048F, 0x0536, 0x06B3, 0x023C, 0x01B9];