Public bug reported: sbcl seem to rely on undefined behaviour in its use of defstructs with constuctors that don't initialize all slots (sbcl seem to assume that these slots are initialized to nil).
Example: (defstruct (hugo (:constructor make-hugo (a))) a b) (hugo-b (make-hugo 23)) returns nil in sbcl but #:UNBOUND in clasp (and I believe clasp is within the standard doing this) This - potentially wrong - pattern is used in the sbcl code base in 5 places. The attached patched explicitely initializes the slots to nil not covered in the constructor. Did self build sbcl and run all tests (sucessfull). ** Affects: sbcl (Ubuntu) Importance: Undecided Status: New ** Patch added: "Patch defstruct use undefined behaviour" https://bugs.launchpad.net/bugs/1866493/+attachment/5334553/+files/0001-Initialize-slots-to-nil-not-initialized-in-contructo.patch -- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/1866493 Title: Undefined behaviour in defstruct use To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/sbcl/+bug/1866493/+subscriptions -- ubuntu-bugs mailing list ubuntu-bugs@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs