diff options
Diffstat (limited to 'testsuite/tests/driver/T12983/src')
-rw-r--r-- | testsuite/tests/driver/T12983/src/MetaHandler.hs | 10 | ||||
-rw-r--r-- | testsuite/tests/driver/T12983/src/New_Hospital.hs | 6 | ||||
-rw-r--r-- | testsuite/tests/driver/T12983/src/Old_Hospital.hs | 4 | ||||
-rw-r--r-- | testsuite/tests/driver/T12983/src/ShortText.hs | 6 | ||||
-rw-r--r-- | testsuite/tests/driver/T12983/src/Types.hs | 10 |
5 files changed, 36 insertions, 0 deletions
diff --git a/testsuite/tests/driver/T12983/src/MetaHandler.hs b/testsuite/tests/driver/T12983/src/MetaHandler.hs new file mode 100644 index 0000000000..87b48db36c --- /dev/null +++ b/testsuite/tests/driver/T12983/src/MetaHandler.hs @@ -0,0 +1,10 @@ +{-# LANGUAGE TemplateHaskell #-} +module Main where + +import qualified Types + +-- splices in "string :: String" +$(Types.genCode) + +main :: IO () +main = putStrLn string diff --git a/testsuite/tests/driver/T12983/src/New_Hospital.hs b/testsuite/tests/driver/T12983/src/New_Hospital.hs new file mode 100644 index 0000000000..2cbd21401c --- /dev/null +++ b/testsuite/tests/driver/T12983/src/New_Hospital.hs @@ -0,0 +1,6 @@ +module Hospital where + +import ShortText + +foo :: Int -> String +foo i = toString (ShortText (show i)) diff --git a/testsuite/tests/driver/T12983/src/Old_Hospital.hs b/testsuite/tests/driver/T12983/src/Old_Hospital.hs new file mode 100644 index 0000000000..4a0819ea58 --- /dev/null +++ b/testsuite/tests/driver/T12983/src/Old_Hospital.hs @@ -0,0 +1,4 @@ +module Hospital where + +foo :: Int -> String +foo i = show i diff --git a/testsuite/tests/driver/T12983/src/ShortText.hs b/testsuite/tests/driver/T12983/src/ShortText.hs new file mode 100644 index 0000000000..88ca2cf6bc --- /dev/null +++ b/testsuite/tests/driver/T12983/src/ShortText.hs @@ -0,0 +1,6 @@ +module ShortText where + +data ShortText = ShortText String + +toString :: ShortText -> String +toString (ShortText s) = s diff --git a/testsuite/tests/driver/T12983/src/Types.hs b/testsuite/tests/driver/T12983/src/Types.hs new file mode 100644 index 0000000000..20602dfd85 --- /dev/null +++ b/testsuite/tests/driver/T12983/src/Types.hs @@ -0,0 +1,10 @@ +{-# LANGUAGE TemplateHaskell #-} +module Types where + +import qualified Hospital +import Language.Haskell.TH + +genCode :: Q [Dec] +genCode = + let s = Hospital.foo 5 + in [d|string = s|] |