Skip to content
Snippets Groups Projects
Commit 796b1dc3 authored by rtoy's avatar rtoy
Browse files

o Remove the :derive-type option from the defknowns for concatenate

  and make-sequence
o Add derive-type optimizers for concatenate and make-sequence that
  only derives the type when the output sequence specifier is a
  subtype of sequence.  (Only done for constant specifiers.)

These changes fix the bug where the compiler deletes all code,
including the return for (defun foo () (concatenate 'fixnum '(1 2 3))).

This is caused by confusion in the compiler where derive-node-type
conflicts with the declared return type and causes all trailing blocks
to be deleted.
parent eafbb32c
No related branches found
No related tags found
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment