summaryrefslogtreecommitdiff
path: root/log.md
diff options
context:
space:
mode:
authorCamil Staps2016-10-09 12:23:09 +0200
committerCamil Staps2016-10-09 12:34:02 +0200
commitd7526ccdc45cbc415b9eee5d8d25c967964e3d3a (patch)
tree23e2737726a66e40621437c2b8c37bf6ffea1dcd /log.md
parentLog: conditional execution, heap full (diff)
Log: more testing for the heap full segfault
Diffstat (limited to 'log.md')
-rw-r--r--log.md23
1 files changed, 12 insertions, 11 deletions
diff --git a/log.md b/log.md
index c0b6b10..7750feb 100644
--- a/log.md
+++ b/log.md
@@ -186,18 +186,19 @@ fromto a b
| a > b = []
| otherwise = [a:fromto (a+1) b]
-length :: [a] -> Int
-length xs = len 0 xs
-where
- len :: Int [a] -> Int
- len i [] = i
- len i [_:xs] = len (i+1) xs
-
-hd :: [a] -> a
-hd [x:_] = x
-
-Start = let xs = fromto 1 100 in (length xs, hd xs)
+Start = fromto 1 25
```
and running with `-h 1k`. The program segfaults rather than displaying a `Heap
full` message.
+
+### 2016-10-09
+
+The above problem (no heap full message) only occurs with the copy/compacting
+garbage collector (`-gcc`), not with the marking/compacting garbage collector
+(`gcm`). The problem seems to be that when `collect_1` returns the value in
+`r6` is different than before.
+
+**Question**: It seems there are whole areas of the generated binaries that are
+all zero (like `file_table`, where you can expect that, but also e.g.
+`small_integers`, should this be zero as well?)