[svn] r6023: nemerle/trunk/ncc: external/InternalTypes.n
typing/Typer.n
nazgul
svnadmin at nemerle.org
Mon Dec 19 18:33:04 CET 2005
Log:
Allow nongeneric enumerator/able as return type of yielding method
Author: nazgul
Date: Mon Dec 19 18:32:59 2005
New Revision: 6023
Modified:
nemerle/trunk/ncc/external/InternalTypes.n
nemerle/trunk/ncc/typing/Typer.n
Modified: nemerle/trunk/ncc/external/InternalTypes.n
==============================================================================
--- nemerle/trunk/ncc/external/InternalTypes.n (original)
+++ nemerle/trunk/ncc/external/InternalTypes.n Mon Dec 19 18:32:59 2005
@@ -382,6 +382,7 @@
public mutable AssemblyCultureAttribute_tc : TypeInfo;
public mutable Nemerle_list_tc : TypeInfo;
public mutable IEnumerable_tc : TypeInfo;
+ public mutable IEnumerator_tc : TypeInfo;
public mutable Generic_IEnumerable_tc : TypeInfo;
public mutable Generic_IEnumerator_tc : TypeInfo;
public mutable DllImport_tc : TypeInfo;
@@ -527,6 +528,7 @@
UInt64_tc = lookup ("System.UInt64"); UInt64 = MType.Class (UInt64_tc, []);
ValueType_tc = lookup ("System.ValueType"); ValueType = MType.Class (ValueType_tc, []);
IEnumerable_tc = lookup ("System.Collections.IEnumerable");
+ IEnumerator_tc = lookup ("System.Collections.IEnumerator");
Generic_IEnumerable_tc = lookup ("System.Collections.Generic.IEnumerable");
Generic_IEnumerator_tc = lookup ("System.Collections.Generic.IEnumerator");
DllImport_tc = lookup ("System.Runtime.InteropServices.DllImportAttribute");
Modified: nemerle/trunk/ncc/typing/Typer.n
==============================================================================
--- nemerle/trunk/ncc/typing/Typer.n (original)
+++ nemerle/trunk/ncc/typing/Typer.n Mon Dec 19 18:32:59 2005
@@ -3088,6 +3088,9 @@
| Class (tc, [t])
when tc.Equals (InternalType.Generic_IEnumerator_tc) ||
tc.Equals (InternalType.Generic_IEnumerable_tc) => t
+ | Class (tc, [])
+ when tc.Equals (InternalType.IEnumerator_tc) ||
+ tc.Equals (InternalType.IEnumerable_tc) => InternalType.Object
| t =>
ReportError (messenger,
$ "yield used in a function returning "
More information about the svn
mailing list