64 |
;;; is a list ( macro-name expansion-function). |
;;; is a list ( macro-name expansion-function). |
65 |
|
|
66 |
(defun c1flet (args &aux body ss ts is other-decl info |
(defun c1flet (args &aux body ss ts is other-decl info |
67 |
(defs1 nil) (local-funs nil) (closures nil)) |
(defs1 nil) (local-funs nil) (closures nil) (*info* (copy-info *info*))) |
68 |
(when (endp args) (too-few-args 'flet 1 0)) |
(when (endp args) (too-few-args 'flet 1 0)) |
69 |
|
|
70 |
(let ((*funs* *funs*)) |
(let ((*funs* *funs*)) |
173 |
|
|
174 |
(defun c1labels (args &aux body ss ts is other-decl info |
(defun c1labels (args &aux body ss ts is other-decl info |
175 |
(defs1 nil) (local-funs nil) (closures nil) |
(defs1 nil) (local-funs nil) (closures nil) |
176 |
(fnames nil) (processed-flag nil) (*funs* *funs*)) |
(fnames nil) (processed-flag nil) (*funs* *funs*) (*info* (copy-info *info*))) |
177 |
(when (endp args) (too-few-args 'labels 1 0)) |
(when (endp args) (too-few-args 'labels 1 0)) |
178 |
|
|
179 |
;;; bind local-functions |
;;; bind local-functions |
358 |
;; through c1funob to other call methods than previously supported c1symbol-fun, |
;; through c1funob to other call methods than previously supported c1symbol-fun, |
359 |
;; e.g. c1multiple-value-call, etc. CM 20031030 |
;; e.g. c1multiple-value-call, etc. CM 20031030 |
360 |
(add-info *info* (fun-info fun)) |
(add-info *info* (fun-info fun)) |
361 |
(return (list 'call-local *info* fun ccb)))))) |
(return (list 'call-local *info* fun ccb)))))) |
362 |
|
|
363 |
(defun c2call-local (fd args &aux (*vs* *vs*)) |
(defun c2call-local (fd args &aux (*vs* *vs*)) |
364 |
;;; FD is a list ( fun-object ccb ). |
;;; FD is a list ( fun-object ccb ). |