TDI bug
This message turned up in search, but its forum couldn’t be identified from the original transcript, so it may not be linked into its thread.
B ug in Opaque Type Handling
The R3.01a, March 88 release of the Modula-2 Compiler for the Amiga does not
handle Opaque Types. The following sample code reports
83: procedure implementation different from definition
when compiling the IMPLEMENTATION module.
Both modules compile without errors with the R3.01a (November 87) and R3.00a
releases.
Please let me know of any available updates, patches, or workarounds. I had
intended to start developing a new package in Modula-2 but unless I have a
fix so I can recompile my existing libraries I will use C.
DEFINITION MODULE Opaque; (* test opaque types *)
TYPE
Opaque;
PROCEDURE get( VAR v : INTEGER; op : Opaque);
END Opaque.
IMPLEMENTATION MODULE Opaque; (* test opaque types *)
TYPE
Opaque = POINTER TO OpaqueRec;
OpaqueRec = RECORD
x : INTEGER
END;
PROCEDURE get( VAR v : INTEGER; op : Opaque); BEGIN
v:= op^.x; END get;
END Opaque.