Comment 2 for bug 1008996

Revision history for this message
Tomas Hlavaty (tomas-hlavaty) wrote :

Better testcase:

* (defmacro foo () `(defun bar () ,@(loop for i from 0 below 1000 collect `(print ,(format nil "hi-~d" i)))))

FOO
* (foo)

BAR
* (defmacro foo () `(defun bar () ,@(loop for i from 0 below 2000 collect `(print ,(format nil "hi-~d" i)))))

FOO
* (foo)

debugger invoked on a TYPE-ERROR:
  The value 4097 is not of type (OR SB-C:TN (SIGNED-BYTE 13) NULL SB-C:FIXUP).

Type HELP for debugger help, or (SB-EXT:QUIT) to exit from SBCL.

restarts (invokable by number or by possibly-abbreviated name):
  0: [ABORT] Exit debugger, returning to top level.

(SB-VM::LD-INST-EMITTER #<error printing object>)[:EXTERNAL]
0] ;

The same problem happens on PPC too, except the limit is (usably?) higher:

* (defmacro foo () `(defun bar () ,@(loop for i from 0 below 10000 collect `(print ,(format nil "hi-~d" i)))))

FOO
* (foo)

debugger invoked on a TYPE-ERROR:
  The value 32769 is not of type (OR SB-C:FIXUP (SIGNED-BYTE 16)).

Type HELP for debugger help, or (SB-EXT:QUIT) to exit from SBCL.

restarts (invokable by number or by possibly-abbreviated name):
  0: [ABORT] Exit debugger, returning to top level.

(SB-VM::LWZ-INST-EMITTER #<error printing object>)[:EXTERNAL]
0] ;