Hi Filip,

Thanks a lot, I should ask for help more often!

I attach an expanded patch that also adds a compiler switch
(warnshadow). The patch checks for shadowings in the local environment
and the top level environment (see warnredecl).  Documentation isn't
fixed yet. 

Unfortunately there are still a few wrinkles, e.g.:

  local X in try {Show h} finally {Show e} end end

gives that X is shadowed, due to the expansion of finally.  there
are probably a few cases like this.

And annoyingly

functor
import
   RecordC(width: WidthC)
......

reports WidthC to be shadowed.  

However,  I think the option is great and will help a lot.  Lets get
rid of

  case S of suspended(S) then {Deref S} else S end

forever!

k

Here is the latest patch (against the trunk):

Attachment: kk
Description: Binary data

_________________________________________________________________________________
mozart-users mailing list                               
[email protected]
http://www.mozart-oz.org/mailman/listinfo/mozart-users

Reply via email to