http://bugzilla.novell.com/show_bug.cgi?id=607702
http://bugzilla.novell.com/show_bug.cgi?id=607702#c0 Summary: Select<> requires explicit type arguments by MCS - CSC does not. Classification: Mono Product: Mono: Compilers Version: 2.6.x Platform: x86 OS/Version: Linux Status: NEW Severity: Normal Priority: P5 - None Component: C# AssignedTo: [email protected] ReportedBy: [email protected] QAContact: [email protected] Found By: --- Blocker: --- User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.0; da; rv:1.9.2.3) Gecko/20100401 Firefox/3.6.3 ( .NET CLR 3.5.30729; .NET4.0E) When doing a Link.Select<> over a type that inherits from from IEnumerable<T>, MCS fails with an error telling me to give explicit type parameters to Select. CSC does not require the explicit type parameters but can infer them. Try to compile the example as described below. It works without change on CSC (only tested with VS.NET 2010). It can be made to work by either chainging the type constraint or giving explicit type parameters, as described in the example below. Reproducible: Always Steps to Reproduce: -bash-4.0$ cat test.cs using System.Collections.Generic; using System.Linq; namespace Test { public interface IMyEnum<T> : IEnumerable<T> { } public class MainClass { public static void Main () { } } public class Generic<LT, CT> where CT: IMyEnum<LT> // It works if this constraint is used instead. //where CT: IEnumerable<LT> { public static void DoTest(CT testEnum) { var selected = testEnum.Select(C => false); // It also works if the type parameters are explicit: // var selected = testEnum.Select<LT, bool> (C => false); } } } -bash-4.0$ mcs test.cs Actual Results: test.cs(24,41): error CS0411: The type arguments for method `System.Linq.Enumerable.Select<TSource,TResult>(this System.Collections.Generic.IEnumerable<TSource>, System.Func<TSource,int,TResult>)' cannot be inferred from the usage. Try specifying the type arguments explicitly Compilation failed: 1 error(s), 0 warnings Expected Results: I expected the problem to compile (perhaps with a warning saying that "selected" is unused). -- Configure bugmail: http://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the QA contact for the bug. You are the assignee for the bug. _______________________________________________ mono-bugs maillist - [email protected] http://lists.ximian.com/mailman/listinfo/mono-bugs
