Ticket #928 (closed defect: fixed)

Opened 3 years ago

Last modified 2 years ago

DEFINE-CONDITION allows non-condition parent conditions

Reported by: fare Owned by:
Priority: normal Milestone:
Component: Compiler Version: trunk
Keywords: Cc:

Description

Ethan H. Schwartz 2009-04-14 11:24:20 EDT

On DEFINE-CONDITION, The CLHS says: parent-type---a symbol naming a condition type. If no parent-types are supplied, the parent-types default to (condition).

With CCL Version 1.3-dev-r11854-working-0711 (LinuxX8664):

(defclass a () ()) #<STANDARD-CLASS A>

(define-condition foo (a) ()) FOO

(error 'foo) #<STANDARD-CLASS FOO> is not a condition class

It would be better if CCL complained at time of compilation of the condition that the parent-type argument is not a condition type.

[was ITA bug 58450]

Change History

comment:1 Changed 2 years ago by gb

  • Status changed from new to closed
  • Resolution set to fixed

(In [15306]) DEFINE-CONDITION arranges to validate parent types as subtypes of CONDITION. Move some condition-types around to allow this to be bootstrapped. Fixes ticket:928.

Note: See TracTickets for help on using tickets.