Opened 5 years ago

Last modified 4 months ago

#287 new defect

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

Reported by: sboukarev 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 (add)

Change History (7)

comment:1 Changed 5 years ago by sboukarev

  • Cc stassats@… added
  • Summary changed from Circularl structures overflow the stack even though there's a print-object method to Circular structures overflow the stack even though there's a print-object method

comment:2 Changed 4 years ago by https://www.google.com/accounts/o8/id?id=AItOawkYnNNEAO_K40Gp0xROhyjOPgjvIskQ48M

  • Milestone set to 1.3.0
  • Version set to 1.3.0-dev

comment:3 Changed 4 years ago by mevenson

  • Milestone changed from 1.3.0 to 2.0

Ticket retargeted after milestone closed

comment:4 Changed 4 years ago by mevenson

  • Milestone changed from 2.0 to 2.0.0

Milestone renamed

comment:5 Changed 4 years ago by mevenson

  • Milestone changed from 2.0.0 to 1.4.0

comment:6 Changed 13 months ago by mevenson

  • Milestone changed from 1.4.0 to 1.5.0

Ticket retargeted after milestone closed

comment:7 Changed 4 months ago by mevenson

  • Milestone changed from 1.5.0 to 1.6.0

Ticket retargeted after milestone closed

Note: See TracTickets for help on using tickets.