スプライスから呼び出すことでコンパイル時エラーが発生する可能性があることは知っていますがfail
、警告のみを生成することは可能ですか?特に、でコンパイルするときにこの警告をエラーに変えられるようにしたいと思います-Werror
。
基本的に私がやろうとしていることはこれです:
todo :: Q Exp
todo = do
-- emit warning somehow
loc <- location
let message = ... -- generate message based on loc
[| error $(litE (stringL message)) |]
コーディング中ではなくこれを使用するという考え方ですが、を使用しundefined
てコンパイルすることにより、本番コードに侵入しないようにして-Werror
ください。
myFunc x | isSimpleCase x = 42
| otherwise = $todo