Add a Regression Test For Scenario Improved By Private Dependencies
The basic setup is this - Suppose that three files define four types:
// File 1
struct A {}
// File 2
struct B { let x: A }
struct C { }
// File 3
struct D { let x: C }
If type 'A' is perturbed, we could expect that File 2 would rebuild
because B has a member of type A. What we don't expect is for File 3 to
rebuild, but thanks to cascading edges that is precisely that happens!
This is because the member x in File 3 creates a cascading edge to File
2, and that edge is traversed while evaluating the cascading edge from
File 2 to File 1. With private dependencies, the expected rebuild
behavior is restored. Commit a regression test to this effect.