Given the following function definition
let inline add<'X,'Y when 'X : (member Add : 'Y -> unit)>
(target:'X) (value:'Y) = target.Add value
Why do I get this error?
target.Add v
----^^^^^^^^^^
stdin(64,5): error FS0072: Lookup on object of indeterminate type based on
information prior to this program point. A type annotation may be needed
prior to this program point to constrain the type of the object. This may
allow the lookup to be resolved.
I am a bit perplexed to what other type annotation would be needed here. Can anybody explain?