Hi all, With the introduction of native records ert lost the ability to peek inside structures when comparing unequal values: (require 'ert) (cl-defstruct xyz a b c) (defvar xyz123 (make-xyz :a 1 :b 2 :c 3)) (defvar xyz143 (make-xyz :a 1 :b 4 :c 3)) (should (equal xyz123 xyz143)) Emacs 25 said this: Test failed: ((should (equal xyz123 xyz143)) :form (equal [cl-struct-xyz 1 2 3 nil] [cl-struct-xyz 1 4 3 nil]) :value nil :explanation (array-elt 2 (different-atoms (2 "#x2" "?") (4 "#x4" "?")))) Emacs 26 says this: Test failed: ((should (equal xyz123 xyz143)) :form (equal #s(xyz 1 2 3) #s(xyz 1 4 3)) :value nil :explanation (different-atoms #s(xyz 1 2 3) #s(xyz 1 4 3))) The first attached patch fixes this for all records. The second patch adds special support for cl-structs, to get this: Test failed: ((should (equal xyz123 xyz143)) :form (equal #s(xyz 1 2 3) #s(xyz 1 4 3)) :value nil :explanation (struct-field c (different-atoms (2 "#x2" "?") (4 "#x4" "?")))) Clément.