[Error] Command failed due to signal: Segmentation fault: 11

Command failed due to signal: Segmentation fault: 11
1. Running pass ‘Simplify the CFG’ on function

以前、swift版ログマクロを作成してみたで作ったログマクロだが、Debug Build だと問題なく動作するのだが Release Build だと Build Error になるようです。

Debug と Release で「Optimization Level」が

  • Debug: none [-Onone]
  • Release: Fastest [-O]

という感じに違うのは知っていたが、その差異で Build Error になるらしい。
(Xcode? Compiler? のバグだと思うのでそのうち治る事に期待)

根本解決してもらいたいが、リリースを待っている時間なんてないので Workaround を探しました。

わかったことはこんな感じ。
下記をすべて満たす場合に再現するようです。

  • func 内に enum を利用した switch がある
  • switch 内の case が default なしですべての enum の値を網羅している
  • 戻り値の型を Bool に設定していている
  • すべて return true; or return false; と記述している
  • switch ないで一番はじめに出てくる Bool の値が false

コードで書いてみると

はエラーになるけど

とか

はエラーにならない。
とりあえず Bool(0) として様子みようと思います。
早く治してもらいたいものです。

スポンサーリンク
スポンサーリンク

コメントをどうぞ

メールアドレスが公開されることはありません。