import Foundation
やimport UIKit
などを書かなければfunc sayError(_ e: Error) { print(e.localizedDescription) }
↑これがそもそもコンパイルエラーになります.localizedDescription
はFoundation.NSError
のメソッドで、Swift.Error
には無いメソッドだからです。import Foundation
すると、ErrorからNSErrorへの暗黙の変換が起こるようになって、呼び出せるようになる。