public class TestClass {
public static void test() {
// If the int->gint implicit conversion is not defined as below, here will be an compile error:
// (E62) Type mismatch, cannot assign "Int32" to "gint"
gint a = 5;
// If the gint->int implicit conversion is not defined as below, here will be an compile error:
// (E486) Parameter 1 is "gint", should be "Int32", in call to static void TestClass.doSth(Int32 value)
doSth(a);
}
public static void doSth(int value) {
}
}
public __mapped struct gint => Foundation.NSInteger {
private int? v => __mapped;
// (E140) An implicit conversion from "Int32" to "gint" already exists
public static implicit operator gint(int r) {
return (Foundation.NSInteger)r;
}
// (E140) An implicit conversion from "gint" to "Int32" already exists
public static implicit operator int(gint g) {
return g.v;
}
}
It probably was fixed post-build, if it was not listed in the change log. Unfortunately I cannot check right now, I’m AFK and don’t have git access from the iPad