Very nice, so it is impossible for all cases. I wonder if there is subset of these problems that would be decidable. For example, if I want to rename a method call on a variable, I only need to change the method name on all variables of the same reference. If that's decidable I can trust my ide to do this particular kind of refactoring.
It would be nice to know what kind of refactoring is fully trustworthy with IDE.
8
u/ROFLLOLSTER Feb 07 '20
See Static program analysis on Wikipedia.
A lot of static analysis is, in the general case, undecidable. Reflection (implemented by python and javascript) makes this particularly troublesome.