mirror of
https://github.com/fluencelabs/assemblyscript
synced 2025-06-22 11:11:43 +00:00
Support indirect calls with omitted arguments
This commit is contained in:
@ -1,6 +1,11 @@
|
||||
function opt(a: i32, b: i32 = -1, c: i32 = -2): i32 {
|
||||
return a + b + c;
|
||||
}
|
||||
assert(opt(3) == 0); // calls the trampoline with N=0
|
||||
assert(opt(3, 4) == 5); // calls the trampoline with N=1
|
||||
assert(opt(3) == 0); // calls the trampoline with 0of2
|
||||
assert(opt(3, 4) == 5); // calls the trampoline with 1of2
|
||||
assert(opt(3, 4, 5) == 12); // calls the function directly
|
||||
|
||||
var optIndirect = opt;
|
||||
assert(optIndirect(3) == 0); // calls the trampoline indirectly with 0of2
|
||||
assert(optIndirect(3, 4) == 5); // calls the trampoline indirectly with 1of2
|
||||
assert(optIndirect(3, 4, 5) == 12); // calls the trampoline indirectly with 2of2
|
||||
|
Reference in New Issue
Block a user