| // https://bugzilla.gdcproject.org/show_bug.cgi?id=17 |
| // { dg-do run } |
| // { dg-skip-if "needs gcc/config.d" { ! d_runtime } } |
| |
| /** |
| * Parameters are not copied into a frame to be accessed from |
| * the method's __require function. |
| */ |
| void contractTest(string path) |
| { |
| assert(path[0] == 't'); |
| assert(path.length == 9); |
| assert(path[8] == 'i'); |
| } |
| |
| interface ModuleSaver |
| { |
| void save(string str) |
| in |
| { |
| contractTest(str); |
| } |
| } |
| |
| class ModuleWriter : ModuleSaver |
| { |
| void save (string str) |
| in {} |
| do |
| { |
| } |
| } |
| |
| void main() |
| { |
| (new ModuleWriter()).save ("test.0.mci"); |
| } |