summaryrefslogtreecommitdiff
path: root/systems/texlive/tlnet/tlpkg/tlperl/lib/CORE/util.h
diff options
context:
space:
mode:
Diffstat (limited to 'systems/texlive/tlnet/tlpkg/tlperl/lib/CORE/util.h')
-rw-r--r--systems/texlive/tlnet/tlpkg/tlperl/lib/CORE/util.h15
1 files changed, 6 insertions, 9 deletions
diff --git a/systems/texlive/tlnet/tlpkg/tlperl/lib/CORE/util.h b/systems/texlive/tlnet/tlpkg/tlperl/lib/CORE/util.h
index b2e0b7797b..d9b61611e4 100644
--- a/systems/texlive/tlnet/tlpkg/tlperl/lib/CORE/util.h
+++ b/systems/texlive/tlnet/tlpkg/tlperl/lib/CORE/util.h
@@ -23,11 +23,6 @@
# define PERL_FILE_IS_ABSOLUTE(f) \
(*(f) == '/' || *(f) == '\\' /* UNC/rooted path */ \
|| ((f)[0] && (f)[1] == ':')) /* drive name */
-#elif defined(NETWARE)
-# define PERL_FILE_IS_ABSOLUTE(f) \
- (((f)[0] && (f)[1] == ':') /* drive name */ \
- || ((f)[0] == '\\' && (f)[1] == '\\') /* UNC path */ \
- || ((f)[3] == ':')) /* volume name, currently only sys */
#elif defined(DOSISH)
# define PERL_FILE_IS_ABSOLUTE(f) \
(*(f) == '/' \
@@ -189,7 +184,7 @@ typedef struct {
/* uses var file to set default filename for newXS_deffile to use for CvFILE */
#define HSf_SETXSUBFN 0x00000020
#define HSf_POPMARK 0x00000040 /* popmark mode or you must supply ax and items */
-#define HSf_IMP_CXT 0x00000080 /* ABI, threaded/PERL_IMPLICIT_CONTEXT, pTHX_ present */
+#define HSf_IMP_CXT 0x00000080 /* ABI, threaded, MULTIPLICITY, pTHX_ present */
#define HSm_INTRPSIZE 0xFFFF0000 /* ABI, interp struct size */
/* A mask of bits in the key which must always match between a XS mod and interp.
Also if all ABI bits in a key are true, skip all ABI checks, it is very
@@ -203,7 +198,7 @@ typedef struct {
/* if in the future "" and NULL must be separated, XSVERLEN would be 0
means arg not present, 1 is empty string/null byte */
/* (((key) & 0x0000FF00) >> 8) is less efficient on Visual C */
-#define HS_GETXSVERLEN(key) ((key) >> 8 & 0xFF)
+#define HS_GETXSVERLEN(key) ((U8) ((key) >> 8))
#define HS_GETAPIVERLEN(key) ((key) & HSm_APIVERLEN)
/* internal to util.h macro to create a packed handshake key, all args must be constants */
@@ -226,7 +221,7 @@ means arg not present, 1 is empty string/null byte */
not public API. This more friendly version already collected all ABI info */
/* U32 return = (bool setxsubfn, bool popmark, "litteral_string_api_ver",
"litteral_string_xs_ver") */
-#ifdef PERL_IMPLICIT_CONTEXT
+#ifdef MULTIPLICITY
# define HS_KEY(setxsubfn, popmark, apiver, xsver) \
HS_KEYp(sizeof(PerlInterpreter), TRUE, setxsubfn, popmark, \
sizeof("" apiver "")-1, sizeof("" xsver "")-1)
@@ -252,7 +247,9 @@ returning NULL if not found. The terminating NUL bytes are not compared.
#ifdef HAS_MEMMEM
# define ninstr(big, bigend, little, lend) \
- ((char *) memmem((big), (bigend) - (big), \
+ (__ASSERT_(bigend >= big) \
+ __ASSERT_(lend >= little) \
+ (char *) memmem((big), (bigend) - (big), \
(little), (lend) - (little)))
#else
# define ninstr(a,b,c,d) Perl_ninstr(a,b,c,d)