   func instanceFunc(other: ClassCallingAsyncStuff) async {
     // expected-error@+1{{cannot find 'c' in scope}}
     c.compHandlerFunc() { }
-  }
-}
+
+    // expected-warning@+1{{consider using asynchronous alternative function}}
+    other.compHandlerFunc() { }
+  }
+
+  func structFunc(other: NestedStruct) async {
+    // expected-warning@+1{{consider using asynchronous alternative function}}
+    other.structCompFunc() { }
+  }
+
+  func structFunc(other: SomeStruct) async {
+    // expected-warning@+1{{consider using asynchronous alternative function}}
+    other.structFunc() { }
+  }
+
+  // no warning
+  let funFunc = goodFunc1
+}

}

class ClassCallingAsyncStuff {
  // expected-note@+1 3 {{'asyncFunc()' declared here}}
  func asyncFunc() async {}

  @completionHandlerAsync("asyncFunc()")

  @completionHandlerAsync("protoFunc", completionHandlerIndex: 0)
  func protoFunc(continuation: @escaping () -> Void) {}

  // expected-note@+1{{'structFunc()' declared here}}
  func structFunc() async { }

  @completionHandlerAsync("structFunc", completionHandlerIndex: 0)
