authorgravatar for thejoshwolfe@gmail.comJosh Wolfe <thejoshwolfe@gmail.com> 2015-12-03 14:33:13-07:00
committergravatar for thejoshwolfe@gmail.comJosh Wolfe <thejoshwolfe@gmail.com> 2015-12-03 14:33:13-07:00
log174e58a05f94eaee6e04e858d916d28d3f5be3b7
treee1874cec31c6f8aeafc1d4025485d1562b59a3f6
parentf4b9b03f5426a1e0804714f4d58c09e6c4d0c689

test for void parameters


1 files changed, 20 insertions(+), 0 deletions(-)

test/run_tests.cpp+20
...@@ -311,6 +311,26 @@ export fn _start() -> unreachable {...@@ -311,6 +311,26 @@ export fn _start() -> unreachable {
311 exit(0);311 exit(0);
312}312}
313 )SOURCE", "OK 1\nOK 2\n");313 )SOURCE", "OK 1\nOK 2\n");
314
315 add_simple_case("void parameters", R"SOURCE(
316#link("c")
317extern {
318 fn puts(s: *const u8) -> i32;
319 fn exit(code: i32) -> unreachable;
320}
321
322export fn _start() -> unreachable {
323 void_fun(1, void, 2);
324 exit(0);
325}
326
327fn void_fun(a : i32, b : void, c : i32) {
328 let v = b;
329 let vv : void = if (a == 1) {v} else {};
330 if (a + c == 3) { puts("OK"); }
331 return vv;
332}
333 )SOURCE", "OK\n");
314}334}
315335
316static void add_compile_failure_test_cases(void) {336static void add_compile_failure_test_cases(void) {