#ifndef Quad_t
# if LONGSIZE == 8
# define Quad_t long
+# define Uquad_t unsigned long
# define PERL_QUAD_IS_LONG
# endif
#endif
#ifndef Quad_t
# if INTSIZE == 8
# define Quad_t int
+# define Uquad_t unsigned int
# define PERL_QUAD_IS_INT
# endif
#endif
# ifdef USE_LONG_LONG /* See above note about LP32. --jhi */
# if defined(HAS_LONG_LONG) && LONGLONGSIZE == 8
# define Quad_t long long
+# define Uquad_t unsigned long long
# define PERL_QUAD_IS_LONG_LONG
# endif
# endif
#ifdef Quad_t
# define HAS_QUAD
# ifndef Uquad_t
- /* Note that if your Quad_t is a typedef you *must* have defined
- * also Uquad_t yourself because 'unsigned type' is illegal. */
+ /* Note that if your Quad_t is a typedef (not a #define) you *MUST*
+ * have defined by now Uquad_t yourself because 'unsigned type'
+ * is illegal. */
# define Uquad_t unsigned Quad_t
# endif
#endif
# endif
#endif
+#ifndef MAXPATHLEN
+# ifdef PATH_MAX
+# ifdef _POSIX_PATH_MAX
+# if PATH_MAX > _POSIX_PATH_MAX
+/* MAXPATHLEN is supposed to include the final null character,
+ * as opposed to PATH_MAX and _POSIX_PATH_MAX. */
+# define MAXPATHLEN (PATH_MAX+1)
+# else
+# define MAXPATHLEN (_POSIX_PATH_MAX+1)
+# endif
+# else
+# define MAXPATHLEN (PATH_MAX+1)
+# endif
+# else
+# ifdef _POSIX_PATH_MAX
+# define MAXPATHLEN (_POSIX_PATH_MAX+1)
+# else
+# define MAXPATHLEN 1024 /* Err on the large side. */
+# endif
+# endif
+#endif
+
#ifndef FUNC_NAME_TO_PTR
#define FUNC_NAME_TO_PTR(name) name
#endif
Gid_t getegid _((void));
#endif
-#ifdef DEBUGGING
#ifndef Perl_debug_log
#define Perl_debug_log PerlIO_stderr()
#endif
+
+#ifdef DEBUGGING
#undef YYDEBUG
#define YYDEBUG 1
#define DEB(a) a
XTERMBLOCK
} expectation;
+enum { /* pass one of these to get_vtbl */
+ want_vtbl_sv,
+ want_vtbl_env,
+ want_vtbl_envelem,
+ want_vtbl_sig,
+ want_vtbl_sigelem,
+ want_vtbl_pack,
+ want_vtbl_packelem,
+ want_vtbl_dbline,
+ want_vtbl_isa,
+ want_vtbl_isaelem,
+ want_vtbl_arylen,
+ want_vtbl_glob,
+ want_vtbl_mglob,
+ want_vtbl_nkeys,
+ want_vtbl_taint,
+ want_vtbl_substr,
+ want_vtbl_vec,
+ want_vtbl_pos,
+ want_vtbl_bm,
+ want_vtbl_fm,
+ want_vtbl_uvar,
+ want_vtbl_defelem,
+ want_vtbl_regexp,
+ want_vtbl_collxfrm,
+ want_vtbl_amagic,
+ want_vtbl_amagicelem,
+#ifdef USE_THREADS
+ want_vtbl_mutex,
+#endif
+ want_vtbl_regdata,
+ want_vtbl_regdatum
+};
/* Note: the lowest 8 bits are reserved for
stuffing into op->op_private */