Say we have a class with a simple property :
public string MyProperty
{
get { return _myProperty; }
set { _myProperty = value; }
}
This property is a good candidate for inlining using directly the backing field. But if this is done inside an other assembly and then the setter/getter are changed, the behaviour would not be forwarded to the calling assembly. In the other hand, if the inlining is not performed I am filling that we are lacking a lot...
Maybe the inlining is performed at the CLR level? Also, do you have any links explaining inlining? (how a method is choosen for in-lining, the algorithm and the other optimizations perfomed ...) I did not find any real useful documentation as of now on Google.