         corrections: [
             Example("""
                 struct S {
-                    struct T {
-                        static let i = 3
-                    }
-                    static let h = ↓S.T.i
+                    static let i = 1
+                    static let j = ↓S.i
+                    let k = ↓S.j
+                    static func f(_ l: Int = ↓S.i) -> Int { l*↓S.j }
+                    func g() { ↓S.i + ↓S.f() + k }
                 }
             """): Example("""
                 struct S {
-                    struct T {
-                        static let i = 3
-                    }
-                    static let h = Self.T.i
-                }
-            """),
-            Example("""
-                class S {
-                    static func f() { ↓S.g(↓S.f) }
-                    static func g(f: () -> Void) { f() }
-                }
-            """): Example("""
-                class S {
-                    static func f() { Self.g(Self.f) }
-                    static func g(f: () -> Void) { f() }
+                    static let i = 1
+                    static let j = Self.i
+                    let k = Self.j
+                    static func f(_ l: Int = Self.i) -> Int { l*Self.j }
+                    func g() { Self.i + Self.f() + k }
                 }
             """)
         ]

                    static let j = Self.T.R.i + Self.R.j
                    let h = Self.T.R.i + Self.R.j
                }
            """),
            Example("""
                class C {
                    static let s = 2

                    }
                    func g() -> Any { C.self }
                }
            """, excludeFromDocumentation: true)
        ],
        triggeringExamples: [
            Example("""
                class C {
                    struct S {
