
/* Removed Decls */

/* Moved Decls */

/* Renamed Decls */
Func S1.foo5(x:y:) has been renamed to Func S1.foo5(x:y:z:)

/* Type Changes */
Constructor S1.init(_:) has parameter 0 type change from Int to Double
Func C1.foo2(_:) has parameter 0 type change from Int to () -> ()

/* Decl Attribute changes */
Var C1.CIIns1 changes from weak to strong
Var C1.CIIns2 changes from strong to weak
Func C1.foo1() is now not static
Func S1.foo3() is now static
Func S1.foo1() is now mutating
