[Oberon] Compiling in the RISC emulator
chuck at kuracali.com
Tue May 13 19:54:08 CEST 2014
On May 13, 2014, at 10:35 AM, Paul Reed <paulreed at paddedcell.com> wrote:
> Dear Mr. Perkins,
>> I am trying to compile Clibpoard.Mod and failing. This is what I see in
>> the System.Log:
>> Clipboard.Mod compiling Clipboard
>> pos 1513 new symbol file inhibited
>> compilation FAILED
>> I see 'new symbol file inhibited' for all compilations, I suspect I am
>> missing something important.
> Looking at the source code, the message is generated in the ORB (symbol
> table) module of the compiler when a new symbol file is needed (see the
> book, Ch. 12). ORP (the parser and main module) passes in a BOOLEAN
> (actually an in-out) parameter newSF, which has to be TRUE to generate a
> new symbol file. The parser has a global BOOLEAN newSF, which is set when
> the module filename is immediately followed by a "/" then a name, and the
> first character of the name is "s".
> Short answer: you need "/s". :)
> That's why there are two compile commands in the System.Tool, one with,
> and one without "/s". It's the only compiler option currently.
> A new symbol file is needed whenever the definition (external interface)
> of a module changes, as a simple mechanism to stop silently breaking
> client modules.
> Oberon compilers I have used (and built) in the past allowed a new symbol
> file to be generated silently the first time; but I personally prefer this
> way now - because you would have had to find out about it eventually.
> Hope that helps,
Aha! That's exactly what I needed, thanks.
More information about the Oberon