>438
とりあえず C と仮定する。
default argument promotion によって char 型の引数は int 型になっている。
従って、 va_arg の第 2 引数に char を指定しても、実引数の型とは一致しない。
9899:1999 だと va_arg で実引数の型と一致していない場合は未定義動作だから規格には合致している。
いずれにしろ、va_arg の第 2 引数に char は使えない。