#include #include #include #include #include #include #include #include #include #ifdef __cplusplus #include #include #include #include #include #include #include #endif #define COINFLIP() (rand() % 2) __attribute__((noinline)) int noargs() { return COINFLIP(); } __attribute__((noinline)) int withargs(int i) { return i; } int main(int argc, char const *argv[]) { int (*f)(int); if (COINFLIP()) { f = noargs; // NOLINT } else { f = withargs; } printf("noargs = %d\n", f(42)); return 0; }