[Oberon] FPGA - Oberon-0 program

Andreas Pirklbauer andreas_pirklbauer at yahoo.com
Sun Oct 22 14:12:32 CEST 2017


> On Sun Oct 22 10:43:29 CEST 2017 Tomas Kral wrote:
>
> Yes, building `IO.Mod' resolved that. Actually, the error
> reported really was "Call error: TestOberon0 module not
> found", that confused me.
>

This is because there is a bug in procedure Modules.Load.

The global variable “Modules.importing" is not set correctly
in some case cases. For example if one attempts to activate
a non-existing command of an already loaded module, e.g. if
you click on the text “Oberon.None”, it will display the
error message “Call error: System command not found”.

This bug can be fixed by inserting a single line as the
(new) 4th last line of Modules.Load, as shown below:

  PROCEDURE Load*(name: ARRAY OF CHAR; VAR newmod: Module);
    ...
  BEGIN

        ...
        body (*initialize module*)
      END
    ELSE error(0, name)       (*<---inserted*)
    END ;
    newmod := mod
  END Load; 

There are a few additional issues with Modules.Load
that I have fixed some time ago. But they have not
yet been published on the Oberon web page. If
interested, I can provide/publish the modified
version of “Modules" that fixes them all.

-AP

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.inf.ethz.ch/pipermail/oberon/attachments/20171022/066af315/attachment.html>


More information about the Oberon mailing list