Original-Via: uk.ac.nsf; Wed, 2 Oct 91 03:29:59 BST
Original-Sender: [EMAIL PROTECTED]
I have a little problem in interpreting what an interface file means
under peculiar circumstances (maybe I havn't read the report enough).
Can the someone help me?
The following interface file:
interface B where
import A(T(..)) renaming (T to S)
data S = S Int
is for a module
module B(S(..)) where
import A renaming(T to S)
Question: What is the original declaration of type T?
Both of the modules below could be right.
module A where
data T = S Int
and
module A where
data T = T Int
This happens because renaming happens in all namespaces, but there
is no name clash between constructors and types.
-- Lennart