From 8f0fa8d70ce08ee0347a5880d44faab8307b72f6 Mon Sep 17 00:00:00 2001 From: nsfisis Date: Sat, 10 Jan 2026 00:33:08 +0900 Subject: feat: implement va_arg() --- tests/variadic_functions.sh | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) (limited to 'tests') diff --git a/tests/variadic_functions.sh b/tests/variadic_functions.sh index 4f899ee..155fc1a 100644 --- a/tests/variadic_functions.sh +++ b/tests/variadic_functions.sh @@ -29,3 +29,23 @@ int main() { return 0; } EOF + +test_exit_code 0 <<'EOF' +#include +#include + +int sum(int n, ...) { + va_list args; + va_start(args, n); + int s = 0; + for (int i = 0; i < n; ++i) { + s += va_arg(args, int); + } + va_end(args); + return s; +} + +int main() { + ASSERT_EQ(400, sum(5, 100, 90, 80, 70, 60)); +} +EOF -- cgit v1.2.3-70-g09d2