[m-dev.] IL standard library problems
Julien Fischer
juliensf at csse.unimelb.edu.au
Wed Nov 7 19:35:53 AEDT 2007
On Wed, 7 Nov 2007, Jonathan Morgan wrote:
> On Nov 7, 2007 4:42 PM, Julien Fischer <juliensf at csse.unimelb.edu.au> wrote:
>> On Wed, 7 Nov 2007, Jonathan Morgan wrote:
>>> I have been trying to build the standard library in the IL grade
>>> again. A few problems that I found:
>>>
>>> 1. There was a warning that variables weren't referenced for io.do_make_temp/3.
>>
>> A warning from what? mmc, gcc ...?
>
> Sorry, that wasn't clear at all. It was due to variables not being
> used in the foreign code, as the error below shows. Easy to fix, but
> does halt the compilation of the standard library.
>
> io.m:9915: In the C# code for predicate `io.do_make_temp'/8:
> io.m:9915: warning: variables `Dir, Prefix' do not occur in the C# code.
As you say, easy to fix.
>>> 2. Building the new pretty printer fails, because IL does not support
>>> mutable variables. Is it necessary to support the new pretty printer
>>> for anything?
>>
>> The debugger uses it, but that doesn't work with the IL backend anyway.
>
> Should it be not included at all for grades without mutables, or
> should I just ignore this and fix the mutable problem when I have
> time?
It depends on how you intend to fix it?
A temporary fix would be to provide C# foreign_procs for any
affected predicates, i.e. the ones that call the mutable access preds.
The C# foreign_procs would override the Mercury clauses used by the
C backends.
Julien.
--------------------------------------------------------------------------
mercury-developers mailing list
Post messages to: mercury-developers at csse.unimelb.edu.au
Administrative Queries: owner-mercury-developers at csse.unimelb.edu.au
Subscriptions: mercury-developers-request at csse.unimelb.edu.au
--------------------------------------------------------------------------
More information about the developers
mailing list