package MyModule; use Inline Config => ( DIRECTORY => './Inline', ); use Inline 'C'; sub _fprint { print { shift } @_ } # ... 1; __END__ __C__ int my_print(SV* fh, SV* sv) { int result; dSP; ENTER; SAVETMPS; PUSHMARK(SP); XPUSHs(fh); XPUSHs(sv); PUTBACK; call_pv("MyModule::_fprint", G_SCALAR); SPAGAIN; result = POPi; PUTBACK; FREETMPS; LEAVE; return result; }