summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--INSTALL14
-rw-r--r--embed.fnc3
-rw-r--r--embed.h6
-rw-r--r--ext/Devel/PPPort/PPPort.pm2
-rw-r--r--gv.c24
-rw-r--r--gv.h12
-rw-r--r--pod/perlapi.pod57
-rw-r--r--proto.h3
-rw-r--r--sv.h6
-rw-r--r--toke.c29
10 files changed, 33 insertions, 123 deletions
diff --git a/INSTALL b/INSTALL
index dbb757afc2..c3c3c15328 100644
--- a/INSTALL
+++ b/INSTALL
@@ -1612,16 +1612,6 @@ to
then propagate your changes with B<sh Configure -S> and rebuild
with B<make depend; make>.
-=item CRIPPLED_CC
-
-If you still can't compile successfully, try:
-
- sh Configure -Accflags=-DCRIPPLED_CC
-
-This flag simplifies some complicated expressions for compilers that get
-indigestion easily. (Just because you get no errors doesn't mean it
-compiled right!)
-
=item Missing functions
If you have missing routines, you probably need to add some library or
@@ -1735,14 +1725,12 @@ Genix may need to use libc rather than libc_s, or #undef VARARGS.
NCR Tower 32 (OS 2.01.01) may need -W2,-Sl,2000 and #undef MKDIR.
-UTS may need one or more of -DCRIPPLED_CC, -K or -g, and undef LSTAT.
+UTS may need one or more of -K or -g, and undef LSTAT.
FreeBSD can fail the lib/ipc_sysv.t test if SysV IPC has not been
configured to the kernel. Perl tries to detect this, though, and
you will get a message telling what to do.
-If you get syntax errors on '(', try -DCRIPPLED_CC.
-
Machines with half-implemented dbm routines will need to #undef I_ODBM
HP-UX 11 Y2K patch "Y2K-1100 B.11.00.B0125 HP-UX Core OS Year 2000
diff --git a/embed.fnc b/embed.fnc
index 8b7727b6e7..8e2070b7b7 100644
--- a/embed.fnc
+++ b/embed.fnc
@@ -1286,9 +1286,6 @@ s |char* |incl_perldb
s |I32 |utf16_textfilter|int idx|SV *sv|int maxlen
s |I32 |utf16rev_textfilter|int idx|SV *sv|int maxlen
#endif
-# if defined(CRIPPLED_CC)
-s |int |uni |I32 f|char *s
-# endif
# if defined(PERL_CR_FILTER)
s |I32 |cr_textfilter |int idx|SV *sv|int maxlen
# endif
diff --git a/embed.h b/embed.h
index 10c6a534c0..92debc8668 100644
--- a/embed.h
+++ b/embed.h
@@ -1198,9 +1198,6 @@
#define utf16_textfilter S_utf16_textfilter
#define utf16rev_textfilter S_utf16rev_textfilter
#endif
-# if defined(CRIPPLED_CC)
-#define uni S_uni
-# endif
# if defined(PERL_CR_FILTER)
#define cr_textfilter S_cr_textfilter
# endif
@@ -2751,9 +2748,6 @@
#define utf16_textfilter(a,b,c) S_utf16_textfilter(aTHX_ a,b,c)
#define utf16rev_textfilter(a,b,c) S_utf16rev_textfilter(aTHX_ a,b,c)
#endif
-# if defined(CRIPPLED_CC)
-#define uni(a,b) S_uni(aTHX_ a,b)
-# endif
# if defined(PERL_CR_FILTER)
#define cr_textfilter(a,b,c) S_cr_textfilter(aTHX_ a,b,c)
# endif
diff --git a/ext/Devel/PPPort/PPPort.pm b/ext/Devel/PPPort/PPPort.pm
index d37452a602..d5e71f430b 100644
--- a/ext/Devel/PPPort/PPPort.pm
+++ b/ext/Devel/PPPort/PPPort.pm
@@ -440,7 +440,7 @@ __DATA__
nsv; \
})
# else
-# if defined(CRIPPLED_CC) || defined(USE_THREADS)
+# if defined(USE_THREADS)
static SV * newRV_noinc (SV * sv)
{
SV *nsv = (SV*)newRV(sv);
diff --git a/gv.c b/gv.c
index 5b32b0d9f8..09210956da 100644
--- a/gv.c
+++ b/gv.c
@@ -1245,30 +1245,6 @@ Perl_gp_free(pTHX_ GV *gv)
GvGP(gv) = 0;
}
-#if defined(CRIPPLED_CC) && (defined(iAPX286) || defined(M_I286) || defined(I80286))
-#define MICROPORT
-#endif
-
-#ifdef MICROPORT /* Microport 2.4 hack */
-AV *GvAVn(gv)
-register GV *gv;
-{
- if (GvGP(gv)->gp_av)
- return GvGP(gv)->gp_av;
- else
- return GvGP(gv_AVadd(gv))->gp_av;
-}
-
-HV *GvHVn(gv)
-register GV *gv;
-{
- if (GvGP(gv)->gp_hv)
- return GvGP(gv)->gp_hv;
- else
- return GvGP(gv_HVadd(gv))->gp_hv;
-}
-#endif /* Microport 2.4 hack */
-
int
Perl_magic_freeovrld(pTHX_ SV *sv, MAGIC *mg)
{
diff --git a/gv.h b/gv.h
index 2edc9b9488..7db4ba0f5c 100644
--- a/gv.h
+++ b/gv.h
@@ -22,10 +22,6 @@ struct gp {
char * gp_file; /* file first declared in (for -w) */
};
-#if defined(CRIPPLED_CC) && (defined(iAPX286) || defined(M_I286) || defined(I80286))
-#define MICROPORT
-#endif
-
#define GvXPVGV(gv) ((XPVGV*)SvANY(gv))
#define GvGP(gv) (GvXPVGV(gv)->xgv_gp)
@@ -56,22 +52,14 @@ Return the SV from the GV.
/* This macro is deprecated. Do not use! */
#define GvREFCNT_inc(gv) ((GV*)SvREFCNT_inc(gv)) /* DO NOT USE */
-#ifdef MICROPORT /* Microport 2.4 hack */
-AV *GvAVn();
-#else
#define GvAVn(gv) (GvGP(gv)->gp_av ? \
GvGP(gv)->gp_av : \
GvGP(gv_AVadd(gv))->gp_av)
-#endif
#define GvHV(gv) ((GvGP(gv))->gp_hv)
-#ifdef MICROPORT /* Microport 2.4 hack */
-HV *GvHVn();
-#else
#define GvHVn(gv) (GvGP(gv)->gp_hv ? \
GvGP(gv)->gp_hv : \
GvGP(gv_HVadd(gv))->gp_hv)
-#endif /* Microport 2.4 hack */
#define GvCV(gv) (GvGP(gv)->gp_cv)
#define GvCVGEN(gv) (GvGP(gv)->gp_cvgen)
diff --git a/pod/perlapi.pod b/pod/perlapi.pod
index e8a45454cf..0a119452bf 100644
--- a/pod/perlapi.pod
+++ b/pod/perlapi.pod
@@ -2312,16 +2312,6 @@ non-numeric warning), even if your atof() doesn't grok them.
=for hackers
Found in file sv.c
-=item memcmp_byte_utf8
-
-Similar to memcmp(), but the first string is with bytes, the second
-with utf8. Takes into account that the lengths may be different.
-
- int memcmp_byte_utf8(char *sbyte, STRLEN lbyte, char *sutf, STRLEN lutf)
-
-=for hackers
-Found in file util.c
-
=item newRV_inc
Creates an RV wrapper for an SV. The reference count for the original SV is
@@ -2594,22 +2584,22 @@ version which guarantees to evaluate sv only once.
=for hackers
Found in file sv.h
-=item SvIVx
+=item SvIVX
-Coerces the given SV to an integer and returns it. Guarantees to evaluate
-sv only once. Use the more efficient C<SvIV> otherwise.
+Returns the raw value in the SV's IV slot, without checks or conversions.
+Only use when you are sure SvIOK is true. See also C<SvIV()>.
- IV SvIVx(SV* sv)
+ IV SvIVX(SV* sv)
=for hackers
Found in file sv.h
-=item SvIVX
+=item SvIVx
-Returns the raw value in the SV's IV slot, without checks or conversions.
-Only use when you are sure SvIOK is true. See also C<SvIV()>.
+Coerces the given SV to an integer and returns it. Guarantees to evaluate
+sv only once. Use the more efficient C<SvIV> otherwise.
- IV SvIVX(SV* sv)
+ IV SvIVx(SV* sv)
=for hackers
Found in file sv.h
@@ -3172,22 +3162,22 @@ for a version which guarantees to evaluate sv only once.
=for hackers
Found in file sv.h
-=item SvUVx
+=item SvUVX
-Coerces the given SV to an unsigned integer and returns it. Guarantees to
-evaluate sv only once. Use the more efficient C<SvUV> otherwise.
+Returns the raw value in the SV's UV slot, without checks or conversions.
+Only use when you are sure SvIOK is true. See also C<SvUV()>.
- UV SvUVx(SV* sv)
+ UV SvUVX(SV* sv)
=for hackers
Found in file sv.h
-=item SvUVX
+=item SvUVx
-Returns the raw value in the SV's UV slot, without checks or conversions.
-Only use when you are sure SvIOK is true. See also C<SvUV()>.
+Coerces the given SV to an unsigned integer and returns it. Guarantees to
+evaluate sv only once. Use the more efficient C<SvUV> otherwise.
- UV SvUVX(SV* sv)
+ UV SvUVx(SV* sv)
=for hackers
Found in file sv.h
@@ -3537,10 +3527,10 @@ Found in file sv.c
Copies a stringified representation of the source SV into the
destination SV. Automatically performs any necessary mg_get and
-coercion of numeric values into strings. Guaranteed to preserve
+coercion of numeric values into strings. Guaranteed to preserve
UTF-8 flag even from overloaded objects. Similar in nature to
-sv_2pv[_flags] but operates directly on an SV instead of just the
-string. Mostly uses sv_2pv_flags to do its work, except when that
+sv_2pv[_flags] but operates directly on an SV instead of just the
+string. Mostly uses sv_2pv_flags to do its work, except when that
would lose the UTF-8'ness of the PV.
void sv_copypv(SV* dsv, SV* ssv)
@@ -4389,6 +4379,9 @@ This may not be possible if the PV contains non-byte encoding characters;
if this is the case, either returns false or, if C<fail_ok> is not
true, croaks.
+This is not as a general purpose Unicode to byte encoding interface:
+use the Encode extension for that.
+
NOTE: this function is experimental and may change or be
removed without notice.
@@ -4415,6 +4408,9 @@ Forces the SV to string form if it is not already.
Always sets the SvUTF8 flag to avoid future validity checks even
if all the bytes have hibit clear.
+This is not as a general purpose byte encoding to Unicode interface:
+use the Encode extension for that.
+
STRLEN sv_utf8_upgrade(SV *sv)
=for hackers
@@ -4429,6 +4425,9 @@ if all the bytes have hibit clear. If C<flags> has C<SV_GMAGIC> bit set,
will C<mg_get> on C<sv> if appropriate, else not. C<sv_utf8_upgrade> and
C<sv_utf8_upgrade_nomg> are implemented in terms of this function.
+This is not as a general purpose byte encoding to Unicode interface:
+use the Encode extension for that.
+
STRLEN sv_utf8_upgrade_flags(SV *sv, I32 flags)
=for hackers
diff --git a/proto.h b/proto.h
index ac6f2815cd..9fd88d3750 100644
--- a/proto.h
+++ b/proto.h
@@ -1321,9 +1321,6 @@ STATIC char* S_incl_perldb(pTHX);
STATIC I32 S_utf16_textfilter(pTHX_ int idx, SV *sv, int maxlen);
STATIC I32 S_utf16rev_textfilter(pTHX_ int idx, SV *sv, int maxlen);
#endif
-# if defined(CRIPPLED_CC)
-STATIC int S_uni(pTHX_ I32 f, char *s);
-# endif
# if defined(PERL_CR_FILTER)
STATIC I32 S_cr_textfilter(pTHX_ int idx, SV *sv, int maxlen);
# endif
diff --git a/sv.h b/sv.h
index 8fd4ae7b69..b9567685b0 100644
--- a/sv.h
+++ b/sv.h
@@ -161,7 +161,7 @@ perform the upgrade if necessary. See C<svtype>.
nsv; \
})
#else
-# if defined(CRIPPLED_CC) || defined(USE_5005THREADS)
+# ifdef USE_5005THREADS
# if defined(VMS) && defined(__ALPHA)
# define SvREFCNT_inc(sv) \
(PL_Sv=(SV*)(sv), (PL_Sv && __ATOMIC_INCREMENT_LONG(&(SvREFCNT(PL_Sv)))), (SV *)PL_Sv)
@@ -967,7 +967,7 @@ otherwise.
#define sv_utf8_upgrade_nomg(sv) sv_utf8_upgrade_flags(sv, 0)
#define sv_catpvn_nomg(dsv, sstr, slen) sv_catpvn_flags(dsv, sstr, slen, 0)
-#ifndef CRIPPLED_CC
+/* #ifndef CRIPPLED_CC */
/* redefine some things to more efficient inlined versions */
/* Let us hope that bitmaps for UV and IV are the same */
@@ -1131,7 +1131,7 @@ otherwise.
# define SvTRUEx(sv) ((PL_Sv = (sv)), SvTRUE(PL_Sv))
#endif /* !USE_5005THREADS */
#endif /* !__GNU__ */
-#endif /* !CRIPPLED_CC */
+/* #endif !CRIPPLED_CC */
/*
=for apidoc Am|SV*|newRV_inc|SV* sv
diff --git a/toke.c b/toke.c
index 82b7e0d651..87c94c1cf3 100644
--- a/toke.c
+++ b/toke.c
@@ -685,35 +685,6 @@ S_check_uni(pTHX)
}
}
-/* workaround to replace the UNI() macro with a function. Only the
- * hints/uts.sh file mentions this. Other comments elsewhere in the
- * source indicate Microport Unix might need it too.
- */
-
-#ifdef CRIPPLED_CC
-
-#undef UNI
-#define UNI(f) return uni(f,s)
-
-STATIC int
-S_uni(pTHX_ I32 f, char *s)
-{
- yylval.ival = f;
- PL_expect = XTERM;
- PL_bufptr = s;
- PL_last_uni = PL_oldbufptr;
- PL_last_lop_op = f;
- if (*s == '(')
- return FUNC1;
- s = skipspace(s);
- if (*s == '(')
- return FUNC1;
- else
- return UNIOP;
-}
-
-#endif /* CRIPPLED_CC */
-
/*
* LOP : macro to build a list operator. Its behaviour has been replaced
* with a subroutine, S_lop() for which LOP is just another name.