Raymond Toy pushed to branch rtoy-32-no-before-execve-option at cmucl / cmucl
Commits:
-
48d1f01f
by Raymond Toy at 2016-09-10T12:40:03-07:00
-
ae93b43b
by Raymond Toy at 2016-09-10T12:40:34-07:00
-
94259938
by Raymond Toy at 2016-09-25T18:59:48-07:00
-
d6ae3337
by Raymond Toy at 2016-09-26T02:01:07+00:00
-
21ae1a78
by Raymond Toy at 2016-09-25T19:26:54-07:00
-
2cc0df30
by Raymond Toy at 2016-09-25T19:28:17-07:00
2 changed files:
Changes:
... | ... | @@ -2041,11 +2041,7 @@ |
2041 | 2041 |
((or cons eval:interpreted-function)
|
2042 | 2042 |
`#',(get-lambda-to-compile definition))
|
2043 | 2043 |
(function
|
2044 |
(multiple-value-bind (exp lexenv)
|
|
2045 |
(function-lambda-expression definition)
|
|
2046 |
(if (and exp (not lexenv))
|
|
2047 |
`#',exp
|
|
2048 |
`',definition)))))
|
|
2044 |
definition)))
|
|
2049 | 2045 |
(*source-info* (make-lisp-source-info form))
|
2050 | 2046 |
(*top-level-lambdas* ())
|
2051 | 2047 |
(*converting-for-interpreter* nil)
|
... | ... | @@ -2069,6 +2065,14 @@ |
2069 | 2065 |
(*gensym-counter* 0)
|
2070 | 2066 |
(*current-function-names* (list name))
|
2071 | 2067 |
(intl::*default-domain* intl::*default-domain*))
|
2068 |
;; As mentioned above, we can return the same function if the
|
|
2069 |
;; function was already compiled. We do this when FORM is EQ
|
|
2070 |
;; to DEFINITION (which happens above if we have a compiled
|
|
2071 |
;; function that we don't have the source for or was defined
|
|
2072 |
;; in a non-null environment.
|
|
2073 |
(when (and name (eq form definition))
|
|
2074 |
(return-from compile
|
|
2075 |
(values name nil nil)))
|
|
2072 | 2076 |
(with-debug-counters
|
2073 | 2077 |
(clear-stuff)
|
2074 | 2078 |
(find-source-paths form 0)
|
... | ... | @@ -310,3 +310,14 @@ |
310 | 310 |
(assert-true (pathnamep fasl-file))
|
311 | 311 |
(assert-equalp (list fasl-file nil nil)
|
312 | 312 |
(multiple-value-list (compile-file test-file :load t)))))
|
313 |
|
|
314 |
(define-test issue.24
|
|
315 |
(:tag :issues)
|
|
316 |
(let* ((test-file #.(merge-pathnames #p"resources/issue-24.lisp" cl:*load-pathname*)))
|
|
317 |
(assert-true (compile-file test-file :load t))))
|
|
318 |
|
|
319 |
(define-test issue.32
|
|
320 |
(:tag :issues)
|
|
321 |
(assert-error 'kernel:simple-program-error
|
|
322 |
(ext:run-program "cat" nil
|
|
323 |
:before-execve t)))
|