[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Gm2] GM2 Bug no. 2
From: |
Iztok Kobal |
Subject: |
[Gm2] GM2 Bug no. 2 |
Date: |
Sun, 17 Oct 2004 17:51:00 +0200 |
User-agent: |
Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7.2) Gecko/20040805 Netscape/7.2 |
GM2 - latest CVS
#>gm2 -c -Wiso -save-temps -g3 -O3 -gstabs+ -I. B.mod
B.mod:6:the following unknown symbols in module B were unresolved
B.mod:5:unknown symbol (a)
#>gm2 -c -Wiso -save-temps -g3 -O3 -gstabs+ -I. B1.mod
B1.mod:6:symbol (T) is already declared in this scope, use a different
name or remove the declaration
B.def:6:and symbol (T) is also declared here
Well, one of both or both should compile !
I would vote for the B.mod ! Seems correct enough to me.
I am not sure about the regularity of the overriding the T in B1.mod but
taking in consideration hiding and lolality concept of the Modula-2 the
global scope of the .mod is not so much global as the globality of the
scope of the .def. So the B1.mod should compile too. Or I am wrong ?
Yet the
#>gm2 -c -Wiso -save-temps -g3 -O3 -gstabs+ -I. Bok.mod
compiles fine so I suspect that the A.T and B.T and the (B.)T are not
mapped as equal.
Iztok
DEFINITION MODULE A;
TYPE
T = (a, b, c);
END A.
DEFINITION MODULE B;
IMPORT A;
TYPE
T = A.T;
END B.
IMPLEMENTATION MODULE B;
VAR t : T;
BEGIN
t := a;
END B.
IMPLEMENTATION MODULE B;
IMPORT A;
TYPE
T = A.T;
VAR t : T;
BEGIN
t := a;
END B.
IMPLEMENTATION MODULE B;
IMPORT A;
VAR t : T;
BEGIN
t := B.a;
END B.
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Gm2] GM2 Bug no. 2,
Iztok Kobal <=