If you have a class that is extended by another class and there is a private setter in the class that is extended, that setter cannot be found at runtime. Example script attached. At runtime, the following exception trace is shown:
Note: Problem occurs regardless of whether classes are dynamic or static compiled. The '$' in the names has no effect, a letter in its place has same problem. The extending class does not have this problem. A stand alone class also does not have this problem. If the setter is public or protected, the problem goes away. Private getters do not display the problem.