tests: compiler: improve make-load-form tests
Also check for identical objects in CMP.0030.MAKE-LOAD-FORM Be more aware of the bcmp in the test CMP.0076.MAKE-LOAD-FORM-NON-EQ - bytecmp fails the test in a different manner, so remove the remark that a part of the test pass, and change the description to 1) explain the test, 2) explain the ccmp's failure mode.
This commit is contained in:
parent
bf664c1887
commit
b20a675f64
1 changed files with 18 additions and 17 deletions
|
|
@ -757,7 +757,8 @@
|
|||
(is (and (search "#1=(1 2 3 #<a CL-TEST::COMPILER-TEST-CLASS" str)
|
||||
(search "> #1#)" str))))
|
||||
(is (eq (compiler-test-parent a.0030) b.0030))
|
||||
(is (eq (first (compiler-test-children b.0030)) a.0030)))
|
||||
(is (eq (first (compiler-test-children b.0030)) a.0030))
|
||||
(is (eq a.0030 c.0030)))
|
||||
|
||||
;;; Date: 9/06/2006 (Pascal Costanza)
|
||||
;;; Fixed: 13/06/2006 (juanjo)
|
||||
|
|
@ -1707,14 +1708,16 @@
|
|||
;;; URL: https://gitlab.com/embeddable-common-lisp/ecl/-/issues/565
|
||||
;;; Description
|
||||
;;;
|
||||
;;; COMPILE-FILE produces two vectors VV and VVtemp which
|
||||
;;; represent the fasl data segment. The latter is deallocated
|
||||
;;; after all top-level forms are evaluated. As compiler processes
|
||||
;;; them currently if the object is first pushed to the temporary
|
||||
;;; segment and then we try to add it to the permanent segment we
|
||||
;;; have two versions of the same objects which are not EQ. File
|
||||
;;; src/cmp/cmpwt.lsp has an appropriate FIXME in the ADD-OBJECT
|
||||
;;; function definition.
|
||||
;;; This test checks whether the same constant is coalesced to the EQ
|
||||
;;; value among three distinct top-level forms.
|
||||
;;;
|
||||
;;; ccmp's COMPILE-FILE produces two vectors VV and VVtemp which represent
|
||||
;;; the fasl data segment. The latter is deallocated after all top-level
|
||||
;;; forms are evaluated. As compiler processes them currently if the
|
||||
;;; object is first pushed to the temporary segment and then we try to add
|
||||
;;; it to the permanent segment we have two versions of the same objects
|
||||
;;; which are not EQ. File src/cmp/cmpwt.lsp has an appropriate FIXME in
|
||||
;;; the ADD-OBJECT function definition.
|
||||
(test cmp.0076.make-load-form-non-eq
|
||||
(multiple-value-bind (file output)
|
||||
(with-compiler ("make-temp.lsp")
|
||||
|
|
@ -1745,8 +1748,6 @@
|
|||
(delete-file file))
|
||||
(multiple-value-bind (x a b) (foo)
|
||||
(is (eq x a) "~a is not eq to ~a" x a)
|
||||
;; This test passes because B toplevel form is compiled after the
|
||||
;; function FOO. Included here for completness.
|
||||
(is (eq x b) "~a is not eq to ~a" x b)
|
||||
(is (eq a b) "~a is not eq to ~a" a b)))
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue