[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