[m-dev.] misleading error message

Peter Schachte schachte at cs.mu.OZ.AU
Tue Jul 19 17:32:39 AEST 2005


> >     delaytest.m:045: Error: some but not all arguments have modes:
> >     first(dvar(int) :: ia, dvar(int) :: ia, dvar(int) : ia, dvar(int) : ia).
> 
> This is largely due to Mercury currently using a precedence grammar: we
> don't really have the idea of reserved keywords, just tokens that have
> particular significance in certain contexts.

I wasn't thinking of this as a syntax error but as a semantic one.  In
any case, what could a (:)/2 term possibly mean in this context,
unless it's a type?  Since it's not, why didn't I get an error message
about this?

-- 
Peter Schachte              Whoso would be a man, must be a nonconformist.
schachte at cs.mu.OZ.AU            -- Ralph Waldo Emerson 
www.cs.mu.oz.au/~schachte/  
Phone: +61 3 8344 1338      
--------------------------------------------------------------------------
mercury-developers mailing list
Post messages to:       mercury-developers at cs.mu.oz.au
Administrative Queries: owner-mercury-developers at cs.mu.oz.au
Subscriptions:          mercury-developers-request at cs.mu.oz.au
--------------------------------------------------------------------------



More information about the developers mailing list