[m-rev.] for review: add terminates pragmas to throw/1 and error/1

Fergus Henderson fjh at cs.mu.OZ.AU
Wed Nov 19 04:01:13 AEDT 2003


On 18-Nov-2003, Simon Taylor <stayl at cs.mu.OZ.AU> wrote:
> On 13-Nov-2003, Julien Fischer <juliensf at students.cs.mu.OZ.AU> wrote:
> > Add pragma terminates declarations to exception.builtin_throw/1,
> > exception.throw/1 and require.error/1.
> 
> Isn't the semantics of exception.throw that it loops forever?

No -- after all, exception.throw _doesn't_ loop forever;
if the semantics said it did, the semantics would be wrong.

> You might want to check uses of termination information in the
> optimization passes of the compiler to make sure they don't
> assume this.

This is really a separate problem than the one that Julien Fischer
is tackling.  I will volunteer for this task.

-- 
Fergus Henderson <fjh at cs.mu.oz.au>  |  "I have always known that the pursuit
The University of Melbourne         |  of excellence is a lethal habit"
WWW: <http://www.cs.mu.oz.au/~fjh>  |     -- the last words of T. S. Garp.
--------------------------------------------------------------------------
mercury-reviews mailing list
post:  mercury-reviews at cs.mu.oz.au
administrative address: owner-mercury-reviews at cs.mu.oz.au
unsubscribe: Address: mercury-reviews-request at cs.mu.oz.au Message: unsubscribe
subscribe:   Address: mercury-reviews-request at cs.mu.oz.au Message: subscribe
--------------------------------------------------------------------------



More information about the reviews mailing list