bug-gnucobol
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [open-cobol-list] How do I report bugs?


From: Dave Stratford
Subject: Re: [open-cobol-list] How do I report bugs?
Date: Sun, 11 Apr 2010 14:23:12 +0100
User-agent: Pluto/3.04c (RISC-OS/6.20)

On 11 Apr, Vince Coen <address@hidden> wrote:
> Hi Dave,

> On Saturday 10 Apr 2010, Dave Stratford wrote:
> > Hi Folks,
> > 
> > I've been running a number of VME C2 cobol sources through the open
> > cobol compiler and found two, possibly three minor bugs in the 1.1
> > release. Fortunately they are all minor, but would prevent anyone from
> > just lifting the code from the VME mainframe and dropping it directly
> > into open cobol without having to go through and check, and most
> > likely change, every single source.

> Did not know that any ICL m/f's were still around.

Loads. Well. A number anyway. To my knowledge the DWP still use them, as
do the Inland Revenue and Customs and Excise. The Patent Office, at least
two water companies, at least one bank and at least two building
societies. They're called NOVA's now btw.

> > 
> > 1) According to the cobol standard, INITIALISE is a valid alternative
> > spelling for INITIALIZE, OC doesn't allow it when technically it
> > should.

> Nope, the standard is INITIALIZE    the change from Z to S was strictly
> by ICL on their 2900/3900 series cobol compilers as a deviation from
> the standard. It also used to apply to very early Micro Focus Cobol
> compilers eg, Cis Cobol but is not present after, ie, from Workbench v3.

Not just ICL, also by a number of other compilers, including BULL and
Microfocus. It is in a copy of the standard I have, even if that standard
is a few years old now. Haven't used Microfocus since 1997 so they could
have changed since I suppose.

>  
> > 2) OC only allows a single word in the SOURCE-COMPUTER and
> > OBJECT-COMPUTE sentences for the computer name. I realise that this is
> > purely documentary but the computer name should allow more than 1 word.

> >From the Standards manual (ISO/IEC 1989:20xx CD 1.1 (E)):

> 12.3.4.1 General format 12.3.4.2 Syntax rules 1) If computer-name-1 is
> not specified, the second period in the general format may be omitted.
> 12.3.4.3 General rules 1) All clauses of the SOURCE-COMPUTER paragraph
> apply to the source unit in which they are explicitly or implicitly
> specified and to any source unit contained within that source unit. 2)
> When the SOURCE-COMPUTER paragraph is not specified and the source unit
> is not contained within a source unit including a SOURCE-COMPUTER
> paragraph, the computer on which the source unit is being compiled is
> the source computer. 3) When the SOURCE-COMPUTER paragraph is specified,
> but computer-name-1 is not specified, the computer upon which the
> source unit is being compiled is the source computer.


> In the Open Cobol manual it states for object-computer. paragraph:

> The value specified for computer-name-2 is irrelevant, provided it is a
> valid COBOL word that does not match any OpenCOBOL reserved word.

> And looking at an old IBM manual it also is one word and memory is
> telling me ICL as also one word both for ICL 1900 as well as all new
> range.

Definately nope. The number of times I have seen something like "ICL
2988", or "SERIES 39 LEVEL 80" or other similar is amazing. I personally
always use "ICL VME". Interestingly the Microfocus manual I have here does
say 1 cobol word but allowed more than 1 through, but I know that at least
one IBM compiler has, if not still does, allowed more than 1 word.

> That is not to say that additional elements to the paragraph could not
> exist eg, segment-limit etc. Not that many compilers use 'em.
>  
> > 3) The following STRING statement failed on the "IS". It compiled quite
> > happily on C2 cobol on VME as the "IS" is just a noise word anyway. I'm
> > not sure whether this is an error in OC, or in C2 cobol which perhaps
> > shouldn't have let it through.
> > 
> >               STRING WH-SPAN-O DELIMITED BY SIZE
> >                      WM-WORD-2 DELIMITED BY SPACES
> >                      WH-SPAN-C DELIMITED BY SIZE
> >                      WM-WORD-3 DELIMITED BY SPACES
> >                      " " DELIMITED BY SIZE
> >                      WM-WORD-4 DELIMITED BY SPACES
> >                      " " DELIMITED BY SIZE
> >                      WM-WORD-5 DELIMITED BY SPACES
> >                      " " DELIMITED BY SIZE
> >                      WM-REMAINDER DELIMITED BY SIZE
> >                      INTO F03-REC-200
> >                      POINTER IS WM-SPACE-COUNT

> 'pointer is' is NOT a valid combination eg ;is' noise word is not
> accetable in both the standard nor OC.

It compiles okay in VME, but I wasn't sure where the fault lay here. I
suspect then that the C2 compiler is technically at fault as it allowed an
incorrect noise word through.

Dave

-- 
Hexagon Systems Ltd       Experts in VME solutions    www.hexagon-systems.co.uk
HSL Webz                  Experts in web design              www.hsl-webz.co.uk



reply via email to

[Prev in Thread] Current Thread [Next in Thread]