Changeset 9328


Ignore:
Timestamp:
Apr 29, 2008, 10:42:36 AM (11 years ago)
Author:
gz
Message:

Don't try to write program-error's into fasls

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/working-0711/ccl/compiler/nx0.lisp

    r9239 r9328  
    12841284       (,handler (catch 'program-error-handler (return-from ,tag (progn ,@body)))))))
    12851285
     1286(defun runtime-program-error-form (c)
     1287  `(signal-program-error "Invalid program: ~a" ,(princ-to-string c)))
     1288
    12861289(defun nx1-compile-lambda (name lambda-form &optional
    12871290                                 (p (make-afunc))
     
    13451348    (with-program-error-handler
    13461349        (lambda (c)
    1347           (setf (afunc-acode p) (nx1-lambda () `((error ',c)) nil)))
     1350          (setf (afunc-acode p) (nx1-lambda () `(,(runtime-program-error-form c)) nil)))
    13481351      (handler-bind ((warning (lambda (c)
    13491352                                (nx1-whine :program-error c)
     
    13571360                                      (throw 'program-error-handler c))))
    13581361        (multiple-value-bind (body decls)
    1359             (with-program-error-handler (lambda (c) `(error ',c))
     1362            (with-program-error-handler (lambda (c) (runtime-program-error-form c))
    13601363              (parse-body (%cddr lambda-form) *nx-lexical-environment* t))
    13611364          (setf (afunc-acode p) (nx1-lambda (%cadr lambda-form) body decls)))))
     
    17551758  (let ((form (with-program-error-handler
    17561759                  (lambda (c)
    1757                     (nx-transform `(error ',c) env))
     1760                    (nx-transform (runtime-program-error-form c) env))
    17581761                (nx-transform original env))))
    17591762    (nx1-transformed-form form env original)))
Note: See TracChangeset for help on using the changeset viewer.