VariadicArguments :: (string: *char, args: ..) pass AnyArguments :: (values: []Any) for values Assert(it.type == S64) Assert(*(values[0].data->*S64) == 10) Assert(*(values[1].data->*S64) == 20) printf :: #foreign (string: *char, args: ..): int main :: (): int a := 10 b := 20 values := []Any{a, b} printf("Test %d", {a}) for values Assert(it.type == S64) AnyArguments({a,b}) VariadicArguments("Test", args = {a+b,b}) Assert(*(values[0].data->*S64) == 10) Assert(*(values[1].data->*S64) == 20) // @todo: maybe this is better? Assert(*cast(*S64)values[0].data == 10) return 0