Can the type of the last argument before ... in a variadic function be an enum type?
Do enum types undergo default argument promotion?
There are some contexts where types that undergo default argument promotion cannot be used safely, with vararg handling (va_start, va_arg) being a notable example. The compilers I use seem to treat enum types as an int, which is safe to use in these contexts. Is this always the case? Can I safely use an enum type as the last argument before ... in variadic functions?