Changeset 9666


Ignore:
Timestamp:
Jun 3, 2008, 5:54:15 PM (11 years ago)
Author:
gz
Message:

Propagate r9328 to here

File:
1 edited

Legend:

Unmodified
Added
Removed
  • release/1.2/source/compiler/nx0.lisp

    r9200 r9666  
    12641264       (,handler (catch 'program-error-handler (return-from ,tag (progn ,@body)))))))
    12651265
     1266(defun runtime-program-error-form (c)
     1267  `(signal-program-error "Invalid program: ~a" ,(princ-to-string c)))
     1268
    12661269(defun nx1-compile-lambda (name lambda-form &optional
    12671270                                 (p (make-afunc))
     
    13201323    (with-program-error-handler
    13211324        (lambda (c)
    1322           (setf (afunc-acode p) (nx1-lambda () `((error ',c)) nil)))
     1325          (setf (afunc-acode p) (nx1-lambda () `(,(runtime-program-error-form c)) nil)))
    13231326      (handler-bind ((warning (lambda (c)
    13241327                                (nx1-whine :program-error c)
     
    13321335                                      (throw 'program-error-handler c))))
    13331336        (multiple-value-bind (body decls)
    1334             (with-program-error-handler (lambda (c) `(error ',c))
     1337            (with-program-error-handler (lambda (c) (runtime-program-error-form c))
    13351338              (parse-body (%cddr lambda-form) *nx-lexical-environment* t))
    13361339          (setf (afunc-acode p) (nx1-lambda (%cadr lambda-form) body decls)))))
     
    16181621  (let ((form (with-program-error-handler
    16191622                  (lambda (c)
    1620                     (nx-transform `(error ',c) env))
     1623                    (nx-transform (runtime-program-error-form c) env))
    16211624                (nx-transform original env))))
    16221625    (nx1-transformed-form form env)))
Note: See TracChangeset for help on using the changeset viewer.