- dTHR; /* just for taint */
- char *ug;
-
-#ifdef IV_IS_QUAD
- DEBUG_u(PerlIO_printf(Perl_debug_log,
- "%s %d %" PERL_PRId64 " %" PERL_PRId64 "\n", s, PL_tainted, (IV)PL_uid, (IV)PL_euid));
-#else
- DEBUG_u(PerlIO_printf(Perl_debug_log,
- "%s %d %lu %lu\n", s, PL_tainted, (unsigned long)PL_uid, (unsigned long)PL_euid));
+#if defined(HAS_SETEUID) && defined(DEBUGGING)
+ PERL_ARGS_ASSERT_TAINT_PROPER;
+
+ {
+ const Uid_t uid = PerlProc_getuid();
+ const Uid_t euid = PerlProc_geteuid();
+
+#if Uid_t_sign == 1 /* uid_t is unsigned. */
+ DEBUG_u(PerlIO_printf(Perl_debug_log,
+ "%s %d %"UVuf" %"UVuf"\n",
+ s, TAINT_get, (UV)uid, (UV)euid));
+#else /* uid_t is signed (Uid_t_sign == -1), or don't know. */
+ DEBUG_u(PerlIO_printf(Perl_debug_log,
+ "%s %d %"IVdf" %"IVdf"\n",
+ s, TAINT_get, (IV)uid, (IV)euid));
+#endif
+ }