Indirect Dependencies (1)
We want to restrict attention to those used and altered variables that are targeted for change, but many levels of indirection must be traversed to detect all dependencies.
- Detection is complicated when latent dependencies arise, from use of shared global data or retained ‘state’.
- Detection is only the beginning - code revisions must follow.
Is this practical for C and C++? Probably not!
- Too complex, perhaps undecidable;
- Oversimplified analysis yields partial results;
- Latent bugs are left behind.