Mode_t T_NV pid_t T_NV Uid_t T_NV Time_t T_NV Gid_t T_NV Uid_t T_NV Off_t T_NV Dev_t T_NV NV T_NV fd T_IV speed_t T_IV tcflag_t T_IV cc_t T_IV POSIX::SigSet T_OPAQUEPTROBJ POSIX::Termios T_OPAQUEPTROBJ POSIX::SigAction T_HVREF POSIX::SigNo T_SIGNO POSIX::Fd T_FD INPUT T_OPAQUEPTROBJ { SV * sv = $arg; if (SvROK(sv) && sv_derived_from(sv, \"${ntype}\")) $var = ($type)SvPV_nolen(SvRV(sv)); else croak(\"%s: %s is not of type %s\", ${$ALIAS?\q[GvNAME(CvGV(cv))]:\qq[\"$pname\"]}, \"$var\", \"$ntype\"); } T_SIGNO if ((sig = SvIV($arg)) < 0) { croak(\"%s: Negative signals are not allowed %d\", ${$ALIAS?\q[GvNAME(CvGV(cv))]:\qq[\"$pname\"]}, sig); } T_FD if ((fd = (int)SvIV($arg)) < 0) { SETERRNO(EBADF, RMS_IFI); XSRETURN_IV(-1); } OUTPUT T_OPAQUEPTROBJ sv_setref_pvn($arg, \"${ntype}\", (const char*)$var, sizeof(*$var));