Opened 6 years ago

Last modified 2 years ago

#287 new defect

Circular structures overflow the stack even though there's a print-object method

Reported by: stassats Owned by: somebody
Priority: major Milestone: 1.6.0
Component: other Version: 1.3.0-dev
Keywords: Cc: stassats@…
Parent Tickets:

Description

(defstruct watch
  parent)

(defmethod print-object ((watch watch) stream)
  (print-unreadable-object (watch stream :type t)
    (format stream "a")))

(defstruct inotify
  children)

(defun test ()
  (let* ((inotify (make-inotify))
         (watch (make-watch :parent inotify)))
    (setf (inotify-children inotify) watch)
    (write inotify :circle t)
    (terpri)
    (write inotify)))

(test)

#S(INOTIFY :CHILDREN #<WATCH a>)

Maximum error depth exceeded (18 nested errors) with 'Stack overflow.'.

Subtickets

Change History (7)

comment:1 Changed 6 years ago by stassats

Cc: stassats@… added
Summary: Circularl structures overflow the stack even though there's a print-object methodCircular structures overflow the stack even though there's a print-object method

comment:2 Changed 6 years ago by Evenson Not Org

Milestone: 1.3.0
Version: 1.3.0-dev

comment:3 Changed 5 years ago by Evenson Not Org

Milestone: 1.3.02.0

Ticket retargeted after milestone closed

comment:4 Changed 5 years ago by Evenson Not Org

Milestone: 2.02.0.0

Milestone renamed

comment:5 Changed 5 years ago by Evenson Not Org

Milestone: 2.0.01.4.0

comment:6 Changed 3 years ago by Evenson Not Org

Milestone: 1.4.01.5.0

Ticket retargeted after milestone closed

comment:7 Changed 2 years ago by Evenson Not Org

Milestone: 1.5.01.6.0

Ticket retargeted after milestone closed

Note: See TracTickets for help on using tickets.