(FILECREATED " 6-Jun-86 00:21:34" ("compiled on " {ERIS}LIBRARY>CMLMVS.;23) " 5-Jun-86 22:02:28" "COMPILE-FILEd" in "Xerox Lisp 5-Jun-86 ..." dated " 5-Jun-86 22:15:02") (FILECREATED " 5-Jun-86 00:10:36" {ERIS}LIBRARY>CMLMVS.;23 7366 changes to: (VARS CMLMVSCOMS ) (MACROS MULTIPLE-VALUE-CALL) (FUNCTIONS MULTIPLE-VALUE-BIND MULTIPLE-VALUE-PROG1) previous date: "30-May-86 00:18:30" {ERIS}LIBRARY>CMLMVS.;22) (RPAQQ CMLMVSCOMS ((* "Interpreter and compiler support for multiple values. See LLMVS for runtime support") (FNS MULTIPLE-VALUE-CALL RETVALUES) (PROP DMACRO MULTIPLE-VALUE-CALL) (FUNCTIONS MULTIPLE-VALUE-BIND MULTIPLE-VALUE-LIST MULTIPLE-VALUE-PROG1 MULTIPLE-VALUE-SETQ) (VARS (NEW-ADVISETEMPLATE (QUOTE ( ADV-PROG (!VALUE !OTHER-VALUES) (MULTIPLE-VALUE-SETQ (!VALUE . !OTHER-VALUES) (ADV-PROG NIL ( ADV-RETURN DEF))) (ADV-RETURN (VALUES-LIST (CONS !VALUE !OTHER-VALUES))))))) (PROP FILETYPE CMLMVS) ( DECLARE: DONTEVAL@LOAD DOEVAL@COMPILE DONTCOPY COMPILERVARS (ADDVARS (NLAMA MULTIPLE-VALUE-CALL) ( NLAML) (LAMA VALUES))))) MULTIPLE-VALUE-CALL D1 (L (0 FORMS)) G@,j0@d, ZKJ\[L [JdIkYnhl4 IH(76Q \LISPERROR 46Q LAST 21Q \MVLIST) NIL () RETVALUES D1 (L (2 FLG 1 VALUES 0 POS)) =@ kHjkHkH l Xj Al hHd B@ A (72Q VALUES-LIST 65Q RELSTK 57Q \SMASHLINK 50Q \LISPERROR 3 \STACKARGPTR) NIL () (PUTPROPS MULTIPLE-VALUE-CALL DMACRO (DEFMACRO (FN &BODY BODY) (* "optmizer" for special form MULTIPLE-VALUE-CALL - handle special case of "list" and let the rest turn into an APPLY) (COND ((AND ( EQUAL FN (QUOTE (FUNCTION LIST))) (NULL (CDR BODY))) (CONS (QUOTE \MVLIST) BODY)) (T (BQUOTE (CL:APPLY (\, FN) (NCONC (\,@ (for F in BODY collect (BQUOTE (MULTIPLE-VALUE-LIST (\, F)))))))))))) expand-MULTIPLE-VALUE-BIND D1 (L (0 -args-)) &ekaAII[KgJgLhMNIL (33Q MULTIPLE-VALUE-LIST 27Q DESTRUCTURING-BIND) () (SETF-MACRO-FUNCTION (QUOTE MULTIPLE-VALUE-BIND) (QUOTE expand-MULTIPLE-VALUE-BIND)) expand-MULTIPLE-VALUE-LIST D1 (L (0 -args-)) ekagoIhNIL (15Q MULTIPLE-VALUE-CALL) ( 21Q (FUNCTION LIST)) (SETF-MACRO-FUNCTION (QUOTE MULTIPLE-VALUE-LIST) (QUOTE expand-MULTIPLE-VALUE-LIST)) expand-MULTIPLE-VALUE-PROG1 D1 (L (0 -args-)) %eka!IIgggJhKhNIL (30Q MULTIPLE-VALUE-LIST 25Q PROG1 22Q VALUES-LIST) () (SETF-MACRO-FUNCTION (QUOTE MULTIPLE-VALUE-PROG1) (QUOTE expand-MULTIPLE-VALUE-PROG1)) expand-MULTIPLE-VALUE-SETQ D1 (L (0 -args-)) "eka!IIgJgKhhNIL (27Q MULTIPLE-VALUE-LIST 23Q DESTRUCTURING-SETQ) () (SETF-MACRO-FUNCTION (QUOTE MULTIPLE-VALUE-SETQ) (QUOTE expand-MULTIPLE-VALUE-SETQ)) (RPAQQ NEW-ADVISETEMPLATE (ADV-PROG (!VALUE !OTHER-VALUES) (MULTIPLE-VALUE-SETQ (!VALUE . !OTHER-VALUES) (ADV-PROG NIL (ADV-RETURN DEF))) (ADV-RETURN (VALUES-LIST (CONS !VALUE !OTHER-VALUES))) )) (PUTPROPS CMLMVS FILETYPE COMPILE-FILE) (RPAQQ CMLMVSCOMS ((* "Interpreter and compiler support for multiple values. See LLMVS for runtime support") (FNS MULTIPLE-VALUE-CALL RETVALUES) (PROP DMACRO MULTIPLE-VALUE-CALL) (FUNCTIONS MULTIPLE-VALUE-BIND MULTIPLE-VALUE-LIST MULTIPLE-VALUE-PROG1 MULTIPLE-VALUE-SETQ) (VARS (NEW-ADVISETEMPLATE (QUOTE ( ADV-PROG (!VALUE !OTHER-VALUES) (MULTIPLE-VALUE-SETQ (!VALUE . !OTHER-VALUES) (ADV-PROG NIL ( ADV-RETURN DEF))) (ADV-RETURN (VALUES-LIST (CONS !VALUE !OTHER-VALUES))))))) (PROP FILETYPE CMLMVS) ( DECLARE: DONTEVAL@LOAD DOEVAL@COMPILE DONTCOPY COMPILERVARS (ADDVARS (NLAMA MULTIPLE-VALUE-CALL) ( NLAML) (LAMA))))) (PUTPROPS CMLMVS COPYRIGHT ("Xerox Corporation" 1985 1986)) STOP