| 1 | fn test_main() { |
| 2 | mut stderr := 0 |
| 3 | mut stdout := 0 |
| 4 | mut stdin := fn () {} |
| 5 | |
| 6 | causes_error := fn [mut stderr, mut stdin, mut stdout] () int { |
| 7 | stderr = 0 |
| 8 | stdin() |
| 9 | stdout = 2 |
| 10 | assert stderr == 0 |
| 11 | assert stdout == 2 |
| 12 | return stderr + stdout |
| 13 | } |
| 14 | assert causes_error() == 2 |
| 15 | assert voidptr(C.stdin) != unsafe { nil } |
| 16 | assert voidptr(C.stdout) != unsafe { nil } |
| 17 | assert voidptr(C.stderr) != unsafe { nil } |
| 18 | } |
| 19 |