~ chicken-core (chicken-5) fb28e74992c84b0149832dd8409fb5844ef14703


commit fb28e74992c84b0149832dd8409fb5844ef14703
Author:     Peter Bex <peter@more-magic.net>
AuthorDate: Sat Oct 17 16:47:09 2015 +0200
Commit:     Evan Hanson <evhan@foldling.org>
CommitDate: Mon Oct 26 09:37:10 2015 +1300

    Make literal-size calculation for symbols more precise.
    
    Symbol literals take up a symbol (size 4) and a bucket (size 3), for a
    total of 7, not 10.
    
    Signed-off-by: Evan Hanson <evhan@foldling.org>

diff --git a/c-backend.scm b/c-backend.scm
index 25e0b97a..b1dff0c1 100644
--- a/c-backend.scm
+++ b/c-backend.scm
@@ -655,7 +655,7 @@
 	    ((string? lit) 0)		; statically allocated
 	    ((bignum? lit) 3)		; internal vector statically allocated
 	    ((flonum? lit) words-per-flonum)
-	    ((symbol? lit) 10)          ; size of symbol, and possibly a bucket
+	    ((symbol? lit) 7)           ; size of symbol, and possibly a bucket
 	    ((pair? lit) (+ 3 (literal-size (car lit)) (literal-size (cdr lit))))
 	    ((vector? lit)
 	     (+ 1 (vector-length lit)
Trap