SBCL fails 4 SUBTYPEP ANSI tests

Bug #2061237 reported by Robert Brown
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
SBCL
New
Undecided
Unassigned

Bug Description

SBCL fails the following ANSI tests

  SUBTYPEP.EQL.1 SUBTYPEP.EQL.2 SUBTYPEP.MEMBER.17 SUBTYPEP.MEMBER.18

because SUBTYPEP believes EQUAL type specifier forms represent the same type.

The included patch fixes the problem by using a slightly modified version of
EQUAL to compare type specifier forms. The modified version is identical to
EQUAL except that it compares values in EQL and MEMBER specifier forms using EQL.

Revision history for this message
Robert Brown (robert-brown) wrote :
Revision history for this message
Stas Boukarev (stassats) wrote :

What about deftype then?

Revision history for this message
Robert Brown (robert-brown) wrote :

I believe this revised patch handles deftypes that expand to contain EQL or MEMBER forms.

Revision history for this message
Stas Boukarev (stassats) wrote :

Falls on (deftype dtype () 'fixnum)

(subtypep '(dtype) '(dtype))

The value
  FIXNUM
is not of type
  LIST

Revision history for this message
Robert Brown (robert-brown) wrote :

One more attempt ...

Revision history for this message
Stas Boukarev (stassats) wrote :

(subtypep '(function (&key (member t))) '(function (&key (eql t))))
=>
T

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.