Opened 13 years ago

Closed 10 years ago

#2 closed enhancement (fixed)

Human readable printing of errors and conditions

Reported by: ehuelsmann Owned by: somebody
Priority: major Milestone: unscheduled
Component: other Version:
Keywords: Cc:
Parent Tickets:

Description

Not all conditions and errors print 'human readable'. An example is the PROGRAM-ERROR which prints as #<PROGRAM-ERROR (some address)>, but neglects to present the exact error to the user. This applies to many more errors.

There are 2 sides to this issue:
1) Find those errors which don't
2) Resolve them

This means I hope we can collect a list here to be checked off.

Change History (5)

comment:1 Changed 13 years ago by ehuelsmann

Simple reproduction recipe:

CL-USER(1): (define-condition e2 (error) ())
-> E2

CL-USER(2): (error 'e2 :e "Just an error")

->

Debugger invoked on condition of type E2:

#<E2 {96368A}>

Restarts:

0: TOP-LEVEL Return to top level.

The same happens with (for example) PROGRAM-ERROR, which is more problematic than the example above.

comment:2 Changed 12 years ago by ehuelsmann

The source of this behaviour is the fact that in some cases the 'format-control slot in the built-in condition doesn't get set.

When that happens, the print-object code in print-object.lisp doesn't get triggered to print the nice message, but rather passes control to the standard object printing routine (which prints the ugly output above).

comment:3 Changed 11 years ago by ehuelsmann

Milestone: 0.24

comment:4 Changed 10 years ago by Mark Evenson

Milestone: 0.24unscheduled

comment:5 Changed 10 years ago by ehuelsmann

Resolution: fixed
Status: newclosed

Some of these have been fixed; no known others. Please reopen specific bugs for specific cases.

Note: See TracTickets for help on using tickets.