#include <stdio.h>
float popStack_f(void) {
return 1.0f;
}
int popStack_i(void) {
return 6;
}
#define popStack(X) _Generic((X), \
int: popStack_i, \
float: popStack_f)()
int main(void) {
printf("%d\n", popStack
((int)0)); printf("%f\n", popStack
((float)0)); return 0;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CgpmbG9hdCBwb3BTdGFja19mKHZvaWQpIHsKCXJldHVybiAxLjBmOwp9CgppbnQgcG9wU3RhY2tfaSh2b2lkKSB7CglyZXR1cm4gNjsKfQoKI2RlZmluZSBwb3BTdGFjayhYKSBfR2VuZXJpYygoWCksICAgXAogICAgaW50OiBwb3BTdGFja19pLCAgICAgICAgICAgICAgICBcCiAgICBmbG9hdDogcG9wU3RhY2tfZikoKQoKCmludCBtYWluKHZvaWQpIHsKCXByaW50ZigiJWRcbiIsIHBvcFN0YWNrKChpbnQpMCkpOwoJcHJpbnRmKCIlZlxuIiwgcG9wU3RhY2soKGZsb2F0KTApKTsKCXJldHVybiAwOwp9Cg==