type hoop< ^a when ^a : (static member (+) : ^a * ^a -> ^a) > = {
Group1 : ^a;
Group2 : ^a
} with
static member inline (+) (x, y) = x.Group1 + y.Group2
end
let z = { Group1 = 1; Group2 = 2 } + { Group1 = 2; Group2 = 3 } // ok
type hoop with
member inline this.Sum = this.Group1 + this.Group2 // A type parameter is missing a constraint 'when ( ^a or ^?104290) : (static member ( + ) : ^a * ^?104290 -> ^?104291)'
end