From: Eric S. Raymond Date: Tue, 4 Mar 2003 12:16:06 +0000 (-0500) Subject: Ready to ship Don Knuth's fix. X-Git-Tag: 0.22~8 X-Git-Url: http://thyrsus.com/gitweb/?a=commitdiff_plain;h=15e847d0b08e2bce22380ab00ee3caa637d377e4;p=intercal.git Ready to ship Don Knuth's fix. --- diff --git a/NEWS b/NEWS index 9a93c07..dd5c84d 100644 --- a/NEWS +++ b/NEWS @@ -1,6 +1,15 @@ NEW IN THIS RELEASE - Release 0.21 (by Eric S. Raymond) + Release 0.22 (by Eric S. Raymond) 4 Mar 2003 + +1. Incorporated a minor fix patch from Donald Knuth. Yes, *the* +Donald Knuth. Seems he found a weakness in the code for handling +comments, and fixed it to do multiline comments properly. He also made +some improvements to intercal.el, and contributed a test program. + +2. Updated build machinery. This package now uses GNU autoconf. + + Release 0.21 (by Eric S. Raymond) 30 July 2002 1. Jonathan Nieder sent a grammar fix for BLR's old bug #5 (a bad spark-ears interaction.) diff --git a/src/feh.c b/src/feh.c index c070cbc..8203c2c 100644 --- a/src/feh.c +++ b/src/feh.c @@ -698,6 +698,7 @@ static char *nice_text(char *texts[], int lines) if (lines < 1) lines = 1; for (cp = buf, i = 0 ; i < lines ; ++i) { + if (cp>buf+MAXNICEBUF-10) goto abort; if (i) { (*cp++) = '\\'; (*cp++) = 'n'; @@ -706,6 +707,7 @@ static char *nice_text(char *texts[], int lines) (*cp++) = '\t'; } for (text = texts[i] ; *text ; cp++, text++) { + if (cp>buf+MAXNICEBUF-10) goto abort; if(*text == '"' || *text == '\\') { (*cp++) = '\\'; } @@ -714,6 +716,11 @@ static char *nice_text(char *texts[], int lines) } *cp = '\0'; return buf; +abort: (*cp++) = '.'; + (*cp++) = '.'; + (*cp++) = '.'; + *cp = '\0'; + return buf; } static void emit_guard(tuple *tn, FILE *fp) diff --git a/src/ick.y b/src/ick.y index 9f74a6b..100ed85 100644 --- a/src/ick.y +++ b/src/ick.y @@ -143,9 +143,9 @@ perform : lvalue GETS expr {ACTION($$, GETS, cons(GETS,$1,$3));} | RETRIEVE varlist {ACTION($$, RETRIEVE, rlist);} | IGNORE varlist {ACTION($$, IGNORE, rlist);} | REMEMBER varlist {ACTION($$, REMEMBER, rlist);} - | ABSTAIN LABEL {TARGET($$, ABSTAIN, $2);} + | ABSTAIN LABEL {stbeginline=0; TARGET($$, ABSTAIN, $2);} | ABSTAIN gerunds {ACTION($$, DISABLE, rlist);} - | REINSTATE LABEL {TARGET($$, REINSTATE, $2);} + | REINSTATE LABEL {stbeginline=0; TARGET($$, REINSTATE, $2);} | REINSTATE gerunds {ACTION($$, ENABLE, rlist);} | WRITE_IN inlist {ACTION($$, WRITE_IN, $2);} | READ_OUT outlist {ACTION($$, READ_OUT, $2);} diff --git a/website/index.html b/website/index.html index 7dac5ad..f757a76 100644 --- a/website/index.html +++ b/website/index.html @@ -22,7 +22,7 @@ content="Abandon All Sanity, Ye Who Enter Here" /> Home Page Up to Site Map -$Date: 2002-08-01 08:13:56 $ +$Date: 2003-03-04 07:15:40 $ @@ -94,7 +94,7 @@ a sense of humour. Unfortunately for you, I'm not."

Implementations

You can download the latest version of the C-INTERCAL +href="http://www.tuxedo.org/~esr/intercal/intercal-0.22.tar.gz">C-INTERCAL distribution here (includes the manual and sample programs). Requires either bison or yacc and flex or lex. Builds and runs nicely under any ANSI/POSIX platform, including Linux and the free @@ -208,7 +208,7 @@ stimulating.

Home Page Up to Site Map -$Date: 2002-08-01 08:13:56 $ +$Date: 2003-03-04 07:15:40 $