I ran into this question while typing man 2 open. It says that there are two kinds of open, one with two args, and one with three! last time i checked we could not
man 2 open
No, they wrote in C, using varargs.
Check out stdarg.h, where there are examples.
A variadic function may read as many arguments as it likes from the ellipsis. Any extra arguments the function "does not want" are in fact discarded.