You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
No one has reported any errors yet, but I'm tracking this problem reported in MonoCross (thanks Ben!)
Email from Ben was:
It's true that MonoCross source code will not compile with MonoTouch 6.0.2 but will with MonoTouch 6.0.3 (currently in Beta). The compiler error occurs because of an identified bug with subclassing CocoaTouch objects with classes utilizing generics. In MonoTouch 6.0.3 the error is switched to a warning.
Generics are relied on in the MonoCross.Touch project as a convienence for implementing the IMXView interface within CocoaTouch UIView subclasses. The MonoCross.Touch classes are there as boiler plate code, and the abstract classes are entirely optional. To remove the boiler plate code from utilization simply remove the offending classes from the MonoCross.Touch project; and in your Touch container project implement the IMXView interface manually for each class which inherits from the offending boiler plate abstract classes.
... this compile error only occurs when you compile for the device, and does not appear when compiling for the simulator. Just another reason to "test early and often on your target devices". Don't rely on simulators for unit/integration testing.
NOTE: This only occurs with 6.0.2 and is fixed in MonoTouch 6.0.3 with a switch from a compiler error to a compiler warning. The warning doesn't fix the possible bug, but does provide developers an opportunity to proceed with caution. I still continue to use the boiler plate code.
No one has reported any errors yet, but I'm tracking this problem reported in MonoCross (thanks Ben!)
Email from Ben was:
It's true that MonoCross source code will not compile with MonoTouch 6.0.2 but will with MonoTouch 6.0.3 (currently in Beta). The compiler error occurs because of an identified bug with subclassing CocoaTouch objects with classes utilizing generics. In MonoTouch 6.0.3 the error is switched to a warning.
Generics are relied on in the MonoCross.Touch project as a convienence for implementing the IMXView interface within CocoaTouch UIView subclasses. The MonoCross.Touch classes are there as boiler plate code, and the abstract classes are entirely optional. To remove the boiler plate code from utilization simply remove the offending classes from the MonoCross.Touch project; and in your Touch container project implement the IMXView interface manually for each class which inherits from the offending boiler plate abstract classes.
... this compile error only occurs when you compile for the device, and does not appear when compiling for the simulator. Just another reason to "test early and often on your target devices". Don't rely on simulators for unit/integration testing.
NOTE: This only occurs with 6.0.2 and is fixed in MonoTouch 6.0.3 with a switch from a compiler error to a compiler warning. The warning doesn't fix the possible bug, but does provide developers an opportunity to proceed with caution. I still continue to use the boiler plate code.
Links to more info:
https://bugzilla.xamarin.com/show_bug.cgi?id=7547
http://stackoverflow.com/questions/12722285/generic-reference-type-error-monotouch
The text was updated successfully, but these errors were encountered: