Previous mail
Next mail
Formatted
Overview 10 days
Subject
Date
Thread
Author
From owner-gpc@gnu.de Wed Jul 12 02:58:19 2000
Return-Path: <owner-gpc@gnu.de>
Received: (from uucp@localhost)
by goedel.fjf.gnu.de (8.8.8/8.8.8) with UUCP id CAA06952
for frank@goedel; Wed, 12 Jul 2000 02:58:18 +0200
Received: (qmail 1305 invoked by uid 28); 11 Jul 2000 23:49:42 -0000
Delivered-To: gpc@gerwinski.de
Received: (qmail 1299 invoked from network); 11 Jul 2000 23:49:30 -0000
Received: from fcs280s.ncifcrf.gov (HELO ncisun1-nf0.ncifcrf.gov) (129.43.1.11)
by tim.gerwinski.de with SMTP; 11 Jul 2000 23:49:30 -0000
Received: from strawberry.ncifcrf.gov (strawberry.ncifcrf.gov [129.43.6.74])
by ncisun1-nf0.ncifcrf.gov (8.10.0/8.10.0) with ESMTP id e6BNs1G06757
for <gpc@gnu.de>; Tue, 11 Jul 2000 19:54:01 -0400 (EDT)
Received: (from toms@localhost)
by strawberry.ncifcrf.gov (8.9.3+Sun/8.9.1) id TAA27774
for gpc@gnu.de; Tue, 11 Jul 2000 19:53:23 -0400 (EDT)
Date: Tue, 11 Jul 2000 19:53:23 -0400 (EDT)
From: Tom Schneider <toms@ncifcrf.gov>
Message-Id: <200007112353.TAA27774@strawberry.ncifcrf.gov>
To: gpc@gnu.de
Subject: nestbug: bugs in gpcc with the use of --nested-comments
Sender: owner-gpc@gnu.de
Precedence: bulk
Status: O
program nestbug(output);
(* nestbug: bugs in gpcc with the use of --nested-comments
Dr. Thomas D. Schneider
National Cancer Institute
Laboratory of Experimental and Computational Biology
Frederick, Maryland 21702-1201
toms@ncifcrf.gov
permanent email: toms@alum.mit.edu
http://www.lecb.ncifcrf.gov/~toms/
*)
label 1; (* end of program *)
const
(* begin module version *)
version = 1.00; (* of nestbug.p 2000 July 11
1.00; 2000 July 11 origin *)
updateversion = 1.00; (* defines lowest acceptable current parameter file *)
(* end module version *)
(* begin module describe.nestbug *)
(*
name
nestbug: bugs in gpcc with the use of --nested-comments
synopsis
nestbug(output: out)
files
output: messages to the user
description
This code demonstrates a bug in gpc:
GNU Pascal version 20000707, based on gcc-2.95.2 19991024 (release).
which when called on this program as:
gpc --standard-pascal --nested-comments --transparent-file-names $nestbug.p -o $nestbug
will object as follows:
nestbug.p:54: parse error before `Documentation'
because, although the --nested-comments is on, it still can't handle
this unbalanced right curlie bracket: }
examples
documentation
see also
{GPC will also object to the } shell.p {program at}
http://www.lecb.ncifcrf.gov/~toms/delila/shell.html
author
Thomas Dana Schneider
bugs
1. See above.
2. ADDITIONAL BUG: Note also that GPC capitalizes the word
"Documentation", which is confusing and it should not do. Someone doing a
case sensitive search would not find the problem! This occurs in other
places in the code. GPC should NEVER change cases!!!! (Oh, I see. In
German one capitalizes nouns. Perhaps this is why you thought to do it.
The rest of the world does not and it will cause confusion and trouble.
How about creating a --German command line option? :-)
3. The use of the unbalanced bracket was legitimate in the shell program
as part of a quoted string inside the documentation comments.
{
I infer that when comments are parsed gpc does not remember the kind of
starting comment. It should recall that the comment of this documentation
began with a left-parenthesis-astrisk, and so should ignore everything
until it encounters an astrisk-right parenthesis. Apparently it doesn't
and is sensitive to the curlie brackets. (The reverse should hold inside
a curlie bracket comment of course.)
}
4. If the curlies around the above paragraph are deleted, the message is:
nestbug.p:92: unterminated string or character constant
nestbug.p:83: possible real start of unterminated constant
The program is sensitive to single quote marks! I had the word "doesn't"
in the bugs section, and it blocked the case mentioned above! The curlie
brackets above protect the single quote!
The whole comment skipping code needs a careful overhaul!
It should not be looking at quotes at all during comment skipping!
technical notes
The program does a successful goto to the end of the code from
the halt routine, so that bug is FIXED. :-) :-) Thank you!
*)
(* end module describe.nestbug *)
(* begin module halt *)
procedure halt;
(* stop the program. the procedure performs a goto to the end of the
program. you must have a label:
label 1;
declared, and also the end of the program must have this label:
1: end.
examples are in the module libraries.
this is the only goto in the delila system. *)
begin
writeln(output,' program halt.');
goto 1
end;
(* end module halt version = 'delmod 6.16 84 mar 12 tds/gds'; *)
(* begin module nestbug.themain *)
procedure themain;
(* the main procedure of the program *)
var
parameterversion: real; (* parameter version number *)
begin
writeln(output,'nestbug ',version:4:2);
halt;
end;
(* end module nestbug.themain *)
begin
themain;
1: end.
Previous mail
Next mail
Formatted
Overview 10 days
Subject
Date
Thread
Author
Note: This page contains information that does not originate from the owner of this web site, but from the authors of the mails archived. The owner of this web site is not responsible for the content of such information. Any use of that infomation requires the consent of the respective author.
Where WWW addresses (URLs) in the mails archived are marked as hyperlinks, this is only for the comfort of the reader. The content of the web pages linked to like this does not necessarily reflect the opinion of the owner of this web site or of the authors of the mails archived. The owner of this web site is not responsible for the content of such web pages. Those pages are explicitly not to be considered as part of the content of this page, but merely as references.
This page was created by Crystal 0.999 (Linux 2.4.27/i686).