Integrate changes #8853,8854 from maintperl to mainline.
Jarkko Hietaniemi [Tue, 20 Feb 2001 17:34:32 +0000 (17:34 +0000)]
EBDIC fixes, README.win32 Borland update.

p4raw-link: @8854 on //depot/maint-5.6/perl: ece00f1416215bb2d7a51174ba7aa627e0b0a3ad
p4raw-link: @8853 on //depot/maint-5.6/perl: 3ef34714520621f9238ff67b9f34f043113325c1

p4raw-id: //depot/perl@8857
p4raw-integrated: from //depot/maint-5.6/perl@8851 'merge in'
README.win32 (@8175..) handy.h (@8789..) util.c (@8806..)

README.win32
handy.h
util.c

index ddc1f84..113c0f5 100644 (file)
@@ -214,6 +214,14 @@ default path.  You will need to copy the DLLs reported by the messages
 from where Borland chose to install it, into the Windows system directory
 (usually somewhere like C:\WINNT\SYSTEM32) and rerun the test.
 
+If you're using Borland compiler versions 5.2 and below, you're risking
+to face a problem with finding incorrect header files. Don't be surprised
+when during compiling perl extension "Tk" you will fail because both perl
+and tk contain a header file with same name - "patchlevel.h".  The latest
+Borland compilers are free of this misbehaviour, and they even invented
+option -VI- for backward (bugward) compatibility as "Use old Borland
+search algorithm  to locate header files".
+
 Please report any other failures as described under L<BUGS AND CAVEATS>.
 
 =head2 Installation
diff --git a/handy.h b/handy.h
index 9ac2e29..1f1cc53 100644 (file)
--- a/handy.h
+++ b/handy.h
@@ -483,7 +483,7 @@ Converts the specified character to lowercase.
 #define isBLANK_LC_utf8(c)     isBLANK(c) /* could be wrong */
 
 #ifdef EBCDIC
-#  define toCTRL(c)    ebcdic_control(c)
+#  define toCTRL(c)    Perl_ebcdic_control(c)
 #else
   /* This conversion works both ways, strangely enough. */
 #  define toCTRL(c)    (toUPPER(c) ^ 64)
diff --git a/util.c b/util.c
index ce64a3a..409307f 100644 (file)
--- a/util.c
+++ b/util.c
@@ -4004,6 +4004,9 @@ Perl_report_evil_fh(pTHX_ GV *gv, IO *io, I32 op)
 }
 
 #ifdef EBCDIC
+/* in ASCII order, not that it matters */
+static const char controllablechars[] = "?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_";
+
 int
 Perl_ebcdic_control(pTHX_ int ch)
 {