diff options
author | Simon Peyton Jones <simonpj@microsoft.com> | 2019-11-08 09:22:02 +0000 |
---|---|---|
committer | Marge Bot <ben+marge-bot@smart-cactus.org> | 2019-11-09 18:04:14 -0500 |
commit | 1f98e47df40ae84423283bf2e06ffe7a0b4a9381 (patch) | |
tree | 561b4fa063ef9dfda47c8f716db08ffddb6d23f6 /testsuite/tests/ghci | |
parent | 011f3121955cf08353e384e9b84ed387860ade45 (diff) | |
download | haskell-1f98e47df40ae84423283bf2e06ffe7a0b4a9381.tar.gz |
Use the right type in :force
A missing prime meant that we were considering the wrong
type in the GHCi debugger, when doing :force on multiple
arguments (issue #17431).
The fix is trivial.
Diffstat (limited to 'testsuite/tests/ghci')
-rw-r--r-- | testsuite/tests/ghci/scripts/T17431.hs | 10 | ||||
-rw-r--r-- | testsuite/tests/ghci/scripts/T17431.script | 4 | ||||
-rw-r--r-- | testsuite/tests/ghci/scripts/T17431.stdout | 11 | ||||
-rwxr-xr-x | testsuite/tests/ghci/scripts/all.T | 1 |
4 files changed, 26 insertions, 0 deletions
diff --git a/testsuite/tests/ghci/scripts/T17431.hs b/testsuite/tests/ghci/scripts/T17431.hs new file mode 100644 index 0000000000..78050576df --- /dev/null +++ b/testsuite/tests/ghci/scripts/T17431.hs @@ -0,0 +1,10 @@ +module T17431 (sort) where + +sort :: Ord a => [a] -> [a] +sort [] = [] +sort (x:xs) = insert x (sort xs) + +insert :: Ord a => a -> [a] -> [a] +insert x [] = [x] +insert x (y:ys) | x < y = x:y:ys + | otherwise = y:(insert x ys) diff --git a/testsuite/tests/ghci/scripts/T17431.script b/testsuite/tests/ghci/scripts/T17431.script new file mode 100644 index 0000000000..a53dcf4214 --- /dev/null +++ b/testsuite/tests/ghci/scripts/T17431.script @@ -0,0 +1,4 @@ +:l T17431 +:br 5 +sort [3,2,1] +:force x xs _result diff --git a/testsuite/tests/ghci/scripts/T17431.stdout b/testsuite/tests/ghci/scripts/T17431.stdout new file mode 100644 index 0000000000..e6fa548b1a --- /dev/null +++ b/testsuite/tests/ghci/scripts/T17431.stdout @@ -0,0 +1,11 @@ +Breakpoint 0 activated at T17431.hs:5:15-32 +Stopped in T17431.sort, T17431.hs:5:15-32 +_result :: [a] = _ +x :: a = _ +xs :: [a] = [_,_] +*** Ignoring breakpoint +*** Ignoring breakpoint +*** Ignoring breakpoint +x = 3 +xs = [2,1] +_result = [1,2,3] diff --git a/testsuite/tests/ghci/scripts/all.T b/testsuite/tests/ghci/scripts/all.T index ae0e38cb4e..094f101abb 100755 --- a/testsuite/tests/ghci/scripts/all.T +++ b/testsuite/tests/ghci/scripts/all.T @@ -310,3 +310,4 @@ test('T16876', normal, ghci_script, ['T16876.script']) test('T17345', normal, ghci_script, ['T17345.script']) test('T17384', normal, ghci_script, ['T17384.script']) test('T17403', normal, ghci_script, ['T17403.script']) +test('T17431', normal, ghci_script, ['T17431.script']) |