[cvs-nhc98] cvs commit: hat/src/hattrans TraceTrans.hs

O.Chitil at kent.ac.uk O.Chitil at kent.ac.uk
Thu Nov 3 14:23:51 EST 2005


olaf        2005/11/03 11:23:51 PST

  Modified files:
    src/hattrans         TraceTrans.hs 
  Log:
  Fixed a bug in hat-trans
  
  The problem was two deriving clauses of the same class at exactly the same positions in two modules, one importing the other:
  
  module DeriveA where
  
  data A = A deriving Show
  
  module Main
  
  import DeriveA
  
  data B = B deriving Show
  
  This yielded in compilation:
     Ambiguous occurrence `a5v21v5v24showsPrec'
      It could refer to either `Main.a5v21v5v24showsPrec', defined at Hat/Derive.hs:61:0
                            or `Hat.DeriveA.a5v21v5v24showsPrec', imported from Hat.DeriveA at Hat/Derive.hs:9:0-17
  
  A variable "a5v21v5v24showsPrec" for the identifier of a method should not be exported from a module, but it was.
  
  Now it no longer is. This requires collecting variables for identifiers of methods separately from collecting variables for other identifiers. (A method is kind of local, hence the variable should not be exported; however, it is also marked as a global function in the trace)
  
  Revision  Changes    Path
  1.76      +25 -18    hat/src/hattrans/TraceTrans.hs


More information about the Cvs-nhc98 mailing list