diff options
Diffstat (limited to 'testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang05.hs')
-rw-r--r-- | testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang05.hs | 34 |
1 files changed, 0 insertions, 34 deletions
diff --git a/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang05.hs b/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang05.hs deleted file mode 100644 index 1dd9016152..0000000000 --- a/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang05.hs +++ /dev/null @@ -1,34 +0,0 @@ -{-# LANGUAGE Safe #-} -{-# OPTIONS_GHC -fenable-rewrite-rules #-} - --- | Check rules are disabled under Safe -module Main where - -data T = T1 | T2 | T3 deriving ( Eq, Ord, Show ) - -lookupx :: Ord key => Show val => [(key,val)] -> key -> Maybe val -lookupx [] _ = Nothing -lookupx ((t,a):xs) t' | t == t' = Just a - | otherwise = lookupx xs t' - -{-# RULES "lookupx/T" lookupx = tLookup #-} -tLookup :: [(T,a)] -> T -> Maybe a -tLookup [] _ = Nothing -tLookup ((t,a):xs) t' | t /= t' = Just a - | otherwise = tLookup xs t' - -space = [(T1,"a"),(T2,"b"),(T3,"c")] -key = T3 - -main = do - putStrLn $ "looking for " ++ show key - putStrLn $ "in space " ++ show space - putStrLn $ "Found: " ++ show (fromMaybe "Not Found!" $ lookupx space key) - let b | Just "c" <- lookupx space key = "YES" - | otherwise = "NO" - putStrLn $ "Rules Disabled: " ++ b - -fromMaybe :: a -> Maybe a -> a -fromMaybe a Nothing = a -fromMaybe _ (Just a) = a - |