1 // https://bugzilla.gdcproject.org/show_bug.cgi?id=17 2 // { dg-do run } 3 // { dg-skip-if "needs gcc/config.d" { ! d_runtime } } 4 5 /** 6 * Parameters are not copied into a frame to be accessed from 7 * the method's __require function. 8 */ contractTest(string path)9void contractTest(string path) 10 { 11 assert(path[0] == 't'); 12 assert(path.length == 9); 13 assert(path[8] == 'i'); 14 } 15 16 interface ModuleSaver 17 { save(string str)18 void save(string str) 19 in 20 { 21 contractTest(str); 22 } 23 } 24 25 class ModuleWriter : ModuleSaver 26 { save(string str)27 void save (string str) 28 in {} 29 do 30 { 31 } 32 } 33 main()34void main() 35 { 36 (new ModuleWriter()).save ("test.0.mci"); 37 } 38