delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/2002/12/31/09:25:14

Message-Id: <4.3.1.1.20021231091713.00fc3488@mailbox.matrox.com>
X-Sender: sbohdjal AT mailbox DOT matrox DOT com
X-Mailer: QUALCOMM Windows Eudora Version 4.3.1
Date: Tue, 31 Dec 2002 09:24:51 -0500
To: djgpp AT delorie DOT com
From: Serge Bohdjalian <sbohdjal AT matrox DOT com>
Subject: DJGPP GAWK 3.1.1 Bug
Mime-Version: 1.0
Reply-To: djgpp AT delorie DOT com

When I run the following AWK file...

BEGIN {
    $0 = "00E0";
    print $0 ", " ($0 && 1) ", " ($0 != "");
    $1 = "00E0";
    print $1 ", " ($1 && 1) ", " ($1 != "");
}

...with the DJGPP version of GAWK 3.1.1 for Windows, I get the following 
output...

00E0, 0, 1
00E0, 1, 1

...with the Cygwin version of GAWK 3.1.1 for Windows, I get...

00E0, 1, 1
00E0, 1, 1

As far as I know, if "$0" isn't blank, the value of "($0 && 1)" should be 
"1" (true). I get the same problem if I substitute "00E0" with "00E1" to 
"00E9". Other strings don't have have this problem (for example, "00EA"). 
The problem occurs whether I use file input or whether I manually assign 
"$0" (as above).

The problem is also discussed in a comp.lang.awk posting ("Bug in GAWK 
3.1.1?", Dec. 27, 2002). If this isn't where I should be reporting this 
problem, could you direct me to where it should be reported?

Thanks.

-Serge


- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019