本文へスキップ
BecomeCoder

Goのエラー · エラー8

missing return ― 関数の終わりに return が無い(コンパイル)

戻り値のある関数は、すべての実行経路で return しなければなりません。if の片方にしか return が無いと出ます。

出るコード

func abs(n int) int {
    if n < 0 {
        return -n
    }
    // n >= 0 の場合の return が無い
}

エラーメッセージ

./main.go:6:1: missing return

直し方

すべての分岐に return を書きます(else 節を足すか、関数末尾に return n を追加します)。