なんとか再現できましたが、なんだか想像以上の複合要因な気がしてきました↓
Point.hs
{-# LANGUAGE GADTs #-}
module Shard.Point (
Point,
infty
) where
data Point i where
Point :: Integral i => i-> Point i
Infty :: Point i
instance Show i => Show (Point i) where
showsPrec _ Infty = showString "Infty"
showsPrec _ (Point i) = shows i
infty :: Integral i => Point i
infty = Infty
Test.hs
module Main (main) where
import Shard.Point
import Test.Tasty
import Test.Tasty.HUnit
main :: IO ()
main = testCase "Infty" $ show infty @=? "Infty"
上記ファイルを適切に配置、yamlファイルたちも用意したうえで
stack test
すると私の環境では再現しました。
環境はWindows 11/ghc 9.0.2/stack 2.7.5/vscodeです。
chcp 65001で実行した場合は、おそらく正しいエラーが出る代わりに文字化けして
test\Test.hs:9:8: error:
窶「 Couldn't match expected type 窶露O ()窶・with actual type 窶狼estTree窶・[0m
窶「 In the expression: testCase "Infty" $ show infty @=? "Infty"
In an equation for 窶藁ain窶・
main = testCase "Infty" $ show infty @=? "Infty"
|
9 | main = testCase "Infty" $ show infty @=? "Infty"
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
となります。