title: Swift closure "partial apply forwarder"
body: <p>I did a quick testing and am trying to pass a closure as function argument, but notice some kind of "exception".  The app is not crashing but the offending line generating a crash report.</p>
  
  <p><strong>ViewController</strong></p>
  
  <pre><code>import UIKit
  
  class MapViewController: UIViewController {
  
      typealias MapTouchHandler = (String) -&gt; Void
  
      var mapTouchHandlers = Array&lt;MapTouchHandler&gt;()
  
      @IBAction func tapGestureAction(_ sender: UITapGestureRecognizer) {
              for handler in mapTouchHandlers {
  
                  // This line produces this: "0x000000010c8f8a00 Mediator`partial apply forwarder for reabstraction thunk helper from @callee_owned (@in Swift.String) -&gt; (@out ()) to @callee_owned (@owned Swift.String) -&gt; () at MapViewController.swift"
  
                  handler("tap recognized")
              }
  
      }
  
      override func viewDidLoad() {
          super.viewDidLoad()
      }
  
  
  
       func subscribeMapTouchEvent(mapTouchHandler: @escaping MapTouchHandler) {
  
             // This line produce this: "0x000000010c8ff910 Mediator`partial apply forwarder with unmangled suffix ".16" at Mediator.swift"
  
              mapTouchHandlers.append(mapTouchHandler)
      }
  }
  </code></pre>
  
  <p><strong>Mediator class</strong></p>
  
  <pre><code>import UIKit
  
  class Mediator {
  
      var mapViewController: MapViewController? {
          didSet {
              mapViewController?.subscribeMapTouchEvent(mapTouchHandler: self.handleTouchEvent(str:))
          }
      }
  
      private func handleTouchEvent(str: String) {
          print(str)
      }
  }
  </code></pre>
  
  <p>Appreciate any insight to solve this issue.</p>