using System; public class Test { public static int Main () { S mc = new S (); float? f = mc; if (f != 5) return 1; return 0; } } struct S { public static implicit operator float (S p1) { throw new ApplicationException ("should not be called"); } public static implicit operator float? (S p1) { return 5; } }