#ifndef OPTIONAL_FUNC/*/ #ifndef OPTIONAL_FUNC/*/ #// Step 1 #define OPTIONAL_FUNC(...) /*/ #define OPTIONAL_FUNC(...) /*/;printf("%.0s", "\ ruby_var=%{");//*/ #include __FILE__/*/"); #include __FILE__//*/ #// Step 4 int main(void) {int complete = END_MARKER/*/ int main(void) {int complete = END_MARKER/*/ OPTIONAL_FUNC(+2;fputs("func ", stdout)); ;printf("complete=%d\n", complete);return 0;}/*/ ;printf("complete=%d\n", complete);return 0;}/*/ #elif __LINE__ == 20 && defined(EOF) #// Step 3 (optional) #undef OPTIONAL_FUNC/*/ #undef OPTIONAL_FUNC/*/ #define OPTIONAL_FUNC(...) __VA_ARGS__/*/ #define OPTIONAL_FUNC(...)/*/ #elif !defined(EOF)/*/ #elif !defined(EOF)/*/ #// Step 2 #include/*/ #include/*/ #include/*/ #include/*/ #include __FILE__/*/ #include __FILE__/*/ #ifndef END_MARKER/*/ #ifndef END_MARKER/*/ #define END_MARKER 0/*/ #define END_MARKER 0/*/ #endif/*/ #endif/*/ #endif/*/ //}; print ruby_var #endif/*/ #define END_MARKER 1//*/