diff options
Diffstat (limited to 'tests/variadic_functions.sh')
| -rw-r--r-- | tests/variadic_functions.sh | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/tests/variadic_functions.sh b/tests/variadic_functions.sh new file mode 100644 index 0000000..ec85d9a --- /dev/null +++ b/tests/variadic_functions.sh @@ -0,0 +1,32 @@ +cat <<'EOF' > expected +123 +456 789 +EOF + +test_diff <<'EOF' +#include <stdarg.h> + +int fprintf(); + +struct FILE; +typedef struct FILE FILE; + +extern FILE* stdout; + +int vfprintf(FILE*, const char*, va_list); + +void fatal_error(const char* msg, ...) { + va_list args; + va_start(args, msg); + vfprintf(stdout, msg, args); + va_end(args); + fprintf(stdout, "\n"); +} + +int main() { + fatal_error("%d", 123); + fatal_error("%d %d", 456, 789); + return 0; +} +EOF + |
