summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Changes5
-rw-r--r--README.win322
-rw-r--r--pod/perldelta.pod23
-rw-r--r--proto.h2
-rw-r--r--toke.c10
-rw-r--r--win32/GenCAPI.pl46
-rw-r--r--win32/win32.c1
7 files changed, 73 insertions, 16 deletions
diff --git a/Changes b/Changes
index d1c8d8a580..5aa6852ee8 100644
--- a/Changes
+++ b/Changes
@@ -78,6 +78,11 @@ Version 5.005_50 Development release working toward 5.006
----------------
____________________________________________________________________________
+[ 1665] By: gsar on 1998/07/26 05:38:48
+ Log: add trailing newline to file
+ Branch: perl
+ ! Changes lib/unicode/blocks.txt
+____________________________________________________________________________
[ 1664] By: gsar on 1998/07/26 05:08:48
Log: integrate proto.h additions from maint-5.005
Branch: perl
diff --git a/README.win32 b/README.win32
index 6d9b01500f..6ac163a0a8 100644
--- a/README.win32
+++ b/README.win32
@@ -70,7 +70,7 @@ If the build fails under that shell, try building again with the cmd
shell. The Makefile also has known incompatibilites with the "command.com"
shell that comes with Windows95, so building under Windows95 should
be considered "unsupported". However, there have been reports of successful
-build attempts using 4DOS/NT version 3.00 under Windows95, using dmake, but
+build attempts using 4DOS/NT version 6.01 under Windows95, using dmake, but
your mileage may vary.
The surest way to build it is on WindowsNT, using the cmd shell.
diff --git a/pod/perldelta.pod b/pod/perldelta.pod
index 808b3f6080..d43f657b14 100644
--- a/pod/perldelta.pod
+++ b/pod/perldelta.pod
@@ -135,7 +135,12 @@ features make them less often a problem. See L<New Diagnostics>.
Perl has a new Social Contract for contributors. See F<Porting/Contract>.
The license included in much of the Perl documentation has changed.
-See L<perl> and the individual perl man pages listed therein.
+Most of the Perl documentation was previously under the implicit GNU
+General Public License or the Artistic License (at the user's choice).
+Now much of the documentation unambigously states the terms under which
+it may be distributed. Those terms are in general much less restrictive
+than the GNU GPL. See L<perl> and the individual perl man pages listed
+therein.
=head1 Core Changes
@@ -301,13 +306,15 @@ and in XSUBs.
=head2 More generous treatment of carriage returns
-Perl used to complain if it encountered carriage returns in scripts. Now
-they are treated like whitespace. Literal carriage returns inside
-string literals and here documents are ignored if they are paired with
-newlines, or treated like newlines if they stand alone. This behavior
-means that literal carriage returns in files should be avoided. You
-can get the older, more compatible (but less generous) behavior by
-defining the preprocessor symbol C<TMP_CRLF_PATCH> when building perl.
+Perl used to complain if it encountered literal carriage returns in
+scripts. Now they are mostly treated like whitespace within program text.
+Inside string literals and here documents, literal carriage returns are
+ignored if they occur paired with newlines, or get interpreted as newlines
+if they stand alone. This behavior means that literal carriage returns
+in files should be avoided. You can get the older, more compatible (but
+less generous) behavior by defining the preprocessor symbol
+C<PERL_STRICT_CR> when building perl. Of course, all this has nothing
+whatever to do with how escapes like C<\r> are handled within strings.
Note that this doesn't somehow magically allow you to keep all text files
in DOS format. The generous treatment only applies to files that perl
diff --git a/proto.h b/proto.h
index 4dd1e7aa1b..e84c42ed77 100644
--- a/proto.h
+++ b/proto.h
@@ -74,7 +74,7 @@ VIRTUAL char ** get_op_names _((void));
VIRTUAL char * get_no_modify _((void));
VIRTUAL U32 * get_opargs _((void));
VIRTUAL I32 cxinc _((void));
-VIRTUAL void deb _((const char* pat,...)) /*__attribute__((format(printf,1,2)))*/;
+VIRTUAL void deb _((const char* pat,...));
VIRTUAL void deb_growlevel _((void));
VIRTUAL void debprofdump _((void));
VIRTUAL I32 debop _((OP* o));
diff --git a/toke.c b/toke.c
index 13cc965cd1..fb0715d89e 100644
--- a/toke.c
+++ b/toke.c
@@ -11,8 +11,6 @@
* "It all comes from here, the stench and the peril." --Frodo
*/
-#define TMP_CRLF_PATCH
-
#include "EXTERN.h"
#include "perl.h"
@@ -2078,7 +2076,7 @@ yylex(void)
}
goto retry;
case '\r':
-#ifndef TMP_CRLF_PATCH
+#ifdef PERL_STRICT_CR
warn("Illegal character \\%03o (carriage return)", '\r');
croak(
"(Maybe you didn't strip carriage returns after a network transfer?)\n");
@@ -5318,7 +5316,7 @@ scan_heredoc(register char *s)
*d++ = '\n';
*d = '\0';
len = d - PL_tokenbuf;
-#ifdef TMP_CRLF_PATCH
+#ifndef PERL_STRICT_CR
d = strchr(s, '\r');
if (d) {
char *olds = s;
@@ -5394,7 +5392,7 @@ scan_heredoc(register char *s)
}
PL_curcop->cop_line++;
PL_bufend = SvPVX(PL_linestr) + SvCUR(PL_linestr);
-#ifdef TMP_CRLF_PATCH
+#ifndef PERL_STRICT_CR
if (PL_bufend - PL_linestart >= 2) {
if ((PL_bufend[-2] == '\r' && PL_bufend[-1] == '\n') ||
(PL_bufend[-2] == '\n' && PL_bufend[-1] == '\r'))
@@ -5693,7 +5691,7 @@ scan_str(char *start)
if (s < PL_bufend) break; /* handle case where we are done yet :-) */
-#ifdef TMP_CRLF_PATCH
+#ifndef PERL_STRICT_CR
if (to - SvPVX(sv) >= 2) {
if ((to[-2] == '\r' && to[-1] == '\n') ||
(to[-2] == '\n' && to[-1] == '\r'))
diff --git a/win32/GenCAPI.pl b/win32/GenCAPI.pl
index 09827f29d7..33ffe9446d 100644
--- a/win32/GenCAPI.pl
+++ b/win32/GenCAPI.pl
@@ -202,6 +202,29 @@ extern "C" $type $funcName ($args)
ENDCODE
print OUTFILE "#endif\n" unless ($separateObj == 0);
}
+ elsif($name eq "sv_catpvf_mg") {
+ print OUTFILE "\n#ifdef $name" . "_defined" unless ($separateObj == 0);
+ $args[0] =~ /(\w+)\W*$/;
+ $arg0 = $1;
+ $args[1] =~ /(\w+)\W*$/;
+ $arg1 = $1;
+ print OUTFILE <<ENDCODE;
+
+#undef $name
+#ifndef mg_set
+#define mg_set pPerl->Perl_mg_set
+#endif
+extern "C" $type $funcName ($args)
+{
+ va_list args;
+ va_start(args, $arg1);
+ pPerl->Perl_sv_vcatpvfn($arg0, $arg1, strlen($arg1), &args, NULL, 0, NULL);
+ va_end(args);
+ SvSETMAGIC(sv);
+}
+ENDCODE
+ print OUTFILE "#endif\n" unless ($separateObj == 0);
+ }
elsif($name eq "sv_setpvf") {
print OUTFILE "\n#ifdef $name" . "_defined" unless ($separateObj == 0);
$args[0] =~ /(\w+)\W*$/;
@@ -221,6 +244,29 @@ extern "C" $type $funcName ($args)
ENDCODE
print OUTFILE "#endif\n" unless ($separateObj == 0);
}
+ elsif($name eq "sv_setpvf_mg") {
+ print OUTFILE "\n#ifdef $name" . "_defined" unless ($separateObj == 0);
+ $args[0] =~ /(\w+)\W*$/;
+ $arg0 = $1;
+ $args[1] =~ /(\w+)\W*$/;
+ $arg1 = $1;
+ print OUTFILE <<ENDCODE;
+
+#undef $name
+#ifndef mg_set
+#define mg_set pPerl->Perl_mg_set
+#endif
+extern "C" $type $funcName ($args)
+{
+ va_list args;
+ va_start(args, $arg1);
+ pPerl->Perl_sv_vsetpvfn($arg0, $arg1, strlen($arg1), &args, NULL, 0, NULL);
+ va_end(args);
+ SvSETMAGIC(sv);
+}
+ENDCODE
+ print OUTFILE "#endif\n" unless ($separateObj == 0);
+ }
elsif($name eq "fprintf") {
print OUTFILE "\n#ifdef $name" . "_defined" unless ($separateObj == 0);
$args[0] =~ /(\w+)\W*$/;
diff --git a/win32/win32.c b/win32/win32.c
index 03a9bd8aa9..721b62ace9 100644
--- a/win32/win32.c
+++ b/win32/win32.c
@@ -1175,6 +1175,7 @@ win32_crypt(const char *txt, const char *salt)
return des_fcrypt(crypt_buffer, txt, salt);
#else
die("The crypt() function is unimplemented due to excessive paranoia.");
+ return Nullch;
#endif
}
#endif