# 057: tysigterm.hs で renExp: ExpWithTySig 未対応エラー [↑up](bunny_notes) - issued: 2020-05-04 - 分類: A サンプルコードが fail - status: Closed (2020-05-04) ## 概要 明示型付きの項に対応していないので、次のようなプログラム (tysigtem.hs) でエラーする。 $$
{
main = print (512 :: Int)
$$}

現象:

$$
{
./tcheck testcases/tysigterm.hs 
# 1. test-compile
source file: testcases/tysigterm.hs
dst dir: /tysigterm
doCompile ... done.
implicitPrelude ... done.
doCompile ... bunnyc: Non-exhaustive patterns in renExp: ExpWithTySig (LitExp (LitInteger 512 (1,15))) (Nothing,Tycon (Name {origName = "Int", namePos = (1,22), isConName = True}))
CallStack (from HasCallStack):
  error, called at src/Rename.hs:668:12 in main:Rename
$$}

${foo :: tysig} は、Rename (型推論の前) に、
次のような let 式に変換してやればよいと思われる。

$$
{
let 
  x :: tysig
  x = foo
in x
$$}

## 調査ログ
### 2020-05-04

上記方針通りに実装、クローズ。

tysigterm.hs は sample172 とした。