1 // REQUIRED_ARGS: 2 3 4 /*********************************************************/ 5 test6()6void test6() 7 { 8 string s = q"(foo(xxx))"; 9 assert(s == "foo(xxx)"); 10 11 s = q"[foo[xxx]]"; 12 assert(s == "foo[xxx]"); 13 14 s = q"{foo{xxx}}"; 15 assert(s == "foo{xxx}"); 16 17 s = q"<foo<xxx>>"; 18 assert(s == "foo<xxx>"); 19 20 s = q"[foo(]"; 21 assert(s == "foo("); 22 23 s = q"/foo]/"; 24 assert(s == "foo]"); 25 26 27 s = q"HERE 28 foo 29 HERE"; 30 //writefln("'%s'", s); 31 assert(s == "foo\n"); 32 33 34 s = q{ foo(xxx) }; 35 assert(s ==" foo(xxx) "); 36 37 s = q{foo(}; 38 assert(s == "foo("); 39 40 s = q{{foo}/*}*/}; 41 assert(s == "{foo}/*}*/"); 42 43 s = q{{foo}"}"}; 44 assert(s == "{foo}\"}\""); 45 } 46 47 /*********************************************************/ 48 49 void test7() 50 { 51 // auto str = \xDB; 52 // assert(str.length == 1); 53 } 54 55 /*********************************************************/ 56 // 4633 57 58 template Types(alias v) 59 { 60 alias typeof(v) Types; 61 } 62 63 typeof({return 1;}()) a; // ok 64 Types!({return 1;}()) x; // ok 65 66 void test8() 67 { 68 typeof({return 1;}()) b; 69 Types!({return 1;}()) y; 70 } 71 72 /*********************************************************/ 73 74 // bug 6584 75 version(9223372036854775807){} 76 debug(9223372036854775807){} 77 78 /*********************************************************/ 79 80 enum e13102=184467440737095516153.6L; 81 82 /*********************************************************/ 83 84 int main() 85 { 86 test6(); 87 test7(); 88 test8(); 89 90 return 0; 91 } 92