I have a class in C# with a method with the following signature:
protected virtual void OnChanged(string propertyName, object oldValue, object newValue) ...
In F#, I derive a class from that class (not directly, there are other classes in between) and implement a new member that calls this method:
member public x.SetPropertyValueFS propertyName oldVal newVal =
x.OnChanged(propertyName, !oldVal, newVal)
When I try to compile, I get this error message: Error 5 A protected member is called or a base variable is being used. This is currently only allowed in the direct implementation of members since they could escape their object scope.
I can't find any reference to that error message anywhere. What does it mean? I've done tests with other calls into protected virtual methods and they work just fine.
Thanks
Oliver