Ticket #1056 (closed enhancement: wontfix)

Opened 23 months ago

Last modified 23 months ago

a supported extension to support (un)reifying deferred warnings

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

Description

ASDF 2.26.x introduces support for saving deferred warnings and re-playing them in a different session.

It currently does it by peeking and poking at the internals of CCL (and SBCL). Could you export a supported variant of that functionality in CCL 1.9 and later?

See the code in asdf/lisp-build.lisp. The entry points are reify-deferred-warnings unreify-deferred-warnings reset-deferred-warnings

 http://common-lisp.net/gitweb?p=projects/asdf/asdf.git

Change History

comment:1 Changed 23 months ago by fare

Here are the docstrings I just added.

(defun reify-deferred-warnings ()

"return a portable S-expression, portably readable and writeable in any Common Lisp implementation

using READ within a WITH-SAFE-IO-SYNTAX, that represents the warnings currently deferred by WITH-COMPILATION-UNIT. One of three functions required for deferred-warnings support in ASDF."

...)

(defun unreify-deferred-warnings (reified-deferred-warnings)

"given a S-expression created by REIFY-DEFERRED-WARNINGS, reinstantiate the corresponding

deferred warnings as to be handled at the end of the current WITH-COMPILATION-UNIT. Handle any warning that has been resolved already, such as an undefined function that has been defined since. One of three functions required for deferred-warnings support in ASDF."

...)

(defun reset-deferred-warnings ()

"Reset the set of deferred warnings to be handled at the end of the current WITH-COMPILATION-UNIT.

One of three functions required for deferred-warnings support in ASDF."

...)

comment:2 Changed 23 months ago by gb

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

comment:3 Changed 23 months ago by rme

This proposal seems a bit too specialized towards the needs of ASDF.

Additionally, the idea itself seems rather half-baked (without meaning to be deragatory). It seems premature to sign up to support such an interface in ccl.

Note: See TracTickets for help on using tickets.