diff options
author | Alexis King <lexi.lambda@gmail.com> | 2023-01-18 17:00:54 -0600 |
---|---|---|
committer | Marge Bot <ben+marge-bot@smart-cactus.org> | 2023-02-20 15:27:17 -0500 |
commit | 26243de1e3716886161d79918af9359f7639314b (patch) | |
tree | c106f6bf05cbd460d23a7bdc00ba7f42636cf7a2 /testsuite | |
parent | 2592ab6924ee34ed0f0d82a7cb0aed393d93bb14 (diff) | |
download | haskell-26243de1e3716886161d79918af9359f7639314b.tar.gz |
Handle top-level Addr# literals in the bytecode compiler
Fixes #22376.
Diffstat (limited to 'testsuite')
-rw-r--r-- | testsuite/tests/bytecode/T22376/A.hs | 6 | ||||
-rw-r--r-- | testsuite/tests/bytecode/T22376/B.hs | 4 | ||||
-rw-r--r-- | testsuite/tests/bytecode/T22376/T22376.hs | 6 | ||||
-rw-r--r-- | testsuite/tests/bytecode/T22376/T22376.stdout | 1 | ||||
-rw-r--r-- | testsuite/tests/bytecode/T22376/all.T | 2 |
5 files changed, 19 insertions, 0 deletions
diff --git a/testsuite/tests/bytecode/T22376/A.hs b/testsuite/tests/bytecode/T22376/A.hs new file mode 100644 index 0000000000..670c3fd6a4 --- /dev/null +++ b/testsuite/tests/bytecode/T22376/A.hs @@ -0,0 +1,6 @@ +module A where +import B + +foo :: String +foo = f "bc" +{-# NOINLINE foo #-} diff --git a/testsuite/tests/bytecode/T22376/B.hs b/testsuite/tests/bytecode/T22376/B.hs new file mode 100644 index 0000000000..8bfb7bfd32 --- /dev/null +++ b/testsuite/tests/bytecode/T22376/B.hs @@ -0,0 +1,4 @@ +module B where + +f :: String -> String +f = ("a" ++) diff --git a/testsuite/tests/bytecode/T22376/T22376.hs b/testsuite/tests/bytecode/T22376/T22376.hs new file mode 100644 index 0000000000..b97640a00b --- /dev/null +++ b/testsuite/tests/bytecode/T22376/T22376.hs @@ -0,0 +1,6 @@ +{-# LANGUAGE TemplateHaskell #-} +import Language.Haskell.TH.Syntax (lift) +import A + +main :: IO () +main = putStrLn $(lift foo) diff --git a/testsuite/tests/bytecode/T22376/T22376.stdout b/testsuite/tests/bytecode/T22376/T22376.stdout new file mode 100644 index 0000000000..8baef1b4ab --- /dev/null +++ b/testsuite/tests/bytecode/T22376/T22376.stdout @@ -0,0 +1 @@ +abc diff --git a/testsuite/tests/bytecode/T22376/all.T b/testsuite/tests/bytecode/T22376/all.T new file mode 100644 index 0000000000..0b15e93e6d --- /dev/null +++ b/testsuite/tests/bytecode/T22376/all.T @@ -0,0 +1,2 @@ +test('T22376', [req_interp, extra_files(['A.hs', 'B.hs'])], multimod_compile_and_run, + ['T22376', '-O1 -fwrite-if-simplified-core -fbyte-code-and-object-code -fprefer-byte-code']) |