[svn] r6437: nemerle/trunk/ncc: hierarchy/TypeBuilder.n
hierarchy/TypeInfo.n testsuite/positive/gen-overlo...
nazgul
svnadmin at nemerle.org
Sat Jul 8 17:04:47 CEST 2006
Log:
Use unchecked subst when creating subtyping of external type
Author: nazgul
Date: Sat Jul 8 17:04:45 2006
New Revision: 6437
Modified:
nemerle/trunk/ncc/hierarchy/TypeBuilder.n
nemerle/trunk/ncc/hierarchy/TypeInfo.n
nemerle/trunk/ncc/testsuite/positive/gen-overload-lib.n
nemerle/trunk/ncc/testsuite/positive/gen-overload.n
Modified: nemerle/trunk/ncc/hierarchy/TypeBuilder.n
==============================================================================
--- nemerle/trunk/ncc/hierarchy/TypeBuilder.n (original)
+++ nemerle/trunk/ncc/hierarchy/TypeBuilder.n Sat Jul 8 17:04:45 2006
@@ -872,11 +872,6 @@
//------------ METHODS FOR TYPING --------------------------------------
- internal MakeUncheckedSubst (args : list [TyVar]) : Subst
- {
- ConstructSubst (this, typarms, args, check_parms = false)
- }
-
/**
* Return substitution to apply to types of members of our supertype [ti]
* to get types of members in [this].
@@ -1240,11 +1235,7 @@
}
};
- def sub =
- match (tc) {
- | tb is TypeBuilder => tb.MakeUncheckedSubst (args)
- | tc => tc.MakeSubst (args)
- }
+ def sub = tc.MakeUncheckedSubst (args);
def add_srt (t : MType.Class, subinfo : Subinfo) {
add_sr (subinfo, t.tycon,
Modified: nemerle/trunk/ncc/hierarchy/TypeInfo.n
==============================================================================
--- nemerle/trunk/ncc/hierarchy/TypeInfo.n (original)
+++ nemerle/trunk/ncc/hierarchy/TypeInfo.n Sat Jul 8 17:04:45 2006
@@ -622,6 +622,12 @@
ConstructSubst (this, typarms, parms, check_parms = true)
}
+ internal MakeUncheckedSubst (args : list [TyVar]) : Subst
+ {
+ ConstructSubst (this, typarms, args, check_parms = false)
+ }
+
+
internal MakeSubst1 (parms : list [MType]) : Subst
{
MakeSubst (Solver.MonoTypes (parms))
Modified: nemerle/trunk/ncc/testsuite/positive/gen-overload-lib.n
==============================================================================
--- nemerle/trunk/ncc/testsuite/positive/gen-overload-lib.n (original)
+++ nemerle/trunk/ncc/testsuite/positive/gen-overload-lib.n Sat Jul 8 17:04:45 2006
@@ -57,3 +57,11 @@
}
}
+
+
+namespace Library
+{
+ public class BusinessBase[T] where T : BusinessBase[T]
+ {
+ }
+}
Modified: nemerle/trunk/ncc/testsuite/positive/gen-overload.n
==============================================================================
--- nemerle/trunk/ncc/testsuite/positive/gen-overload.n (original)
+++ nemerle/trunk/ncc/testsuite/positive/gen-overload.n Sat Jul 8 17:04:45 2006
@@ -87,6 +87,12 @@
}
}
+namespace SubtypingCheckBug {
+ using Library;
+ public class Foo : BusinessBase[Foo]
+ {
+ }
+}
// REFERENCE: gen-overload-lib.dll
More information about the svn
mailing list