Ticket #962 (closed defect: fixed)

Opened 2 years ago

Last modified 2 years ago

Compiler bug found while compiling QRes

Reported by: asedeno Owned by:
Priority: major Milestone:
Component: Compiler Version: 1.8
Keywords: Cc: fare

Description

Using Clozure Common Lisp Version 1.8-r15341M (LinuxX8664)

Simplified form to tickle the bug:

(defun compiler-bug (n &aux dst)
  "Takes n; returns n-1 if it works, n when this bug is tickled."
  (declare (type fixnum n)
           (optimize (safety 0) (debug 3)))
  (loop
     for idx1 fixnum below n
     for idx2 fixnum from 0
     do (setf dst idx1))
  dst)

More variants in attachment.

Worked in Clozure Common Lisp Version 1.7-r15111M (LinuxX8664).

Attachments

test.lisp Download (1.5 KB) - added by asedeno 2 years ago.

Change History

Changed 2 years ago by asedeno

comment:1 Changed 2 years ago by asedeno

This is also an issue in trunk.

Speaking of which, trunk could use a new set of linuxx86 bootstrap kernels; the current ones aren't linked against librt.

comment:2 Changed 2 years ago by asedeno

This appears to have been introduced in r15022.

comment:3 Changed 2 years ago by gb

  • Status changed from new to closed
  • Resolution set to fixed

(In [15353]) In X862-TWO-ADDRESS-OP, call X862-REGISTER-FOR-FRAME-OFFSET on "offset", not "ea".

Fixes ticket:962 in the trunk.

comment:4 Changed 2 years ago by gb

(In [15356]) Propagate r15353 to 1.8 branch. Fixes ticket:962 (and ticket:964) in 1.8.

Note: See TracTickets for help on using tickets.