https://bugzilla.novell.com/show_bug.cgi?id=653832
https://bugzilla.novell.com/show_bug.cgi?id=653832#c0 Summary: mono 2.8 does not compile some generics Classification: Mono Product: Mono: Compilers Version: 2.8.x Platform: i386 OS/Version: All Status: NEW Severity: Normal Priority: P5 - None Component: C# AssignedTo: [email protected] ReportedBy: [email protected] QAContact: [email protected] Found By: Community User Blocker: No Description of Problem: mono 2.8 does not compile code using generics. Mono 2.6.7 compiles it !!! mono Steps to reproduce the problem: 1. code using System; namespace test { public class ComboBox: ComboBoxBase<ListItem> { public class Builder: ComboBoxBase<ListItem>.Builder< ComboBox, ComboBox.Builder> { } } public abstract class ComboBoxBase<T> where T : StateManagedItem { public abstract class Builder<TComboBoxBase, TBuilder> where TComboBoxBase : ComboBoxBase<T> where TBuilder : Builder<TComboBoxBase, TBuilder> { } } public class ListItem: StateManagedItem { public class Builder : StateManagedItem.Builder<ListItem, ListItem.Builder> { public Builder() : base(new ListItem()) { } } } public class StateManagedItem { public class Builder<TItem, TBuilder> where TItem : StateManagedItem where TBuilder : Builder<TItem, TBuilder> { public Builder(TItem item) { this.item = item; } protected TItem item; } } } 2. compile: /usr/local/bin/gmcs /noconfig "/out:/home/angel/Projects/Projects/test/test/bin/Debug/test.dll" "/r:/usr/local/lib/mono/2.0/System.dll" /nologo /warn:4 /debug:+ /debug:full /optimize- /codepage:utf8 "/define:DEBUG" /t:library "/home/angel/Projects/Projects/test/test/test.cs" Actual Results: using mono 2.8: Compilation failed: 1 error(s), 0 warnings /home/angel/Projects/Projects/test/test/test.cs(7,62): error CS0311: The type `test.ComboBox' cannot be used as type parameter `TComboBoxBase' in the generic type or method `test.ComboBoxBase<test.ListItem>.Builder<TComboBoxBase,TBuilder>'. There is no implicit reference conversion from `test.ComboBox' to `test.ComboBoxBase<T>' /home/angel/Projects/Projects/test/test/test.cs(18,40): (Location of the symbol related to previous error) using 2.6.7 Construcción finalizada -- 0 errores, 0 advertencias Expected Results: mono 2.8 must compile code as 2.6.7 do it How often does this happen? allways Additional Information: -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the QA contact for the bug. _______________________________________________ mono-bugs maillist - [email protected] http://lists.ximian.com/mailman/listinfo/mono-bugs
