#include <stdio.h>
#include <stdarg.h>
void vfunc(int count, va_list list, ...) {
int it = 0,
end = count;
va_list args;
for (it = 0; it < end; it++) {
"LIST: %d\n", arg);
}
for (it = 0; it < end; it++){
"ARGS: %d\n", arg);
}
}
void func(int count, ...) {
va_list args;
vfunc(count, args, 4,5,6);
}
int main(int argc, char **argv) {
func(3, 1,2,3);
return 0;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CiNpbmNsdWRlIDxzdGRhcmcuaD4KCnZvaWQgdmZ1bmMoaW50IGNvdW50LCB2YV9saXN0IGxpc3QsIC4uLikgewogICAgaW50IGl0ID0gMCwKICAgICAgICBlbmQgPSBjb3VudDsKICAgIHZhX2xpc3QgYXJnczsKCiAgICBmb3IgKGl0ID0gMDsgaXQgPCBlbmQ7IGl0KyspIHsKICAgICAgICBpbnQgYXJnID0gdmFfYXJnKGxpc3QsIGludCk7CgogICAgICAgIGZwcmludGYoc3RkZXJyLCAKICAgICAgICAgICAgIkxJU1Q6ICVkXG4iLCBhcmcpOwogICAgfQogICAgCiAgICB2YV9zdGFydChhcmdzLCBsaXN0KTsKCiAgICBmb3IgKGl0ID0gMDsgaXQgPCBlbmQ7IGl0KyspewogICAgICAgIGludCBhcmcgPSB2YV9hcmcoYXJncywgaW50KTsKCiAgICAgICAgZnByaW50ZihzdGRlcnIsIAogICAgICAgICAgICAiQVJHUzogJWRcbiIsIGFyZyk7CiAgICB9CgogICAgdmFfZW5kKGFyZ3MpOwp9Cgp2b2lkIGZ1bmMoaW50IGNvdW50LCAuLi4pIHsKICAgIHZhX2xpc3QgYXJnczsKCiAgICB2YV9zdGFydChhcmdzLCBjb3VudCk7CiAgICB2ZnVuYyhjb3VudCwgYXJncywgNCw1LDYpOwogICAgdmFfZW5kKGFyZ3MpOwp9CgppbnQgbWFpbihpbnQgYXJnYywgY2hhciAqKmFyZ3YpIHsKICAgIGZ1bmMoMywgMSwyLDMpOwoKICAgIHJldHVybiAwOwp9