From a77435e8e0527d4e7b03823e5c4a9e242f7a8a73 Mon Sep 17 00:00:00 2001 From: AJ Rossini Date: Fri, 8 Jun 2007 23:00:13 +0200 Subject: [PATCH] removed CLSR from master -- still in tonylocal, and need clr in tonylocal as well --- clsr/Orig/R-cyrus-20060315.patch | 33 - clsr/Orig/ch-util-0.1.10-20060315.tar.gz | Bin 8781 -> 0 bytes clsr/Orig/clsr-0.1.1-20060315.tar.gz | Bin 121723 -> 0 bytes clsr/Orig/gcc-xml-ffi-0.1.4-20060315.tar.gz | Bin 16101 -> 0 bytes clsr/README | 21 - clsr/ch-util/COPYRIGHT | 28 - clsr/ch-util/README | 1 - clsr/ch-util/bootstrap.cl | 7 - clsr/ch-util/ch-util-test.asd | 37 - clsr/ch-util/ch-util.asd | 49 - clsr/ch-util/make-dist.sh | 9 - clsr/ch-util/src/bytebuffer.cl | 60 - clsr/ch-util/src/ch-asdf.cl | 79 - clsr/ch-util/src/ch-util.cl | 123 - clsr/ch-util/src/debug.cl | 49 - clsr/ch-util/src/defpackage.cl | 71 - clsr/ch-util/src/filesystem.cl | 195 - clsr/ch-util/src/hash-table.cl | 21 - clsr/ch-util/src/lists.cl | 35 - clsr/ch-util/src/macros.cl | 28 - clsr/ch-util/src/testharness.cl | 26 - clsr/ch-util/src/vector.cl | 23 - clsr/ch-util/test/defpackage.cl | 10 - clsr/ch-util/test/test-ch-util.cl | 37 - clsr/clsr/COPYRIGHT | 29 - clsr/clsr/R/lisp.R | 9 - clsr/clsr/README | 43 - clsr/clsr/c-src/clsr-lib.c | 19 - clsr/clsr/clsr-test.asd | 40 - clsr/clsr/clsr.asd | 105 - clsr/clsr/gccxml-src/clsr-for-gccxml.c | 41 - clsr/clsr/gccxml-src/clsr.xml | 4542 ------------------ clsr/clsr/include/clsr-lib.h | 5 - clsr/clsr/src/clsr-loader.cl | 23 - clsr/clsr/src/clsr-objects.cl | 47 - clsr/clsr/src/clsr-parse-eval.cl | 114 - clsr/clsr/src/clsr-rref.cl | 78 - clsr/clsr/src/clsr-sxp.cl | 475 -- clsr/clsr/src/clsr.cl | 87 - clsr/clsr/src/clsr.cl-NEW | 88 - clsr/clsr/src/defpackage.cl | 13 - clsr/clsr/src/semantic.cache | 39 - clsr/clsr/test/defpackage.cl | 5 - clsr/clsr/test/test-clsr.cl | 430 -- clsr/gcc-xml-ffi/ChangeLog | 204 - clsr/gcc-xml-ffi/LICENSE | 29 - clsr/gcc-xml-ffi/Makefile | 25 - clsr/gcc-xml-ffi/README | 10 - clsr/gcc-xml-ffi/TODO | 38 - clsr/gcc-xml-ffi/gcc-xml-ffi-test.asd | 40 - clsr/gcc-xml-ffi/gcc-xml-ffi.asd | 52 - clsr/gcc-xml-ffi/src/defpackage.cl | 16 - clsr/gcc-xml-ffi/src/gcc-xml-classes.cl | 482 -- clsr/gcc-xml-ffi/src/gcc-xml-parse.cl | 73 - clsr/gcc-xml-ffi/src/gcc-xml-sb-alien.cl | 627 --- clsr/gcc-xml-ffi/src/gcc-xml-uffi.cl | 408 -- clsr/gcc-xml-ffi/src/gcc-xml-util.cl | 103 - clsr/gcc-xml-ffi/test/defpackage.cl | 5 - clsr/gcc-xml-ffi/test/gcc-xml-test.cl | 73 - clsr/gccxml-src/clsr-sb-alien-decls.cl | 6903 --------------------------- clsr/gccxml-src/clsr.xml | 4542 ------------------ 61 files changed, 20804 deletions(-) delete mode 100644 clsr/Orig/R-cyrus-20060315.patch delete mode 100644 clsr/Orig/ch-util-0.1.10-20060315.tar.gz delete mode 100644 clsr/Orig/clsr-0.1.1-20060315.tar.gz delete mode 100644 clsr/Orig/gcc-xml-ffi-0.1.4-20060315.tar.gz delete mode 100644 clsr/README delete mode 100644 clsr/ch-util/COPYRIGHT delete mode 100644 clsr/ch-util/README delete mode 100644 clsr/ch-util/bootstrap.cl delete mode 100644 clsr/ch-util/ch-util-test.asd delete mode 100644 clsr/ch-util/ch-util.asd delete mode 100644 clsr/ch-util/make-dist.sh delete mode 100644 clsr/ch-util/src/bytebuffer.cl delete mode 100644 clsr/ch-util/src/ch-asdf.cl delete mode 100644 clsr/ch-util/src/ch-util.cl delete mode 100644 clsr/ch-util/src/debug.cl delete mode 100644 clsr/ch-util/src/defpackage.cl delete mode 100644 clsr/ch-util/src/filesystem.cl delete mode 100644 clsr/ch-util/src/hash-table.cl delete mode 100644 clsr/ch-util/src/lists.cl delete mode 100644 clsr/ch-util/src/macros.cl delete mode 100644 clsr/ch-util/src/testharness.cl delete mode 100644 clsr/ch-util/src/vector.cl delete mode 100644 clsr/ch-util/test/defpackage.cl delete mode 100644 clsr/ch-util/test/test-ch-util.cl delete mode 100644 clsr/clsr/COPYRIGHT delete mode 100644 clsr/clsr/R/lisp.R delete mode 100644 clsr/clsr/README delete mode 100644 clsr/clsr/c-src/clsr-lib.c delete mode 100644 clsr/clsr/clsr-test.asd delete mode 100644 clsr/clsr/clsr.asd delete mode 100644 clsr/clsr/gccxml-src/clsr-for-gccxml.c delete mode 100644 clsr/clsr/gccxml-src/clsr.xml delete mode 100644 clsr/clsr/include/clsr-lib.h delete mode 100644 clsr/clsr/src/clsr-loader.cl delete mode 100644 clsr/clsr/src/clsr-objects.cl delete mode 100644 clsr/clsr/src/clsr-parse-eval.cl delete mode 100644 clsr/clsr/src/clsr-rref.cl delete mode 100644 clsr/clsr/src/clsr-sxp.cl delete mode 100644 clsr/clsr/src/clsr.cl delete mode 100644 clsr/clsr/src/clsr.cl-NEW delete mode 100644 clsr/clsr/src/defpackage.cl delete mode 100644 clsr/clsr/src/semantic.cache delete mode 100644 clsr/clsr/test/defpackage.cl delete mode 100644 clsr/clsr/test/test-clsr.cl delete mode 100644 clsr/gcc-xml-ffi/ChangeLog delete mode 100644 clsr/gcc-xml-ffi/LICENSE delete mode 100644 clsr/gcc-xml-ffi/Makefile delete mode 100644 clsr/gcc-xml-ffi/README delete mode 100644 clsr/gcc-xml-ffi/TODO delete mode 100644 clsr/gcc-xml-ffi/gcc-xml-ffi-test.asd delete mode 100644 clsr/gcc-xml-ffi/gcc-xml-ffi.asd delete mode 100644 clsr/gcc-xml-ffi/src/defpackage.cl delete mode 100644 clsr/gcc-xml-ffi/src/gcc-xml-classes.cl delete mode 100644 clsr/gcc-xml-ffi/src/gcc-xml-parse.cl delete mode 100644 clsr/gcc-xml-ffi/src/gcc-xml-sb-alien.cl delete mode 100644 clsr/gcc-xml-ffi/src/gcc-xml-uffi.cl delete mode 100644 clsr/gcc-xml-ffi/src/gcc-xml-util.cl delete mode 100644 clsr/gcc-xml-ffi/test/defpackage.cl delete mode 100644 clsr/gcc-xml-ffi/test/gcc-xml-test.cl delete mode 100644 clsr/gccxml-src/clsr-sb-alien-decls.cl delete mode 100644 clsr/gccxml-src/clsr.xml diff --git a/clsr/Orig/R-cyrus-20060315.patch b/clsr/Orig/R-cyrus-20060315.patch deleted file mode 100644 index ef297bc..0000000 --- a/clsr/Orig/R-cyrus-20060315.patch +++ /dev/null @@ -1,33 +0,0 @@ -Index: src/include/Defn.h -=================================================================== ---- src/include/Defn.h (revision 37490) -+++ src/include/Defn.h (working copy) -@@ -537,7 +537,7 @@ - extern0 Rboolean R_KeepSource INI_as(FALSE); /* options(keep.source) */ - extern0 int R_UseNamespaceDispatch INI_as(TRUE); - extern0 int R_WarnLength INI_as(1000); /* Error/warning max length */ --extern0 uintptr_t R_CStackLimit INI_as((uintptr_t)-1); /* C stack limit */ -+LibExtern uintptr_t R_CStackLimit INI_as((uintptr_t)-1); /* C stack limit */ - extern0 uintptr_t R_CStackStart INI_as((uintptr_t)-1); /* Initial stack address */ - extern0 int R_CStackDir INI_as(1); /* C stack direction */ - -Index: src/main/main.c -=================================================================== ---- src/main/main.c (revision 37490) -+++ src/main/main.c (working copy) -@@ -600,6 +600,7 @@ - sa.sa_sigaction = sigactionSegv; - sigemptyset(&sa.sa_mask); - sa.sa_flags = SA_ONSTACK | SA_SIGINFO; -+ /* - sigaction(SIGSEGV, &sa, NULL); - sigaction(SIGILL, &sa, NULL); - #ifdef SIGBUS -@@ -610,6 +611,7 @@ - signal(SIGUSR1, onsigusr1); - signal(SIGUSR2, onsigusr2); - signal(SIGPIPE, SIG_IGN); -+ */ - } - - #else /* not sigaltstack and sigaction and sigemptyset*/ diff --git a/clsr/Orig/ch-util-0.1.10-20060315.tar.gz b/clsr/Orig/ch-util-0.1.10-20060315.tar.gz deleted file mode 100644 index 7084650e939f3363e2d7503814189feded84d288..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 8781 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 Daq3a) diff --git a/clsr/Orig/clsr-0.1.1-20060315.tar.gz b/clsr/Orig/clsr-0.1.1-20060315.tar.gz deleted file mode 100644 index 5edf51ef3aa87eede2d2cf27eafd5e2ef057e6cc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 121723 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

iMg_2yMaS;DEvN@*JOWl_npYy^J?e&9FN7L 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�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 diff --git a/clsr/Orig/gcc-xml-ffi-0.1.4-20060315.tar.gz b/clsr/Orig/gcc-xml-ffi-0.1.4-20060315.tar.gz deleted file mode 100644 index 2d99b5d4013d638fd2ebb1e18d48d5c15595431b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcwPel00001 literal 16101 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 to -document his design approach. Much of what we are doing is thinking -about what a general interface might be. - -* Framework - -3 packages are needed: - -1. clsr -2. ch-utils -3. gccxml-ffi - -along with a patch to R, to remove signal handling. - -** clsr diff --git a/clsr/ch-util/COPYRIGHT b/clsr/ch-util/COPYRIGHT deleted file mode 100644 index 5ef0c8a..0000000 --- a/clsr/ch-util/COPYRIGHT +++ /dev/null @@ -1,28 +0,0 @@ -chutil, a library of common lisp utilities by Cyrus Harmon - -Copyright (c) 2005 Cyrus Harmon -All rights reserved. - -Redistribution and use in source and binary forms, with or without -modification, are permitted provided that the following conditions -are met: - - * Redistributions of source code must retain the above copyright - notice, this list of conditions and the following disclaimer. - - * Redistributions in binary form must reproduce the above - copyright notice, this list of conditions and the following - disclaimer in the documentation and/or other materials - provided with the distribution. - -THIS SOFTWARE IS PROVIDED BY THE AUTHOR 'AS IS' AND ANY EXPRESSED -OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED -WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY -DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE -GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, -WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING -NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS -SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/clsr/ch-util/README b/clsr/ch-util/README deleted file mode 100644 index b009562..0000000 --- a/clsr/ch-util/README +++ /dev/null @@ -1 +0,0 @@ -README goes here diff --git a/clsr/ch-util/bootstrap.cl b/clsr/ch-util/bootstrap.cl deleted file mode 100644 index aa2b574..0000000 --- a/clsr/ch-util/bootstrap.cl +++ /dev/null @@ -1,7 +0,0 @@ - -(require 'asdf) - -(asdf:operate 'asdf:load-op 'ch-util) -(asdf:operate 'asdf:load-op 'ch-util-test) - -(ch-util-test:run-tests) \ No newline at end of file diff --git a/clsr/ch-util/ch-util-test.asd b/clsr/ch-util/ch-util-test.asd deleted file mode 100644 index 256186a..0000000 --- a/clsr/ch-util/ch-util-test.asd +++ /dev/null @@ -1,37 +0,0 @@ - -(defpackage #:ch-util-test-system (:use #:asdf #:cl)) -(in-package #:ch-util-test-system) - -;;;; -;;;; The following section customizes asdf to work with filenames -;;;; with a .cl extension and to put fasl files in a separate -;;;; directory. -;;;; -;;;; To enable this behvior, use asdf component type -;;;; :ch-util-test-cl-source-file -;;;; -(defclass ch-util-test-cl-source-file (cl-source-file) ()) - -(defparameter *fasl-directory* - (make-pathname :directory '(:relative #+sbcl "sbcl-fasl" - #+openmcl "openmcl-fasl" - #-(or sbcl openmcl) "fasl"))) - -(defmethod source-file-type ((c ch-util-test-cl-source-file) (s module)) "cl") - -(defmethod asdf::output-files :around ((operation compile-op) (c ch-util-test-cl-source-file)) - (list (merge-pathnames *fasl-directory* (compile-file-pathname (component-pathname c))))) - -(defsystem #:ch-util-test - :name "ch-util-test" - :author "Cyrus Harmon " - :version "0.1.10-20060315" - :licence "BSD" - :description "Tests for ch-util" - :depends-on (:ch-util) - :components - ((:module :test - :components - ((:ch-util-test-cl-source-file "defpackage") - (:ch-util-test-cl-source-file "test-ch-util" :depends-on ("defpackage")))))) - diff --git a/clsr/ch-util/ch-util.asd b/clsr/ch-util/ch-util.asd deleted file mode 100644 index d83075d..0000000 --- a/clsr/ch-util/ch-util.asd +++ /dev/null @@ -1,49 +0,0 @@ - -(defpackage #:ch-util-system (:use #:asdf #:cl)) -(in-package #:ch-util-system) - -;;;; -;;;; The following section customizes asdf to work with filenames -;;;; with a .cl extension and to put fasl files in a separate -;;;; directory. -;;;; -;;;; To enable this behvior, use asdf component type -;;;; :ch-util-cl-source-file -;;;; -(defclass ch-util-cl-source-file (cl-source-file) ()) - -(defparameter *fasl-directory* - (make-pathname :directory '(:relative #+sbcl "sbcl-fasl" - #+openmcl "openmcl-fasl" - #-(or sbcl openmcl) "fasl"))) - -(defmethod source-file-type ((c ch-util-cl-source-file) (s module)) "cl") - -(defmethod asdf::output-files :around ((operation compile-op) (c ch-util-cl-source-file)) - (list (merge-pathnames *fasl-directory* (compile-file-pathname (component-pathname c))))) - -(defsystem #:ch-util - :name "ch-util" - :author "Cyrus Harmon " - :version "0.1.10-20060315" - :licence "BSD" - :description "Miscellaneous Utility Functions from Cyrus Harmon" - :components - ((:module :src - :components - ((:ch-util-cl-source-file "defpackage") - (:ch-util-cl-source-file "ch-util" :depends-on ("defpackage")) - (:ch-util-cl-source-file "lists" :depends-on ("defpackage")) - (:ch-util-cl-source-file "macros" :depends-on ("defpackage")) - (:ch-util-cl-source-file "testharness" :depends-on ("defpackage")) - (:ch-util-cl-source-file "hash-table" :depends-on ("defpackage")) - (:ch-util-cl-source-file "vector" :depends-on ("defpackage")) - (:ch-util-cl-source-file "bytebuffer" :depends-on ("defpackage")) - (:ch-util-cl-source-file "filesystem" :depends-on ("defpackage")) - (:ch-util-cl-source-file "debug" :depends-on ("defpackage")) - (:ch-util-cl-source-file "ch-asdf" :depends-on ("defpackage" "filesystem")))) - (:static-file "bootstrap" :pathname #p"bootstrap.cl") - (:static-file "COPYRIGHT") - (:static-file "README") - (:static-file "make-dist" :pathname #.(make-pathname :name "make-dist" :type "sh")))) - diff --git a/clsr/ch-util/make-dist.sh b/clsr/ch-util/make-dist.sh deleted file mode 100644 index a89a506..0000000 --- a/clsr/ch-util/make-dist.sh +++ /dev/null @@ -1,9 +0,0 @@ -PACKAGE=ch-util -SYSTEMS=":${PACKAGE} :${PACKAGE}-test" - -sbcl --noinform --noprint \ - --eval '(require :asdf)' \ - --eval "(pushnew (make-pathname :directory \""`pwd`"\") asdf:*central-registry*)" \ - --eval "(asdf:operate 'asdf:load-op 'ch-util)" \ - --eval "(ch-util:make-dist ${SYSTEMS})" \ - --eval '(quit)' diff --git a/clsr/ch-util/src/bytebuffer.cl b/clsr/ch-util/src/bytebuffer.cl deleted file mode 100644 index 4e6b468..0000000 --- a/clsr/ch-util/src/bytebuffer.cl +++ /dev/null @@ -1,60 +0,0 @@ - -(in-package :ch-util) - -(defclass byte-buffer () - ((storage :accessor storage - :initform (make-array '(256) - :element-type '(unsigned-byte 8) - :fill-pointer 0 - :adjustable t)) - (chunk-size :accessor chunk-size :initform 256))) - -(defun byte-buffer () - (make-instance 'byte-buffer)) - -(defgeneric append-byte (buf byte)) -(defmethod append-byte ((buf byte-buffer) byte) - (let* ((a (storage buf)) - (l (first (array-dimensions a))) - (fp (fill-pointer a))) - (when (= l fp) - (let ((newlen (+ l (chunk-size buf)))) - (adjust-array a (list newlen)))) - (setf (aref a (1- (incf (fill-pointer a)))) byte))) - -(defgeneric print-buffer (buf)) -(defmethod print-buffer ((buf byte-buffer)) - (let* ((a (storage buf)) - (fp (fill-pointer a))) - (dotimes (i fp) - (princ (code-char (aref a i)))))) - -(defun read-file-to-buffer (filename) - (let ((buf (byte-buffer))) - (with-open-file (f filename :element-type '(unsigned-byte 8)) - (do ((b (read-byte f) (read-byte f nil 'eof))) - ((eq b 'eof)) - (append-byte buf b))) - buf)) - -(defun contents-of-stream (in) - "Returns a string with the entire contents of the specified file." - (with-output-to-string (contents) - (let* ((buffer-size 4096) - (buffer (make-string buffer-size))) - (labels ((read-chunks () - (let ((size (read-sequence buffer in))) - (if (< size buffer-size) - (princ (subseq buffer 0 size) contents) - (progn - (princ buffer contents) - (read-chunks)))))) - (read-chunks))))) - -;;; -;;; From lemonodor.com -;;; John Wiseman's blog -;;; -(defun contents-of-file (pathname) - (with-open-file (in pathname :direction :input) - (contents-of-stream in))) diff --git a/clsr/ch-util/src/ch-asdf.cl b/clsr/ch-util/src/ch-asdf.cl deleted file mode 100644 index a720190..0000000 --- a/clsr/ch-util/src/ch-asdf.cl +++ /dev/null @@ -1,79 +0,0 @@ -;;; -;;; ch-asdf.cl -- various lisp utilities that make my life easier -;;; -;;; Author: Cyrus Harmon -;;; Time-stamp: <2005-07-01 08:12:53 sly> -;;; - -(in-package :ch-util) - -(defun pathname-in-parent (path system) - (enough-namestring - path - (truename - (merge-pathnames - (make-pathname :directory '(:relative :up)) - (make-pathname - :directory - (pathname-directory - (asdf:system-definition-pathname system))))))) - -(defun list-module-files (module system) - (append - (typecase module - (asdf:system (list - (pathname-in-parent - (truename (asdf:system-definition-pathname module)) - system)))) - (mapcan #'(lambda (x) - (typecase x - (asdf:module (list-module-files x system)) - (t (list - (pathname-in-parent (asdf:component-pathname x) - system))))) - (asdf:module-components module)))) - -(defun make-dist (&rest module-keywords) - (let ((modules (mapcar - #'(lambda (k) (asdf:find-system k)) - module-keywords))) - (let ((module (car modules)) - (files-for-dist - (mapcan - #'(lambda (module) (list-module-files module module)) - modules))) - (with-open-file (gzip-file - (concatenate 'string - (asdf:component-name module) - "-" - (asdf:component-version module) - ".tar.gz") - :if-does-not-exist :create - :if-exists :supersede - :direction :output) - (let ((*default-pathname-defaults* - (truename - (merge-pathnames - (make-pathname :directory '(:relative :up)) - (make-pathname - :directory - (pathname-directory - (asdf:system-definition-pathname module))))))) - (with-current-directory *default-pathname-defaults* - (ch-util:run-program - "/usr/bin/gzip" - '("-c") - :input (ch-util:process-output-stream - (ch-util:run-program - "/usr/bin/tar" - (append - '("-cf" "-") - files-for-dist) - :wait nil - :output :stream - :error #p"/dev/null" - :if-error-exists :append)) - :output gzip-file))))))) - -(defun unregister-system (name) - (remhash name asdf::*defined-systems*)) diff --git a/clsr/ch-util/src/ch-util.cl b/clsr/ch-util/src/ch-util.cl deleted file mode 100644 index e03b1b5..0000000 --- a/clsr/ch-util/src/ch-util.cl +++ /dev/null @@ -1,123 +0,0 @@ -;;; -;;; ch-util.cl -- various lisp utilities that make my life easier -;;; -;;; Author: Cyrus Harmon -;;; Time-stamp: <2006-01-20 12:57:27 sly> -;;; - -(in-package :ch-util) - -;;; Miscellaneous list utilities - -(flet ((cca (l1 l2) - (dolist (x l1) - (let ((y (member x l2))) - (if y (return y)))))) - (defun closest-common-ancestor (itm &rest lis) - (if (null lis) - itm - (cca itm (apply #'closest-common-ancestor lis))))) - -;;; Miscellaneous class utilities - -(defun subclassp (c1 c2) - (subtypep (class-name c1) (class-name c2))) - -;;; Miscellaneous string utilities - -(defun strcat (&rest strs) - (apply #'concatenate 'string strs)) - -(defun trim (seq suffix) - (subseq seq 0 (search suffix seq))) - -;;; This is a hack so that one day we might run under a case-sensitive lisp -;;; like Allegro mlisp (modern lisp). For now we encapsulate the uppercasing -;;; here so we can do the right thing later. -(defun interncase (x) - (string-upcase x)) - -;;; simple wrapper for intern to allow us -(defun make-intern (x &optional (package *package*)) - (intern (interncase x) package)) - -(defun make-keyword (x) - (make-intern x 'keyword)) - -(defun keyword-list-names (k) - (mapcar #'(lambda (x) - (symbol-name x)) - k)) - -(defun double-float-divide (&rest args) - (apply #'/ (mapcar #'(lambda (x) (coerce x 'double-float)) args))) - -(defun single-float-divide (&rest args) - (apply #'/ (mapcar #'(lambda (x) (coerce x 'single-float)) args))) - -(defmacro mapv (function &rest vals) - `(values-list (mapcar ,function (multiple-value-list ,@vals)))) - -;; -;; Silly little macro to do a postincrement, that is -;; return the value of the place prior to incrementing -;; it. Like incf, this only works on valid places. -;; -(defmacro postincf (x &optional (step 1)) - (let ((pre (gensym))) - `(let ((,pre ,x)) - (incf ,x ,step) - ,pre))) - -;; another silly little function. -;; this one to sum a 2d array. -;; undoubtedly a better way to do this. -(defun array-sum (a) - (destructuring-bind (height width) (array-dimensions a) - (let ((acc 0)) - (dotimes (h height) - (dotimes (w width) - (incf acc (aref a h w)))) - acc))) - -(defun array-from-string (str) - (let ((a (make-array (length str) :element-type '(unsigned-byte 8)))) - (dotimes (i (length str)) - (setf (aref a i) (char-code (elt str i)))) - a)) - -(defun str-to-int (str) - (let ((intval 0)) - (map nil #'(lambda (c) (setf intval (+ (ash intval 8) (char-code c)))) str) - intval)) - -(defun int-to-str (i &optional s) - (if (> i 0) - (let ((r (mod i 256))) - (int-to-str (ash i -8) (cons (code-char r) s))) - (coerce s 'string))) - - -(defparameter *months* - '((1 . "January") - (2 . "February") - (3 . "March") - (4 . "April") - (5 . "May") - (6 . "June") - (7 . "July") - (8 . "August") - (9 . "September") - (10 . "October") - (11 . "November") - (12 . "December"))) - -(defun get-current-date () - (multiple-value-bind (sec min hour date mon year dow dst tz) - (get-decoded-time) - (declare (ignore sec min hour dow dst tz)) - (format nil - "~A ~A, ~A" - (cdr (assoc mon *months*)) - date - year))) \ No newline at end of file diff --git a/clsr/ch-util/src/debug.cl b/clsr/ch-util/src/debug.cl deleted file mode 100644 index 299a4f0..0000000 --- a/clsr/ch-util/src/debug.cl +++ /dev/null @@ -1,49 +0,0 @@ - - -(in-package :ch-util) - -(defun hex-dump-byte (address) - #+sbcl - (format nil "~2,'0X" - (sb-alien:deref - (sb-alien:sap-alien - (sb-alien::int-sap address) - (* (sb-alien:unsigned 8))))) - #-sbcl - (format "not yet implemented!")) - -(defun hex-dump-memory (start-address length) - (loop for i from start-address below (+ start-address length) - collect (format nil (hex-dump-byte i)))) - -(defun hex-dump-long (address) - (hex-dump-memory address 4)) - -(defun char-dump-byte (address) - #+sbcl - (format nil "~A" - (code-char - (sb-alien:deref - (sb-alien:sap-alien - (sb-alien::int-sap address) - (* (sb-alien:unsigned 8)))))) - #-sbcl - (format nil "not yet implemented")) - -(defun char-dump-memory (start-address length) - (loop for i from start-address below (+ start-address length) - collect (format nil (char-dump-byte i)))) - -(defun double-at-address (address) - (sb-alien:deref - (sb-alien:sap-alien - (sb-alien::int-sap address) - (* (sb-alien:double-float))))) - -(defun double-dump-memory (start-address length) - (let ((size (sb-alien:alien-size sb-alien:double-float :bytes))) - (loop for i from start-address - below (+ start-address (* length size)) - by size - collect (cons (format nil "~X" i) - (double-at-address i))))) diff --git a/clsr/ch-util/src/defpackage.cl b/clsr/ch-util/src/defpackage.cl deleted file mode 100644 index 74b58bc..0000000 --- a/clsr/ch-util/src/defpackage.cl +++ /dev/null @@ -1,71 +0,0 @@ - -(in-package #:cl-user) - -(defpackage #:ch-util - (:use #:cl #:asdf) - (:export #:get-fasl-directory - - #:insert-before - #:insert-before-all - #:closest-common-ancestor - - #:subclassp - - #:strcat - #:trim - - #:str-to-int - #:int-to-str - - #:get-current-date - - #:double-float-divide - #:single-float-divide - - #:defun-export - #:defparameter-export - #:defclass-export - #:defmethod-export - - #:postincf - #:array-sum - - #:interncase - #:make-intern - #:make-keyword - #:keyword-list-names - #:byte-buffer - #:read-file-to-buffer - #:print-buffer - #:make-test-run - #:test-run-tests - #:test-run-passed - #:run-test - - #:pathname-as-directory - #:pwd - #:ls - #:with-open-file-preserving-case - - #:prefix - #:subdirectories - #:list-directory - - #:unix-name - - #:make-dist - #:unregister-system - - #:run-program - #:process-output-stream - - #:make-hash-table-from-plist - #:make-hash-table-from-alist - - #:map-vector - - #:pdf-open - #:html-open - - )) - diff --git a/clsr/ch-util/src/filesystem.cl b/clsr/ch-util/src/filesystem.cl deleted file mode 100644 index cea8aa0..0000000 --- a/clsr/ch-util/src/filesystem.cl +++ /dev/null @@ -1,195 +0,0 @@ -;;; -;;; filesystem.cl -- various lisp utilities that make my life easier -;;; -;;; Author: Cyrus Harmon -;;; - -(in-package :ch-util) - -#+sbcl -(eval-when (:compile-toplevel :load-toplevel :execute) - (require :sb-posix)) - -#+openmcl -(defun pwd () - (ccl::current-directory-name)) - -(defun component-present-p (value) - (and value (not (eql value :unspecific)))) - -;;; I don't remember where I got this from. Probably from KMR somewhere -;;; along the line... -(defun pathname-as-directory (pathname) - "Return a pathname reperesenting the given pathname in `directory - form', i.e. with all the name elements in the directory component and - NIL in the name and type components. Can not be used on wild - pathnames. Returns its argument if name and type are both nil or - :unspecific." - (setf pathname (pathname pathname)) - (when (wild-pathname-p pathname) - (error "Can't reliably convert wild pathnames to directory names.")) - (cond - ((or (component-present-p (pathname-name pathname)) - (component-present-p (pathname-type pathname))) - (make-pathname - :directory (append (pathname-directory pathname) (list - (file-namestring pathname))) - :name nil - :type nil - :defaults pathname)) - (t pathname))) - -;;; I don't remember where I got this from. Probably from KMR somewhere -;;; along the line... -(defun list-directory (dirname) - "Return a list of the contents of the directory named by dirname. - Names of subdirectories will be returned in `directory normal form'. - Unlike CL:DIRECTORY, LIST-DIRECTORY does not accept wildcard - pathnames; `dirname' should simply be a pathname that names a - directory. It can be in either file or directory form." - (let ((wildcard (make-pathname :name :wild - :type :wild - :defaults (pathname-as-directory - dirname)))) - - (declare (ignorable wildcard)) - #+openmcl - ;; OpenMCl by default doesn't return subdirectories at all. But - ;; when prodded to do so with the special argument :directories, - ;; it returns them in directory form. - (directory wildcard :directories t) - #-openmcl (directory wildcard))) - -(defun ls (&optional (dirname "")) - (list-directory dirname)) - -(defmacro with-open-file-preserving-case (&rest args) - `(let ((*readtable* (copy-readtable))) - (setf (readtable-case *readtable*) :preserve) - (with-open-file ,@args))) - -(defparameter *tmp-file-directory* (make-pathname :directory '(:absolute "tmp"))) - -(defun tmp-file-name (&key (prefix "tmp.")) - (concatenate 'string prefix (format nil "~8,'0',X" (random #xffffffff)))) - -(defun tmp-file (&key (name (tmp-file-name))) - (merge-pathnames name *tmp-file-directory*)) - -(defun remove-keyword-args (list &rest remove) - (loop for x on list by #'cddr when (not (member (car x) remove)) append (list (car x) (cadr x)))) - -(defmacro with-temporary-file ((path stream &rest options &key (delete t) &allow-other-keys) &body body) - `(let ((,path (tmp-file))) - (prog1 - (with-open-file (,stream ,path ,@(remove-keyword-args options :delete)) - ,@body) - ,(when delete `(delete-file ,path))))) - -;;; from antifuchs on #lisp via paste.lisp.org -;;; http://paste.lisp.org/display/9527 -(defmacro with-current-directory (dir &body body) - `(unwind-protect (progn - #+sbcl - (sb-posix:chdir ,dir) - (let ((*default-pathname-defaults* ,dir)) - ,@body)) - #+sbcl (sb-posix:chdir *default-pathname-defaults*))) - -(defmacro run-program (&rest args) - #+sbcl `(sb-ext::run-program ,@args)) - -(defmacro run-program-asynchronously (&rest args) - #+sbcl `(sb-ext::run-program ,@args :wait nil)) - - -(defun app-open (&rest args) - #+darwin (run-program "/usr/bin/open" args)) - -(defun safari-open (&rest args) - #+darwin - (apply #'app-open (list* "-a" "/Applications/Safari.app" - (mapcar #'(lambda (x) (if (pathnamep x) (unix-name x) x)) args)))) - -(defun firefox-open (&rest args) - #+darwin - (apply #'app-open (list* "-a" "/Users/sly/Applications/DeerPark.app" - (mapcar #'(lambda (x) (if (pathnamep x) (unix-name x) x)) args)))) - - -(defparameter *pdf-viewer* - #+linux "kpdf" - #+darwin "Preview.app") - -(defparameter *pdf-viewer-path* - (let ((found (sb-ext:find-executable-in-search-path - *pdf-viewer*))) - (unless found - (setf found - #+darwin "/Applications/Preview.app" - #-darwin "/usr/bin/kpdf")) - found)) - -(defun pdf-open (&rest args) - #+darwin - (apply #'app-open "-a" *pdf-viewer-path* (mapcar #'unix-name args)) - #-darwin - (run-program-asynchronously *pdf-viewer-path* - (mapcar #'(lambda (x) - (if (pathnamep x) (unix-name x) x)) args)) - ) - -(defparameter *html-viewer* - #+linux "konqueror" - #+darwin "Safari.app") - -(defparameter *html-viewer-path* - (let ((found (sb-ext:find-executable-in-search-path - *html-viewer*))) - (unless found - (setf found - #+darwin "/Applications/Safari.app" - #-darwin "/usr/bin/konqueror")) - found)) - -(defun html-open (&rest args) - (run-program-asynchronously *html-viewer-path* - (mapcar #'(lambda (x) - (if (pathnamep x) (unix-name x) x)) args))) - -(defmacro process-output-stream (&rest args) - #+sbcl `(sb-ext::process-output ,@args)) - -(defun prefix (seq suffix) - "Removes the prefix of seq that occurs before suffix. Return - values are the prefix and the position at which the suffix - begins in the original sequence, or the original sequence and - NIL if the suffix is not in seq" - (let ((pos (search suffix seq))) - (if pos - (values (subseq seq 0 pos) pos) - (values seq nil)))) - -(defun subdirectories (path) - (loop for d in - (directory - (make-pathname :name :wild :type nil :defaults path)) - when (string-equal (file-namestring d) "") collect d)) - -(defun unix-name (pathname) - (namestring - (typecase pathname - (logical-pathname (translate-logical-pathname pathname)) - (t pathname)))) - -(defun map-files-in-directory (function - destination-directory - &key file-type) - (mapcar function - (directory - (merge-pathnames - (make-pathname - :name :wild - :type (if file-type file-type :wild)) - destination-directory)))) - diff --git a/clsr/ch-util/src/hash-table.cl b/clsr/ch-util/src/hash-table.cl deleted file mode 100644 index 59a498f..0000000 --- a/clsr/ch-util/src/hash-table.cl +++ /dev/null @@ -1,21 +0,0 @@ -;;; -;;; hash-table.cl -- various lisp utilities for hash-tables -;;; -;;; Author: Cyrus Harmon -;;; - -(in-package :ch-util) - -;;; Miscellaneous hash-table utilities - -(defun make-hash-table-from-plist (plist &key (test #'eql)) - (let ((h (make-hash-table :test test))) - (loop for (x y) on plist by #'cddr - do (setf (gethash x h) y)) - h)) - -(defun make-hash-table-from-alist (alist &key (test #'eql)) - (let ((h (make-hash-table :test test))) - (loop for (x . y) in alist - do (setf (gethash x h) y)) - h)) diff --git a/clsr/ch-util/src/lists.cl b/clsr/ch-util/src/lists.cl deleted file mode 100644 index 7e9eea9..0000000 --- a/clsr/ch-util/src/lists.cl +++ /dev/null @@ -1,35 +0,0 @@ -;;; -;;; lists.cl -- various lisp list utilities that make my life easier -;;; -;;; Author: Cyrus Harmon -;;; - -(in-package :ch-util) - -;;; Miscellaneous list utilities - -(defun insert-before (new old list) - (labels ((build-list (old c &optional newlist) - (if c - (if (eq old (car c)) - (append (reverse (cdr c)) (cons (car c) (cons new newlist))) - (build-list old (cdr c) (cons (car c) newlist))) - (cons new newlist)))) - (reverse (build-list old list)))) - -(defun insert-before-all (new old list) - (labels ((build-list (old c &optional newlist) - (if c - (if (eq old (car c)) - (build-list old (cdr c) (cons (car c) (cons new newlist))) - (build-list old (cdr c) (cons (car c) newlist))) - newlist))) - (reverse (build-list old list)))) - -(defun flatten (l) - (mapcan #'(lambda (x) - (cond ((null x) nil) - ((atom x) (list x)) - (t (flatten x)))) - l)) - diff --git a/clsr/ch-util/src/macros.cl b/clsr/ch-util/src/macros.cl deleted file mode 100644 index 475cf3f..0000000 --- a/clsr/ch-util/src/macros.cl +++ /dev/null @@ -1,28 +0,0 @@ -;;; -;;; macros.cl -- macro writing macros -;;; -;;; Author: Cyrus Harmon -;;; - -(in-package :ch-util) - -;;; this is taken from Peter Seibel's Practical Common Lisp -;;; book, p. 102 -(defmacro once-only ((&rest names) &body body) - (let ((gensyms (loop for n in names collect (gensym)))) - `(let (,@(loop for g in gensyms collect `(,g (gensym)))) - `(let (,,@(loop for g in gensyms for n in names collect ``(,,g ,,n))) - ,(let (,@(loop for n in names for g in gensyms collect `(,n ,g))) - ,@body))))) - -;; -;; Reference implementation of with-unique-names from cliki -;; -(defmacro with-unique-names ((&rest bindings) &body body) - `(let ,(mapcar #'(lambda (binding) - (destructuring-bind (var prefix) - (if (consp binding) binding (list binding binding)) - `(,var (gensym ,(string prefix))))) - bindings) - ,@body)) - diff --git a/clsr/ch-util/src/testharness.cl b/clsr/ch-util/src/testharness.cl deleted file mode 100644 index 623aeed..0000000 --- a/clsr/ch-util/src/testharness.cl +++ /dev/null @@ -1,26 +0,0 @@ -;;; -;;; testharness.cl -- various lisp utilities for hash-tables -;;; -;;; Author: Cyrus Harmon -;;; Time-stamp: <2005-07-01 08:11:52 sly> -;;; - -(in-package :ch-util) - -(defparameter *verbose-test-results* nil) - -(defstruct test-run - (tests 0) - (passed 0)) - -(defun run-test (f test-name run) - (if (funcall f) - (progn - (when *verbose-test-results* - (format t "~&Test ~A Succeeded" test-name)) - (incf (test-run-passed run)) - (incf (test-run-tests run))) - (progn - (format t "~&Test ~A Failed!" test-name) - (incf (test-run-tests run))))) - diff --git a/clsr/ch-util/src/vector.cl b/clsr/ch-util/src/vector.cl deleted file mode 100644 index ad04fda..0000000 --- a/clsr/ch-util/src/vector.cl +++ /dev/null @@ -1,23 +0,0 @@ -;;; -;;; vector.cl -- various lisp utilities for vectors -;;; -;;; Author: Cyrus Harmon -;;; - -(in-package :ch-util) - -;;; Miscellaneous vector utilities - -(defun max-length (&rest seqs) - (apply #'max (mapcar #'length seqs))) - -(defun map-vector (fn v - &key - (adjustable t) - (fill-pointer 0)) - (let* ((n (length v)) - (a (make-array n - :adjustable adjustable - :fill-pointer fill-pointer))) - (map-into a fn v))) - diff --git a/clsr/ch-util/test/defpackage.cl b/clsr/ch-util/test/defpackage.cl deleted file mode 100644 index dcfbb46..0000000 --- a/clsr/ch-util/test/defpackage.cl +++ /dev/null @@ -1,10 +0,0 @@ - -(in-package #:cl-user) - -(defpackage #:ch-util-test - (:use #:cl #:asdf #:ch-util) - (:shadowing-import-from #:ch-util) - (:export #:run-tests - )) - -(in-package #:ch-util-test) diff --git a/clsr/ch-util/test/test-ch-util.cl b/clsr/ch-util/test/test-ch-util.cl deleted file mode 100644 index 9de5b22..0000000 --- a/clsr/ch-util/test/test-ch-util.cl +++ /dev/null @@ -1,37 +0,0 @@ - -(in-package #:ch-util-test) - -(defun test-strcat () - (let ((s1 (strcat "this is " "a test"))) - (equal s1 "this is a test"))) - -(defun test-interncase () - (let ((s1 (interncase "testINGinternCase"))) - (format t "~&~A" s1) - t)) - -(defun test-print-buffer () - (print-buffer (read-file-to-buffer "/etc/motd")) - t) - -(defun test-postincf () - (let ((moose 3)) - (print moose) - (print (postincf moose)) - (print moose) - (print (postincf moose 2)) - (print moose) - )) - -(defun run-tests () - (let ((run (make-test-run))) - (run-test #'test-strcat "test-strcat" run) - (run-test #'test-print-buffer "test-print-buffer" run) - (run-test #'test-interncase "test-interncase" run) - (run-test #'test-postincf "test-postincf" run) - (format t "~&~A of ~A tests passed" (test-run-passed run) (test-run-tests run)) - )) - -;;; Lisp one liners: - -; (let ((gstring (with-output-to-string (gstream) (run-program "ls" nil :output gstream)))) (print gstring)) diff --git a/clsr/clsr/COPYRIGHT b/clsr/clsr/COPYRIGHT deleted file mode 100644 index 01d4b60..0000000 --- a/clsr/clsr/COPYRIGHT +++ /dev/null @@ -1,29 +0,0 @@ -clsr, a library for interfacing the SBCL common lisp implementation to -the S language in R by Cyrus Harmon - -Copyright (c) 2005 Cyrus Harmon -All rights reserved. - -Redistribution and use in source and binary forms, with or without -modification, are permitted provided that the following conditions -are met: - - * Redistributions of source code must retain the above copyright - notice, this list of conditions and the following disclaimer. - - * Redistributions in binary form must reproduce the above - copyright notice, this list of conditions and the following - disclaimer in the documentation and/or other materials - provided with the distribution. - -THIS SOFTWARE IS PROVIDED BY THE AUTHOR 'AS IS' AND ANY EXPRESSED -OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED -WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY -DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE -GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, -WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING -NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS -SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/clsr/clsr/R/lisp.R b/clsr/clsr/R/lisp.R deleted file mode 100644 index ec79e58..0000000 --- a/clsr/clsr/R/lisp.R +++ /dev/null @@ -1,9 +0,0 @@ - -setClass("lispIntVectorRef", representation(symbol="character")); - -setMethod("[[", "lispIntVectorRef", - function(x, i, j, ...) { 3 } - ) -new("lispIntVectorRef") - - diff --git a/clsr/clsr/README b/clsr/clsr/README deleted file mode 100644 index d4fa791..0000000 --- a/clsr/clsr/README +++ /dev/null @@ -1,43 +0,0 @@ -CLSR (a Common Lisp interface to the S language in R) (or something -like that). - -This package consists of an interface from common lisp to the R -language using the C APIs to the R language. One day I hope to allow -for R code to directly execute lisp code, but this functionality is -not there yet. - -Currently this requires the SBCL (Steel Bank Common Lisp) -implementation of the common lisp language. In theory, this could be -made to work with one of the more generic FFI packages such as UFFI or -CFFI, but currently it is wed to the sbcl sb-alien interface. Porting -this to CMUCL should be trivial; porting this to other lisps such as -Allegro, Lispworks, OpenMCL, clisp, ecl, etc... would be a bit more -work as each of their FFI interfaces are a bit different, and more -different from each other than CMUCL's and SBCL's are (as SBCL is a -relatively recent fork of CMUCL). - - -DEPENDENCIES - -ch-util -gcc-xml-ffi -clem (for tests) -xmls -uffi - - -NOTES - -The low-level interface to the R library is done via gcc-xml-ffi and -additional funcations are definied on top of these primitives to -provide higher-level support for executing R queries and returning -values to lisp. - -Thanks to Duncan Temple-Lang for assuring me that this is not a -ridiculous thing to do and for technical advice. Thanks to Robert -Gentlemen, Seth Falcon, and the rest of the R and Bioconductor folks -for additional technical advice and inspiration. - -Cyrus Harmon -Tue Nov 15 09:13:47 2005 - diff --git a/clsr/clsr/c-src/clsr-lib.c b/clsr/clsr/c-src/clsr-lib.c deleted file mode 100644 index 8bd1cd7..0000000 --- a/clsr/clsr/c-src/clsr-lib.c +++ /dev/null @@ -1,19 +0,0 @@ - -#include -#include -#include -#include - -/* These are some useless test functions */ - -unsigned int test_sexp_type (SEXP obj) { - return TYPEOF(obj); -} - -char* test_sexp_string (SEXP obj) { - return CHAR(STRING_ELT(obj,0)); -} - -void test_me() { - printf("bogus!\n"); -} diff --git a/clsr/clsr/clsr-test.asd b/clsr/clsr/clsr-test.asd deleted file mode 100644 index bbe0d13..0000000 --- a/clsr/clsr/clsr-test.asd +++ /dev/null @@ -1,40 +0,0 @@ - -(defpackage #:clsr-test-system (:use #:asdf #:cl)) -(in-package #:clsr-test-system) - -;;;; -;;;; The following section customizes asdf to work with filenames -;;;; with a .cl extension and to put fasl files in a separate -;;;; directory. -;;;; -;;;; To enable this behvior, use asdf component type -;;;; :clsr-cl-source-file -;;;; -(defclass clsr-test-cl-source-file (cl-source-file) ()) - -(defmethod source-file-type ((c clsr-test-cl-source-file) (s module)) "cl") - -(defparameter *fasl-directory* - (make-pathname :directory '(:relative #+sbcl "sbcl-fasl" - #+openmcl "openmcl-fasl" - #-(or sbcl openmcl) "fasl"))) - -(defmethod asdf::output-files ((operation compile-op) (c clsr-test-cl-source-file)) - (list (merge-pathnames *fasl-directory* - (compile-file-pathname (component-pathname c))))) - -(defsystem :clsr-test - :name "clsr-test" - :author "Cyrus Harmon" - :version "0.1.1-20060315" - :licence "BSD" - :depends-on (:gcc-xml-ffi :clsr :clem) ;; :ch-image :ch-imageio) - :components - ((:module - :test - :components - ((:clsr-test-cl-source-file "defpackage") - (:clsr-test-cl-source-file "test-clsr" - :depends-on ("defpackage")))) - (:module - :lib :pathname "clsr-test"))) diff --git a/clsr/clsr/clsr.asd b/clsr/clsr/clsr.asd deleted file mode 100644 index 9318ec3..0000000 --- a/clsr/clsr/clsr.asd +++ /dev/null @@ -1,105 +0,0 @@ - -(asdf:oos 'asdf:load-op 'ch-asdf) - -(defpackage #:clsr-system (:use #:asdf #:cl #:ch-asdf)) -(in-package #:clsr-system) - -#+darwin -(progn - (defparameter *r-dir* "/bobo/Library/Frameworks/R.framework/Resources/") - (defparameter *r-lib-dir* (concatenate 'string *r-dir* "lib/")) - (defparameter *r-include-dir* (concatenate 'string *r-dir* "include/"))) - -#+(and (not darwin) x86-64) -(progn - (defparameter *r-dir* "/usr/local/lib64/R/") - (defparameter *r-lib-dir* (concatenate 'string *r-dir* "lib/")) - (defparameter *r-include-dir* (concatenate 'string *r-dir* "include/"))) - -#+(and (not darwin) (not x86-64)) -(progn - (defparameter *r-dir* "/usr/local/lib/R/") - (defparameter *r-lib-dir* (concatenate 'string *r-dir* "lib/")) - (defparameter *r-include-dir* (concatenate 'string *r-dir* "include/"))) - - -(defparameter *link-library-directories* - (list *r-lib-dir*)) - -(defparameter *link-libraries* - (list "R")) - -(defclass clsr-gcc-xml-c-source-file (gcc-xml-c-source-file) ()) - -(defmethod include-directories ((c clsr-gcc-xml-c-source-file)) - (list *r-include-dir* - (asdf:component-pathname - (asdf:find-component - (asdf:find-system "clsr") - "include")))) - -(defmethod link-library-directories ((c clsr-gcc-xml-c-source-file)) - *link-library-directories*) - -(defmethod link-libraries ((c clsr-gcc-xml-c-source-file)) - *link-libraries*) - -(defclass r-source-file (static-file) ()) - -(defsystem :clsr - :name "clsr" - :author "Cyrus Harmon" - :version "0.1.1-20060315" - :licence "BSD" - :depends-on (:xmls :uffi :gcc-xml-ffi :ch-util) - :components - ((:module - :include :pathname #p"include/" - :components ((:static-file "clsr-lib-include" :pathname #.(make-pathname :name "clsr-lib" :type "h")))) - (:unix-dso "c-src" - :dso-name "libclsr" - :dso-directory #p"../lib/" - :include-directories (#p"include/" #.*r-include-dir*) - :components ((:c-source-file "clsr-lib")) - :link-library-directories #.*link-library-directories* - :link-libraries #.*link-libraries*) - (:module - :clsr-gccxml-source - :pathname #p"gccxml-src/" - :components - ((:clsr-gcc-xml-c-source-file "clsr-for-gccxml" - :pathname #p"clsr-for-gccxml.c" - :xml-output-file-path #p"clsr.xml"))) - (:static-file "clsr-xml" :pathname #p"gccxml-src/clsr.xml" - :depends-on (:clsr-gccxml-source :include)) - (:module - :src - :components - ((:ch-cl-source-file "defpackage") - (:ch-cl-source-file "clsr-loader" :depends-on ("defpackage")) - (:gcc-xml-xml-file "clsr-xml-file" - :pathname #p"../gccxml-src/clsr.xml" - :output-file-path #p"clsr-sb-alien-decls.cl" - :dest-package :r - :depends-on ("defpackage" "clsr-loader")) - (:gcc-xml-cl-source-file "clsr-sb-alien-decls" - :pathname "../gccxml-src/clsr-sb-alien-decls.cl" - :depends-on ("clsr-xml-file")) - (:ch-cl-source-file "clsr" - :depends-on ("defpackage" "clsr-loader" "clsr-sb-alien-decls")) - (:ch-cl-source-file "clsr-parse-eval" - :depends-on ("defpackage" "clsr")) - (:ch-cl-source-file "clsr-objects" - :depends-on ("defpackage" "clsr")) - (:ch-cl-source-file "clsr-sxp" - :depends-on ("defpackage" "clsr" "clsr-parse-eval" "clsr-objects")) - (:ch-cl-source-file "clsr-rref" - :depends-on ("defpackage" "clsr" "clsr-parse-eval" "clsr-sxp"))) - :depends-on ("clsr-gccxml-source" "c-src" "clsr-xml")) - (:static-file "README") - (:static-file "COPYRIGHT") - (:module - :r-src :pathname #p"R/" - :components - ((:r-source-file "lisp" :pathname #p"lisp.R"))))) - diff --git a/clsr/clsr/gccxml-src/clsr-for-gccxml.c b/clsr/clsr/gccxml-src/clsr-for-gccxml.c deleted file mode 100644 index 6dad0a1..0000000 --- a/clsr/clsr/gccxml-src/clsr-for-gccxml.c +++ /dev/null @@ -1,41 +0,0 @@ - -typedef enum { - NILSXP = 0, /* nil = NULL */ - SYMSXP = 1, /* symbols */ - LISTSXP = 2, /* lists of dotted pairs */ - CLOSXP = 3, /* closures */ - ENVSXP = 4, /* environments */ - PROMSXP = 5, /* promises: [un]evaluated closure arguments */ - LANGSXP = 6, /* language constructs (special lists) */ - SPECIALSXP = 7, /* special forms */ - BUILTINSXP = 8, /* builtin non-special forms */ - CHARSXP = 9, /* "scalar" string type (internal only)*/ - LGLSXP = 10, /* logical vectors */ - INTSXP = 13, /* integer vectors */ - REALSXP = 14, /* real variables */ - CPLXSXP = 15, /* complex variables */ - STRSXP = 16, /* string vectors */ - DOTSXP = 17, /* dot-dot-dot object */ - ANYSXP = 18, /* make "any" args work */ - VECSXP = 19, /* generic vectors */ - EXPRSXP = 20, /* expressions vectors */ - BCODESXP = 21, /* byte code */ - EXTPTRSXP = 22, /* external pointer */ - WEAKREFSXP = 23, /* weak reference */ - RAWSXP = 24, /* raw bytes */ - - FUNSXP = 99 /* Closure or Builtin */ -} SEXPTYPE_enum; - -/* #define USE_RINTERNALS 1 */ - -#include -#include -#include -#include - -int Rf_initialize_R(int ac, char **av); /* in ../unix/system.c */ -void setup_Rmainloop(void); /* in main.c */ - -#include "clsr-lib.h" - diff --git a/clsr/clsr/gccxml-src/clsr.xml b/clsr/clsr/gccxml-src/clsr.xml deleted file mode 100644 index 2f2e3ee..0000000 --- a/clsr/clsr/gccxml-src/clsr.xml +++ /dev/null @@ -1,4542 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/clsr/clsr/include/clsr-lib.h b/clsr/clsr/include/clsr-lib.h deleted file mode 100644 index 230f1c2..0000000 --- a/clsr/clsr/include/clsr-lib.h +++ /dev/null @@ -1,5 +0,0 @@ - -unsigned int test_sexp_type (SEXP obj); -char* test_sexp_string (SEXP obj); -void test_me(); - diff --git a/clsr/clsr/src/clsr-loader.cl b/clsr/clsr/src/clsr-loader.cl deleted file mode 100644 index a02cb5a..0000000 --- a/clsr/clsr/src/clsr-loader.cl +++ /dev/null @@ -1,23 +0,0 @@ -;; -*- mode: lisp -*- - -;;; (c) 2005--2006, Cyrus Harmon, all rights reserved. -;;; Author: Cyrus Harmon -;;; Maintainers: Cyrus Harmon and AJ Rossini - -;;; Purpose: FFI loader. - -(in-package :clsr) - -(defun uffi-load-r-library (lib) - (unless (uffi:load-foreign-library - (uffi:find-foreign-library - lib clsr-system::*link-library-directories* - :types '("so" "dylib" "")) - :supporting-libraries '("c") - :module lib - :force-load t) - (error "Unable to load R library"))) - -(uffi-load-r-library "libR") - - diff --git a/clsr/clsr/src/clsr-objects.cl b/clsr/clsr/src/clsr-objects.cl deleted file mode 100644 index e2395f4..0000000 --- a/clsr/clsr/src/clsr-objects.cl +++ /dev/null @@ -1,47 +0,0 @@ -;; -*- mode:lisp -*- - -;;; (c) 2005--2006, Cyrus Harmon, all rights reserved. -;;; Author: Cyrus Harmon -;;; Maintainers: Cyrus Harmon and AJ Rossini - -;;; Purpose: object reference registry. - -(in-package :clsr) - -(defclass object-registry () - ((ids :accessor ids :initform (make-hash-table)) - (object-id-counter :accessor counter :initform 0) - (max-id :reader max-id :initform most-positive-fixnum))) - -(defmethod get-object (id (registry object-registry)) - (gethash id (ids registry))) - -(defmethod set-object (id object (registry object-registry)) - (setf (gethash id (ids registry)) object)) - -(defmethod remove-id (id (registry object-registry)) - (remhash id (ids registry))) - -(defmethod next-id ((registry object-registry)) - (let ((id (incf (counter registry)))) - (cond ((= id most-positive-fixnum) - (setf (counter registry) 0) - (next-id registry)) - (t (if (get-object id registry) - (next-id registry) - id))))) - -(defmethod register-object (object (registry object-registry)) - (let ((id (next-id registry))) - (set-object id object registry) - (values id object))) - -(defmethod unregister-id (id (registry object-registry)) - (let ((object (gethash id (ids registry)))) - (remove-id id registry) - (values id object))) - - - - - diff --git a/clsr/clsr/src/clsr-parse-eval.cl b/clsr/clsr/src/clsr-parse-eval.cl deleted file mode 100644 index 9cfa9b5..0000000 --- a/clsr/clsr/src/clsr-parse-eval.cl +++ /dev/null @@ -1,114 +0,0 @@ -;; -*- mode:lisp -*- - -;;; (c) 2005--2006, Cyrus Harmon, all rights reserved. -;;; Author: Cyrus Harmon -;;; Maintainers: Cyrus Harmon and AJ Rossini - -;;; Purpose: string <-> R command management - -(in-package :clsr) - -(defun %parse-r-command (command-string) - (let ((cmd-sexp (r::|Rf_allocVector| r::|STRSXP| 1)) - (parse-status (sb-alien:make-alien r::|ParseStatus|))) - (r::|Rf_protect| cmd-sexp) - (gcc-xml-ffi::with-alien-signed-string (cmd command-string) - (r::|SET_STRING_ELT| cmd-sexp 0 (r::|Rf_mkChar| cmd)) - (let ((cmd-expr (r::|R_ParseVector| cmd-sexp -1 parse-status))) - cmd-expr)))) - -(defun assemble-r-parse (str) - (let ((args (gcc-xml-ffi::with-alien-signed-string (astr str) - (r::|Rf_mkString| astr)))) - (let ((e (r::|Rf_allocVector| r::|LANGSXP| 2))) - (r::|SETCAR| e - (gcc-xml-ffi::with-alien-signed-string (parse "parse") - (r::|Rf_install| parse))) - (r::|SETCADR| e args) - (gcc-xml-ffi::with-alien-signed-string (text "text") - (r::|SET_TAG| (r::|CDR| e) (r::|Rf_install| text))) - e))) - -(defun eval-r-command (command-string) - (let ((cmd-sexp (r::|Rf_allocVector| r::|STRSXP| 1)) - (parse-status (sb-alien:make-alien r::|ParseStatus|))) - (r::|Rf_protect| cmd-sexp) - (gcc-xml-ffi::with-alien-signed-string (cmd command-string) - (r::|SET_STRING_ELT| cmd-sexp 0 (r::|Rf_mkChar| cmd)) - (let ((cmd-expr (r::|R_ParseVector| cmd-sexp -1 parse-status))) - (r::|Rf_protect| cmd-expr) - (unwind-protect - (if (equal (sb-alien:deref parse-status) 'r::|PARSE_OK|) - (unwind-protect - (let ((ans) - (result (sb-alien:make-alien sb-alien:int))) - (dotimes (i (r::|Rf_length| cmd-expr)) - (setf ans (r::|R_tryEval| (r::|VECTOR_ELT| cmd-expr i) r::|R_GlobalEnv| result))) - ans) - (sb-alien:deref parse-status)) - (error 'r-error :details "R_ParseVector failed")) - (r::|Rf_unprotect| 2)))))) - -(defun parse-r-expression (expression-string) - (let ((expn-sexp (assemble-r-parse expression-string))) - (r::|Rf_protect| expn-sexp) - (unwind-protect - (let ((ans) - (error-occurred (sb-alien:make-alien sb-alien:int))) - (setf ans (r::|R_tryEval| expn-sexp r::|R_GlobalEnv| error-occurred)) - (when error-occurred (error 'r-error :details "R_tryEval failed")) - ans) - (r::|Rf_unprotect| 1)))) - -(defun try-eval (expn-sexp) - (r::|Rf_protect| expn-sexp) - (let ((ans)) - (dotimes (i (r::|LENGTH| expn-sexp) ans) - (unwind-protect - (let ((error-occurred (sb-alien:make-alien sb-alien:int))) - (setf ans (r::|R_tryEval| (r::|VECTOR_ELT| expn-sexp i) - r::|R_GlobalEnv| error-occurred)) - (when (/= (sb-alien:deref error-occurred) 0) - (error 'r-error :details "R_tryEval failed")) - ans) - (r::|Rf_unprotect| 1))))) - -(defmacro with-parsed-r-expression ((parsed expression-string) &body body) - (ch-util::with-unique-names (expn-sxp error-occurred) - `(let ((,expn-sxp (assemble-r-parse ,expression-string))) - (r::|Rf_protect| ,expn-sxp) - (unwind-protect - (let* ((,error-occurred (sb-alien:make-alien sb-alien:int)) - (,parsed (r::|R_tryEval| ,expn-sxp r::|R_GlobalEnv| ,error-occurred))) - (when (/= (sb-alien:deref ,error-occurred) 0) - (error 'r-error :details "R_tryEval failed")) - (r::|Rf_protect| ,parsed) - (unwind-protect - (progn - ,@body) - (r::|Rf_unprotect| 1))) - (r::|Rf_unprotect| 1))))) - -(defmacro with-evaled-r-expression ((evaled expn-sxp) &body body) - (ch-util::with-unique-names (i error-occurred) - `(unless (sb-alien:null-alien ,expn-sxp) - (let ((,evaled)) - (dotimes (,i (r::|LENGTH| ,expn-sxp) ,evaled) - (let ((,error-occurred (sb-alien:make-alien sb-alien:int))) - (setf ,evaled (r::|R_tryEval| - (r::|VECTOR_ELT| ,expn-sxp ,i) - r::|R_GlobalEnv| ,error-occurred)) - (when (/= (sb-alien:deref ,error-occurred) 0) - (error 'r-error :details "R_tryEval failed")))) - (r::|Rf_protect| ,evaled) - (unwind-protect - (progn - ,@body) - (r::|Rf_unprotect| 1)))))) - -(defmacro with-r-call ((answer cmd) &body body) - (ch-util::with-unique-names (expn-sxp) - `(with-parsed-r-expression (,expn-sxp ,cmd) - (with-evaled-r-expression (,answer ,expn-sxp) - (progn - ,@body))))) diff --git a/clsr/clsr/src/clsr-rref.cl b/clsr/clsr/src/clsr-rref.cl deleted file mode 100644 index 3524e3a..0000000 --- a/clsr/clsr/src/clsr-rref.cl +++ /dev/null @@ -1,78 +0,0 @@ -;; -*- mode:lisp -*- - -;;; (c) 2005--2006, Cyrus Harmon, all rights reserved. -;;; Author: Cyrus Harmon -;;; Maintainers: Cyrus Harmon and AJ Rossini - -;;; Purpose: mapping CL/R objects, transfer/conversion. - -(in-package :clsr) - -(defun matrix-dim (matsxp) - (clsr::r-sexp-to-lisp-sexp - (R::|Rf_getAttrib| matsxp R::|R_DimSymbol|))) - -(defmacro def-typed-rref (name r-type-fun lisp-type) - `(progn - (eval-when (:compile-toplevel :load-toplevel :execute) - (declaim (inline ,name (setf ,name))) - (declaim (ftype (function (r-sexp - fixnum fixnum &key (:cols fixnum)) ,lisp-type) ,name)) - (declaim (ftype (function (,lisp-type - r-sexp - fixnum fixnum &key (:cols fixnum)) ,lisp-type) (setf ,name)))) - (defun ,name (matsxp y x &key (cols (aref (matrix-dim matsxp) 1))) - (declare (type fixnum y x cols) - (type r-sexp matsxp)) - (locally (declare (optimize (speed 3) (space 0) (safety 0))) - (sb-alien:deref (,r-type-fun matsxp) (+ (the fixnum (* cols y)) x)))) - - (defun (setf ,name) (val matsxp y x &key (cols (aref (matrix-dim matsxp) 1))) - (declare (type fixnum y x cols) - (type ,lisp-type val) - (type r-sexp matsxp)) - (locally (declare (optimize (speed 3) (space 0) (safety 0))) - (setf (sb-alien:deref (,r-type-fun matsxp) - (+ (the fixnum (* cols y)) x)) val))))) - -(def-typed-rref real-rref r::|REAL| double-float) -(def-typed-rref logical-rref r::|LOGICAL| (unsigned-byte 1)) -(def-typed-rref integer-rref r::|INTEGER| integer) - - -;;; Have to treat complex differently as we need to package/unpackage -;;; complex values from an R complex struct... :-( -(defun complex-rref (matsxp y x) - (let ((cols (aref (matrix-dim matsxp) 1))) - (r-complex - (sb-alien:deref (r::|COMPLEX| matsxp) (+ (* cols y) x))))) - -(defun (setf complex-rref) (val matsxp y x) - (let ((cols (aref (matrix-dim matsxp) 1))) - (setf (r-complex (sb-alien:deref (r::|COMPLEX| matsxp) (+ (* cols y) x))) val))) - -(defparameter *r-rref-hash* (make-hash-table :test 'equal)) -(dolist - (x `((,r::|NILSXP| . ,(constantly nil)) - (,r::|LGLSXP| . logical-rref) - (,r::|INTSXP| . integer-rref) - (,r::|REALSXP| . real-rref) - (,r::|CPLXSXP| . complex-rref))) - (setf (gethash (car x) *r-rref-hash*) (cdr x))) - -(defparameter *r-setf-rref-hash* (make-hash-table :test 'equal)) -(dolist - (x `((,r::|LGLSXP| . ,#'(setf logical-rref)) - (,r::|INTSXP| . ,#'(setf integer-rref)) - (,r::|REALSXP| . ,#'(setf real-rref)) - (,r::|CPLXSXP| . ,#'(setf complex-rref)))) - (setf (gethash (car x) *r-setf-rref-hash*) (cdr x))) - -(defun rref (matsxp y x) - (let ((fun (gethash (r::|TYPEOF| matsxp) *r-rref-hash*))) - (when fun (funcall fun matsxp y x)))) - -(defun (setf rref) (val matsxp y x) - (let ((fun (gethash (r::|TYPEOF| matsxp) *r-setf-rref-hash*))) - (when fun (funcall fun val matsxp y x)))) - diff --git a/clsr/clsr/src/clsr-sxp.cl b/clsr/clsr/src/clsr-sxp.cl deleted file mode 100644 index 3ccc610..0000000 --- a/clsr/clsr/src/clsr-sxp.cl +++ /dev/null @@ -1,475 +0,0 @@ -;;; -;;; file: clsr-sxp.cl -;;; author: cyrus harmon -;;; - -(in-package :clsr) - -(declaim (ftype (function - ((sb-alien:alien (sb-alien:* (SB-ALIEN:STRUCT - R::|SEXPREC|)))) t) - r-sexp-to-lisp-sexp)) -(declaim (notinline r-sexp-to-lisp-sexp)) - -;;;; R SEXP Conversion Routines -;;;; -;;;; These routines convert R sexps to corresponding lisp sexps. - -;;;; This bit of the Rinternals.h defines the known R SEXP types: - -#| -typedef unsigned int SEXPTYPE; - -#define NILSXP 0 /* nil = NULL */ -#define SYMSXP 1 /* symbols */ -#define LISTSXP 2 /* lists of dotted pairs */ -#define CLOSXP 3 /* closures */ -#define ENVSXP 4 /* environments */ -#define PROMSXP 5 /* promises: [un]evaluated closure arguments */ -#define LANGSXP 6 /* language constructs (special lists) */ -#define SPECIALSXP 7 /* special forms */ -#define BUILTINSXP 8 /* builtin non-special forms */ -#define CHARSXP 9 /* "scalar" string type (internal only)*/ -#define LGLSXP 10 /* logical vectors */ -#define INTSXP 13 /* integer vectors */ -#define REALSXP 14 /* real variables */ -#define CPLXSXP 15 /* complex variables */ -#define STRSXP 16 /* string vectors */ -#define DOTSXP 17 /* dot-dot-dot object */ -#define ANYSXP 18 /* make "any" args work. - Used in specifying types for symbol - registration to mean anything is okay */ -#define VECSXP 19 /* generic vectors */ -#define EXPRSXP 20 /* expressions vectors */ -#define BCODESXP 21 /* byte code */ -#define EXTPTRSXP 22 /* external pointer */ -#define WEAKREFSXP 23 /* weak reference */ -#define RAWSXP 24 /* raw bytes */ -|# - -;;;; We maintain a hashtable from SEXPTYPEs to the appropriate lisp -;;;; conversion routines. At some point, we will undoubtedly need to -;;;; go the other way to convert from lisp sexps to R sexps, but this -;;;; is not there yet. - - -;;; SXP Attributes -(defun levels (sxp) - (let ((factors (r::|Rf_getAttrib| sxp r::|R_LevelsSymbol|))) - (r-sexp-to-lisp-sexp factors))) - -(defun get-attrib (sxp symbol) - (let ((attr (r::|Rf_getAttrib| sxp symbol))) - (r-sexp-to-lisp-sexp attr))) - -(defun dim (sxp) - (let ((attr (r::|Rf_getAttrib| sxp r::|R_DimSymbol|))) - (r-sexp-to-lisp-sexp attr))) - -(defun names (sxp) (get-attrib sxp r::|R_NamesSymbol|)) -(defun row-names (sxp) (get-attrib sxp r::|R_RowNamesSymbol|)) -(defun mode (sxp) (get-attrib sxp r::|R_ModeSymbol|)) - - - -;;; 0 - NILSXP - just use (constantly nil) in the appropriate place in -;;; the hashtables - - -;;; 1 - SYMSXP - Symbols -;;; For the moment just return the PRINTNAME of the symsxp. There's -;;; more stuff here, but ignore it until we figure out whether or not -;;; we need it. - -(defun symsxp-to-list (sxp) - "Converts an R symbol to a list with the lisp symbol R-SYMBOL - and the printame of the symbol" - (declare (type (sb-alien:alien (sb-alien:* (SB-ALIEN:STRUCT - R::|SEXPREC|))) sxp)) - (list 'r-symbol - (r-sexp-to-lisp-sexp (r::|PRINTNAME| sxp)))) - -;;; 2 - LISTSXP - Dotted pair lists (bona fide lists :-)) -;;; Just recursively build a list of the r::|CAR| and r::|CDR| of the -;;; list - -(defun listsxp-to-list (sxp) - "Convert an R dotted pair list to a lisp list" - (cons (r-sexp-to-lisp-sexp (r::|CAR| sxp)) - (r-sexp-to-lisp-sexp (r::|CDR| sxp)))) - -;;; 3 - CLOSXP - Closure -;;; For the moment, just return a list with the sexps of the formals, -;;; the bodys and the closure's environment. Not the nicest way to -;;; handle this. -;;; FIXME! How should we represent closures on the lisp side??? -(defun closxp-to-list (sxp) - "Convert an R closure to a lisp list that describes this closure" - (list (r::|FORMALS| sxp) - (r::|BODY| sxp) - (r::|CLOENV| sxp))) - -;;; 4 - ENVSXP -;;; FIXME!!!! Add support for mapping an environment to hash table! -(defun envsxp-to-list (sxp) - (list 'r-env)) -; (r-sexp-to-lisp-sexp (r::|FRAME| sxp)) -; (r-sexp-to-lisp-sexp (r::|ENCLOS| sxp)) -; (r-sexp-to-lisp-sexp (r::|HASHTAB| sxp)))) - -;;; 5 - PROMSXP -;;; FIXME! What do I do with these? - -;;; 6 - LANGSXP -;;; I think these are just dotted pair lists, so use listsxp-to-list -;;; for now - -;;; 7 - SPECIALSXP - ??? -;;; FIXME!! Um... what are these? - -;;; 8 - BUILTINSXP - ??? -;;; FIXME!! Um... what are these? - -;;; 9 - CHARSXP -;;; convert from alien string to lisp string -(defun charsxp-to-string (sxp) - "Converts an R charsxp (an internal R string) to a lisp string" - (gcc-xml-ffi::convert-from-alien-string (r::|R_CHAR| sxp))) - -;;; Vector SXPs - - -(macrolet ((def-sxp-accessors (name r-type-fun lisp-type) - `(progn - (eval-when (:compile-toplevel :load-toplevel :execute) - (declaim (inline ,name (setf ,name))) - (declaim (ftype (function (r-sexp fixnum) ,lisp-type) ,name)) - (declaim (ftype (function (,lisp-type r-sexp fixnum) ,lisp-type) (setf ,name)))) - (defun ,name (sxp i) - (declare (type fixnum i) - (type r-sexp sxp)) - (locally (declare (optimize (speed 3) (space 0) (safety 0))) - (sb-alien:deref (,r-type-fun sxp) i))) - (defun (setf ,name) (val sxp i) - (declare (type fixnum i) - (type ,lisp-type val) - (type r-sexp sxp)) - (locally (declare (optimize (speed 3) (space 0) (safety 0))) - (setf (sb-alien:deref (,r-type-fun sxp) i) val)))))) - - ;; 10 LGLSXP - Vector of logicals - (def-sxp-accessors lglsxp-element r::|LOGICAL| (unsigned-byte 1)) - - ;; 13 INTSXP - Vector of intergers - (def-sxp-accessors intsxp-element r::|INTEGER| integer) - - ;; 14 REALSXP - Vector of Reals - (def-sxp-accessors realsxp-element r::|REAL| double-float) - - ) - -;;; Additional Vector SXP Utility Functions - -;; 10 LGLSXP - Vector of logicals - (defun lglsxp-to-bit (sxp &key (start 0) (end (1- (r::|LENGTH| sxp)))) - "Converts an R vector of logicals (T/F) to a vector of lisp bits" - (let* ((v (make-array (1+ (- end start)) :element-type 'bit))) - (declare (type (simple-array bit (*)) v)) - (loop for i from start to end - do (setf (aref v i) (lglsxp-element sxp i))) - v)) - -;;; 13 INTSXP - Vector of intergers -(defun intsxp-factor (sxp i) - (let ((factors (r::|Rf_getAttrib| sxp r::|R_LevelsSymbol|))) - (strsxp-element factors (1- (intsxp-element sxp i))))) - -(defun intsxp-element-or-factor (sxp i) - (cond ((eql (r::|Rf_isFactor| sxp) 'R::TRUE) ;; it's a factor - (intsxp-factor sxp i)) - (t - (intsxp-element sxp i)))) - -(defun intsxp-to-integer (sxp &key (start 0) (end (1- (r::|LENGTH| sxp)))) - "Converts an R vector of integers to a vector of lisp integers" - (cond ((eql (r::|Rf_isFactor| sxp) 'R::TRUE) ;; it's a factor - (let* ((v (make-array (1+ (- end start)))) - (factors (r::|Rf_getAttrib| sxp r::|R_LevelsSymbol|))) - (loop for i from start to end - do (setf (aref v i) - (strsxp-element factors (1- (intsxp-element sxp i))))) - v)) - ;; The type of the lisp vector could probably be more specific here, - ;; like (signed-byte 32), but I'm not sure that's right. - (t (let* ((v (make-array (1+ (- end start)) :element-type 'integer))) - (declare (type (simple-array integer (*)) v)) - (loop for i from start to end - do (setf (aref v i) (intsxp-element sxp i))) - v)))) - -;;; 14 - REALSXP -;; (defun realsxp-element (sxp i) -;; (sb-alien:deref (r::|REAL| sxp) i)) -;; -;; (defun (setf realsxp-element) (val sxp i) -;; (setf (sb-alien:deref (r::|REAL| sxp) i) val)) - -;;; The type of the lisp vector could probably be more specific here, -;;; like double-float, but I'm not sure that's right, so leave as Real -;;; and see what happens. -(defun realsxp-to-real (sxp) - "Converts an R vector of integers to a vector of lisp reals" - (let* ((l (r::|LENGTH| sxp)) - (v (make-array l :element-type 'real))) - (declare (type (simple-array real (*)) v)) - (dotimes (i l) - (setf (aref v i) (realsxp-element sxp i))) - v)) - - -;;; Helper funciton to convert a single R complex value (as opposed to -;;; a CPLXSXP -- which is a vector of complexes) into a lisp complex. -;;; Make this inline so that it goes quickly. -(declaim (inline r-complex)) -(declaim (ftype (function (r-complex) complex) r-complex)) -(defun r-complex (c) - "Convert an R complex into a lisp complex" - (declare (type r-complex c)) - (complex (sb-alien:slot c 'r::|r|) - (sb-alien:slot c 'r::|i|))) - -;;; Helper function to set the value of an existing R complex number -;;; to the value of a lisp complex. Note that this is not a lisp -> R -;;; conversion -(declaim (inline (setf r-complex))) -(declaim (ftype (function (complex r-complex) complex) (setf r-complex))) -(defun (setf r-complex) (lc c) - "sets an R complex to the value of the lisp complex" - (declare (type r-complex c)) - (setf (sb-alien:slot c 'r::|r|) (realpart lc) - (sb-alien:slot c 'r::|i|) (imagpart lc)) - lc) - -(defun cplxsxp-element (sxp i) - (let ((c (sb-alien:deref (r::|COMPLEX| sxp) i))) - (r-complex c))) - -(defun (setf cplxsxp-element) (val sxp i) - (setf (r-complex (sb-alien:deref (r::|COMPLEX| sxp) i)) val)) - -(defun cplxsxp-to-complex (sxp) - "Converts an R vector of complex numbers to a vector of lisp complexes" - (let* ((l (r::|LENGTH| sxp)) - (v (make-array l :element-type '(or complex (integer 0 0))))) - (declare (type (simple-array complex (*)) v) - (type (sb-alien:alien (sb-alien:* (SB-ALIEN:STRUCT R::|SEXPREC|))) sxp)) - (dotimes (i l) - (setf (aref v i) (cplxsxp-element sxp i))) - v)) - -;;; 16 - STRSXP -;;; convert from alien string to lisp string -(defun strsxp-element (sxp i) - (let ((type (r::|TYPEOF| (r::|VECTOR_ELT| sxp i)))) - (cond ((equal type r::|CHARSXP|) - (charsxp-to-string (r::|VECTOR_ELT| sxp i)))))) - -;;; need setf here! -(defun (setf strsxp-element) (val sxp i) - (gcc-xml-ffi::with-alien-signed-string (val-alien val) - (r::|SET_STRING_ELT| sxp i (r::|Rf_mkChar| val-alien)))) - -(defun strsxp-to-vector (sxp) - "Converts an R vector of strings to a vector of lisp strings" - (let* ((l (r::|LENGTH| sxp)) - (v (make-array l - :element-type '(or null (simple-array character (*))) - :initial-element nil))) - (declare (type (simple-array * (*)) v)) - (dotimes (i l) - (setf (aref v i) (strsxp-element sxp i))) - v)) - -(defclass rsxp-ref () ((sxp :accessor sxp :initarg :sxp))) -(defclass nilsxp-ref (rsxp-ref) ()) -(defclass symsxp-ref (rsxp-ref) ()) -(defclass listsxp-ref (rsxp-ref) ()) -(defclass closxp-ref (rsxp-ref) ()) -(defclass envsxp-ref (rsxp-ref) ()) -(defclass langsxp-ref (rsxp-ref) ()) -(defclass charsxp-ref (rsxp-ref) ()) -(defclass lglsxp-ref (rsxp-ref) ()) -(defclass intsxp-ref (rsxp-ref) ()) -(defclass realsxp-ref (rsxp-ref) ()) -(defclass cplxsxp-ref (rsxp-ref) ()) -(defclass strsxp-ref (rsxp-ref) ()) -(defclass vecsxp-ref (rsxp-ref) ()) - -(defparameter *r-sexp-class-hash* - (ch-util:make-hash-table-from-alist - `((,r::|NILSXP| . nilsxp-ref) - (,r::|SYMSXP| . symsxp-ref) - (,r::|LISTSXP| . listsxp-ref) - (,r::|CLOSXP| . closxp-ref) - (,r::|ENVSXP| . envsxp-ref) - (,r::|LANGSXP| . listsxp-ref) - (,r::|CHARSXP| . charsxp-ref) - (,r::|LGLSXP| . lglsxp-ref) - (,r::|INTSXP| . intsxp-ref) - (,r::|REALSXP| . realsxp-ref) - (,r::|CPLXSXP| . cplxsxp-ref) - (,r::|STRSXP| . strsxp-ref) - (,r::|VECSXP| . vecsxp-ref)) - :test #'equal) - "Hash-table of routines to convert R s-expressions to lisp - s-expressions") - -(defun r-sxp-ref-class (sxp) - (gethash (r::|TYPEOF| sxp) *r-sexp-class-hash*)) - -(defun r-sxp-ref (sxp) - (let ((class (r-sxp-ref-class sxp))) - (if class - (make-instance class :sxp sxp) - (error 'r-error :details "Unable to find class for r-sxp")))) - -(defmethod preserve-sxp ((ref rsxp-ref)) - (r::|R_PreserveObject| (sxp ref))) - -(defmethod release-sxp ((ref rsxp-ref)) - (r::|R_ReleaseObject| (sxp ref))) - -(defmethod sxp-ref-length ((ref rsxp-ref)) - (r::|Rf_length| (sxp ref))) - -(defgeneric sxp-ref-element (ref index)) -(defgeneric (setf sxp-ref-element) (val ref index)) - -(defmethod sxp-ref-element ((ref lglsxp-ref) i) - (lglsxp-element (sxp ref) i)) - -(defmethod (setf sxp-ref-element) (val (ref lglsxp-ref) i) - (setf (lglsxp-element (sxp ref) i) val)) - -(defmethod sxp-ref-element ((ref intsxp-ref) i) - (intsxp-element (sxp ref) i)) - -(defmethod (setf sxp-ref-element) (val (ref intsxp-ref) i) - (setf (intsxp-element (sxp ref) i) val)) - -(defmethod sxp-ref-element ((ref realsxp-ref) i) - (realsxp-element (sxp ref) i)) - -(defmethod (setf sxp-ref-element) (val (ref realsxp-ref) i) - (setf (realsxp-element (sxp ref) i) val)) - -(defmethod sxp-ref-element ((ref cplxsxp-ref) i) - (cplxsxp-element (sxp ref) i)) - -(defmethod (setf sxp-ref-element) (val (ref cplxsxp-ref) i) - (setf (cplxsxp-element (sxp ref) i) val)) - -(defmethod sxp-ref-element ((ref strsxp-ref) i) - (strsxp-element (sxp ref) i)) - -(defmethod (setf sxp-ref-element) (val (ref strsxp-ref) i) - (setf (strsxp-element (sxp ref) i) val)) - -(defclass data-frame (rsxp) - ((dimensions :accessor df-dim :initarg :dimensions) - (names :accessor df-names :initarg :names) - (row-names :accessor df-row-names :initarg :row-names) - (data :accessor df-data :initarg :data))) - -(defun make-data-frame (sxp) - (let ((dim (dim sxp)) - (names (names sxp)) - (row-names (row-names sxp))) - (let* ((l (r::|LENGTH| sxp)) - (v (make-array (list (length row-names) l)))) - (declare (type (simple-array * (* *)) v)) - (dotimes (i l) - (let ((elt (r::|VECTOR_ELT| sxp i))) - (dotimes (j (length row-names)) - (setf (aref v j i) (r-vector-sexp-element elt j))))) - (make-instance 'data-frame :dimensions dim :names names :row-names row-names :data v)))) - -(defun vecsxp-element (sxp i) - (r-sexp-to-lisp-sexp (r::|VECTOR_ELT| sxp i))) - -(defun vecsxp-to-vector (sxp) - "Convert an R vector to a lisp (untyped) vector " - (cond - ((eql (r::|Rf_isFrame| sxp) 'R::TRUE) - (make-data-frame sxp)) - (t - (let* ((l (r::|LENGTH| sxp)) - (v (make-array l))) - (declare (type (simple-array * (*)) v)) - (dotimes (i l) - (setf (aref v i) (vecsxp-element sxp i))) - v)))) - -(defparameter *r-sexp-conversion-hash* - (ch-util:make-hash-table-from-alist - `((,r::|NILSXP| . ,(constantly nil)) - (,r::|SYMSXP| . symsxp-to-list) - (,r::|LISTSXP| . listsxp-to-list) - (,r::|CLOSXP| . closxp-to-list) - (,r::|ENVSXP| . envsxp-to-list) - (,r::|LANGSXP| . listsxp-to-list) - (,r::|CHARSXP| . charsxp-to-string) - (,r::|LGLSXP| . lglsxp-to-bit) - (,r::|INTSXP| . intsxp-to-integer) - (,r::|REALSXP| . realsxp-to-real) - (,r::|CPLXSXP| . cplxsxp-to-complex) - (,r::|STRSXP| . strsxp-to-vector) - (,r::|VECSXP| . vecsxp-to-vector)) - :test #'equal) - "Hash-table of routines to convert R s-expressions to lisp - s-expressions") - -(defun r-sexp-conversion-function (sxp) - (gethash (r::|TYPEOF| sxp) *r-sexp-conversion-hash*)) - -;;; we're going to assume that -(defun r-sexp-to-lisp-sexp (sxp) - "Converts an R s-expression to a lisp s-expression, based on the - type of the R s-expression" - (unless (sb-alien:null-alien sxp) - (let ((fun (r-sexp-conversion-function sxp))) - (if fun - (funcall fun sxp) - (warn "unknown R SEXP type ~A" (r::|TYPEOF| sxp)))))) - -(defparameter *r-vector-sexp-element-conversion-hash* - (ch-util:make-hash-table-from-alist - `((,r::|LGLSXP| . lglsxp-element) - (,r::|INTSXP| . intsxp-element) - (,r::|REALSXP| . realsxp-element) - (,r::|CPLXSXP| . cplxsxp-element) - (,r::|STRSXP| . strsxp-element) - (,r::|VECSXP| . vecsxp-element)) - :test #'equal) - "Hash-table of routines to convert elements of R vectors to - lisp data objects") - -(defun r-vector-sexp-element (sxp i) - (let ((fun (gethash (r::|TYPEOF| sxp) *r-vector-sexp-element-conversion-hash*))) - (if fun - (funcall fun sxp i) - (warn "unknown R SEXP type ~A" (r::|TYPEOF| sxp))))) - -(defun r-make-ext-ptr-sxp-from-callback (callback) - "makes an R SXP that is an EXTPTRSXP that points to a lisp -callback" - (let ((extp (r::|Rf_allocSExp| r::|EXTPTRSXP|)) - (funp (sb-alien::alien-sap callback)) - ;; it would be more efficient to cache native symbol, but we - ;; can't build this until after R has been initialized - (native-symbol - (gcc-xml-ffi::with-alien-signed-string (sym "native symbol") - (r::|Rf_install| sym)))) - (r::|R_SetExternalPtrAddr| extp funp) - (r::|R_SetExternalPtrTag| extp native-symbol) - extp)) diff --git a/clsr/clsr/src/clsr.cl b/clsr/clsr/src/clsr.cl deleted file mode 100644 index 21e60d8..0000000 --- a/clsr/clsr/src/clsr.cl +++ /dev/null @@ -1,87 +0,0 @@ -;; -*- mode: lisp -*- - -;;; (c) 2005--2006, Cyrus Harmon, all rights reserved. -;;; Author: Cyrus Harmon -;;; Maintainers: Cyrus Harmon and AJ Rossini - -;;; Purpose: main code, package status/initialization - -(in-package :clsr) - -(define-condition r-error (error) - ((details :reader r-error-details :initarg :details :initform "Unknown error")) - (:report (lambda (condition stream) - (format stream "Error in R: ~A" (r-error-details condition))))) - -(defparameter *r-home* clsr-system::*r-dir* - "The directory where R (include, lib, etc...) is installed") - -;;; Use defvar so that these doesn't get reset to nil if we reload -;;; this file! -(defvar *r-initialized* nil - "Flag to indicate whether or not R has been initialized. R doesn't - like to be initialized zero or more than one times. So use this to - let us know when clsr-init is mistakenly called twice.") - -;;; HACK-ALERT!!! -;;; define an alien-variable that isn't in the headers that allows us -;;; to ignore the new stack checking stuff - -(sb-alien:define-alien-variable ("R_CStackLimit" r::|R_CStackLimit|) sb-alien:unsigned-long) - -(defun minus-one-as-unsigned-long (bits) - (ldb (byte (1- bits) 0) -1)) - -;;; In theory, we could be calling clsr-init automatically at load -;;; time, but we're not, for the moment. -;;; This function must be called before any other R functions are -;;; called. -(defun clsr-init () - (unless *r-initialized* - (let* ((argc 1) - (argv (sb-alien:make-alien (* sb-alien:char) argc))) - (unwind-protect - (progn - (gcc-xml-ffi::with-alien-signed-string (clsr-string "CLSR") - (setf (sb-alien:deref argv 1) - clsr-string) - - #+darwin - (gcc-xml-ffi::with-alien-signed-string (env (format nil "R_HOME=~A" *r-home*)) - (sb-posix::putenv env)) - - #-darwin - (sb-posix::putenv (format nil "R_HOME=~A" *r-home*)) - - (print (sb-posix::getenv "R_HOME")) - (sb-ext::with-float-traps-masked (:divide-by-zero :invalid) - (r::|Rf_initialize_R| argc argv) - (setf r::|R_CStackLimit| - (minus-one-as-unsigned-long - (sb-alien:alien-size sb-alien:unsigned-long))) - (r::|setup_Rmainloop|)))) - (when argv (sb-alien:free-alien argv)))) - (setf *r-initialized* t))) - - -(defun load-clsr-r-source-files () - (let ((r-src-component - (asdf:find-component - (asdf:find-system "clsr") - "r-src"))) - (let ((r-src-files (asdf:module-components r-src-component))) - (mapcar #'asdf:component-pathname r-src-files)))) - -;;;; declare some R types to make it a bit easier to put type -;;;; declarations in other functions - -;;; SEXP -- (* struct SEXPREC) -(deftype r-sexp () - "alien R SEXP type (pointer to SEXPREC)" - '(sb-alien:alien (sb-alien:* (SB-ALIEN:STRUCT R::|SEXPREC|)))) - -;;; Rcomplex -(deftype r-complex () - "alien R complex number struct type" - '(sb-alien:alien r::|Rcomplex|)) - diff --git a/clsr/clsr/src/clsr.cl-NEW b/clsr/clsr/src/clsr.cl-NEW deleted file mode 100644 index a6248f1..0000000 --- a/clsr/clsr/src/clsr.cl-NEW +++ /dev/null @@ -1,88 +0,0 @@ -;; -*- mode:lisp -*- - -;;; Copyright (c) 2005--2006 Cyrus Harmon -;; Docs and edits (c) 2006 AJ Rossini - -(in-package :clsr) - -(define-condition r-error (error) - ((details :reader r-error-details - :initarg :details - :initform "Unknown error")) - (:report (lambda (condition stream) - (format stream "Error in R: ~A" (r-error-details condition))))) - -(defparameter *r-home* clsr-system::*r-dir* - "The directory where R (include, lib, etc...) is installed") - -;;; Use defvar so that these doesn't get reset to nil if we reload -;;; this file! -(defvar *r-initialized* nil - "Flag to indicate whether or not R has been initialized. R doesn't - like to be initialized zero or more than one times. So use this to - let us know when clsr-init is mistakenly called twice.") - -;;; HACK-ALERT!!! -;;; define an alien-variable that isn't in the headers that allows us -;;; to ignore the new stack checking stuff - -(sb-alien:define-alien-variable ("R_CStackLimit" r::|R_CStackLimit|) - sb-alien:unsigned-long) - -(defun minus-one-as-unsigned-long (bits) - (ldb (byte (1- bits) 0) -1)) - -;;; In theory, we could be calling clsr-init automatically at load -;;; time, but we're not, for the moment. -;;; This function must be called before any other R functions are -;;; called. -(defun clsr-init () - (unless *r-initialized* - (let* ((argc 1) - (argv (sb-alien:make-alien (* sb-alien:char) argc))) - (unwind-protect - (progn - (gcc-xml-ffi::with-alien-signed-string (clsr-string "CLSR") - (setf (sb-alien:deref argv 1) - clsr-string) - - #+darwin - (gcc-xml-ffi::with-alien-signed-string - (env (format nil "R_HOME=~A" *r-home*)) - (sb-posix::putenv env)) - - #-darwin - (sb-posix::putenv (format nil "R_HOME=~A" *r-home*)) - - (print (sb-posix::getenv "R_HOME")) - (sb-ext::with-float-traps-masked (:divide-by-zero :invalid) - (r::|Rf_initialize_R| argc argv) - (setf r::|R_CStackLimit| - (minus-one-as-unsigned-long - (sb-alien:alien-size sb-alien:unsigned-long))) - (r::|setup_Rmainloop|)))) - (when argv (sb-alien:free-alien argv)))) - (setf *r-initialized* t))) - - -(defun load-clsr-r-source-files () - (let ((r-src-component - (asdf:find-component - (asdf:find-system "clsr") - "r-src"))) - (let ((r-src-files (asdf:module-components r-src-component))) - (mapcar #'asdf:component-pathname r-src-files)))) - -;;;; declare some R types to make it a bit easier to put type -;;;; declarations in other functions - -;;; SEXP -- (* struct SEXPREC) -(deftype r-sexp () - "alien R SEXP type (pointer to SEXPREC)" - '(sb-alien:alien (sb-alien:* (SB-ALIEN:STRUCT R::|SEXPREC|)))) - -;;; Rcomplex -(deftype r-complex () - "alien R complex number struct type" - '(sb-alien:alien r::|Rcomplex|)) - diff --git a/clsr/clsr/src/defpackage.cl b/clsr/clsr/src/defpackage.cl deleted file mode 100644 index 6447cb6..0000000 --- a/clsr/clsr/src/defpackage.cl +++ /dev/null @@ -1,13 +0,0 @@ - -(in-package :cl-user) - -(defpackage #:clsr - (:use #:cl) - (:export :object-registry - :register-object - :unregister-id)) - - -(defpackage #:r) -;; (:use #:cl) -;; (:shadow :trace :debug :cadddr :caddr :cddr :cadr :cdar :caar :cdr :car :complex :real :integer)) diff --git a/clsr/clsr/src/semantic.cache b/clsr/clsr/src/semantic.cache deleted file mode 100644 index d24b342..0000000 --- a/clsr/clsr/src/semantic.cache +++ /dev/null @@ -1,39 +0,0 @@ -;; Object src/ -;; SEMANTICDB Tags save file -(semanticdb-project-database-file "src/" - :tables (list - (semanticdb-table "clsr-loader.cl" - :major-mode 'lisp-mode - :tags '(("in-package" code nil nil [176 194]) ("uffi-load-r-library" function (:arguments ("lib")) nil [196 529]) ("uffi-load-r-library" code nil nil [531 559])) - :file "clsr-loader.cl" - :pointmax 562 - ) - (semanticdb-table "clsr-objects.cl" - :major-mode 'lisp-mode - :tags '(("in-package" code nil nil [190 208]) ("object-registry" type (:members (("ids" variable (:default-value "(make-hash-table)") nil nil) ("object-id-counter" variable nil nil nil) ("max-id" variable (:default-value "most-positive-fixnum") nil nil)) :type "class") nil [210 402]) ("get-object" function (:arguments ("registry")) nil [404 488]) ("set-object" function (:arguments ("object" "registry")) nil [490 595]) ("remove-id" function (:arguments ("registry")) nil [597 680]) ("next-id" function (:parent "object-registry" :arguments ("registry")) nil [682 981]) ("register-object" function (:arguments ("registry")) nil [983 1139]) ("unregister-id" function (:arguments ("registry")) nil [1141 1296])) - :file "clsr-objects.cl" - :pointmax 1302 - ) - (semanticdb-table "clsr-parse-eval.cl" - :major-mode 'lisp-mode - :tags '(("in-package" code nil nil [195 213]) ("%parse-r-command" function (:arguments ("command-string")) nil [215 619]) ("assemble-r-parse" function (:arguments ("str")) nil [621 1091]) ("eval-r-command" function (:arguments ("command-string")) nil [1093 2097]) ("parse-r-expression" function (:arguments ("expression-string")) nil [2099 2568]) ("try-eval" function (:arguments ("expn-sexp")) nil [2570 3059]) ("with-parsed-r-expression" function (:arguments ("parsed" "&body" "body")) nil [3061 3795]) ("with-evaled-r-expression" function (:arguments ("evaled" "&body" "body")) nil [3797 4542]) ("with-r-call" function (:arguments ("answer" "&body" "body")) nil [4546 4774])) - :file "clsr-parse-eval.cl" - :pointmax 4775 - ) - (semanticdb-table "clsr-rref.cl" - :major-mode 'lisp-mode - :tags '(("in-package" code nil nil [206 224]) ("matrix-dim" function (:arguments ("matsxp")) nil [226 330]) ("def-typed-rref" function (:arguments ("name" "r-type-fun" "lisp-type")) nil [332 1504]) ("def-typed-rref" code nil nil [1506 1555]) ("def-typed-rref" code nil nil [1556 1616]) ("def-typed-rref" code nil nil [1617 1667]) ("complex-rref" function (:arguments ("matsxp" "y" "x")) nil [1791 1947]) ("defparameter" code nil nil [2124 2183]) ("dolist" code nil nil [2184 2442]) ("defparameter" code nil nil [2444 2508]) ("dolist" code nil nil [2509 2768]) ("rref" function (:arguments ("matsxp" "y" "x")) nil [2770 2896])) - :file "clsr-rref.cl" - :pointmax 3046 - ) - (semanticdb-table "clsr.cl" - :major-mode 'lisp-mode - :tags '(("in-package" code nil nil [205 223]) ("define-condition" code nil nil [225 455]) ("defparameter" code nil nil [457 563]) ("*r-initialized*" variable nil nil [647 871]) ("sb-alien:define-alien-variable" code nil nil [1005 1097]) ("minus-one-as-unsigned-long" function (:arguments ("bits")) nil [1100 1171]) ("load-clsr-r-source-files" function nil nil [2296 2564]) ("deftype" code nil nil [2699 2825]) ("deftype" code nil nil [2840 2935])) - :file "clsr.cl" - :pointmax 2937 - ) - ) - :file "semantic.cache" - :semantic-tag-version "2.0pre3" - :semanticdb-version "2.0pre3" - ) diff --git a/clsr/clsr/test/defpackage.cl b/clsr/clsr/test/defpackage.cl deleted file mode 100644 index 9689c56..0000000 --- a/clsr/clsr/test/defpackage.cl +++ /dev/null @@ -1,5 +0,0 @@ - -(in-package :cl-user) - -(defpackage #:clsr-test (:use #:cl)) - diff --git a/clsr/clsr/test/test-clsr.cl b/clsr/clsr/test/test-clsr.cl deleted file mode 100644 index baa91b8..0000000 --- a/clsr/clsr/test/test-clsr.cl +++ /dev/null @@ -1,430 +0,0 @@ - -(in-package :clsr-test) - -(defun test-clsr-random-num () - (r::|GetRNGstate|) - (cons (r::|norm_rand|) - (r::|norm_rand|))) - -(defun test-clsr-2 (cmd) - (clsr::r-sexp-to-lisp-sexp (clsr::eval-r-command cmd))) - -(defun test-clsr/nilsxp () - (clsr::with-r-call (answer "NULL") - (print (clsr::r-sexp-to-lisp-sexp answer)) - (assert (equalp nil (clsr::r-sexp-to-lisp-sexp answer))))) - -(defun test-clsr/strsxp () - (clsr::with-r-call (answer "c(\"these\", \"are\", \"strings\")") - (let ((lsxp (clsr::r-sxp-ref answer))) - (print (clsr::r-sexp-to-lisp-sexp (clsr::sxp lsxp))) - (print (clsr::sxp-ref-element lsxp 0)) - (assert (equalp #("these" "are" "strings") - (clsr::r-sexp-to-lisp-sexp answer)))))) - -(defun test-clsr/intsxp () - (clsr::with-r-call (answer "c(1,2,3)") - (print (clsr::r-sexp-to-lisp-sexp answer)) - (assert (equalp #(1 2 3) - (clsr::r-sexp-to-lisp-sexp answer))))) - -(defun test-clsr/realsxp () - (clsr::with-r-call (answer "c(1.0,2.0,3.0)") - (print (clsr::r-sexp-to-lisp-sexp answer)) - (assert (equalp #(1.0d0 2.0d0 3.0d0) - (clsr::r-sexp-to-lisp-sexp answer))))) - -(defun test-clsr/cplxsxp () - (clsr::with-r-call (answer "c(1.0+2.0i, 3.0+4.0i)") - (print (clsr::r-sexp-to-lisp-sexp answer)) - (assert (equalp #(#c(1.0d0 2.0d0) #c(3.0d0 4.0d0)) - (clsr::r-sexp-to-lisp-sexp answer))))) - -(defun test-clsr/vecsxp () - (clsr::with-r-call (answer "c(\"bogus\", 12, 1.0+2.0i, 3.0+4.0i)") - (print (clsr::r-sexp-to-lisp-sexp answer)) - (assert (equalp #("bogus" "12" "1+2i" "3+4i") - (clsr::r-sexp-to-lisp-sexp answer))))) - -(defun test-clsr/lglsxp () - (clsr::with-r-call (answer "as.logical(c(1,0,1))") - (print (clsr::r-sexp-to-lisp-sexp answer)) - (assert (equalp #*101 - (clsr::r-sexp-to-lisp-sexp answer))))) - -(defun test-clsr/data.frame () - (clsr::with-r-call (answer - "data.frame(moose=c(\"bar\",\"baz\",\"donkey\", \"baz\",\"quz\"), frob=c(1,2,5,7,pi))") - (clsr::r-sexp-to-lisp-sexp answer))) - -(defun test-clsr/matrix () - (clsr::with-r-call (answer "matrix(3,nrow=64,ncol=32)") - answer)) - -(defmacro vector-bind (symbols vector &body body) - (ch-util::with-unique-names (l) - `(multiple-value-bind (,@symbols) - (values-list (loop for ,l across ,vector collect ,l)) - (progn - ,@body)))) - -(defun run-tests () - (test-clsr/nilsxp) - (test-clsr/strsxp) - (test-clsr/intsxp) - (test-clsr/realsxp) - (test-clsr/cplxsxp) - (test-clsr/vecsxp) - (test-clsr/lglsxp)) - -(defparameter *r-clem-matrix-hash* (make-hash-table :test 'equal)) -(dolist - (x `((,r::|LGLSXP| . clem::bit-matrix) - (,r::|INTSXP| . clem::integer-matrix) - (,r::|REALSXP| . clem::double-float-matrix) - (,r::|CPLXSXP| . clem::complex-matrix))) - (setf (gethash (car x) *r-clem-matrix-hash*) (cdr x))) - -(defun r-matrix-to-clem-matrix (matsxp) - (let ((dim (clsr::matrix-dim matsxp))) - (let ((rows (aref dim 0)) - (cols (aref dim 1))) - (let ((matrix-type (gethash (r::|TYPEOF| matsxp) *r-clem-matrix-hash*))) - (let ((mat (make-instance matrix-type :rows rows :cols cols))) - (dotimes (i rows) - (declare (type fixnum i)) - (dotimes (j cols) - (declare (type fixnum j)) - (setf (clem::mref mat i j) - (clsr::rref matsxp i j)))) - mat))))) - -(defun r-matrix-to-clem-matrix-2 (sxp) - (let ((dim (clsr::dim sxp))) - (vector-bind (rows cols) - dim - (cond ((equal (r::|TYPEOF| sxp) r::|REALSXP|) - (let ((cmat (make-instance 'clem:real-matrix :rows rows :cols cols))) - (dotimes (i rows) - (dotimes (j cols) - (setf (clem::mref cmat i j) (clsr::r-vector-sexp-element sxp (+ (* i cols) j))) - )) - cmat)))))) - -(declaim (inline (setf clem::double-float-matrix-mref))) - -(defun r-real-matrix-to-clem-double-float-matrix (matsxp) - (let ((dim (clsr::matrix-dim matsxp)) - (matrix-type (gethash (r::|TYPEOF| matsxp) *r-clem-matrix-hash*))) - (let ((rows (aref dim 0)) - (cols (aref dim 1))) - (declare (optimize (speed 3) (space 0)) - (type fixnum rows cols)) - (let ((mat (make-instance matrix-type :rows rows :cols cols))) - (dotimes (i rows) - (declare (type fixnum i)) - (dotimes (j cols) - (declare (type fixnum j)) - (setf (clem::double-float-matrix-mref mat i j) - (clsr::real-rref matsxp i j :cols cols)))) - mat)))) - -(defun clem-matrix-to-r-matrix (mat matsxp) - (let ((dim (clsr::matrix-dim matsxp))) - (let ((rows (aref dim 0)) - (cols (aref dim 1))) - (dotimes (i rows) - (declare (type fixnum i)) - (dotimes (j cols) - (declare (type fixnum j)) - (setf (clsr::rref matsxp i j) - (clem::mref mat i j)))))) - matsxp) - -(defun test-r-matrix () - (clsr::with-parsed-r-expression (expn-sxp "matrix(5,1024,1024)") - (clsr::with-evaled-r-expression (answer-sxp expn-sxp) - (time (clsr-test::r-real-matrix-to-clem-double-float-matrix answer-sxp))))) - -(defun build-env () - (clsr::with-parsed-r-expression (expn-sxp - "e1 <- new.env(); -assign(\"s1\",\"v1\",envir=e1); -assign(\"s2\",\"v2\",envir=e1); -assign(\"s3\",\"v3\",envir=e1); -") - (clsr::with-evaled-r-expression (answer-sxp expn-sxp)))) - -(defun test-clsr/get () - (clsr::with-parsed-r-expression (expn-sxp "get(\"s1\", envir=e1)") - (clsr::with-evaled-r-expression (answer-sxp expn-sxp) - answer-sxp))) - -(defun test-clsr/ls () - (clsr::with-parsed-r-expression (expn-sxp "ls(e1)") - (clsr::with-evaled-r-expression (answer-sxp expn-sxp) - answer-sxp))) - -(defun test-clsr/ls-env (robj) - (clsr::with-parsed-r-expression (expn-sxp (format nil "ls(~A)" robj)) - (clsr::with-evaled-r-expression (answer-sxp expn-sxp) - answer-sxp))) - -(defun test-clsr/get-env (robj envir) - (clsr::with-parsed-r-expression (expn-sxp (format nil "get(~S,envir=~A)" robj envir)) - (clsr::with-evaled-r-expression (answer-sxp expn-sxp) - answer-sxp))) - -(defun test-clsr/init-bioc () - (clsr::with-parsed-r-expression (expn-sxp "library(\"drosophila2\")") - (clsr::with-evaled-r-expression (answer-sxp expn-sxp) - answer-sxp))) - -(defun test-clsr/test-bioc-1 () - (clsr::with-parsed-r-expression (expn-sxp (format nil "ls(drosophila2SYMBOL)[1:10]")) - (clsr::with-evaled-r-expression (answer-sxp expn-sxp) - (let ((probes (clsr::r-sexp-to-lisp-sexp answer-sxp))) - (loop for p across probes - collect (aref (clsr::r-sexp-to-lisp-sexp - (clsr::with-parsed-r-expression - (expn-sxp (format nil "get(~S,envir=~A)" p "drosophila2SYMBOL")) - (clsr::with-evaled-r-expression (answer-sxp expn-sxp) - answer-sxp))) 0)))))) - -(defun vector-to-lisp (v) - (loop for e across v collect e)) - -(defun flatten-vector-of-vectors (vv) - (loop for v1 across vv - append (loop for v2 across v1 - collect v2))) - -(defun test-clsr/test-bioc-2 () - (clsr::with-parsed-r-expression - (expn-sxp "mget (ls(drosophila2SYMBOL)[1:10], envir=drosophila2SYMBOL)") - (clsr::with-evaled-r-expression (answer-sxp expn-sxp) - (flatten-vector-of-vectors (clsr::r-sexp-to-lisp-sexp answer-sxp))))) - -(defun test-clsr/test-bioc-3 (env) - (clsr::with-parsed-r-expression - (expn-sxp (format nil "mget (ls(~A)[1:10], envir=~S)" env env)) - (clsr::with-evaled-r-expression (answer-sxp expn-sxp) - (flatten-vector-of-vectors (clsr::r-sexp-to-lisp-sexp answer-sxp))))) - -(sb-alien::define-alien-callback r-callback-test - r::|SEXP| - ((arg1 (* (sb-alien:struct r::|SEXPREC|))) - (arg2 (* (sb-alien:struct r::|SEXPREC|)))) - (let ((ans (r::|Rf_allocVector| r::|REALSXP| 1))) - (setf (sb-alien:deref (R::|REAL| ans) 0) - (* (clsr::realsxp-element arg1 0) - (clsr::realsxp-element arg2 0))) - ans)) - -(defun test-clsr/test-callback () - (declare (optimize (debug 2))) - (let ((extp (clsr::r-make-ext-ptr-sxp-from-callback r-callback-test))) - (clsr::with-parsed-r-expression (parsed ".Call(\"placeholder\",3.5,22)") - (let ((langsxp (r::|VECTOR_ELT| parsed 0))) - (r::|SETCAR| (r::|CDR| langsxp) extp) - (clsr::with-evaled-r-expression (answer parsed) - (print (cons 'answer (clsr::r-sexp-to-lisp-sexp answer)))))))) - -(sb-alien::define-alien-callback r-callback-test-1 - r::|SEXP| - ((arg1 (* (sb-alien:struct r::|SEXPREC|))) - (arg2 (* (sb-alien:struct r::|SEXPREC|)))) - (let* ((n (r::|LENGTH| arg1)) - (ans (r::|Rf_allocVector| r::|REALSXP| n))) - (loop for i below n - do (setf (sb-alien:deref (R::|REAL| ans) i) - (* (clsr::realsxp-element arg1 i) - (clsr::realsxp-element arg2 i)))) - ans)) - -(defun listsxp-element-list (sxp) - (cond ((equal (r::|TYPEOF| (r::|CAR| sxp)) r::|NILSXP|) - nil) - (t (cons (r::|CAR| sxp) (listsxp-element-list (r::|CDR| sxp)))))) - -(sb-alien::define-alien-callback r-callback-test-2 - r::|SEXP| - ((arg r::|SEXP|)) - (let* ((args (listsxp-element-list (r::|CDR| arg))) - (k (length args))) - (if (plusp k) - (let* ((n (r::|Rf_length| (car args)))) - (if (plusp n) - (let ((ans (r::|Rf_allocVector| r::|REALSXP| n))) - ;; should really do argument recycling, or at least - ;; some checking here, but this is a toy example... - (loop for i below n - do (setf (sb-alien:deref (R::|REAL| ans) i) - (apply #'* (loop for j in args - collect (clsr::realsxp-element j i))))) - ans) - r::|R_NilValue|)) - r::|R_NilValue|))) - -(defun test-clsr/test-callback-mult (&rest lists) - (declare (optimize (debug 2))) - (let ((extp (clsr::r-make-ext-ptr-sxp-from-callback r-callback-test-2))) - (clsr::with-parsed-r-expression (parsed - (format nil ".External(\"placeholder\",~{c(~{~f~^,~})~^,~})" lists)) - (let ((langsxp (r::|VECTOR_ELT| parsed 0))) - (r::|SETCAR| (r::|CDR| langsxp) extp) - (clsr::with-evaled-r-expression (answer parsed) - (print (cons 'answer (clsr::r-sexp-to-lisp-sexp answer)))))))) - -(defun format-sxp-ref-elements (ref &key stream) - (format stream - "~{~A~^ ~}" - (loop for i below (clsr::sxp-ref-length ref) - collect (clsr::sxp-ref-element ref i)))) - -(defmacro with-preserved-sxp-ref ((ref) &body body) - `(progn - (clsr::preserve-sxp ,ref) - ,@body - (clsr::release-sxp ,ref))) - -(defun test-sxp-ref (expn) - (clsr::with-r-call (answer expn) - (let ((ref (clsr::r-sxp-ref answer))) - (with-preserved-sxp-ref (ref) - (print (format-sxp-ref-elements ref)))))) - -(defun test-lgl-sxp-ref () - (test-sxp-ref "as.logical(c(1,0,1))")) - -(defun test-int-sxp-ref () - (test-sxp-ref "as.integer(c(1,2,3))")) - -(defun test-real-sxp-ref () - (test-sxp-ref "c(1.1,2.2,3.3)")) - -(defun test-str-sxp-ref () - (test-sxp-ref "c(\"these\", \"are\", \"strings\")")) - -(defun test-str-sxp-ref-2 () - (clsr::with-r-call (answer "c(\"these\", \"are\", \"strings\")") - (let ((ref (clsr::r-sxp-ref answer))) - (with-preserved-sxp-ref (ref) - (print (format-sxp-ref-elements ref)) - (setf (clsr::sxp-ref-element ref 1) "were") - (print (format-sxp-ref-elements ref)))))) - -(defun test-cplx-sxp-ref () - (test-sxp-ref "c(1.0+2.0i, 3.0+4.0i)")) - -(defun test-gc-torture () - (clsr::with-r-call (answer "gctorture(TRUE)") - (print (clsr::r-sexp-to-lisp-sexp answer)))) - -(defun init-gdd () - (clsr::with-r-call (answer "library(GDD)"))) - -(defparameter *moose* 42) - -(defun lisp-lookup (symbol &key package) - (symbol-value (apply #'find-symbol - (cons symbol - (when package (list (find-package package))))))) - -(defun test-gdd () - (clsr::with-r-call (answer "GDD(\"demo.png\", width=400, height=400)")) - (clsr::with-r-call (answer "plot(rnorm(200), rnorm(200), col=2)")) - (clsr::with-r-call (answer "dev.off()"))) - - -(sb-alien::define-alien-callback get-lisp-symbol-integer-value - r::|SEXP| - ((arg r::|SEXP|)) - (let* ((args (listsxp-element-list (r::|CDR| arg)))) - (let ((symbol (clsr::charsxp-to-string (r::|VECTOR_ELT| (car args) 0))) - (package (find-package 'clsr-test))) - (let ((ret-sxp (r::|Rf_allocVector| r::|INTSXP| 1))) - (setf (sb-alien:deref (r::|INTEGER| ret-sxp) 0) - (symbol-value (apply #'find-symbol - (cons (string-upcase symbol) - (when package (list (find-package package))))))) - ret-sxp)))) - -(sb-alien::define-alien-callback add-two-ints - r::|SEXP| - ((arg r::|SEXP|)) - (let* ((args (listsxp-element-list (r::|CDR| arg)))) - (let ((sym1 (clsr::charsxp-to-string (r::|VECTOR_ELT| (car args) 0))) - (sym2 (clsr::charsxp-to-string (r::|VECTOR_ELT| (cadr args) 0))) - (package (find-package 'clsr-test))) - (let ((ret-sxp (r::|Rf_allocVector| r::|INTSXP| 1))) - (setf (sb-alien:deref (r::|INTEGER| ret-sxp) 0) - (+ (symbol-value (apply #'find-symbol - (cons (string-upcase sym1) - (when package (list (find-package package)))))) - (symbol-value (apply #'find-symbol - (cons (string-upcase sym2) - (when package (list (find-package package)))))))) - ret-sxp)))) - -(defun test-clsr/test-get-lisp-symbol-integer-value (sym) - (declare (optimize (debug 2))) - (let ((extp (clsr::r-make-ext-ptr-sxp-from-callback get-lisp-symbol-integer-value))) - (clsr::with-parsed-r-expression (parsed - (format nil ".External(\"placeholder\",~S)" sym)) - (let ((langsxp (r::|VECTOR_ELT| parsed 0))) - (r::|SETCAR| (r::|CDR| langsxp) extp) - (clsr::with-evaled-r-expression (answer parsed) - (print (clsr::r-sexp-to-lisp-sexp answer))))))) - -(defmacro r-define-lisp-function (function-spec (&rest args)) - "takes a lisp callback and makes an R function from it. If - function-spec is a list, the first item specifies the r-function - name and the second the lisp-callback. If function-spec is an atom, - function-spec if both the r-function name and the lisp-callback." - (destructuring-bind (r-function lisp-function) - (cond ((listp function-spec) function-spec) - (t (list function-spec function-spec))) - `(let ((extp (clsr::r-make-ext-ptr-sxp-from-callback ,lisp-function))) - (clsr::with-parsed-r-expression - (parsed (format nil - "~A <- function(~{~A~^,~}) { .External(\"placeholder\",~{~A~^,~}) }" - ,r-function (list ,@args) (list ,@args))) - (let ((langsxp (r::|CDR| (r::|CADDR| (r::|CADDR| (r::|VECTOR_ELT| parsed 0)))))) - (r::|SETCAR| (r::|CDAR| langsxp) extp)) - (clsr::with-evaled-r-expression (answer parsed) - (print (clsr::r-sexp-to-lisp-sexp answer))))))) - -(r-define-lisp-function ("y" get-lisp-symbol-integer-value) ("arg1")) -(r-define-lisp-function ("w" add-two-ints) ("arg1" "arg2")) - -(defun test-moose (sym) - (clsr::with-r-call (answer (format nil "y(~S)" sym)) - (print (clsr::r-sexp-to-lisp-sexp answer)))) - -(defun test-add (n1 n2) - (clsr::with-r-call (answer (format nil "w(~S, ~S)" n1 n2)) - (print (clsr::r-sexp-to-lisp-sexp answer)))) - - - -(defun make-lisp-integer-ref-lambda (lisp-int) - (sb-alien::alien-lambda - r::|SEXP| - ((arg r::|SEXP|)) -; (let* ((args (listsxp-element-list (r::|CDR| arg)))) - (let ((ret-sxp (r::|Rf_allocVector| r::|INTSXP| 1))) - (setf (sb-alien:deref (r::|INTEGER| ret-sxp) 0) - lisp-int) - ret-sxp))) - -(defun make-lisp-int-vector-ref-lambda (lisp-int-vector) - (sb-alien::alien-lambda - r::|SEXP| - ((arg r::|SEXP|)) - (let ((i (sb-alien:deref (r::|INTEGER| arg) 0)) - (ret-sxp (r::|Rf_allocVector| r::|INTSXP| 1))) - (setf (sb-alien:deref (r::|INTEGER| ret-sxp) 0) - (aref lisp-int-vector i)) - ret-sxp))) - diff --git a/clsr/gcc-xml-ffi/ChangeLog b/clsr/gcc-xml-ffi/ChangeLog deleted file mode 100644 index c167051..0000000 --- a/clsr/gcc-xml-ffi/ChangeLog +++ /dev/null @@ -1,204 +0,0 @@ -2005-11-11 Cyrus Harmon - - * src/gcc-xml-uffi.cl: - added a defgeneric for %make-forward-uffi-declaration - -2005-10-27 Cyrus Harmon - - * src/gcc-xml-sb-alien.cl: - remove forward struct defintion (which was really a backward definition by mistake) - see if this breaks anything! - -2005-09-30 Cyrus Harmon - - * ChangeLog: bumped changelog - - * src/gcc-xml-uffi.cl, src/gcc-xml-sb-alien.cl, src/gcc-xml-classes.cl: - ... added some documentation - ... added alignment-mixin - ... added c-record type as parent of c-struct and c-union - ... c-field now parses the offset of the xml element - ... added some in-place convert-to-alien-string functions - and modified ones that return a new string to use these as - inline functions - ... added guess-alignment-from-offset - ... added :alignment keyword to sb-alien struct declarations - ... removed some debugging cruft - ... changed struct-members and union-members calls to members - -2005-09-30 Cyrus Harmon - - * src/gcc-xml-uffi.cl, src/gcc-xml-sb-alien.cl, src/gcc-xml-classes.cl: - ... added some documentation - ... added alignment-mixin - ... added c-record type as parent of c-struct and c-union - ... c-field now parses the offset of the xml element - ... added some in-place convert-to-alien-string functions - and modified ones that return a new string to use these as - inline functions - ... added guess-alignment-from-offset - ... added :alignment keyword to sb-alien struct declarations - ... removed some debugging cruft - ... changed struct-members and union-members calls to members - -2005-09-27 Cyrus Harmon - - * src/gcc-xml-util.cl, src/gcc-xml-sb-alien.cl, src/gcc-xml-parse.cl, src/gcc-xml-classes.cl, TODO, ChangeLog: - ... Making things work with mutually recursive structs that refer to - each other via pointers. C doesn't allow struct A to contain a - field that is struct B and vice versa, but it does allow A to - contain a field that is a pointer to B and vice versa. Now, after - much consternation and distres, it seems - ... Added mock support for reference types. I don't think we do the - right thing here, but we compile. This is bad, but there are worse - problems that are still unfixed. - The code is really in a bit of a state and needs a serious rewrite, - but it is at least working on carbon, quicktime and R for the - moment. - -2005-08-28 Cyrus Harmon - - * src/gcc-xml-sb-alien.cl, src/gcc-xml-classes.cl: - added convert-to-alien-signed-string - added %convert-to-alien-string macro, not sure which to use yet - added *null-char-ptr* - added make-sb-alien-declaration for c-func-type to generate the required - declarations for c-func-types - use the mangled struct name if no name present - added get-required-types for c-array-type - -2005-08-28 Cyrus Harmon - - * src/gcc-xml-sb-alien.cl, src/gcc-xml-classes.cl: - added convert-to-alien-signed-string - added %convert-to-alien-string macro, not sure which to use yet - added *null-char-ptr* - added make-sb-alien-declaration for c-func-type to generate the required - declarations for c-func-types - use the mangled struct name if no name present - added get-required-types for c-array-type - -2005-08-28 Cyrus Harmon - - * src/gcc-xml-sb-alien.cl, src/gcc-xml-classes.cl: - added convert-to-alien-signed-string - added %convert-to-alien-string macro, not sure which to use yet - added *null-char-ptr* - added make-sb-alien-declaration for c-func-type to generate the required - declarations for c-func-types - use the mangled struct name if no name present - added get-required-types for c-array-type - -2005-08-26 Cyrus Harmon - - * src/gcc-xml-sb-alien.cl: added convert-from-alien-pascal-string - -2005-08-25 Cyrus Harmon - - * src/defpackage.cl, src/gcc-xml-classes.cl, src/gcc-xml-sb-alien.cl, src/gcc-xml-uffi.cl, src/gcc-xml-util.cl, TODO: - lots of changes to support sb-alien stuff. - sb-alien enums now work - sb-alien function types work - fixed some order dependencies. This should all be cleaned up at some - point, but works better now. - -2005-08-08 Cyrus Harmon - - * src/gcc-xml-sb-alien.cl, src/gcc-xml-classes.cl: - removed a debugging message - made enums use the sb-alien enum stuff properly - chase the required types for fields so that we get the proper (better?) - order of declarations - -2005-08-06 Cyrus Harmon - - * src/gcc-xml-sb-alien.cl: - reverting the enum stuff back to the old style for the time being. - -2005-08-05 Cyrus Harmon - - * src/gcc-xml-sb-alien.cl: - added inline declamations for free-alien-string and convert-from-alien-string - -2005-08-04 Cyrus Harmon - - * src/gcc-xml-sb-alien.cl: - working on sb-alien strings, structs and foreign variables. - - * src/gcc-xml-sb-alien.cl: - added convert-to-alien-string, free-alien-string, - and convert-from-alien-string - fixing up types for sb-alien stuff - added a few make-sb-alien-declaration functions - - * src/gcc-xml-sb-alien.cl: baby steps... - -2005-08-03 Cyrus Harmon - - * ChangeLog, bootstrap.cl, gcc-xml-ffi-test.asd, gcc-xml-ffi.asd, src/gcc-xml-classes.cl, src/gcc-xml-sb-alien.cl, src/gcc-xml-uffi.cl, src/gcc-xml-util.cl, test/TODO, test/gcc-xml-test.cl: - lots of cleaning up and getting ready for gcc-xml-sb-alien - -2005-07-24 Cyrus Harmon - - * gcc-xml-ffi.asd, gcc-xml-ffi-test.asd: bumping version numbers - -2005-07-18 Cyrus Harmon - - * src/gcc-xml-util.cl: - add an extra byte for NULL in null-terminated strings - -2005-07-18 Cyrus Harmon - - * src/gcc-xml-util.cl: - add an extra byte for NULL in null-terminated strings - -2005-07-06 Cyrus Harmon - - * gcc-xml-ffi.asd, gcc-xml-ffi-test.asd, bootstrap.cl: - gcc-xml-test -> gcc-xml-ffi-test - removed registry stuff - -2005-07-01 Cyrus Harmon - - * src/.cvsignore, test/.cvsignore: fixing cvsignores - - * gcc-xml-ffi.asd, src/.cvsignore, test/.cvsignore: - added .cvsignore files and reference to LICENSE to asdf. - - * README, LICENSE: added LICENSE and skeletal README - - * ChangeLog, Makefile, README, bootstrap.cl, gcc-xml-ffi-test.asd, gcc-xml-ffi.asd: - more of the big reorg - - * test/Makefile, test/README, test/TODO, test/auto-ffi-test.cl, test/c-test.c, test/defpackage.cl, test/gcc-xml-test.cl: - part of the big reorg - - * TODO, src/defpackage.cl, src/gcc-xml-classes.cl, src/gcc-xml-parse.cl, src/gcc-xml-uffi.cl, src/gcc-xml-util.cl: - attempting to restructure things a bit... - -2005-06-14 Cyrus Harmon - - * TODO: Adding skeleton TODO file - -2005-05-16 Cyrus Harmon - - * gcc-xml-uffi.cl: - write-uffi-declarations-to-file now takes a :package argument - -2005-05-08 Cyrus Harmon - - * defpackage.cl, gcc-xml-classes.cl, gcc-xml-ffi.asd, gcc-xml-parse.cl, gcc-xml-uffi.cl, gcc-xml-util.cl: - Added foreign variable classes, parsing and declarations. - -2005-03-15 Cyrus Harmon - - * gcc-xml-uffi.cl: removed commented out stuff. - added write-uffi-declarations-to-file. - -2005-03-09 Cyrus Harmon - - * gcc-xml-test.cl: didn't need this here. - - * README, TODO, bootstrap.cl, defpackage.cl, gcc-xml-classes.cl, gcc-xml-ffi.asd, gcc-xml-parse.cl, gcc-xml-test.cl, gcc-xml-uffi.cl, gcc-xml-util.cl: - moved files around a bit. - diff --git a/clsr/gcc-xml-ffi/LICENSE b/clsr/gcc-xml-ffi/LICENSE deleted file mode 100644 index 435b1ac..0000000 --- a/clsr/gcc-xml-ffi/LICENSE +++ /dev/null @@ -1,29 +0,0 @@ -gcc-xml-ffi, a lisp package for using gcc-xml to generate foreign -function interfaces (FFI) for C and C++ programs. - -Copyright (c) 2005 Cyrus Harmon -All rights reserved. - -Redistribution and use in source and binary forms, with or without -modification, are permitted provided that the following conditions -are met: - - * Redistributions of source code must retain the above copyright - notice, this list of conditions and the following disclaimer. - - * Redistributions in binary form must reproduce the above - copyright notice, this list of conditions and the following - disclaimer in the documentation and/or other materials - provided with the distribution. - -THIS SOFTWARE IS PROVIDED BY THE AUTHOR 'AS IS' AND ANY EXPRESSED -OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED -WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY -DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE -GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, -WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING -NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS -SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/clsr/gcc-xml-ffi/Makefile b/clsr/gcc-xml-ffi/Makefile deleted file mode 100644 index e6d3e24..0000000 --- a/clsr/gcc-xml-ffi/Makefile +++ /dev/null @@ -1,25 +0,0 @@ -PACKAGE=gcc-xml-ffi -SYSTEMS=$(PACKAGE) $(PACKAGE)-test -CHUTILDIR=$(shell pwd)/../ch-util/ -OPENPAREN=( -CLOSEPAREN=) - -.PHONY: all dist $(PACKAGE) $(SYSTEMS) - -all: - @echo - @echo "This system needs to be loaded into SBCL with asdf:load-op." - @echo "Take a look at bootstrap.cl to get started" - -FINDEXPRS=$(addprefix $(OPENPAREN)asdf:find-system :, $(addsuffix $(CLOSEPAREN), $(SYSTEMS))) - -dist: - sbcl --noinform --noprint \ - --eval '(require :asdf)' \ - --eval "(pushnew (make-pathname :directory \"$(shell pwd)\") asdf:*central-registry*)" \ - --eval "(pushnew (make-pathname :directory (pathname-directory (truename \"$(CHUTILDIR)\"))) asdf:*central-registry*)" \ - --eval "(asdf:operate 'asdf:load-op 'ch-util)" \ - --eval "(asdf:operate 'asdf:load-op '$(PACKAGE))" \ - --eval '(ch-util:make-dist $(FINDEXPRS))' \ - --eval '(quit)' - diff --git a/clsr/gcc-xml-ffi/README b/clsr/gcc-xml-ffi/README deleted file mode 100644 index eb4dbcc..0000000 --- a/clsr/gcc-xml-ffi/README +++ /dev/null @@ -1,10 +0,0 @@ - - -This is woefully inadequate. Please fix. - -Steps - -1. Run GCC-XML on .c or .h file to produce an XML file -2. produce a lisp file of UFFI declarations from the XML -3. Evaluate the lisp file with the declarations - diff --git a/clsr/gcc-xml-ffi/TODO b/clsr/gcc-xml-ffi/TODO deleted file mode 100644 index fc6f30f..0000000 --- a/clsr/gcc-xml-ffi/TODO +++ /dev/null @@ -1,38 +0,0 @@ - -1. I should really figure out how to automatically run the sh/configure/make magic to build the .xml file - -1. Deal with elipsis... This is tough. There's really nothing that can - be done here except maybe some function that generates a new alien - function every time it is executed, but this would be horribly - inefficient. It's up to the programmer to hand-code the used varags - forms and use those. - -2. DONE - Deal with function type. I think this is handled properly now. - -3. Deal with file. Perhaps we should have some way of mapping from - files to packages. - -C++ Stuff - -4. Deal with constructors and destructors! -5. Deal with ReferenceType - - -Uh oh... What to do about function pointers???? - -6. Add class and support for tag -7. Investigate C++ issues - -8. Need to chase required types for arrays, methinks. - -9. 2005-08-27 - Need to chase the required types for function pointers! - -10. 2005-09-24 - Some problems with mutually recursive struct - definitions. This is turning into a huge nightmare. OK, it seems - to be much better now. At least I can compile the quicktime XML - bits that were giving me fits before. - -11. Should consider removing the decl arguments to all of the - functions in gcc-xml-sb-alien.cl and instead have a special - variable that contains the decls. This would clean the code up a - bit. diff --git a/clsr/gcc-xml-ffi/gcc-xml-ffi-test.asd b/clsr/gcc-xml-ffi/gcc-xml-ffi-test.asd deleted file mode 100644 index ef4779c..0000000 --- a/clsr/gcc-xml-ffi/gcc-xml-ffi-test.asd +++ /dev/null @@ -1,40 +0,0 @@ - -(defpackage #:gcc-xml-ffi-test-system (:use #:asdf #:cl)) -(in-package #:gcc-xml-ffi-test-system) - -;;;; -;;;; The following section customizes asdf to work with filenames -;;;; with a .cl extension and to put fasl files in a separate -;;;; directory. -;;;; -;;;; To enable this behvior, use asdf component type -;;;; :gcc-xml-ffi-test-cl-source-file -;;;; -(defclass gcc-xml-ffi-test-cl-source-file (cl-source-file) ()) - -(defmethod source-file-type ((c gcc-xml-ffi-test-cl-source-file) (s module)) "cl") - -(defparameter *fasl-directory* - (make-pathname :directory '(:relative #+sbcl "sbcl-fasl" - #+openmcl "openmcl-fasl" - #-(or sbcl openmcl) "fasl"))) - -(defmethod asdf::output-files ((operation compile-op) (c gcc-xml-ffi-test-cl-source-file)) - (list (merge-pathnames *fasl-directory* - (compile-file-pathname (component-pathname c))))) - -(defsystem :gcc-xml-ffi-test - :name "gcc-xml-ffi-test" - :author "Cyrus Harmon" - :version "0.1.4-20060315" - :depends-on (:xmls :uffi :gcc-xml-ffi) - :components - ((:module - :test - :components - ((:gcc-xml-ffi-test-cl-source-file "defpackage") - (:gcc-xml-ffi-test-cl-source-file "gcc-xml-test" - :depends-on ("defpackage")))) - (:module - :libraries :pathname ""))) - diff --git a/clsr/gcc-xml-ffi/gcc-xml-ffi.asd b/clsr/gcc-xml-ffi/gcc-xml-ffi.asd deleted file mode 100644 index 2347027..0000000 --- a/clsr/gcc-xml-ffi/gcc-xml-ffi.asd +++ /dev/null @@ -1,52 +0,0 @@ - -(defpackage #:gcc-xml-ffi-system (:use #:asdf #:cl)) -(in-package #:gcc-xml-ffi-system) - -;;;; -;;;; The following section customizes asdf to work with filenames -;;;; with a .cl extension and to put fasl files in a separate -;;;; directory. -;;;; -;;;; To enable this behvior, use asdf component type -;;;; :gcc-xml-ffi-cl-source-file -;;;; -(defclass gcc-xml-ffi-cl-source-file (cl-source-file) ()) - -(defparameter *fasl-directory* - (make-pathname :directory '(:relative - #+sbcl "sbcl-fasl" - #+openmcl "openmcl-fasl" - #-(or sbcl openmcl) "fasl"))) - -(defmethod source-file-type ((c gcc-xml-ffi-cl-source-file) (s module)) "cl") - -(defmethod asdf::output-files :around ((operation compile-op) (c gcc-xml-ffi-cl-source-file)) - (list (merge-pathnames *fasl-directory* (compile-file-pathname (component-pathname c))))) - - -(defsystem :gcc-xml-ffi - :name "gcc-xml-ffi" - :author "Cyrus Harmon" - :version "0.1.4-20060315" - :depends-on (:xmls :uffi) - :components - ((:module - :src - :components - ((:gcc-xml-ffi-cl-source-file "defpackage") - (:gcc-xml-ffi-cl-source-file "gcc-xml-util" - :depends-on ("defpackage")) - (:gcc-xml-ffi-cl-source-file "gcc-xml-classes" - :depends-on ("defpackage" "gcc-xml-util")) - (:gcc-xml-ffi-cl-source-file "gcc-xml-parse" - :depends-on ("defpackage" "gcc-xml-util" "gcc-xml-classes")) - (:gcc-xml-ffi-cl-source-file "gcc-xml-uffi" - :depends-on ("defpackage" "gcc-xml-util" "gcc-xml-classes")) - (:gcc-xml-ffi-cl-source-file "gcc-xml-sb-alien" - :depends-on ("defpackage" "gcc-xml-util" "gcc-xml-classes")))) - (:static-file "README") - (:static-file "TODO") - (:static-file "LICENSE") - (:static-file "Makefile") - (:static-file "ChangeLog"))) - diff --git a/clsr/gcc-xml-ffi/src/defpackage.cl b/clsr/gcc-xml-ffi/src/defpackage.cl deleted file mode 100644 index 103c980..0000000 --- a/clsr/gcc-xml-ffi/src/defpackage.cl +++ /dev/null @@ -1,16 +0,0 @@ - -(in-package :cl-user) - -(defpackage #:gcc-xml-ffi (:use #:cl) - (:export - #:parse-gcc-xml-file - #:write-uffi-declarations - #:with-foreign-signed-string - #:convert-to-foreign-string - #:convert-to-foreign-signed-string - )) - -(in-package :gcc-xml-ffi) - -(defparameter *gccxml-executable* "gccxml") - diff --git a/clsr/gcc-xml-ffi/src/gcc-xml-classes.cl b/clsr/gcc-xml-ffi/src/gcc-xml-classes.cl deleted file mode 100644 index 22d0498..0000000 --- a/clsr/gcc-xml-ffi/src/gcc-xml-classes.cl +++ /dev/null @@ -1,482 +0,0 @@ - -(in-package :gcc-xml-ffi) - -(defgeneric do-tag (obj tag val)) -(defgeneric print-object-slots (obj stream)) -(defgeneric print-object-children (obj stream)) - -(defclass c-declaration () - ((depends :accessor depends :initargs depends :initform nil)) - (:documentation "parent class of c-declarations found in the gcc-xml - xml files")) - -;;; get the required types of a c-declaration. returns a list of -;;; strings with the is, e.g. ("_23", "_34") -(defgeneric get-required-types (obj) - (:documentation "returns a list of text strings with the ids of the - required types for a c-declaration")) - -;;; default to nil -(defmethod get-required-types ((obj c-declaration)) - nil) - -(defmethod print-object ((obj c-declaration) stream) - (write-string "#<" stream) - (write (type-of obj) :stream stream :circle nil :level nil :length nil) - (print-object-slots obj stream) - (print-object-children obj stream) - (write-char #\> stream)) - -(defmethod print-object-children ((obj c-declaration) stream)) - -;;; mixin for all slots with an id -(defclass id-mixin () ((id :accessor id :initargs :id))) - -(defmethod print-object-slots ((obj id-mixin) stream) - (when (next-method-p) (call-next-method)) - (when (slot-boundp obj 'id) - (write-string " id=" stream) - (write (id obj) :stream stream :circle nil :level nil :length nil))) - -(defmethod do-tag ((obj id-mixin) tag val) - (cond ((string-equal (string-downcase tag) "id") - (setf (id obj) val)) - (t (when (next-method-p) (call-next-method))))) - -(defclass name-mixin () ((name :accessor name :initargs :name))) - -(defmethod print-object-slots ((obj name-mixin) stream) - (when (next-method-p) (call-next-method)) - (when (and (slot-boundp obj 'name) (name obj)) - (write-string " name=" stream) - (write (name obj) :stream stream :circle nil :level nil :length nil))) - -(defmethod do-tag ((obj name-mixin) tag val) - (cond ((string-equal (string-downcase tag) "name") - (setf (name obj) val)) - (t (when (next-method-p) (call-next-method))))) - -(defclass type-mixin () ((type-id :accessor type-id :initargs :type-id))) - -(defmethod print-object-slots ((obj type-mixin) stream) - (when (next-method-p) (call-next-method)) - (when (slot-boundp obj 'type-id) - (write-string " type=" stream) - (write (type-id obj) :stream stream :circle nil :level nil :length nil))) - -(defmethod do-tag ((obj type-mixin) tag val) - (cond ((string-equal (string-downcase tag) "type") - (setf (type-id obj) val)) - (t (when (next-method-p) (call-next-method))))) - -(defclass context-mixin () ((context :accessor context :initargs :context))) - -(defmethod do-tag ((obj context-mixin) tag val) - (cond ((string-equal (string-downcase tag) "context") - (setf (context obj) val)) - (t (when (next-method-p) (call-next-method))))) - -(defclass mangled-mixin () ((mangled :accessor mangled :initargs :mangled))) - -(defmethod do-tag ((obj mangled-mixin) tag val) - (cond ((string-equal (string-downcase tag) "mangled") - (setf (mangled obj) val)) - (t (when (next-method-p) (call-next-method))))) - -(defclass source-mixin () - ((location :accessor source-location :initargs :location) - (file :accessor source-file :initargs :file) - (line :accessor source-line :initargs :line))) - -(defmethod do-tag ((obj source-mixin) tag val) - (cond ((string-equal (string-downcase tag) "location") - (setf (source-location obj) val)) - ((string-equal (string-downcase tag) "file") - (setf (source-file obj) val)) - ((string-equal (string-downcase tag) "line") - (setf (source-line obj) val)) - (t (when (next-method-p) (call-next-method))))) - -(defclass function-mixin () - ((returns :accessor function-returns :initargs :returns) - (arguments :accessor function-arguments :initargs :arguments :initform nil))) - -(defmethod do-tag ((func function-mixin) tag val) - (cond ((string-equal (string-downcase tag) "returns") - (setf (function-returns func) val)) - (t (when (next-method-p) (call-next-method))))) - -(defmethod print-object-children ((func function-mixin) stream) - (when (and (slot-boundp func 'arguments) - (function-arguments func)) - (dolist (arg (function-arguments func)) - (write-char #\Space stream) - (print-object arg stream))) - (when (next-method-p) (call-next-method))) - -(defclass alignment-mixin () - ((alignment :accessor alignment :initargs :alignment))) - -(defmethod do-tag ((align alignment-mixin) tag val) - (cond ((string-equal (string-downcase tag) "align") - (setf (alignment align) (read-number-from-string val))) - (t (when (next-method-p) (call-next-method))))) - -(defclass c-namespace (c-declaration id-mixin name-mixin context-mixin mangled-mixin) - ((members :accessor namespace-members :initargs :members))) - -(defmethod do-tag ((ns c-namespace) tag val) - (cond ((string-equal (string-downcase tag) "members") - (setf (namespace-members ns) val)) - (t (when (next-method-p) (call-next-method))))) - -(defun do-namespace (attrs elements) - (declare (ignore elements)) - (let ((ns (make-instance 'c-namespace))) - (loop for (tag val) in attrs - do (do-tag ns tag val)) - ns)) - -(defclass c-argument (c-declaration name-mixin type-mixin) ()) - -(defun do-argument (attrs elements) - (declare (ignore elements)) - (let ((arg (make-instance 'c-argument))) - (loop for (tag val) in attrs do (do-tag arg tag val)) - arg)) - -(defclass c-function (c-declaration id-mixin name-mixin source-mixin context-mixin function-mixin) - ((extern :accessor function-extern :initargs :extern))) - -(defmethod get-required-types ((func c-function)) - (let ((used-types)) - (do* ((l (function-arguments func) (cdr l)) - (arg (car l) (car l))) - ((null l)) - (pushnew (type-id arg) used-types)) - (pushnew (function-returns func) used-types) - (reverse used-types))) - -(defmethod do-tag ((func c-function) tag val) - (cond ((string-equal (string-downcase tag) "extern") - (setf (function-extern func) val)) - (t (when (next-method-p) (call-next-method))))) - -(defun do-function (attrs elements) - (let ((func (make-instance 'c-function))) - (loop for (tag val) in attrs do (do-tag func tag val)) - (loop for e in elements - do (cond ((listp e) - (destructuring-bind (tag attrs &rest elements) - e - (cond ((string-equal (string-downcase tag) "argument") - (push (do-argument attrs elements) (function-arguments func))) - ((string-equal (string-downcase tag) "elipsis") - (print "got an elipsis..."))))))) - (when (function-arguments func) - (setf (function-arguments func) (nreverse (function-arguments func)))) - func)) - -(defclass c-function-type (c-declaration id-mixin function-mixin) ()) - -(defmethod get-required-types ((func c-function-type)) - (let ((used-types)) - (do* ((l (function-arguments func) (cdr l)) - (arg (car l) (car l))) - ((null l)) - (pushnew (type-id arg) used-types)) - (pushnew (function-returns func) used-types) - (reverse used-types))) - -(defun do-function-type (attrs elements) - (let ((func-type (make-instance 'c-function-type))) - (loop for (tag val) in attrs do (do-tag func-type tag val)) - (loop for e in elements - do (cond ((listp e) - (destructuring-bind (tag attrs &rest elements) - e - (cond ((string-equal (string-downcase tag) "argument") - (push (do-argument attrs elements) (function-arguments func-type))) - ((string-equal (string-downcase tag) "elipsis") - (print "got an elipsis..."))))))) - (when (function-arguments func-type) - (setf (function-arguments func-type) (nreverse (function-arguments func-type)))) - func-type)) - -(defclass c-enum-value (c-declaration name-mixin) - ((init :accessor enum-value-init :initargs :name))) - -(defmethod print-object-slots ((obj c-enum-value) stream) - (when (next-method-p) (call-next-method)) - (when (slot-boundp obj 'init) - (write-string " init=" stream) - (write (enum-value-init obj) :stream stream :circle nil :level nil :length nil))) - -(defmethod do-tag ((enum-val c-enum-value) tag val) - (cond ((string-equal (string-downcase tag) "init") - (setf (enum-value-init enum-val) val)) - (t (when (next-method-p) (call-next-method))))) - -(defun do-enum-value (attrs elements) - (declare (ignore elements)) - (let ((enum-val (make-instance 'c-enum-value))) - (loop for (tag val) in attrs do (do-tag enum-val tag val)) - enum-val)) - -(defclass c-enumeration (c-declaration name-mixin id-mixin source-mixin context-mixin) - ((values :accessor enumeration-values :initargs :values :initform nil))) - -(defmethod print-object-children ((enum c-enumeration) stream) - (when (and (slot-boundp enum 'values) - (enumeration-values enum)) - (dolist (val (enumeration-values enum)) - (write-char #\Space stream) - (print-object val stream))) - (when (next-method-p) (call-next-method))) - -(defun do-enumeration (attrs elements) - (let ((enum (make-instance 'c-enumeration))) - (loop for (tag val) in attrs do (do-tag enum tag val)) - (loop for e in elements - do (cond ((listp e) - (destructuring-bind (tag attrs &rest elements) - e - (cond ((string-equal (string-downcase tag) "enumvalue") - (push (do-enum-value attrs elements) (enumeration-values enum)))))))) - enum)) - -(defclass c-typedef (c-declaration id-mixin name-mixin source-mixin context-mixin type-mixin) ()) - -(defmethod get-required-types ((tdef c-typedef)) - (list (type-id tdef))) - -(defun do-typedef (attrs elements) - (declare (ignore elements)) - (let ((tdef (make-instance 'c-typedef))) - (loop for (tag val) in attrs do (do-tag tdef tag val)) - tdef)) - -(defclass c-fundamental-type (c-declaration id-mixin name-mixin) ()) - -(defun do-fundamental-type (attrs elements) - (declare (ignore elements)) - (let ((tdef (make-instance 'c-fundamental-type))) - (loop for (tag val) in attrs do (do-tag tdef tag val)) - tdef)) - -(defclass c-pointer-type (c-declaration id-mixin name-mixin type-mixin) ()) - -(defmethod get-required-types ((ptr-type c-pointer-type)) - (list (type-id ptr-type))) - -(defun do-pointer-type (attrs elements) - (declare (ignore elements)) - (let ((tdef (make-instance 'c-pointer-type))) - (loop for (tag val) in attrs do (do-tag tdef tag val)) - tdef)) - -(defclass c-cv-qualified-type (c-declaration id-mixin name-mixin type-mixin) - ((const :accessor cv-qualified-type-const :initargs :const))) - -(defmethod get-required-types ((obj c-cv-qualified-type)) - (list (type-id obj))) - -(defmethod print-object-slots ((obj c-cv-qualified-type) stream) - (when (next-method-p) (call-next-method)) - (when (slot-boundp obj 'const) - (write-string " const=" stream) - (write (cv-qualified-type-const obj) :stream stream :circle nil :level nil :length nil))) - -(defmethod do-tag ((tdef c-cv-qualified-type) tag val) - (cond ((string-equal (string-downcase tag) "const") - (setf (cv-qualified-type-const tdef) val)) - (t (when (next-method-p) (call-next-method))))) - -(defun do-cv-qualified-type (attrs elements) - (declare (ignore elements)) - (let ((tdef (make-instance 'c-cv-qualified-type))) - (loop for (tag val) in attrs do (do-tag tdef tag val)) - tdef)) - - -(defclass c-reference-type (c-declaration id-mixin name-mixin type-mixin) ()) - -(defmethod get-required-types ((obj c-reference-type)) - (list (type-id obj))) - -(defun do-reference-type (attrs elements) - (declare (ignore elements)) - (let ((tdef (make-instance 'c-reference-type))) - (loop for (tag val) in attrs do (do-tag tdef tag val)) - tdef)) - - -(defclass c-record (c-declaration - id-mixin name-mixin source-mixin - context-mixin mangled-mixin alignment-mixin) - ((members :accessor members :initargs :values :initform nil) - (bases :accessor bases :initargs :values :initform nil))) - -(defun do-record (attrs elements record-type) - (declare (ignore elements)) - (let ((record (make-instance record-type))) - (loop for (tag val) in attrs do (do-tag record tag val)) - (unless (slot-boundp record 'name) - (setf (name record) (mangled record))) - record)) - -(defclass c-struct (c-record) - ((incomplete :accessor struct-incomplete :initargs :incomplete))) - -(defmethod get-required-types ((struc c-struct)) - (let ((required-types)) - (dolist (member-id (members struc)) - (pushnew member-id required-types)) - (reverse required-types))) - -(defmethod do-tag ((struct c-struct) tag val) - (cond ((string-equal (string-downcase tag) "members") - (setf (members struct) - (split-id-list-string val))) - ((string-equal (string-downcase tag) "bases") - (setf (bases struct) val)) - (t (when (next-method-p) (call-next-method))))) - -(defun do-struct (attrs elements) - (do-record attrs elements 'c-struct)) - -(defclass c-union (c-record) ()) - -(defmethod get-required-types ((union c-union)) - (let ((required-types)) - (dolist (member-id (members union)) - (pushnew member-id required-types)) - (reverse required-types))) - -(defmethod do-tag ((union c-union) tag val) - (cond ((string-equal (string-downcase tag) "members") - (setf (members union) - (split-id-list-string val))) - ((string-equal (string-downcase tag) "bases") - (setf (bases union) val)) - (t (when (next-method-p) (call-next-method))))) - -(defun do-union (attrs elements) - (declare (ignore elements)) - (let ((union (make-instance 'c-union))) - (loop for (tag val) in attrs do (do-tag union tag val)) - (unless (slot-boundp union 'name) - (setf (name union) (mangled union))) - union)) - -(defclass c-field (c-declaration id-mixin name-mixin - source-mixin context-mixin - mangled-mixin type-mixin) - ((offset :accessor offset :initargs :offset))) - -(defmethod get-required-types ((field c-field)) - (list (type-id field))) - -(defmethod do-tag ((field c-field) tag val) - (cond ((string-equal (string-downcase tag) "offset") - (setf (offset field) (read-number-from-string val))) - (t (when (next-method-p) (call-next-method))))) - -(defun do-field (attrs elements) - (declare (ignore elements)) - (let ((field (make-instance 'c-field))) - (loop for (tag val) in attrs do (do-tag field tag val)) - field)) - -(defclass c-array-type (c-declaration id-mixin type-mixin) - ((min :accessor array-type-min :initargs :min) - (max :accessor array-type-max :initargs :max))) - -(defmethod get-required-types ((array-type c-array-type)) - (list (type-id array-type))) - -(defmethod do-tag ((array-type c-array-type) tag val) - (cond ((string-equal (string-downcase tag) "min") - (setf (array-type-min array-type) val)) - ((string-equal (string-downcase tag) "max") - (setf (array-type-max array-type) val)) - (t (when (next-method-p) (call-next-method))))) - -(defun do-array-type (attrs elements) - (declare (ignore elements)) - (let ((array-type (make-instance 'c-array-type))) - (loop for (tag val) in attrs do (do-tag array-type tag val)) - array-type)) - -(defclass c-constructor (c-declaration id-mixin name-mixin - source-mixin context-mixin - mangled-mixin type-mixin) ()) - -(defun do-constructor (attrs elements) - (declare (ignore elements)) - (let ((constructor (make-instance 'c-constructor))) - (loop for (tag val) in attrs do (do-tag constructor tag val)) - constructor)) - -(defclass c-class (c-declaration id-mixin name-mixin - source-mixin context-mixin - mangled-mixin) ()) - -(defun do-class (attrs elements) - (declare (ignore elements)) - (let ((class (make-instance 'c-class))) - (loop for (tag val) in attrs do (do-tag class tag val)) - class)) - -(defclass c-variable (c-declaration - id-mixin name-mixin - type-mixin context-mixin - source-mixin) ()) - -(defun do-variable (attrs elements) - (declare (ignore elements)) - (let ((variable (make-instance 'c-variable))) - (loop for (tag val) in attrs do (do-tag variable tag val)) - variable)) - -(defmethod get-required-types ((var c-variable)) - (list (type-id var))) - -(defclass c-declaration-set () - ((ids :accessor c-ids :initarg :ids - :initform (make-hash-table :test #'equal)) - (declared-ids :accessor declared-ids :initarg :declared-ids - :initform (make-hash-table :test #'equal)) - (namespaces :accessor c-namespaces :initarg :namespaces - :initform (make-hash-table :test #'equal)) - (enumerations :accessor c-enumerations :initarg :enumerations - :initform (make-hash-table :test #'equal)) - (functions :accessor c-functions :initarg :functions - :initform (make-hash-table :test #'equal)) - (function-types :accessor c-function-types :initarg :function-types - :initform (make-hash-table :test #'equal)) - (typedefs :accessor c-typedefs :initarg :typedefs - :initform (make-hash-table :test #'equal)) - (fundamental-types :accessor c-fundamental-types :initarg :fundamental-types - :initform (make-hash-table :test #'equal)) - (pointer-types :accessor c-pointer-types :initarg :pointer-types - :initform (make-hash-table :test #'equal)) - (cv-qualified-types :accessor c-cv-qualified-types :initarg :cv-qualified-types - :initform (make-hash-table :test #'equal)) - (reference-types :accessor c-reference-types :initarg :reference-types - :initform (make-hash-table :test #'equal)) - (structs :accessor c-structs :initarg :structs - :initform (make-hash-table :test #'equal)) - (unions :accessor c-unions :initarg :unions - :initform (make-hash-table :test #'equal)) - (fields :accessor c-fields :initarg :fields - :initform (make-hash-table :test #'equal)) - (array-types :accessor c-array-types :initarg :array-types - :initform (make-hash-table :test #'equal)) - (constructors :accessor c-constructors :initarg :constructors - :initform (make-hash-table :test #'equal)) - (classes :accessor c-classes :initarg :classes - :initform (make-hash-table :test #'equal)) - (variables :accessor c-variables :initarg :classes - :initform (make-hash-table :test #'equal)) - )) diff --git a/clsr/gcc-xml-ffi/src/gcc-xml-parse.cl b/clsr/gcc-xml-ffi/src/gcc-xml-parse.cl deleted file mode 100644 index 394f28d..0000000 --- a/clsr/gcc-xml-ffi/src/gcc-xml-parse.cl +++ /dev/null @@ -1,73 +0,0 @@ - -(in-package :gcc-xml-ffi) - -(defun parse-gcc-xml-file (f) - (with-open-file (xmlin f) - (let ((xml (xmls::parse xmlin))) - (destructuring-bind (tag attrs &rest elements) - xml - (declare (ignore attrs)) - (when (string-equal (string-downcase tag) "gcc_xml") - (let ((decls (make-instance 'c-declaration-set))) - (dolist (e elements) (do-gcc-xml e decls)) - decls)))))) - -(defun do-gcc-xml (sexp decls) - (cond ((listp sexp) - (destructuring-bind (tag attrs &rest elements) - sexp - (let* ((key (intern (string-upcase tag) :keyword)) - (obj - (case key - (:namespace - (let ((ns (do-namespace attrs elements))) - (setf (gethash (id ns) (c-namespaces decls)) ns))) - (:function - (let ((func (do-function attrs elements))) - (setf (gethash (id func) (c-functions decls)) func))) - (:functiontype - (let ((functype (do-function-type attrs elements))) - (setf (gethash (id functype) (c-function-types decls)) functype))) - (:enumeration - (let ((enum (do-enumeration attrs elements))) - (setf (gethash (id enum) (c-enumerations decls)) enum))) - (:typedef - (let ((tdef (do-typedef attrs elements))) - (setf (gethash (id tdef) (c-typedefs decls)) tdef))) - (:fundamentaltype - (let ((tdef (do-fundamental-type attrs elements))) - (setf (gethash (id tdef) (c-fundamental-types decls)) tdef))) - (:pointertype - (let ((tdef (do-pointer-type attrs elements))) - (setf (gethash (id tdef) (c-pointer-types decls)) tdef))) - (:cvqualifiedtype - (let ((tdef (do-cv-qualified-type attrs elements))) - (setf (gethash (id tdef) (c-cv-qualified-types decls)) tdef))) - (:referencetype - (let ((tdef (do-reference-type attrs elements))) - (setf (gethash (id tdef) (c-reference-types decls)) tdef))) - (:struct - (let ((struct (do-struct attrs elements))) - (setf (gethash (id struct) (c-structs decls)) struct))) - (:union - (let ((union (do-union attrs elements))) - (setf (gethash (id union) (c-unions decls)) union))) - (:field - (let ((field (do-field attrs elements))) - (setf (gethash (id field) (c-fields decls)) field))) - (:arraytype - (let ((arraytype (do-array-type attrs elements))) - (setf (gethash (id arraytype) (c-array-types decls)) arraytype))) - (:constructor - (let ((constructor (do-constructor attrs elements))) - (setf (gethash (id constructor) (c-constructors decls)) constructor))) - (:class - (let ((class (do-class attrs elements))) - (setf (gethash (id class) (c-classes decls)) class))) - (:variable - (let ((variable (do-variable attrs elements))) - (setf (gethash (id variable) (c-variables decls)) variable))) - ))) - (when (and obj (id obj)) - (setf (gethash (id obj) (c-ids decls)) obj))))))) - diff --git a/clsr/gcc-xml-ffi/src/gcc-xml-sb-alien.cl b/clsr/gcc-xml-ffi/src/gcc-xml-sb-alien.cl deleted file mode 100644 index 743e2f6..0000000 --- a/clsr/gcc-xml-ffi/src/gcc-xml-sb-alien.cl +++ /dev/null @@ -1,627 +0,0 @@ - -(in-package :gcc-xml-ffi) - -;;; FIXME -- CLH 2005-08-24 -;;; -;;; This is a hack to get around the fact that in SBCL -;;; we can't declare an alien-callback that returns type -;;; :void unless sb-alien::*values-type-okay* is t. -;;; -;;; CLH: this should no longer be necessary on SBCL 0.9.5.64 and later -;(eval-when (:compile-toplevel :load-toplevel :execute) -; (setf sb-alien::*values-type-okay* t)) - -(defparameter *c-to-sb-alien-type-hash-table* (make-hash-table :test 'equal)) - -(defparameter *null-char-ptr* (sb-alien:make-alien sb-alien:char 0)) -(defparameter *null-unsigned-char-ptr* (sb-alien:make-alien sb-alien:unsigned-char 0)) - -(defmacro %macro-convert-to-alien-string (str &key (signed)) - (let ((type (if signed - 'sb-alien:char - 'sb-alien:unsigned-char))) - `(progn - (declare (optimize (speed 3) (safety 0))) - (typecase ,str - (simple-string - (let ((a (sb-alien:make-alien ,type (the fixnum (1+ (the fixnum (length ,str))))))) - (declare (type (sb-alien:alien (* ,type)) a)) - (dotimes (i (length ,str)) - (declare (type fixnum i)) - (setf (sb-alien:deref a i) (char-code (aref ,str i)))) - (setf (sb-alien:deref a (length ,str)) 0) - a)))))) - -(declaim (inline %convert-to-alien-string)) -(defun %convert-to-alien-string (str a) - (declare (type (sb-alien:alien (* sb-alien:unsigned-char)) a)) - (dotimes (i (length str)) - (declare (type fixnum i)) - (setf (sb-alien:deref a i) (char-code (aref str i)))) - (setf (sb-alien:deref a (length str)) 0) - a) - -(defun convert-to-alien-string (str) - (declare (optimize (speed 3) (safety 0))) - (typecase str - (null *null-unsigned-char-ptr*) - (simple-string - (let ((a (sb-alien:make-alien sb-alien:unsigned-char (the fixnum (1+ (the fixnum (length str))))))) - (%convert-to-alien-string str a))))) - -(declaim (inline %convert-to-alien-signed-string)) -(defun %convert-to-alien-signed-string (str a) - (declare (type (sb-alien:alien (* sb-alien:char)) a)) - (dotimes (i (length str)) - (declare (type fixnum i)) - (setf (sb-alien:deref a i) (char-code (aref str i)))) - (setf (sb-alien:deref a (length str)) 0) - a) - -(defun convert-to-alien-signed-string (str) - (declare (optimize (speed 3) (safety 0))) - (typecase str - (null *null-char-ptr*) - (simple-string - (let ((a (sb-alien:make-alien sb-alien:char (the fixnum (1+ (the fixnum (length str))))))) - (%convert-to-alien-signed-string str a))))) - -(declaim (inline %convert-to-alien-pascal-string)) -(defun %convert-to-alien-pascal-string (str pstr) -;; (declare (type (sb-alien:alien (* sb-alien:unsigned-char)) pstr)) - (setf (sb-alien:deref pstr 0) (length str)) - (do ((i 1 (incf i))) - ((> i (length str)) pstr) - (setf (sb-alien:deref pstr i) (char-code (elt str (1- i))))) - pstr) - -(defun convert-to-alien-pascal-string (str) - (declare (optimize (speed 3) (safety 0))) - (typecase str - (null *null-unsigned-char-ptr*) - (simple-string - (let ((a (sb-alien:make-alien sb-alien:unsigned-char (the fixnum (1+ (the fixnum (length str))))))) - (%convert-to-alien-pascal-string str a))))) - -(declaim (inline free-alien-string)) -(defun free-alien-string (a) - (sb-alien:free-alien a)) - -(declaim (inline convert-from-alien-string)) -(defun convert-from-alien-string (a) - (sb-alien:cast a sb-alien:utf8-string)) - -(defun convert-from-alien-pascal-string (pstr) - (coerce - (mapcar #'code-char - (let ((len (sb-alien:deref pstr 0))) - (loop for i from 1 to len - collect (sb-alien:deref pstr i)))) - 'string)) - -(defmacro with-alien-string ((alien string) &body body) - `(let ((,alien (convert-to-alien-string ,string))) - (unwind-protect - (progn - ,@body) - (when ,alien (free-alien-string ,alien))))) - -(defmacro with-alien-signed-string ((alien string) &body body) - `(let ((,alien (convert-to-alien-signed-string ,string))) - (unwind-protect - (progn - ,@body) - (when ,alien (free-alien-string ,alien))))) - -(defmacro with-alien-pascal-string ((alien string) &body body) - `(let ((,alien (convert-to-alien-pascal-string ,string))) - (unwind-protect - (progn - ,@body) - (when ,alien (free-alien-string ,alien))))) - -(mapcar #'(lambda (x) (setf (gethash (car x) *c-to-sb-alien-type-hash-table*) (cdr x))) - '(("char" . sb-alien:char) - ("signed char" . sb-alien:char) - ("bool" . (sb-alien:boolean 8)) - ("unsigned char" . sb-alien:unsigned-char) - ("short" . sb-alien:short) - ("short int" . sb-alien:short) - ("unsigned short" . sb-alien:unsigned-short) - ("short unsigned int" . sb-alien:unsigned-short) - ("int" . sb-alien:int) - ("wchar_t" . sb-alien:int) - - ("unsigned int" . sb-alien:unsigned-int) - ("long" . sb-alien:long) - ("long int" . sb-alien:long) - ("long long int" . (sb-alien:integer 64)) - - ("unsigned long int" . sb-alien:unsigned-long) - ("long unsigned int" . sb-alien:unsigned-long) - ("long long unsigned int" . (sb-alien:integer 64)) - - ("float" . sb-alien:float) - ("double" . sb-alien:double) - - ;;; FIXME The SB-ALIEN type for long double is probably wrong! - ("long double" . sb-alien:double) - - ;;; FIXME The SB-ALIEN type for complex double is probably wrong! - ("complex double" . sb-alien:double) - - ;;; FIXME The SB-ALIEN type for complex long double is probably wrong! - ("complex long double" . sb-alien:double) - - ;;; FIXME The SB-ALIEN type for complex float is probably wrong! - ("complex float" . sb-alien:double) - - ("void" . sb-alien:void) - - ;;; Special case for pointer to void - which SB-ALIEN wants as an atomic type - ;;; FIXME this is surely wrong - ("pointer void" . (* t)))) - -(defun get-sb-alien-type-from-c-type (c-type) - (gethash c-type *c-to-sb-alien-type-hash-table*)) - -(defun get-sb-alien-type-from-id (id decls) - (let ((c-type (gethash id (c-ids decls)))) - (typecase c-type - (c-pointer-type - (let ((data-type (get-sb-alien-type-from-id (type-id c-type) - decls)) - (pointed-type (gethash (type-id c-type) (c-ids decls)))) - (cond - ;; We need to treat void pointers specially for SB-ALIEN to be happy - ((eql data-type 'sb-alien:void) - (get-sb-alien-type-from-c-type "pointer void")) - (t - (typecase pointed-type - (c-function - (get-sb-alien-type-from-c-type "pointer void")) - (c-function-type - (get-sb-alien-function-type decls pointed-type)) - (c-class - (get-sb-alien-type-from-c-type "pointer void")) - (t `(* ,data-type))))))) - (c-struct - `(sb-alien:struct ,(intern (ffi-symbol-case (name c-type))))) - (c-union - `(sb-alien:union ,(intern (ffi-symbol-case (name c-type))))) - (c-array-type - (let ((element-type (gethash (type-id c-type) (c-ids decls)))) - (let ((element-sb-alien-type - (typecase element-type - (c-function-type - (get-sb-alien-type-from-c-type "pointer void")) - (t - (get-sb-alien-type-from-id (type-id c-type) decls))))) - `(sb-alien:array ,element-sb-alien-type - ,(1+ (read-number-from-string (array-type-max c-type))))))) - (c-typedef - (let ((pointed-type (gethash (type-id c-type) (c-ids decls)))) - (typecase pointed-type - (c-function-type - (get-sb-alien-type-from-c-type "pointer void")) - (t - (get-sb-alien-type-from-id (type-id c-type) decls))))) - (c-cv-qualified-type - (get-sb-alien-type-from-id (type-id c-type) decls)) - (c-reference-type - (get-sb-alien-type-from-id (type-id c-type) decls)) - (c-enumeration - (intern (ffi-symbol-case (name c-type)))) - (c-fundamental-type - (get-sb-alien-type-from-c-type (name c-type))) - (c-function-type - (get-sb-alien-type-from-c-type "pointer void"))))) - -(defun get-function-arg-name (arg pos) - (if (slot-boundp arg 'name) - (intern (name arg)) - (get-nth-arg-label pos))) - -(defgeneric make-sb-alien-declaration (decls c-decl ancestors)) -(defgeneric %make-sb-alien-declaration (decls c-decl)) -(defgeneric %make-forward-sb-alien-declaration (decls c-decl)) - -(defmethod make-sb-alien-declaration :before (decls (obj id-mixin) ancestors) - (set-type-status (id obj) decls +type-requested+)) - -(defmethod make-sb-alien-declaration :after (decls (obj id-mixin) ancestors) - (set-type-status (id obj) decls +type-declared+)) - -(defmethod make-sb-alien-declaration (decls decl ancestors) - nil) - -(defmethod %make-forward-sb-alien-declaration (decls decl) - nil) - -(defun make-sb-alien-declaration-from-id (decls id ancestors) - (let ((decl (gethash id (c-ids decls)))) - (make-sb-alien-declaration decls decl ancestors))) - -(defun make-forward-sb-alien-declaration-from-id (decls id ancestors) - (let ((decl (gethash id (c-ids decls)))) - (%make-forward-sb-alien-declaration decls decl))) - -(defun maybe-make-sb-alien-declaration-from-id (decls id ancestors) -;; (print (list 'maybe id (check-type-declared id decls))) - (unless (check-type-declared id decls) - (make-sb-alien-declaration-from-id decls id ancestors))) - -(defun maybe-make-forward-sb-alien-declaration-from-id (decls id ancestors) -;; (print (list 'maybe id (check-type-declared id decls))) - (unless (check-type-forward-declared id decls) - (make-forward-sb-alien-declaration-from-id decls id ancestors))) - -;;; -;;; c-cv-qualified-type -(defmethod make-sb-alien-declaration (decls (cv-qual-type c-cv-qualified-type) ancestors) -;;; (print (cons 'cv-qualified-type-required (get-required-types cv-qual-type))) - (let ((sb-alien-decls)) - (dolist (id (get-required-types cv-qual-type)) - (let ((q (maybe-make-sb-alien-declaration-from-id decls id (cons cv-qual-type ancestors)))) - (if q (push q sb-alien-decls)))) - (if sb-alien-decls - (list* 'cl:progn ;;; (list 'print "pointer-forward") - (reverse sb-alien-decls))))) - -;;; -;;; c-reference-type -(defmethod make-sb-alien-declaration (decls (ref-type c-reference-type) ancestors) -;;; (print (cons 'reference-type-required (get-required-types ref-type))) - (let ((sb-alien-decls)) - (dolist (id (get-required-types ref-type)) - (let ((q (maybe-make-sb-alien-declaration-from-id decls id (cons ref-type ancestors)))) - (if q (push q sb-alien-decls)))) - (if sb-alien-decls - (list* 'cl:progn ;;; (list 'print "pointer-forward") - (reverse sb-alien-decls))))) - -;;; -;;; c-pointer-type -(defmethod make-sb-alien-declaration (decls (ptr-type c-pointer-type) ancestors) -;;; (print (cons 'pointer-required (get-required-types ptr-type))) - (let ((sb-alien-decls)) - ;; we point to a c-struct or c-union, we don't need to chase the type - ;; yet! I think... - (dolist (id (get-required-types ptr-type)) - (let ((parent (car ancestors))) - (unless (and parent - (or (subtypep (class-of parent) 'c-union) - (subtypep (class-of parent) 'c-struct))) - (let ((q (maybe-make-sb-alien-declaration-from-id decls id (cons ptr-type ancestors)))) - (if q (push q sb-alien-decls)))))) - (if sb-alien-decls - (list* 'cl:progn ;;; (list 'print "pointer-forward") - (reverse sb-alien-decls))))) - -(defmethod make-sb-alien-declaration (decls (nspc c-namespace) ancestors) - (when *verbose* - (list 'format t (format nil "Namespace ~A not yet implemented~~%" - (if (slot-boundp nspc 'name) - (name nspc) - nil))))) - -(defmethod make-sb-alien-declaration (decls (ctor c-constructor) ancestors) - (when *verbose* - (list 'format t (format nil "Constructor ~A not yet implemented~~%" - (if (slot-boundp ctor 'name) - (name ctor) - nil))))) - -(defmethod make-sb-alien-declaration (decls (class c-class) ancestors) - (when *verbose* - (list 'format t (format nil "Class ~A not yet implemented~~%" - (if (slot-boundp class 'name) - (name class) - nil))))) - - - -(defmethod %make-sb-alien-declaration (decls (var c-variable)) - (let* ((n (name var)) - (i (intern (ffi-symbol-case n)))) - (list 'sb-alien:define-alien-variable (list n i) - (get-sb-alien-type-from-id (type-id var) decls)))) - -(defmethod make-sb-alien-declaration (decls (var c-variable) ancestors) - (let ((sb-alien-decls)) - (dolist (id (get-required-types var)) - (let ((q (maybe-make-sb-alien-declaration-from-id decls id (cons var ancestors)))) - (if q (push q sb-alien-decls)))) - (if sb-alien-decls - (list* 'cl:progn ;;; (list 'print (list 'list "typedef" (name var))) - (append (reverse sb-alien-decls) - (list (%make-sb-alien-declaration decls var)))) - (%make-sb-alien-declaration decls var)))) - - -(defmethod %make-sb-alien-declaration (decls (tdef c-typedef)) - ;; FIXME: if the type is sb-alien:void, don't spit out a - ;; typedef. this is a hack but there are some issues with. jsnell - ;; submitted an SBCL patch that was supposed to fix this, but it - ;; doesn't work yet. Revisit when SBCL is fixed to allow - ;; define-alien-typ'ing a type to be sb-alien:void. - (let ((type (get-sb-alien-type-from-id (type-id tdef) decls))) - (unless (equal type 'sb-alien:void) - (list 'sb-alien:define-alien-type (intern (ffi-symbol-case (name tdef))) - type)))) - -(defmethod make-sb-alien-declaration (decls (tdef c-typedef) ancestors) - (let ((sb-alien-decls)) - (dolist (id (get-required-types tdef)) - (let ((q (maybe-make-sb-alien-declaration-from-id decls id (cons tdef ancestors)))) - (if q (push q sb-alien-decls)))) - (if sb-alien-decls - (list* 'cl:progn ;;; (list 'print (list 'list "typedef" (name tdef))) - (append (reverse sb-alien-decls) - (list (%make-sb-alien-declaration decls tdef)))) - (%make-sb-alien-declaration decls tdef)))) - -(defmethod make-sb-alien-declaration (decls (array-type c-array-type) ancestors) - (let ((sb-alien-decls)) - (dolist (id (get-required-types array-type)) - (let ((q (maybe-make-sb-alien-declaration-from-id decls id (cons array-type ancestors)))) - (if q (push q sb-alien-decls)))) - (when sb-alien-decls - (list* 'cl:progn ;;; (list 'print (list 'list "array-type" (name array-type))) - (reverse sb-alien-decls))))) - -;;; FIXME! There is a bug that prevents certain alien declarations -;;; from working right when loading from a fasl, so we have to load -;;; them using "load". I commented this out in hopes of working around -;;; this problem, but it doesn't seem to help. Perhaps this should go -;;; back in. -(defmethod %make-forward-sb-alien-declaration (decls (struc c-struct)) - ;; (let ((symbol (intern (ffi-symbol-case (name struc))))) - ;; `(sb-alien:define-alien-type - ;; ,symbol (sb-alien:struct ,symbol))) - ) - -(defun guess-alignment-from-offset (offset) - (cond ((zerop offset) 8) - ((zerop (mod offset 64)) 64) - ((zerop (mod offset 32)) 32) - ((zerop (mod offset 16)) 16) - ((zerop (mod offset 8)) 8) - (t 1))) - -(defmethod %make-sb-alien-declaration (decls (struc c-struct)) - (let ((name (intern (ffi-symbol-case (name struc))))) - (append - (list 'sb-alien:define-alien-type name - (cons 'sb-alien:struct - (cons name - (loop for member-id in (members struc) - append (let ((member (gethash member-id (c-ids decls)))) - (typecase member - (c-field - (list - (append - (list (intern (ffi-symbol-case (name member)))) - (list (get-sb-alien-type-from-id - (type-id member) decls)) - (when (offset member) - `(:alignment ,(guess-alignment-from-offset (offset member)))))))))))))))) - -(defmethod make-sb-alien-declaration :around (decls (struc c-struct) ancestors) -;; (print (cons 'ape (get-type-status (id struc) decls))) - (cond - ((equal (get-type-status (id struc) decls) +type-undeclared+) - (set-type-status (id struc) decls +type-requested+) - (let ((sb-alien-decls)) - (dolist (id (get-required-types struc)) - (let ((req-decl (gethash id (c-ids decls)))) - (unless (and (subtypep (type-of req-decl) 'c-field) - (pointer-type-p decls (gethash (type-id req-decl) (c-ids decls)))) - (let ((q (maybe-make-sb-alien-declaration-from-id decls id (cons struc ancestors)))) - (if q (push q sb-alien-decls)))))) - (prog1 - (if sb-alien-decls - (list* 'cl:progn ;;; (list 'print (list 'list "struct" (name struc))) - (append (reverse sb-alien-decls) - (list (%make-sb-alien-declaration decls struc)))) - (%make-sb-alien-declaration decls struc)) - (set-type-status (id struc) decls +type-declared+)))) -; ((equal (get-type-status (id struc) decls) +type-requested+) -; (%make-forward-sb-alien-declaration decls struc)) - (t nil))) - -(defmethod %make-forward-sb-alien-declaration (decls (u c-union)) - (let ((symbol (intern (ffi-symbol-case (name u))))) - `(sb-alien:define-alien-type - ,symbol (sb-alien:union ,symbol)))) - -;;; check to see if this is a poitner type or a typedef to a pointer type - -(defun pointer-type-p (decls type) - (typecase type - (c-pointer-type t) - (c-typedef - (pointer-type-p decls (gethash (type-id type) (c-ids decls)))) - (t nil))) - -(defmethod %make-sb-alien-declaration (decls (u c-union)) - (let ((name (intern (ffi-symbol-case (name u))))) - (append (list 'sb-alien:define-alien-type - name - (cons 'sb-alien:union - (cons name - (loop for member-id in (members u) - append (let ((member (gethash member-id (c-ids decls)))) - (typecase member - (c-field - (list - (list (intern (ffi-symbol-case (name member))) - (get-sb-alien-type-from-id - (type-id member) decls))))))))))))) - -(defmethod make-sb-alien-declaration :around (decls (u c-union) ancestors) -;; (print (cons 'ape (get-type-status (id u) decls))) - (cond - ((equal (get-type-status (id u) decls) +type-undeclared+) - (set-type-status (id u) decls +type-requested+) - (let ((sb-alien-decls)) - (dolist (id (get-required-types u)) - (unless (pointer-type-p decls (gethash id (c-ids decls))) - (let ((q (maybe-make-sb-alien-declaration-from-id decls id (cons u ancestors)))) - (if q (push q sb-alien-decls))))) - (prog1 - (if sb-alien-decls - (list* 'cl:progn ;;; (list 'print (list 'list "union" (name u))) - (append (reverse sb-alien-decls) - (list (%make-sb-alien-declaration decls u)))) - (%make-sb-alien-declaration decls u)) - (set-type-status (id u) decls +type-declared+)))) - ((equal (get-type-status (id u) decls) +type-requested+) - (%make-forward-sb-alien-declaration decls u)) - (t nil))) - - -(defmethod make-sb-alien-declaration :around (decls (field c-field) ancestors) - (cond - ((equal (get-type-status (id field) decls) +type-undeclared+) - (set-type-status (id field) decls +type-requested+) - (let* ((id (type-id field)) - (req (gethash id (c-ids decls)))) -; (print (list 'moose req ancestors)) -; (if (pointer-type-p decls req) -; (progn (print 'did-it) nil) - (prog1 - (maybe-make-sb-alien-declaration-from-id decls id (cons field ancestors)) - (set-type-status (id field) decls +type-declared+)))) -;) - (t nil))) - -(defmethod %make-sb-alien-declaration (decls (func c-function)) - (let* ((n (name func)) - (i (intern (ffi-symbol-case n)))) - (append (list 'sb-alien:define-alien-routine (list n i) - (get-sb-alien-type-from-id (function-returns func) decls)) - (loop for arg in (function-arguments func) - for j from 1 - collect (list (get-function-arg-name arg j) - (get-sb-alien-type-from-id (type-id arg) decls)))))) - -(defmethod make-sb-alien-declaration (decls (func c-function) ancestors) -;;; (print (cons 'function-required (get-required-types func))) - (unless (and *skip-gcc-builtin-functions* - (slot-exists-p func 'name) - (slot-boundp func 'name) - (eq (search "__builtin" (name func)) 0)) - (let ((sb-alien-decls)) - (dolist (id (get-required-types func)) - (let ((q (maybe-make-sb-alien-declaration-from-id decls id (cons func ancestors)))) - (if q (push q sb-alien-decls)))) - (if sb-alien-decls - (list* 'cl:progn - (append (reverse sb-alien-decls) - (list `(declaim - (inline ,(intern (ffi-symbol-case (name func)))))) - (list (%make-sb-alien-declaration decls func)))) - (list 'cl:progn - `(declaim - (inline ,(intern (ffi-symbol-case (name func))))) - (%make-sb-alien-declaration decls func)))))) - -(defmethod get-sb-alien-function-type (decls (func-type c-function-type)) - `(* (sb-alien:function - ,(get-sb-alien-type-from-id (function-returns func-type) decls) - . - ,(loop for arg in (function-arguments func-type) - for j from 1 - collect (get-sb-alien-type-from-id (type-id arg) decls))))) - -(defmethod make-sb-alien-declaration (decls (c-func-type c-function-type) ancestors) -;;; (print (cons 'c-function-type-required (get-required-types c-func))) - (let ((sb-alien-decls)) - (dolist (id (get-required-types c-func-type)) - (let ((q (maybe-make-sb-alien-declaration-from-id decls id (cons c-func-type ancestors)))) - (if q (push q sb-alien-decls)))) - (if sb-alien-decls - (list* 'cl:progn ;;; (list 'print "pointer-forward") - (reverse sb-alien-decls))))) - -(defmethod %make-sb-alien-declaration (decls (enum c-enumeration)) - (list* - 'cl:progn - (list 'sb-alien:define-alien-type - (intern (ffi-symbol-case (name enum))) - (list* 'sb-alien:enum - nil - (reverse - (loop for val in (enumeration-values enum) - collect (typecase val - (c-enum-value (list - (intern (ffi-symbol-case (name val))) - (read-number-from-string - (enum-value-init val))))))))) - (reverse - (loop for val in (enumeration-values enum) - collect - (cons 'defparameter - (typecase val - (c-enum-value (list - (intern (ffi-symbol-case (name val))) - (read-number-from-string - (enum-value-init val)))))))))) - -(defmethod make-sb-alien-declaration (decls (enum c-enumeration) ancestors) - (let ((sb-alien-decls)) - (dolist (id (get-required-types enum)) - (let ((q (maybe-make-sb-alien-declaration-from-id decls id (cons enum ancestors)))) - (if q (push q sb-alien-decls)))) - (if sb-alien-decls - (list* 'cl:progn ;;; (list 'print (list 'list "enum" (name enum))) - (reverse sb-alien-decls) - (%make-sb-alien-declaration decls enum)) - (%make-sb-alien-declaration decls enum)))) - - -#| -(defmethod make-sb-alien-declaration (decls (enum c-enumeration)) - `(cl:progn - ,(list 'sb-alien:define-alien-type - (intern (ffi-symbol-case (name enum))) 'sb-alien:int) - ,@(reverse - (loop for val in (enumeration-values enum) - collect (typecase val - (c-enum-value (list - 'defconstant - (intern (ffi-symbol-case - (concatenate 'string - (name enum) - "#" - (name val)))) - (read-number-from-string - (enum-value-init val))))))))) - -|# - - - -;;;; -;;;; -;;;; - -(defun write-sb-alien-declarations (decls stream) - (clrhash *numbered-args*) - (dolist (id (sorted-hash-table-ids (c-ids decls))) - (unless (gethash id (declared-ids decls)) - (let ((ancestors)) - (let ((decl (make-sb-alien-declaration decls (gethash id (c-ids decls)) ancestors))) - (when decl - (print decl stream) - (set-type-status id decls +type-finalized+)))))) - (terpri stream)) - -(defun write-sb-alien-declarations-to-file (decls path &key package) - (with-open-file (defout path :direction :output :if-exists :supersede) - (when package - (print `(in-package ,(intern (string-upcase (package-name package)) :keyword)) defout) - (terpri defout)) - (write-sb-alien-declarations decls defout))) - diff --git a/clsr/gcc-xml-ffi/src/gcc-xml-uffi.cl b/clsr/gcc-xml-ffi/src/gcc-xml-uffi.cl deleted file mode 100644 index 00c983c..0000000 --- a/clsr/gcc-xml-ffi/src/gcc-xml-uffi.cl +++ /dev/null @@ -1,408 +0,0 @@ - -(in-package :gcc-xml-ffi) - -(uffi:def-type unsigned-char-ptr (* :unsigned-char)) -(uffi:def-type char-ptr (* :char)) - -(defun convert-to-foreign-string (str) - (declare (optimize (speed 3) (safety 0) (space 0))) - (declare (type simple-string str)) - (let ((l (length str))) - (declare (type fixnum l)) - (let ((fstr (uffi:allocate-foreign-object :unsigned-char (1+ l)))) - (declare (type unsigned-char-ptr fstr)) - (setf (uffi:deref-array fstr :unsigned-char l) 0) - (do ((i 0 (incf i))) - ((= i l) fstr) - (declare (fixnum i)) - (setf (uffi:deref-array fstr :unsigned-char i) (char-code (elt str i))))))) - -(defun convert-to-foreign-signed-string (str) - (declare (optimize (speed 3) (safety 0))) - (declare (type simple-string str)) - (let* ((l (length str)) - (fstr (uffi:allocate-foreign-object :char (1+ l)))) - (declare (type fixnum l) - (type char-ptr fstr)) - (setf (uffi:deref-array fstr :char l) 0) - (do ((i 0 (incf i))) - ((= i l) fstr) - (declare (fixnum i)) - (setf (uffi:deref-array fstr :char i) (char-code (elt str i)))))) - -(defmacro with-foreign-signed-string ((foreign-string lisp-string) &body body) - (let ((result (gensym))) - `(let* ((,foreign-string (convert-to-foreign-signed-string ,lisp-string)) - (,result (progn ,@body))) - (declare (dynamic-extent ,foreign-string)) - (uffi:free-foreign-object ,foreign-string) - ,result))) - -(defparameter *c-to-uffi-type-hash-table* (make-hash-table :test 'equal)) -(mapcar #'(lambda (x) (setf (gethash (car x) *c-to-uffi-type-hash-table*) (cdr x))) - '(("char" . :char) - ("signed char" . :char) - ("bool" . :char) - ("unsigned char" . :unsigned-char) - ("short" . :short) - ("short int" . :short) - ("unsigned short" . :unsigned-short) - ("short unsigned int" . :unsigned-short) - ("int" . :int) - ("wchar_t" . :int) - - ("unsigned int" . :unsigned-int) - ("long int" . :long) - ("long long int" . :long) - ;;; FIXME The UFFI type for long long is probably wrong! - - ("unsigned long int" . :unsigned-long) - ("long unsigned int" . :unsigned-long) - ("long long unsigned int" . :unsigned-long) - ;;; FIXME The UFFI type for long long is probably wrong! - - ("float" . :float) - ("double" . :double) - ;;; FIXME The UFFI type for long double is probably wrong! - ("long double" . :double) - - ;;; FIXME The UFFI type for complex double is probably wrong! - ("complex double" . :double) - - ;;; FIXME The UFFI type for complex long double is probably wrong! - ("complex long double" . :double) - - ;;; FIXME The UFFI type for complex float is probably wrong! - ("complex float" . :double) - - ("void" . :void) - ;;; Special case for pointer to void - which UFFI wants as an atomic type - ("pointer void" . :pointer-void))) - -(defun get-uffi-type-from-c-type (c-type) - (gethash c-type *c-to-uffi-type-hash-table*)) - -(defun get-uffi-type-from-id (id decls) - (let ((c-type (gethash id (c-ids decls)))) - (typecase c-type - (c-pointer-type - (let ((data-type (get-uffi-type-from-id (type-id c-type) - decls)) - (pointed-type (gethash (type-id c-type) (c-ids decls)))) - (cond - ;; We need to treat void pointers specially for UFFI to be happy - ((eql data-type :void) - (get-uffi-type-from-c-type "pointer void")) - ;; And we need to check for pointers to functions and - ;; declare them as void because UFFI doesn't handle - ;; function pointers, AFAICT. - (t - (typecase pointed-type - (c-function - (get-uffi-type-from-c-type "pointer void")) - (c-function-type - (get-uffi-type-from-c-type "pointer void")) - (c-class - (get-uffi-type-from-c-type "pointer void")) - (t `(* ,data-type))))))) - (c-struct - `(:struct ,(intern (ffi-symbol-case (name c-type))))) - (c-union - `(:union ,(intern (ffi-symbol-case (name c-type))))) - (c-array-type - (let ((element-type (gethash (type-id c-type) (c-ids decls)))) - (let ((element-uffi-type - (typecase element-type - (c-function-type - (get-uffi-type-from-c-type "pointer void")) - (t - (get-uffi-type-from-id (type-id c-type) decls))))) - `(:array ,element-uffi-type - ,(1+ (read-number-from-string (array-type-max c-type))))))) - (c-typedef - (let ((pointed-type (gethash (type-id c-type) (c-ids decls)))) - (typecase pointed-type - (c-function-type - (get-uffi-type-from-c-type "pointer void")) - (t - (get-uffi-type-from-id (type-id c-type) decls))))) - (c-cv-qualified-type - (get-uffi-type-from-id (type-id c-type) decls)) - (c-enumeration - :int) ;;; arguably this should be the name of the c-enumeration - (c-fundamental-type - (get-uffi-type-from-c-type (name c-type))) - (c-function-type - (get-uffi-type-from-c-type "pointer void"))))) - -(defgeneric make-uffi-declaration (decls c-decl)) -(defgeneric %make-uffi-declaration (decls c-decl)) - -(defmethod make-uffi-declaration :before (decls (obj id-mixin)) - (set-type-status (id obj) decls +type-requested+)) - -(defmethod make-uffi-declaration :after (decls (obj id-mixin)) - (set-type-status (id obj) decls +type-declared+)) - -(defun make-uffi-declaration-from-id (decls id) - (let ((decl (gethash id (c-ids decls)))) - (make-uffi-declaration decls decl))) - -(defun maybe-make-uffi-declaration-from-id (decls id) -;; (print (list 'maybe id (check-type-declared id decls))) - (unless (check-type-declared id decls) - (make-uffi-declaration-from-id decls id))) - -(defmethod make-uffi-declaration (decls obj) - (when *verbose* (list 'format t (format nil "Found unknown Element: ~A~~%" obj)))) - -(defmethod make-uffi-declaration (decls (ptr-type c-pointer-type)) -;;; (print (cons 'pointer-required (get-required-types ptr-type))) - (let ((uffi-decls)) - (dolist (id (get-required-types ptr-type)) - (let ((q (maybe-make-uffi-declaration-from-id decls id))) - (if q (push q uffi-decls)))) - (if uffi-decls - (list* 'progn ;;; (list 'print "pointer-forward") - (reverse uffi-decls))))) - -(defmethod make-uffi-declaration (decls (nspc c-namespace)) - (when *verbose* - (list 'format t (format nil "Namespace ~A not yet implemented~~%" - (if (slot-boundp nspc 'name) - (name nspc) - nil))))) - -(defmethod make-uffi-declaration (decls (ctor c-constructor)) - (when *verbose* - (list 'format t (format nil "Constructor ~A not yet implemented~~%" - (if (slot-boundp ctor 'name) - (name ctor) - nil))))) - -(defmethod make-uffi-declaration (decls (class c-class)) - (when *verbose* - (list 'format t (format nil "Class ~A not yet implemented~~%" - (if (slot-boundp class 'name) - (name class) - nil))))) - -;; (defmethod make-uffi-declaration (decls (variable c-variable)) -;; (when *verbose* -;; (list 'format t (format nil "Variable ~A not yet implemented~~%" -;; (if (slot-boundp variable 'name) -;; (name variable) -;; nil))))) - -(defmethod %make-uffi-declaration (decls (var c-variable)) - (let* ((n (name var)) - (i (intern (ffi-symbol-case n)))) - (list 'uffi:def-foreign-var (list n i) - (get-uffi-type-from-id (type-id var) decls) nil))) - -(defmethod make-uffi-declaration (decls (var c-variable)) - (let ((uffi-decls)) - (dolist (id (get-required-types var)) - (let ((q (maybe-make-uffi-declaration-from-id decls id))) - (if q (push q uffi-decls)))) - (if uffi-decls - (list* 'progn ;;; (list 'print (list 'list "typedef" (name var))) - (append (reverse uffi-decls) - (list (%make-uffi-declaration decls var)))) - (%make-uffi-declaration decls var)))) - - -(defmethod %make-uffi-declaration (decls (tdef c-typedef)) - (list 'uffi:def-foreign-type (intern (ffi-symbol-case (name tdef))) - (get-uffi-type-from-id (type-id tdef) decls))) - -(defmethod make-uffi-declaration (decls (tdef c-typedef)) - (let ((uffi-decls)) - (dolist (id (get-required-types tdef)) - (let ((q (maybe-make-uffi-declaration-from-id decls id))) - (if q (push q uffi-decls)))) - (if uffi-decls - (list* 'progn ;;; (list 'print (list 'list "typedef" (name tdef))) - (append (reverse uffi-decls) - (list (%make-uffi-declaration decls tdef)))) - (%make-uffi-declaration decls tdef)))) - -(defgeneric %make-forward-uffi-declaration (decls struc)) - -(defmethod %make-forward-uffi-declaration (decls (struc c-struct)) - (list 'uffi:def-struct - (intern (ffi-symbol-case (name struc))))) - -(defmethod %make-uffi-declaration (decls (struc c-struct)) - (append (list 'uffi:def-struct - (intern (ffi-symbol-case (name struc)))) - (loop for member-id in (members struc) - append (let ((member (gethash member-id (c-ids decls)))) - (typecase member - (c-field - (list - (list (intern (ffi-symbol-case (name member))) - (get-uffi-type-from-id - (type-id member) decls))))))))) - -(defmethod make-uffi-declaration :around (decls (struc c-struct)) -;; (print (cons 'ape (get-type-status (id struc) decls))) - (cond - ((equal (get-type-status (id struc) decls) +type-undeclared+) - (set-type-status (id struc) decls +type-requested+) - (let ((uffi-decls)) - (dolist (id (get-required-types struc)) - (let ((q (maybe-make-uffi-declaration-from-id decls id))) - (if q (push q uffi-decls)))) - (prog1 - (if uffi-decls - (list* 'progn ;;; (list 'print (list 'list "struct" (name struc))) - (append (reverse uffi-decls) - (list (%make-uffi-declaration decls struc)))) - (%make-uffi-declaration decls struc)) - (set-type-status (id struc) decls +type-declared+)))) - ((equal (get-type-status (id struc) decls) +type-requested+) - (%make-forward-uffi-declaration decls struc)) - (t nil))) - -;; FIXME! Add in :pointer-self trick to above (and below)!!! - -(defmethod %make-forward-uffi-declaration (decls (union c-union)) - (list 'uffi:def-union - (intern (ffi-symbol-case (name union))))) - -(defmethod %make-uffi-declaration (decls (union c-union)) - (append (list 'uffi:def-union - (intern (ffi-symbol-case (name union)))) - (loop for member-id in (members union) - append (let ((member (gethash member-id (c-ids decls)))) - (typecase member - (c-field - (list - (list (intern (ffi-symbol-case (name member))) - (get-uffi-type-from-id - (type-id member) decls))))))))) - -(defmethod make-uffi-declaration :around (decls (union c-union)) -;; (print (cons 'ape (get-type-status (id union) decls))) - (cond - ((equal (get-type-status (id union) decls) +type-undeclared+) - (set-type-status (id union) decls +type-requested+) - (let ((uffi-decls)) - (dolist (id (get-required-types union)) - (let ((q (maybe-make-uffi-declaration-from-id decls id))) - (if q (push q uffi-decls)))) - (prog1 - (if uffi-decls - (list* 'progn ;;; (list 'print (list 'list "union" (name union))) - (append (reverse uffi-decls) - (list (%make-uffi-declaration decls union)))) - (%make-uffi-declaration decls union)) - (set-type-status (id union) decls +type-declared+)))) - ((equal (get-type-status (id union) decls) +type-requested+) - (%make-forward-uffi-declaration decls union)) - (t nil))) - -(defmethod make-uffi-declaration (decls (enum c-enumeration)) - (append (list 'uffi:def-enum - (intern (ffi-symbol-case (name enum)))) - (list - (loop for val in (enumeration-values enum) - append (typecase val - (c-enum-value (list - (list (intern (ffi-symbol-case (name val))) - (read-number-from-string - (enum-value-init val)))))))))) - -(defmethod make-uffi-declaration (decls (cvqt c-cv-qualified-type)) - (let ((uffi-decls)) - (dolist (id (get-required-types cvqt)) - (let ((q (maybe-make-uffi-declaration-from-id decls id))) - (if q (push q uffi-decls)))) - (if uffi-decls - (list* 'progn ;;; (list 'print (list 'list "cv-qualified-type" (id cvqt))) - (reverse uffi-decls))))) - -(defmethod make-uffi-declaration (decls (func c-function-type)) - (let ((uffi-decls)) - (dolist (id (get-required-types func)) - (let ((q (maybe-make-uffi-declaration-from-id decls id))) - (if q (push q uffi-decls)))) - (if uffi-decls - (list* 'progn ;;; (list 'print "function-type") - (reverse uffi-decls))))) - -(defmethod make-uffi-declaration (decls (fund c-fundamental-type)) - (if (slot-boundp fund 'name) - (unless (get-uffi-type-from-c-type (name fund)) - (list 'format t (format nil "Unknown FundamentalType ~A~~%" (name fund)))) - (list 'format t (format nil "Unknown FundamentalType ~A~~%" nil)))) - -;;; No UFFI declarations necessary for enum-vals -(defmethod make-uffi-declaration (decls (enum-val c-enum-value)) - nil) - -;;; No UFFI declarations necessary for fields -(defmethod make-uffi-declaration (decls (field c-field)) - (let ((uffi-decls)) - (dolist (id (get-required-types field)) - (let ((q (maybe-make-uffi-declaration-from-id decls id))) - (if q (push q uffi-decls)))) - (if uffi-decls - (list* 'progn ;;; (list 'print (list 'list "field" (name field))) - (reverse uffi-decls))))) - -;;; No UFFI declarations necessary for array types -;;; This is not true! May need to declare array element type -(defmethod make-uffi-declaration (decls (atyp c-array-type)) - (let ((element-id (type-id atyp))) - (unless (check-type-declared element-id decls) - (make-uffi-declaration decls (get-decl-from-id element-id decls))))) - -(defmethod make-uffi-declaration (decls (arg c-argument)) - (format t "Argument should not appear at top level~%")) - -(defmethod %make-uffi-declaration (decls (func c-function)) - (let* ((n (name func)) - (i (intern (ffi-symbol-case n)))) - (list 'uffi:def-function (list n i) - (loop for arg in (function-arguments func) - for j from 1 - collect (list (get-nth-arg-label j) - (get-uffi-type-from-id (type-id arg) decls))) - :returning - (progn - (get-uffi-type-from-id (function-returns func) decls))))) - -(defmethod make-uffi-declaration (decls (func c-function)) -;;; (print (cons 'function-required (get-required-types func))) - (unless (and *skip-gcc-builtin-functions* - (slot-exists-p func 'name) - (slot-boundp func 'name) - (eq (search "__builtin" (name func)) 0)) - (let ((uffi-decls)) - (dolist (id (get-required-types func)) - (let ((q (maybe-make-uffi-declaration-from-id decls id))) - (if q (push q uffi-decls)))) - (if uffi-decls - (list* 'progn - (append (reverse uffi-decls) - (list (%make-uffi-declaration decls func)))) - (%make-uffi-declaration decls func))))) - -(defun write-uffi-declarations (decls stream) - (dolist (id (sorted-hash-table-ids (c-ids decls))) - (unless (gethash id (declared-ids decls)) - (let ((decl (make-uffi-declaration decls (gethash id (c-ids decls))))) - (when decl - (print decl stream) - (set-type-status id decls +type-finalized+))))) - (terpri stream)) - -(defun write-uffi-declarations-to-file (decls path &key package) - (with-open-file (defout path :direction :output :if-exists :supersede) - (when package - (print `(in-package ,(intern (string-upcase (package-name package)) :keyword)) defout) - (terpri defout)) - (write-uffi-declarations decls defout))) - diff --git a/clsr/gcc-xml-ffi/src/gcc-xml-util.cl b/clsr/gcc-xml-ffi/src/gcc-xml-util.cl deleted file mode 100644 index d3a72a0..0000000 --- a/clsr/gcc-xml-ffi/src/gcc-xml-util.cl +++ /dev/null @@ -1,103 +0,0 @@ - -(in-package :gcc-xml-ffi) - -(defparameter *skip-gcc-builtin-functions* t) - -(defparameter *verbose* nil) - -(defun ffi-symbol-case (str) - str) - -(defun split-id-list-string (str) - (let ((tokens) (tok)) - (loop for c across str - do (if (char= #\Space c) - (progn (push (coerce (nreverse tok) 'string) tokens) - (setf tok nil)) - (push c tok))) - (when tok - (push (coerce (nreverse tok) 'string) tokens)) - (nreverse tokens))) - -(defun hash-table-keys (hash) - (let ((keys)) - (maphash #'(lambda (key val) (declare (ignore val)) - (push key keys)) - hash) - keys)) - -(defun read-number-from-string (str &key (start 0) end) - (unless end (setf end (1- (length str)))) - (if (eql (char str start) #\-) - (multiple-value-bind (val pos) - (read-number-from-string str :start (1+ start) :end end) - (values (- val) pos)) - (let ((acc 0)) - (loop for i from start to end - do (let ((dc (digit-char-p (char str i)))) - (if dc - (setf acc (+ dc (* 10 acc))) - (return-from read-number-from-string (values acc i))))) - (values acc end)))) - -(defun id-lessp (string1 string2 &key (start1 0) end1 (start2 0) end2) - (if (char= (char string1 start1) (char string2 start2) #\_) - (multiple-value-bind (id1 id1-end) - (read-number-from-string string1 :start 1) - (multiple-value-bind (id2 id2-end) - (read-number-from-string string2 :start 1) - (cond ((< id1 id2) t) - ((> id1 id2) nil) - (t (string-lessp string1 string2 :start1 id1-end :start2 id2-end))))) - (string-lessp string1 string2 - :start1 start1 :start2 start2 - :end1 end1 :end2 end2))) - -(defun sorted-hash-table-ids (h) - (sort (hash-table-keys h) #'id-lessp)) - -(defun hash-table-to-plist (h &aux l) - (if (hash-table-p h) - (progn (maphash - #'(lambda (key val) - (setf l (cons (hash-table-to-plist val) - (cons key l)))) h) - (nreverse l)) - h)) - -(defparameter *numbered-args* (make-hash-table)) - -(defun get-nth-arg-label (i) - (let ((a (gethash i *numbered-args*))) - (if a - a - (multiple-value-bind (sym status) - (intern (concatenate 'string "ARG" (format nil "~A" i))) - (declare (ignore status)) - (setf (gethash i *numbered-args*) sym))))) - -(defun get-decl-from-id (id decls) - (gethash id (c-ids decls))) - -(defconstant +type-undeclared+ nil) -(defconstant +type-requested+ 1) -(defconstant +type-forward-declared+ 2) -(defconstant +type-declared+ 3) -(defconstant +type-finalized+ 4) - -(defun get-type-status (type-id decls) -;; (print (cons 'checking type-id)) - (gethash type-id (declared-ids decls))) - -(defun set-type-status (type-id decls status) -;; (print (cons 'setting-declared type-id)) - (setf (gethash type-id (declared-ids decls)) status)) - -(defun check-type-forward-declared (type-id decls) - (let ((status (get-type-status type-id decls))) - (and status (>= status +type-forward-declared+)))) - -(defun check-type-declared (type-id decls) - (let ((status (get-type-status type-id decls))) - (and status (>= status +type-declared+)))) - diff --git a/clsr/gcc-xml-ffi/test/defpackage.cl b/clsr/gcc-xml-ffi/test/defpackage.cl deleted file mode 100644 index 2038936..0000000 --- a/clsr/gcc-xml-ffi/test/defpackage.cl +++ /dev/null @@ -1,5 +0,0 @@ - -(in-package :cl-user) - -(defpackage #:gcc-xml-test (:use #:cl #:gcc-xml-ffi)) - diff --git a/clsr/gcc-xml-ffi/test/gcc-xml-test.cl b/clsr/gcc-xml-ffi/test/gcc-xml-test.cl deleted file mode 100644 index 0e01b51..0000000 --- a/clsr/gcc-xml-ffi/test/gcc-xml-test.cl +++ /dev/null @@ -1,73 +0,0 @@ - -(in-package :gcc-xml-test) - -(defun eval-decls (s) - (loop for d = (read s nil) - while d do - (format t "~A~%" d) - (eval d))) - -(defparameter *library-path* - (asdf:component-pathname - (asdf:find-component - (asdf:find-system "gcc-xml-ffi-test") - "libraries"))) - -(defun uffi-load-library (lib) - (unless (uffi:load-foreign-library - (uffi:find-foreign-library - lib - (list (pathname-directory *load-truename*) - (print (merge-pathnames - (make-pathname :directory (list :relative "libffitest" ".libs")) - *library-path* - )) - (print (merge-pathnames - (make-pathname :directory (list :relative "lib" "ffitest")) - *library-path* - ))) - :types '("so" "dylib")) - :supporting-libraries '("c") - :module lib - :force-load t) - (error "Unable to load ffitest library"))) - -(eval-when (:compile-toplevel :load-toplevel :execute) - (defparameter *ffitest-loaded* nil) - - (when *load-truename* - (uffi-load-library "libffitest")) - (let ((decls)) - (with-open-file (defout "decls.lisp" :direction :output :if-exists :supersede) - (setf decls (parse-gcc-xml-file "test/ffitest.xml")) - (write-uffi-declarations decls defout)) - (with-open-file (defin "decls.lisp" :direction :input) - (let ((*package* (find-package :gcc-xml-test))) - (eval-decls defin))) - (setf *ffitest-loaded* t) - decls)) - -(defun do-test2 () - (let ((x (uffi::convert-to-foreign-string "evenboguser"))) - (let ((foreign-string-y (|foo_function| x))) - (let ((y (uffi::convert-from-foreign-string foreign-string-y))) - (print y)) - (uffi:free-foreign-object foreign-string-y)) - (uffi:free-foreign-object x))) - -(defun do-uffi-test-2 () - (when *load-truename* - (uffi-load-library "libffitest")) - (let ((decls)) - (with-open-file (defout "decls.lisp" :direction :output :if-exists :supersede) - (setf decls (parse-gcc-xml-file "test/ffitest2.xml")) - (write-uffi-declarations decls defout) - ) -; (defpackage #:opengl (:use #:cl)) -; (let ((*package* (find-package :opengl))) - (let ((*package* (find-package :gcc-xml-test))) - (with-open-file (defin "decls.lisp" :direction :input) - (eval-decls defin)) - ) - decls)) - diff --git a/clsr/gccxml-src/clsr-sb-alien-decls.cl b/clsr/gccxml-src/clsr-sb-alien-decls.cl deleted file mode 100644 index e94360a..0000000 --- a/clsr/gccxml-src/clsr-sb-alien-decls.cl +++ /dev/null @@ -1,6903 +0,0 @@ -(cl:in-package :R) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |test_me|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("test_me" |test_me|) SB-ALIEN:VOID)) -(COMMON-LISP:PROGN - (COMMON-LISP:PROGN - (COMMON-LISP:PROGN - (SB-ALIEN:DEFINE-ALIEN-TYPE SEXPREC (SB-ALIEN:STRUCT SEXPREC))) - (SB-ALIEN:DEFINE-ALIEN-TYPE SEXP (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)))) - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |test_sexp_string|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("test_sexp_string" |test_sexp_string|) - (COMMON-LISP:* COMMON-LISP:CHAR) - (|obj| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |test_sexp_type|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("test_sexp_type" |test_sexp_type|) - SB-ALIEN:UNSIGNED-INT - (|obj| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |setup_Rmainloop|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("setup_Rmainloop" |setup_Rmainloop|) - SB-ALIEN:VOID)) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_initialize_R|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_initialize_R" |Rf_initialize_R|) - SB-ALIEN:INT - (|ac| SB-ALIEN:INT) - (|av| - (COMMON-LISP:* - (COMMON-LISP:* COMMON-LISP:CHAR))))) -(COMMON-LISP:PROGN - (COMMON-LISP:PROGN - (COMMON-LISP:PROGN - (SB-ALIEN:DEFINE-ALIEN-TYPE |ParseStatus| - (SB-ALIEN:ENUM COMMON-LISP:NIL - (PARSE_NULL 0) - (PARSE_OK 1) - (PARSE_INCOMPLETE 2) - (PARSE_ERROR 3) - (PARSE_EOF 4))) - (COMMON-LISP:DEFPARAMETER PARSE_NULL 0) - (COMMON-LISP:DEFPARAMETER PARSE_OK 1) - (COMMON-LISP:DEFPARAMETER PARSE_INCOMPLETE 2) - (COMMON-LISP:DEFPARAMETER PARSE_ERROR 3) - (COMMON-LISP:DEFPARAMETER PARSE_EOF 4))) - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |R_ParseVector|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("R_ParseVector" |R_ParseVector|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (ARG2 SB-ALIEN:INT) - (ARG3 (COMMON-LISP:* |ParseStatus|)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_ScalarString|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_ScalarString" |Rf_ScalarString|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_ScalarReal|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_ScalarReal" |Rf_ScalarReal|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (ARG1 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (SB-ALIEN:DEFINE-ALIEN-TYPE |Rbyte| SB-ALIEN:UNSIGNED-CHAR) - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_ScalarRaw|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_ScalarRaw" |Rf_ScalarRaw|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (ARG1 SB-ALIEN:UNSIGNED-CHAR))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_ScalarLogical|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_ScalarLogical" |Rf_ScalarLogical|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (ARG1 SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_ScalarInteger|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_ScalarInteger" |Rf_ScalarInteger|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (ARG1 SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (SB-ALIEN:DEFINE-ALIEN-TYPE |Rcomplex| - (SB-ALIEN:STRUCT |Rcomplex| - (|r| SB-ALIEN:DOUBLE - :ALIGNMENT - 8) - (|i| SB-ALIEN:DOUBLE - :ALIGNMENT - 64))) - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_ScalarComplex|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_ScalarComplex" |Rf_ScalarComplex|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (ARG1 (SB-ALIEN:STRUCT |Rcomplex|)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_nlevels|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_nlevels" |Rf_nlevels|) - SB-ALIEN:INT - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_mkString|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_mkString" |Rf_mkString|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_mkChar|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_mkChar" |Rf_mkChar|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_listAppend|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_listAppend" |Rf_listAppend|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (ARG2 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_list4|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_list4" |Rf_list4|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (ARG2 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (ARG3 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (ARG4 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_list3|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_list3" |Rf_list3|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (ARG2 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (ARG3 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_list2|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_list2" |Rf_list2|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (ARG2 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_list1|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_list1" |Rf_list1|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (SB-ALIEN:DEFINE-ALIEN-TYPE |R_len_t| SB-ALIEN:INT) - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_length|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_length" |Rf_length|) - SB-ALIEN:INT - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_lcons|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_lcons" |Rf_lcons|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (ARG2 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_lastElt|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_lastElt" |Rf_lastElt|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_lang4|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_lang4" |Rf_lang4|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (ARG2 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (ARG3 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (ARG4 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_lang3|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_lang3" |Rf_lang3|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (ARG2 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (ARG3 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_lang2|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_lang2" |Rf_lang2|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (ARG2 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_lang1|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_lang1" |Rf_lang1|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:PROGN - (SB-ALIEN:DEFINE-ALIEN-TYPE |Rboolean| - (SB-ALIEN:ENUM COMMON-LISP:NIL - (FALSE 0) - (TRUE 1))) - (COMMON-LISP:DEFPARAMETER FALSE 0) - (COMMON-LISP:DEFPARAMETER TRUE 1)) - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_isVectorizable|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_isVectorizable" |Rf_isVectorizable|) - |Rboolean| - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_isVectorList|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_isVectorList" |Rf_isVectorList|) - |Rboolean| - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_isVectorAtomic|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_isVectorAtomic" |Rf_isVectorAtomic|) - |Rboolean| - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_isVector|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_isVector" |Rf_isVector|) - |Rboolean| - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_isValidStringF|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_isValidStringF" |Rf_isValidStringF|) - |Rboolean| - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_isValidString|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_isValidString" |Rf_isValidString|) - |Rboolean| - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_isUserBinop|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_isUserBinop" |Rf_isUserBinop|) - |Rboolean| - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_isUnordered|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_isUnordered" |Rf_isUnordered|) - |Rboolean| - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_isTs|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_isTs" |Rf_isTs|) - |Rboolean| - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_isSymbol|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_isSymbol" |Rf_isSymbol|) - |Rboolean| - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_isString|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_isString" |Rf_isString|) - |Rboolean| - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_isReal|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_isReal" |Rf_isReal|) - |Rboolean| - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_isPrimitive|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_isPrimitive" |Rf_isPrimitive|) - |Rboolean| - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_isPairList|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_isPairList" |Rf_isPairList|) - |Rboolean| - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_isOrdered|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_isOrdered" |Rf_isOrdered|) - |Rboolean| - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_isObject|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_isObject" |Rf_isObject|) - |Rboolean| - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_isNumeric|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_isNumeric" |Rf_isNumeric|) - |Rboolean| - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_isNull|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_isNull" |Rf_isNull|) - |Rboolean| - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_isNewList|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_isNewList" |Rf_isNewList|) - |Rboolean| - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_isMatrix|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_isMatrix" |Rf_isMatrix|) - |Rboolean| - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_isLogical|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_isLogical" |Rf_isLogical|) - |Rboolean| - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_isList|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_isList" |Rf_isList|) - |Rboolean| - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_isLanguage|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_isLanguage" |Rf_isLanguage|) - |Rboolean| - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_isInteger|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_isInteger" |Rf_isInteger|) - |Rboolean| - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_isFrame|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_isFrame" |Rf_isFrame|) - |Rboolean| - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_isFactor|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_isFactor" |Rf_isFactor|) - |Rboolean| - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_isExpression|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_isExpression" |Rf_isExpression|) - |Rboolean| - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_isEnvironment|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_isEnvironment" |Rf_isEnvironment|) - |Rboolean| - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_isComplex|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_isComplex" |Rf_isComplex|) - |Rboolean| - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_isArray|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_isArray" |Rf_isArray|) - |Rboolean| - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_inherits|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_inherits" |Rf_inherits|) - |Rboolean| - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (ARG2 (COMMON-LISP:* COMMON-LISP:CHAR)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_elt|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_elt" |Rf_elt|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (ARG2 SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_conformable|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_conformable" |Rf_conformable|) - |Rboolean| - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (ARG2 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_asReal|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_asReal" |Rf_asReal|) - SB-ALIEN:DOUBLE - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_asLogical|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_asLogical" |Rf_asLogical|) - SB-ALIEN:INT - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_asInteger|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_asInteger" |Rf_asInteger|) - SB-ALIEN:INT - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_asComplex|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_asComplex" |Rf_asComplex|) - (SB-ALIEN:STRUCT |Rcomplex|) - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_allocString|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_allocString" |Rf_allocString|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (ARG1 SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |R_system|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("R_system" |R_system|) - SB-ALIEN:INT - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |R_RunExitFinalizers|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("R_RunExitFinalizers" |R_RunExitFinalizers|) - SB-ALIEN:VOID)) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |R_dot_Last|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("R_dot_Last" |R_dot_Last|) SB-ALIEN:VOID)) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |R_ReleaseObject|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("R_ReleaseObject" |R_ReleaseObject|) - SB-ALIEN:VOID - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |R_PreserveObject|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("R_PreserveObject" |R_PreserveObject|) - SB-ALIEN:VOID - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |R_seemsS4Object|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("R_seemsS4Object" |R_seemsS4Object|) - |Rboolean| - (|object| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |R_do_new_object|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("R_do_new_object" |R_do_new_object|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (|class_def| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |R_do_MAKE_CLASS|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("R_do_MAKE_CLASS" |R_do_MAKE_CLASS|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (|what| (COMMON-LISP:* COMMON-LISP:CHAR)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |R_do_slot_assign|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("R_do_slot_assign" |R_do_slot_assign|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (|obj| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (|name| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (|value| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |R_do_slot|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("R_do_slot" |R_do_slot|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (|obj| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (|name| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:PROGN - (COMMON-LISP:PROGN - (COMMON-LISP:PROGN - (COMMON-LISP:PROGN - (SB-ALIEN:DEFINE-ALIEN-TYPE |R_pstream_format_t| - (SB-ALIEN:ENUM COMMON-LISP:NIL - (|R_pstream_any_format| 0) - (|R_pstream_ascii_format| 1) - (|R_pstream_binary_format| 2) - (|R_pstream_xdr_format| 3))) - (COMMON-LISP:DEFPARAMETER |R_pstream_any_format| 0) - (COMMON-LISP:DEFPARAMETER |R_pstream_ascii_format| 1) - (COMMON-LISP:DEFPARAMETER |R_pstream_binary_format| 2) - (COMMON-LISP:DEFPARAMETER |R_pstream_xdr_format| 3)) - (SB-ALIEN:DEFINE-ALIEN-TYPE |R_inpstream_st| - (SB-ALIEN:STRUCT |R_inpstream_st| - (|data| - (COMMON-LISP:* COMMON-LISP:T) - :ALIGNMENT - 8) - (|type| |R_pstream_format_t| - :ALIGNMENT - 32) - (|InChar| - (COMMON-LISP:* - (COMMON-LISP:FUNCTION - SB-ALIEN:INT - (COMMON-LISP:* - (SB-ALIEN:STRUCT - |R_inpstream_st|)))) - :ALIGNMENT - 64) - (|InBytes| - (COMMON-LISP:* - (COMMON-LISP:FUNCTION - SB-ALIEN:VOID - (COMMON-LISP:* - (SB-ALIEN:STRUCT - |R_inpstream_st|)) - (COMMON-LISP:* - COMMON-LISP:T) - SB-ALIEN:INT)) - :ALIGNMENT - 32) - (|InPersistHookFunc| - (COMMON-LISP:* - (COMMON-LISP:FUNCTION - (COMMON-LISP:* - (SB-ALIEN:STRUCT SEXPREC)) - (COMMON-LISP:* - (SB-ALIEN:STRUCT SEXPREC)) - (COMMON-LISP:* - (SB-ALIEN:STRUCT - SEXPREC)))) - :ALIGNMENT - 64) - (|InPersistHookData| - (COMMON-LISP:* - (SB-ALIEN:STRUCT SEXPREC)) - :ALIGNMENT - 32))))) - (SB-ALIEN:DEFINE-ALIEN-TYPE |R_inpstream_t| - (COMMON-LISP:* - (SB-ALIEN:STRUCT |R_inpstream_st|)))) - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |R_Unserialize|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("R_Unserialize" |R_Unserialize|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (|ips| - (COMMON-LISP:* - (SB-ALIEN:STRUCT |R_inpstream_st|))))) -(COMMON-LISP:PROGN - (COMMON-LISP:PROGN - (COMMON-LISP:PROGN - (SB-ALIEN:DEFINE-ALIEN-TYPE |R_outpstream_st| - (SB-ALIEN:STRUCT |R_outpstream_st| - (|data| - (COMMON-LISP:* COMMON-LISP:T) - :ALIGNMENT - 8) - (|type| |R_pstream_format_t| - :ALIGNMENT - 32) - (|version| SB-ALIEN:INT - :ALIGNMENT - 64) - (|OutChar| - (COMMON-LISP:* - (COMMON-LISP:FUNCTION - SB-ALIEN:VOID - (COMMON-LISP:* - (SB-ALIEN:STRUCT - |R_outpstream_st|)) - SB-ALIEN:INT)) - :ALIGNMENT - 32) - (|OutBytes| - (COMMON-LISP:* - (COMMON-LISP:FUNCTION - SB-ALIEN:VOID - (COMMON-LISP:* - (SB-ALIEN:STRUCT - |R_outpstream_st|)) - (COMMON-LISP:* - COMMON-LISP:T) - SB-ALIEN:INT)) - :ALIGNMENT - 64) - (|OutPersistHookFunc| - (COMMON-LISP:* - (COMMON-LISP:FUNCTION - (COMMON-LISP:* - (SB-ALIEN:STRUCT SEXPREC)) - (COMMON-LISP:* - (SB-ALIEN:STRUCT SEXPREC)) - (COMMON-LISP:* - (SB-ALIEN:STRUCT - SEXPREC)))) - :ALIGNMENT - 32) - (|OutPersistHookData| - (COMMON-LISP:* - (SB-ALIEN:STRUCT SEXPREC)) - :ALIGNMENT - 64)))) - (SB-ALIEN:DEFINE-ALIEN-TYPE |R_outpstream_t| - (COMMON-LISP:* - (SB-ALIEN:STRUCT |R_outpstream_st|)))) - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |R_Serialize|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("R_Serialize" |R_Serialize|) - SB-ALIEN:VOID - (|s| (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (|ops| - (COMMON-LISP:* - (SB-ALIEN:STRUCT |R_outpstream_st|))))) -(COMMON-LISP:PROGN - (COMMON-LISP:PROGN - (COMMON-LISP:PROGN - (COMMON-LISP:PROGN - (SB-ALIEN:DEFINE-ALIEN-TYPE |__sbuf| - (SB-ALIEN:STRUCT |__sbuf| - (|_base| - (COMMON-LISP:* - SB-ALIEN:UNSIGNED-CHAR) - :ALIGNMENT - 8) - (|_size| SB-ALIEN:INT - :ALIGNMENT - 32))) - (COMMON-LISP:PROGN - (COMMON-LISP:PROGN - (SB-ALIEN:DEFINE-ALIEN-TYPE |__int64_t| (COMMON-LISP:INTEGER 64)) - (SB-ALIEN:DEFINE-ALIEN-TYPE |__darwin_off_t| (COMMON-LISP:INTEGER 64))) - (SB-ALIEN:DEFINE-ALIEN-TYPE |fpos_t| (COMMON-LISP:INTEGER 64))) - (SB-ALIEN:DEFINE-ALIEN-TYPE |__sFILE| - (SB-ALIEN:STRUCT |__sFILE| - (|_p| - (COMMON-LISP:* - SB-ALIEN:UNSIGNED-CHAR) - :ALIGNMENT - 8) - (|_r| SB-ALIEN:INT - :ALIGNMENT - 32) - (|_w| SB-ALIEN:INT - :ALIGNMENT - 64) - (|_flags| SB-ALIEN:SHORT - :ALIGNMENT - 32) - (|_file| SB-ALIEN:SHORT - :ALIGNMENT - 16) - (|_bf| - (SB-ALIEN:STRUCT |__sbuf|) - :ALIGNMENT - 64) - (|_lbfsize| SB-ALIEN:INT - :ALIGNMENT - 64) - (|_cookie| - (COMMON-LISP:* COMMON-LISP:T) - :ALIGNMENT - 32) - (|_close| - (COMMON-LISP:* - (COMMON-LISP:FUNCTION - SB-ALIEN:INT - (COMMON-LISP:* - COMMON-LISP:T))) - :ALIGNMENT - 64) - (|_read| - (COMMON-LISP:* - (COMMON-LISP:FUNCTION - SB-ALIEN:INT - (COMMON-LISP:* - COMMON-LISP:T) - (COMMON-LISP:* - COMMON-LISP:CHAR) - SB-ALIEN:INT)) - :ALIGNMENT - 32) - (|_seek| - (COMMON-LISP:* - (COMMON-LISP:FUNCTION - (COMMON-LISP:INTEGER 64) - (COMMON-LISP:* - COMMON-LISP:T) - (COMMON-LISP:INTEGER 64) - SB-ALIEN:INT)) - :ALIGNMENT - 64) - (|_write| - (COMMON-LISP:* - (COMMON-LISP:FUNCTION - SB-ALIEN:INT - (COMMON-LISP:* - COMMON-LISP:T) - (COMMON-LISP:* - COMMON-LISP:CHAR) - SB-ALIEN:INT)) - :ALIGNMENT - 32) - (|_ub| - (SB-ALIEN:STRUCT |__sbuf|) - :ALIGNMENT - 64) - (|_extra| - (COMMON-LISP:* - (SB-ALIEN:STRUCT - |__sFILEX|)) - :ALIGNMENT - 64) - (|_ur| SB-ALIEN:INT - :ALIGNMENT - 32) - (|_ubuf| - (COMMON-LISP:ARRAY - SB-ALIEN:UNSIGNED-CHAR - 3) - :ALIGNMENT - 64) - (|_nbuf| - (COMMON-LISP:ARRAY - SB-ALIEN:UNSIGNED-CHAR - 1) - :ALIGNMENT - 8) - (|_lb| - (SB-ALIEN:STRUCT |__sbuf|) - :ALIGNMENT - 32) - (|_blksize| SB-ALIEN:INT - :ALIGNMENT - 32) - (|_offset| - (COMMON-LISP:INTEGER 64) - :ALIGNMENT - 64)))) - (SB-ALIEN:DEFINE-ALIEN-TYPE FILE (SB-ALIEN:STRUCT |__sFILE|)))) - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |R_InitFileOutPStream|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("R_InitFileOutPStream" |R_InitFileOutPStream|) - SB-ALIEN:VOID - (|stream| - (COMMON-LISP:* - (SB-ALIEN:STRUCT |R_outpstream_st|))) - (|fp| - (COMMON-LISP:* (SB-ALIEN:STRUCT |__sFILE|))) - (|type| |R_pstream_format_t|) - (|version| SB-ALIEN:INT) - (|phook| - (COMMON-LISP:* - (COMMON-LISP:FUNCTION - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) - (|pdata| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |R_InitFileInPStream|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("R_InitFileInPStream" |R_InitFileInPStream|) - SB-ALIEN:VOID - (|stream| - (COMMON-LISP:* - (SB-ALIEN:STRUCT |R_inpstream_st|))) - (|fp| - (COMMON-LISP:* (SB-ALIEN:STRUCT |__sFILE|))) - (|type| |R_pstream_format_t|) - (|phook| - (COMMON-LISP:* - (COMMON-LISP:FUNCTION - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) - (|pdata| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (SB-ALIEN:DEFINE-ALIEN-TYPE |R_pstream_data_t| (COMMON-LISP:* COMMON-LISP:T)) - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |R_InitOutPStream|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("R_InitOutPStream" |R_InitOutPStream|) - SB-ALIEN:VOID - (|stream| - (COMMON-LISP:* - (SB-ALIEN:STRUCT |R_outpstream_st|))) - (|data| (COMMON-LISP:* COMMON-LISP:T)) - (|type| |R_pstream_format_t|) - (|version| SB-ALIEN:INT) - (|outchar| - (COMMON-LISP:* - (COMMON-LISP:FUNCTION SB-ALIEN:VOID - (COMMON-LISP:* - (SB-ALIEN:STRUCT |R_outpstream_st|)) - SB-ALIEN:INT))) - (|outbytes| - (COMMON-LISP:* - (COMMON-LISP:FUNCTION SB-ALIEN:VOID - (COMMON-LISP:* - (SB-ALIEN:STRUCT |R_outpstream_st|)) - (COMMON-LISP:* COMMON-LISP:T) - SB-ALIEN:INT))) - (|phook| - (COMMON-LISP:* - (COMMON-LISP:FUNCTION - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) - (|pdata| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |R_InitInPStream|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("R_InitInPStream" |R_InitInPStream|) - SB-ALIEN:VOID - (|stream| - (COMMON-LISP:* - (SB-ALIEN:STRUCT |R_inpstream_st|))) - (|data| (COMMON-LISP:* COMMON-LISP:T)) - (|type| |R_pstream_format_t|) - (|inchar| - (COMMON-LISP:* - (COMMON-LISP:FUNCTION SB-ALIEN:INT - (COMMON-LISP:* - (SB-ALIEN:STRUCT |R_inpstream_st|))))) - (|inbytes| - (COMMON-LISP:* - (COMMON-LISP:FUNCTION SB-ALIEN:VOID - (COMMON-LISP:* - (SB-ALIEN:STRUCT |R_inpstream_st|)) - (COMMON-LISP:* COMMON-LISP:T) - SB-ALIEN:INT))) - (|phook| - (COMMON-LISP:* - (COMMON-LISP:FUNCTION - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) - (|pdata| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |R_XDRDecodeInteger|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("R_XDRDecodeInteger" |R_XDRDecodeInteger|) - SB-ALIEN:INT - (|buf| (COMMON-LISP:* COMMON-LISP:T)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |R_XDREncodeInteger|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("R_XDREncodeInteger" |R_XDREncodeInteger|) - SB-ALIEN:VOID - (|i| SB-ALIEN:INT) - (|buf| (COMMON-LISP:* COMMON-LISP:T)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |R_XDRDecodeDouble|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("R_XDRDecodeDouble" |R_XDRDecodeDouble|) - SB-ALIEN:DOUBLE - (|buf| (COMMON-LISP:* COMMON-LISP:T)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |R_XDREncodeDouble|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("R_XDREncodeDouble" |R_XDREncodeDouble|) - SB-ALIEN:VOID - (|d| SB-ALIEN:DOUBLE) - (|buf| (COMMON-LISP:* COMMON-LISP:T)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |R_SetUseNamespaceDispatch|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE - ("R_SetUseNamespaceDispatch" |R_SetUseNamespaceDispatch|) - SB-ALIEN:VOID - (|val| |Rboolean|))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_warningcall|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_warningcall" |Rf_warningcall|) - SB-ALIEN:VOID - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (ARG2 (COMMON-LISP:* COMMON-LISP:CHAR)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_errorcall|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_errorcall" |Rf_errorcall|) - SB-ALIEN:VOID - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (ARG2 (COMMON-LISP:* COMMON-LISP:CHAR)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |R_HasFancyBindings|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("R_HasFancyBindings" |R_HasFancyBindings|) - |Rboolean| - (|rho| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |R_BindingIsActive|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("R_BindingIsActive" |R_BindingIsActive|) - |Rboolean| - (|sym| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (|env| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |R_BindingIsLocked|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("R_BindingIsLocked" |R_BindingIsLocked|) - |Rboolean| - (|sym| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (|env| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |R_MakeActiveBinding|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("R_MakeActiveBinding" |R_MakeActiveBinding|) - SB-ALIEN:VOID - (|sym| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (|fun| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (|env| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |R_LockBinding|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("R_LockBinding" |R_LockBinding|) - SB-ALIEN:VOID - (|sym| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (|env| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |R_EnvironmentIsLocked|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE - ("R_EnvironmentIsLocked" |R_EnvironmentIsLocked|) - |Rboolean| - (|env| (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |R_LockEnvironment|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("R_LockEnvironment" |R_LockEnvironment|) - SB-ALIEN:VOID - (|env| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (|bindings| |Rboolean|))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |R_FindNamespace|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("R_FindNamespace" |R_FindNamespace|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (|info| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |R_NamespaceEnvSpec|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("R_NamespaceEnvSpec" |R_NamespaceEnvSpec|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (|rho| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |R_IsNamespaceEnv|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("R_IsNamespaceEnv" |R_IsNamespaceEnv|) - |Rboolean| - (|rho| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |R_FindPackageEnv|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("R_FindPackageEnv" |R_FindPackageEnv|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (|info| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |R_PackageEnvName|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("R_PackageEnvName" |R_PackageEnvName|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (|rho| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |R_IsPackageEnv|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("R_IsPackageEnv" |R_IsPackageEnv|) - |Rboolean| - (|rho| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |R_RestoreHashCount|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("R_RestoreHashCount" |R_RestoreHashCount|) - SB-ALIEN:VOID - (|rho| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |R_ToplevelExec|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("R_ToplevelExec" |R_ToplevelExec|) - |Rboolean| - (|fun| - (COMMON-LISP:* - (COMMON-LISP:FUNCTION SB-ALIEN:VOID - (COMMON-LISP:* COMMON-LISP:T)))) - (|data| (COMMON-LISP:* COMMON-LISP:T)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |R_RunWeakRefFinalizer|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE - ("R_RunWeakRefFinalizer" |R_RunWeakRefFinalizer|) - SB-ALIEN:VOID - (|w| (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |R_WeakRefValue|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("R_WeakRefValue" |R_WeakRefValue|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (|w| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |R_WeakRefKey|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("R_WeakRefKey" |R_WeakRefKey|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (|w| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (SB-ALIEN:DEFINE-ALIEN-TYPE |R_CFinalizer_t| - (COMMON-LISP:* - (COMMON-LISP:FUNCTION SB-ALIEN:VOID - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |R_MakeWeakRefC|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("R_MakeWeakRefC" |R_MakeWeakRefC|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (|key| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (|val| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (|fin| - (COMMON-LISP:* - (COMMON-LISP:FUNCTION SB-ALIEN:VOID - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) - (|onexit| |Rboolean|))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |R_MakeWeakRef|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("R_MakeWeakRef" |R_MakeWeakRef|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (|key| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (|val| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (|fin| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (|onexit| |Rboolean|))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |R_RegisterCFinalizerEx|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE - ("R_RegisterCFinalizerEx" |R_RegisterCFinalizerEx|) - SB-ALIEN:VOID - (|s| (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (|fun| - (COMMON-LISP:* - (COMMON-LISP:FUNCTION SB-ALIEN:VOID - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) - (|onexit| |Rboolean|))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |R_RegisterFinalizerEx|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE - ("R_RegisterFinalizerEx" |R_RegisterFinalizerEx|) - SB-ALIEN:VOID - (|s| (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (|fun| (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (|onexit| |Rboolean|))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |R_RegisterCFinalizer|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("R_RegisterCFinalizer" |R_RegisterCFinalizer|) - SB-ALIEN:VOID - (|s| (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (|fun| - (COMMON-LISP:* - (COMMON-LISP:FUNCTION SB-ALIEN:VOID - (COMMON-LISP:* - (SB-ALIEN:STRUCT SEXPREC))))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |R_RegisterFinalizer|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("R_RegisterFinalizer" |R_RegisterFinalizer|) - SB-ALIEN:VOID - (|s| (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (|fun| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |R_SetExternalPtrProtected|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE - ("R_SetExternalPtrProtected" |R_SetExternalPtrProtected|) - SB-ALIEN:VOID - (|s| (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (|p| (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |R_SetExternalPtrTag|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("R_SetExternalPtrTag" |R_SetExternalPtrTag|) - SB-ALIEN:VOID - (|s| (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (|tag| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |R_SetExternalPtrAddr|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("R_SetExternalPtrAddr" |R_SetExternalPtrAddr|) - SB-ALIEN:VOID - (|s| (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (|p| (COMMON-LISP:* COMMON-LISP:T)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |R_ClearExternalPtr|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("R_ClearExternalPtr" |R_ClearExternalPtr|) - SB-ALIEN:VOID - (|s| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |R_ExternalPtrProtected|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE - ("R_ExternalPtrProtected" |R_ExternalPtrProtected|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (|s| (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |R_ExternalPtrTag|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("R_ExternalPtrTag" |R_ExternalPtrTag|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (|s| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |R_ExternalPtrAddr|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("R_ExternalPtrAddr" |R_ExternalPtrAddr|) - (COMMON-LISP:* COMMON-LISP:T) - (|s| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |R_MakeExternalPtr|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("R_MakeExternalPtr" |R_MakeExternalPtr|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (|p| (COMMON-LISP:* COMMON-LISP:T)) - (|tag| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (|prot| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |R_subset3_dflt|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("R_subset3_dflt" |R_subset3_dflt|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (ARG2 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |R_subassign3_dflt|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("R_subassign3_dflt" |R_subassign3_dflt|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (ARG2 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (ARG3 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (ARG4 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (SB-ALIEN:DEFINE-ALIEN-TYPE PROTECT_INDEX SB-ALIEN:INT) - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |R_Reprotect|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("R_Reprotect" |R_Reprotect|) - SB-ALIEN:VOID - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (ARG2 SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |R_ProtectWithIndex|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("R_ProtectWithIndex" |R_ProtectWithIndex|) - SB-ALIEN:VOID - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (ARG2 (COMMON-LISP:* SB-ALIEN:INT)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_vectorSubscript|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_vectorSubscript" |Rf_vectorSubscript|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (ARG1 SB-ALIEN:INT) - (ARG2 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (ARG3 (COMMON-LISP:* SB-ALIEN:INT)) - (ARG4 - (COMMON-LISP:* - (COMMON-LISP:FUNCTION - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) - (ARG5 - (COMMON-LISP:* - (COMMON-LISP:FUNCTION - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - SB-ALIEN:INT))) - (ARG6 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_unprotect_ptr|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_unprotect_ptr" |Rf_unprotect_ptr|) - SB-ALIEN:VOID - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_unprotect|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_unprotect" |Rf_unprotect|) - SB-ALIEN:VOID - (ARG1 SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |R_tryEval|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("R_tryEval" |R_tryEval|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (|e| (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (|env| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (|ErrorOccurred| (COMMON-LISP:* SB-ALIEN:INT)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_substitute|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_substitute" |Rf_substitute|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (ARG2 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_StringBlank|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_StringBlank" |Rf_StringBlank|) - |Rboolean| - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_setVar|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_setVar" |Rf_setVar|) - SB-ALIEN:VOID - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (ARG2 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (ARG3 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_setSVector|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_setSVector" |Rf_setSVector|) - SB-ALIEN:VOID - (ARG1 - (COMMON-LISP:* - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)))) - (ARG2 SB-ALIEN:INT) - (ARG3 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_setAttrib|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_setAttrib" |Rf_setAttrib|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (ARG2 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (ARG3 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_rownamesgets|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_rownamesgets" |Rf_rownamesgets|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (ARG2 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_protect|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_protect" |Rf_protect|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_PrintValueRec|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_PrintValueRec" |Rf_PrintValueRec|) - SB-ALIEN:VOID - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (ARG2 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_PrintValueEnv|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_PrintValueEnv" |Rf_PrintValueEnv|) - SB-ALIEN:VOID - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (ARG2 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_PrintValue|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_PrintValue" |Rf_PrintValue|) - SB-ALIEN:VOID - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_PrintDefaults|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_PrintDefaults" |Rf_PrintDefaults|) - SB-ALIEN:VOID - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_psmatch|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_psmatch" |Rf_psmatch|) - |Rboolean| - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)) - (ARG2 (COMMON-LISP:* COMMON-LISP:CHAR)) - (ARG3 |Rboolean|))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_pmatch|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_pmatch" |Rf_pmatch|) - |Rboolean| - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (ARG2 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (ARG3 |Rboolean|))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_nthcdr|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_nthcdr" |Rf_nthcdr|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (ARG2 SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_nrows|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_nrows" |Rf_nrows|) - SB-ALIEN:INT - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_ncols|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_ncols" |Rf_ncols|) - SB-ALIEN:INT - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_NonNullStringMatch|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE - ("Rf_NonNullStringMatch" |Rf_NonNullStringMatch|) - |Rboolean| - (ARG1 (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (ARG2 (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_namesgets|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_namesgets" |Rf_namesgets|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (ARG2 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_matchPar|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_matchPar" |Rf_matchPar|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)) - (ARG2 - (COMMON-LISP:* - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_matchArgs|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_matchArgs" |Rf_matchArgs|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (ARG2 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_matchArgExact|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_matchArgExact" |Rf_matchArgExact|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (ARG2 - (COMMON-LISP:* - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_matchArg|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_matchArg" |Rf_matchArg|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (ARG2 - (COMMON-LISP:* - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_match|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_match" |Rf_match|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (ARG2 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (ARG3 SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_makeSubscript|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_makeSubscript" |Rf_makeSubscript|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (ARG2 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (ARG3 (COMMON-LISP:* SB-ALIEN:INT)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |R_lsInternal|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("R_lsInternal" |R_lsInternal|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (ARG2 |Rboolean|))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_lengthgets|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_lengthgets" |Rf_lengthgets|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (ARG2 SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_ItemName|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_ItemName" |Rf_ItemName|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (ARG2 SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_isUnsorted|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_isUnsorted" |Rf_isUnsorted|) - |Rboolean| - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_isFunction|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_isFunction" |Rf_isFunction|) - |Rboolean| - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_isFree|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_isFree" |Rf_isFree|) - |Rboolean| - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_install|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_install" |Rf_install|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_gsetVar|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_gsetVar" |Rf_gsetVar|) - SB-ALIEN:VOID - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (ARG2 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (ARG3 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_GetRowNames|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_GetRowNames" |Rf_GetRowNames|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_GetOptionWidth|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_GetOptionWidth" |Rf_GetOptionWidth|) - SB-ALIEN:INT - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_GetOptionDigits|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_GetOptionDigits" |Rf_GetOptionDigits|) - SB-ALIEN:INT - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_GetOption|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_GetOption" |Rf_GetOption|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (ARG2 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_GetMatrixDimnames|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_GetMatrixDimnames" |Rf_GetMatrixDimnames|) - SB-ALIEN:VOID - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (ARG2 - (COMMON-LISP:* - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)))) - (ARG3 - (COMMON-LISP:* - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)))) - (ARG4 - (COMMON-LISP:* - (COMMON-LISP:* COMMON-LISP:CHAR))) - (ARG5 - (COMMON-LISP:* - (COMMON-LISP:* COMMON-LISP:CHAR))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_GetColNames|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_GetColNames" |Rf_GetColNames|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_GetArrayDimnames|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_GetArrayDimnames" |Rf_GetArrayDimnames|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_getAttrib|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_getAttrib" |Rf_getAttrib|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (ARG2 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_findVarInFrame3|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_findVarInFrame3" |Rf_findVarInFrame3|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (ARG2 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (ARG3 |Rboolean|))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_findVarInFrame|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_findVarInFrame" |Rf_findVarInFrame|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (ARG2 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_findVar|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_findVar" |Rf_findVar|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (ARG2 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_findFun|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_findFun" |Rf_findFun|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (ARG2 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_evalListKeepMissing|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE - ("Rf_evalListKeepMissing" |Rf_evalListKeepMissing|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (ARG1 (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (ARG2 (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_evalList|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_evalList" |Rf_evalList|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (ARG2 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_EvalArgs|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_EvalArgs" |Rf_EvalArgs|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (ARG2 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (ARG3 SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_eval|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_eval" |Rf_eval|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (ARG2 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_duplicated|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_duplicated" |Rf_duplicated|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_duplicate|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_duplicate" |Rf_duplicate|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_DropDims|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_DropDims" |Rf_DropDims|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_dimnamesgets|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_dimnamesgets" |Rf_dimnamesgets|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (ARG2 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_dimgets|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_dimgets" |Rf_dimgets|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (ARG2 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_defineVar|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_defineVar" |Rf_defineVar|) - SB-ALIEN:VOID - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (ARG2 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (ARG3 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_CustomPrintValue|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_CustomPrintValue" |Rf_CustomPrintValue|) - SB-ALIEN:VOID - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (ARG2 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_CreateTag|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_CreateTag" |Rf_CreateTag|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_copyVector|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_copyVector" |Rf_copyVector|) - SB-ALIEN:VOID - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (ARG2 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_copyMostAttribNoTs|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE - ("Rf_copyMostAttribNoTs" |Rf_copyMostAttribNoTs|) - SB-ALIEN:VOID - (ARG1 (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (ARG2 (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_copyMostAttrib|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_copyMostAttrib" |Rf_copyMostAttrib|) - SB-ALIEN:VOID - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (ARG2 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_copyMatrix|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_copyMatrix" |Rf_copyMatrix|) - SB-ALIEN:VOID - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (ARG2 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (ARG3 |Rboolean|))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_copyListMatrix|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_copyListMatrix" |Rf_copyListMatrix|) - SB-ALIEN:VOID - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (ARG2 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (ARG3 |Rboolean|))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_cons|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_cons" |Rf_cons|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (ARG2 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_classgets|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_classgets" |Rf_classgets|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (ARG2 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_asVecSize|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_asVecSize" |Rf_asVecSize|) - SB-ALIEN:INT - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_arraySubscript|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_arraySubscript" |Rf_arraySubscript|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (ARG1 SB-ALIEN:INT) - (ARG2 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (ARG3 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (ARG4 - (COMMON-LISP:* - (COMMON-LISP:FUNCTION - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) - (ARG5 - (COMMON-LISP:* - (COMMON-LISP:FUNCTION - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - SB-ALIEN:INT))) - (ARG6 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_applyClosure|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_applyClosure" |Rf_applyClosure|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (ARG2 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (ARG3 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (ARG4 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (ARG5 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (SB-ALIEN:DEFINE-ALIEN-TYPE SEXPTYPE SB-ALIEN:UNSIGNED-INT) - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_allocVector|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_allocVector" |Rf_allocVector|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (ARG1 SB-ALIEN:UNSIGNED-INT) - (ARG2 SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_allocSExp|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_allocSExp" |Rf_allocSExp|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (ARG1 SB-ALIEN:UNSIGNED-INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_allocList|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_allocList" |Rf_allocList|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (ARG1 SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_allocMatrix|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_allocMatrix" |Rf_allocMatrix|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (ARG1 SB-ALIEN:UNSIGNED-INT) - (ARG2 SB-ALIEN:INT) - (ARG3 SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_allocArray|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_allocArray" |Rf_allocArray|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (ARG1 SB-ALIEN:UNSIGNED-INT) - (ARG2 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_EnsureString|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_EnsureString" |Rf_EnsureString|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_StringFromComplex|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_StringFromComplex" |Rf_StringFromComplex|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (ARG1 (SB-ALIEN:STRUCT |Rcomplex|)) - (ARG2 (COMMON-LISP:* SB-ALIEN:INT)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_StringFromReal|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_StringFromReal" |Rf_StringFromReal|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (ARG1 SB-ALIEN:DOUBLE) - (ARG2 (COMMON-LISP:* SB-ALIEN:INT)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_StringFromInteger|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_StringFromInteger" |Rf_StringFromInteger|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (ARG1 SB-ALIEN:INT) - (ARG2 (COMMON-LISP:* SB-ALIEN:INT)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_StringFromLogical|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_StringFromLogical" |Rf_StringFromLogical|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (ARG1 SB-ALIEN:INT) - (ARG2 (COMMON-LISP:* SB-ALIEN:INT)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_ComplexFromString|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_ComplexFromString" |Rf_ComplexFromString|) - (SB-ALIEN:STRUCT |Rcomplex|) - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (ARG2 (COMMON-LISP:* SB-ALIEN:INT)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_ComplexFromReal|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_ComplexFromReal" |Rf_ComplexFromReal|) - (SB-ALIEN:STRUCT |Rcomplex|) - (ARG1 SB-ALIEN:DOUBLE) - (ARG2 (COMMON-LISP:* SB-ALIEN:INT)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_ComplexFromInteger|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE - ("Rf_ComplexFromInteger" |Rf_ComplexFromInteger|) - (SB-ALIEN:STRUCT |Rcomplex|) - (ARG1 SB-ALIEN:INT) - (ARG2 (COMMON-LISP:* SB-ALIEN:INT)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_ComplexFromLogical|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE - ("Rf_ComplexFromLogical" |Rf_ComplexFromLogical|) - (SB-ALIEN:STRUCT |Rcomplex|) - (ARG1 SB-ALIEN:INT) - (ARG2 (COMMON-LISP:* SB-ALIEN:INT)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_RealFromString|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_RealFromString" |Rf_RealFromString|) - SB-ALIEN:DOUBLE - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (ARG2 (COMMON-LISP:* SB-ALIEN:INT)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_RealFromComplex|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_RealFromComplex" |Rf_RealFromComplex|) - SB-ALIEN:DOUBLE - (ARG1 (SB-ALIEN:STRUCT |Rcomplex|)) - (ARG2 (COMMON-LISP:* SB-ALIEN:INT)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_RealFromInteger|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_RealFromInteger" |Rf_RealFromInteger|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:INT) - (ARG2 (COMMON-LISP:* SB-ALIEN:INT)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_RealFromLogical|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_RealFromLogical" |Rf_RealFromLogical|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:INT) - (ARG2 (COMMON-LISP:* SB-ALIEN:INT)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_IntegerFromString|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_IntegerFromString" |Rf_IntegerFromString|) - SB-ALIEN:INT - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (ARG2 (COMMON-LISP:* SB-ALIEN:INT)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_IntegerFromComplex|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE - ("Rf_IntegerFromComplex" |Rf_IntegerFromComplex|) - SB-ALIEN:INT - (ARG1 (SB-ALIEN:STRUCT |Rcomplex|)) - (ARG2 (COMMON-LISP:* SB-ALIEN:INT)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_IntegerFromReal|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_IntegerFromReal" |Rf_IntegerFromReal|) - SB-ALIEN:INT - (ARG1 SB-ALIEN:DOUBLE) - (ARG2 (COMMON-LISP:* SB-ALIEN:INT)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_IntegerFromLogical|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE - ("Rf_IntegerFromLogical" |Rf_IntegerFromLogical|) - SB-ALIEN:INT - (ARG1 SB-ALIEN:INT) - (ARG2 (COMMON-LISP:* SB-ALIEN:INT)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_LogicalFromString|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_LogicalFromString" |Rf_LogicalFromString|) - SB-ALIEN:INT - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (ARG2 (COMMON-LISP:* SB-ALIEN:INT)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_LogicalFromComplex|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE - ("Rf_LogicalFromComplex" |Rf_LogicalFromComplex|) - SB-ALIEN:INT - (ARG1 (SB-ALIEN:STRUCT |Rcomplex|)) - (ARG2 (COMMON-LISP:* SB-ALIEN:INT)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_LogicalFromReal|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_LogicalFromReal" |Rf_LogicalFromReal|) - SB-ALIEN:INT - (ARG1 SB-ALIEN:DOUBLE) - (ARG2 (COMMON-LISP:* SB-ALIEN:INT)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_LogicalFromInteger|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE - ("Rf_LogicalFromInteger" |Rf_LogicalFromInteger|) - SB-ALIEN:INT - (ARG1 SB-ALIEN:INT) - (ARG2 (COMMON-LISP:* SB-ALIEN:INT)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_VectorToPairList|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_VectorToPairList" |Rf_VectorToPairList|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (|x| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_PairToVectorList|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_PairToVectorList" |Rf_PairToVectorList|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (|x| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_CoercionWarning|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_CoercionWarning" |Rf_CoercionWarning|) - SB-ALIEN:VOID - (ARG1 SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_coerceList|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_coerceList" |Rf_coerceList|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (ARG2 SB-ALIEN:UNSIGNED-INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_coerceVector|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_coerceVector" |Rf_coerceVector|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (ARG2 SB-ALIEN:UNSIGNED-INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_ascommon|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_ascommon" |Rf_ascommon|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (ARG2 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (ARG3 SB-ALIEN:UNSIGNED-INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_asChar|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_asChar" |Rf_asChar|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(SB-ALIEN:DEFINE-ALIEN-VARIABLE ("R_BlankString" |R_BlankString|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) -(SB-ALIEN:DEFINE-ALIEN-VARIABLE ("R_NaString" |R_NaString|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) -(SB-ALIEN:DEFINE-ALIEN-VARIABLE ("R_UseNamesSymbol" |R_UseNamesSymbol|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) -(SB-ALIEN:DEFINE-ALIEN-VARIABLE ("R_RecursiveSymbol" |R_RecursiveSymbol|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) -(SB-ALIEN:DEFINE-ALIEN-VARIABLE ("R_DotEnvSymbol" |R_DotEnvSymbol|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) -(SB-ALIEN:DEFINE-ALIEN-VARIABLE ("R_SourceSymbol" |R_SourceSymbol|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) -(SB-ALIEN:DEFINE-ALIEN-VARIABLE ("R_CommentSymbol" |R_CommentSymbol|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) -(SB-ALIEN:DEFINE-ALIEN-VARIABLE ("R_LastvalueSymbol" |R_LastvalueSymbol|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) -(SB-ALIEN:DEFINE-ALIEN-VARIABLE ("R_TspSymbol" |R_TspSymbol|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) -(SB-ALIEN:DEFINE-ALIEN-VARIABLE ("R_SeedsSymbol" |R_SeedsSymbol|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) -(SB-ALIEN:DEFINE-ALIEN-VARIABLE ("R_RowNamesSymbol" |R_RowNamesSymbol|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) -(SB-ALIEN:DEFINE-ALIEN-VARIABLE ("R_NaRmSymbol" |R_NaRmSymbol|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) -(SB-ALIEN:DEFINE-ALIEN-VARIABLE ("R_NamesSymbol" |R_NamesSymbol|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) -(SB-ALIEN:DEFINE-ALIEN-VARIABLE ("R_ModeSymbol" |R_ModeSymbol|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) -(SB-ALIEN:DEFINE-ALIEN-VARIABLE ("R_LevelsSymbol" |R_LevelsSymbol|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) -(SB-ALIEN:DEFINE-ALIEN-VARIABLE ("R_DropSymbol" |R_DropSymbol|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) -(SB-ALIEN:DEFINE-ALIEN-VARIABLE ("R_DotsSymbol" |R_DotsSymbol|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) -(SB-ALIEN:DEFINE-ALIEN-VARIABLE ("R_DollarSymbol" |R_DollarSymbol|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) -(SB-ALIEN:DEFINE-ALIEN-VARIABLE ("R_DimSymbol" |R_DimSymbol|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) -(SB-ALIEN:DEFINE-ALIEN-VARIABLE ("R_DimNamesSymbol" |R_DimNamesSymbol|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) -(SB-ALIEN:DEFINE-ALIEN-VARIABLE ("R_ClassSymbol" |R_ClassSymbol|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) -(SB-ALIEN:DEFINE-ALIEN-VARIABLE ("R_TmpvalSymbol" |R_TmpvalSymbol|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) -(SB-ALIEN:DEFINE-ALIEN-VARIABLE ("R_BraceSymbol" |R_BraceSymbol|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) -(SB-ALIEN:DEFINE-ALIEN-VARIABLE ("R_BracketSymbol" |R_BracketSymbol|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) -(SB-ALIEN:DEFINE-ALIEN-VARIABLE ("R_Bracket2Symbol" |R_Bracket2Symbol|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) -(SB-ALIEN:DEFINE-ALIEN-VARIABLE ("R_RestartToken" |R_RestartToken|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) -(SB-ALIEN:DEFINE-ALIEN-VARIABLE ("R_MissingArg" |R_MissingArg|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) -(SB-ALIEN:DEFINE-ALIEN-VARIABLE ("R_UnboundValue" |R_UnboundValue|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) -(SB-ALIEN:DEFINE-ALIEN-VARIABLE ("R_NilValue" |R_NilValue|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) -(SB-ALIEN:DEFINE-ALIEN-VARIABLE ("R_NamespaceRegistry" |R_NamespaceRegistry|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) -(SB-ALIEN:DEFINE-ALIEN-VARIABLE ("R_BaseNamespace" |R_BaseNamespace|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) -(SB-ALIEN:DEFINE-ALIEN-VARIABLE ("R_BaseEnv" |R_BaseEnv|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) -(SB-ALIEN:DEFINE-ALIEN-VARIABLE ("R_EmptyEnv" |R_EmptyEnv|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) -(SB-ALIEN:DEFINE-ALIEN-VARIABLE ("R_GlobalEnv" |R_GlobalEnv|) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE SET_HASHVALUE)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("SET_HASHVALUE" SET_HASHVALUE) - SB-ALIEN:VOID - (|x| (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (|v| SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE SET_HASHASH)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("SET_HASHASH" SET_HASHASH) - SB-ALIEN:VOID - (|x| (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (|v| SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE HASHVALUE)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("HASHVALUE" HASHVALUE) - SB-ALIEN:INT - (|x| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE HASHASH)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("HASHASH" HASHASH) - SB-ALIEN:INT - (|x| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE SET_PRCODE)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("SET_PRCODE" SET_PRCODE) - SB-ALIEN:VOID - (|x| (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (|v| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE SET_PRVALUE)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("SET_PRVALUE" SET_PRVALUE) - SB-ALIEN:VOID - (|x| (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (|v| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE SET_PRENV)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("SET_PRENV" SET_PRENV) - SB-ALIEN:VOID - (|x| (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (|v| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE SET_PRSEEN)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("SET_PRSEEN" SET_PRSEEN) - SB-ALIEN:VOID - (|x| (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (|v| SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE PRSEEN)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("PRSEEN" PRSEEN) - SB-ALIEN:INT - (|x| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE PRVALUE)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("PRVALUE" PRVALUE) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (|x| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE PRENV)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("PRENV" PRENV) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (|x| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE PRCODE)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("PRCODE" PRCODE) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (|x| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE SET_HASHTAB)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("SET_HASHTAB" SET_HASHTAB) - SB-ALIEN:VOID - (|x| (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (|v| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE SET_ENCLOS)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("SET_ENCLOS" SET_ENCLOS) - SB-ALIEN:VOID - (|x| (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (|v| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE SET_FRAME)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("SET_FRAME" SET_FRAME) - SB-ALIEN:VOID - (|x| (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (|v| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE SET_ENVFLAGS)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("SET_ENVFLAGS" SET_ENVFLAGS) - SB-ALIEN:VOID - (|x| (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (|v| SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE ENVFLAGS)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("ENVFLAGS" ENVFLAGS) - SB-ALIEN:INT - (|x| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE HASHTAB)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("HASHTAB" HASHTAB) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (|x| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE ENCLOS)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("ENCLOS" ENCLOS) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (|x| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE FRAME)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("FRAME" FRAME) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (|x| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE SET_INTERNAL)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("SET_INTERNAL" SET_INTERNAL) - SB-ALIEN:VOID - (|x| (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (|v| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE SET_SYMVALUE)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("SET_SYMVALUE" SET_SYMVALUE) - SB-ALIEN:VOID - (|x| (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (|v| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE SET_PRINTNAME)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("SET_PRINTNAME" SET_PRINTNAME) - SB-ALIEN:VOID - (|x| (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (|v| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE SET_DDVAL)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("SET_DDVAL" SET_DDVAL) - SB-ALIEN:VOID - (|x| (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (|v| SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE DDVAL)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("DDVAL" DDVAL) - SB-ALIEN:INT - (|x| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE INTERNAL)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("INTERNAL" INTERNAL) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (|x| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE SYMVALUE)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("SYMVALUE" SYMVALUE) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (|x| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE PRINTNAME)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("PRINTNAME" PRINTNAME) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (|x| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE SET_CLOENV)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("SET_CLOENV" SET_CLOENV) - SB-ALIEN:VOID - (|x| (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (|v| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE SET_BODY)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("SET_BODY" SET_BODY) - SB-ALIEN:VOID - (|x| (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (|v| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE SET_FORMALS)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("SET_FORMALS" SET_FORMALS) - SB-ALIEN:VOID - (|x| (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (|v| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE SET_TRACE)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("SET_TRACE" SET_TRACE) - SB-ALIEN:VOID - (|x| (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (|v| SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE SET_DEBUG)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("SET_DEBUG" SET_DEBUG) - SB-ALIEN:VOID - (|x| (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (|v| SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE TRACE)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("TRACE" TRACE) - SB-ALIEN:INT - (|x| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE DEBUG)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("DEBUG" DEBUG) - SB-ALIEN:INT - (|x| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE CLOENV)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("CLOENV" CLOENV) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (|x| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE BODY)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("BODY" BODY) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (|x| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE FORMALS)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("FORMALS" FORMALS) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (|x| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE SETCAD4R)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("SETCAD4R" SETCAD4R) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (|e| (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (|y| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE SETCADDDR)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("SETCADDDR" SETCADDDR) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (|x| (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (|y| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE SETCADDR)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("SETCADDR" SETCADDR) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (|x| (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (|y| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE SETCADR)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("SETCADR" SETCADR) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (|x| (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (|y| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE SETCDR)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("SETCDR" SETCDR) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (|x| (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (|y| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE SETCAR)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("SETCAR" SETCAR) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (|x| (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (|y| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE SET_TAG)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("SET_TAG" SET_TAG) - SB-ALIEN:VOID - (|x| (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (|y| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE SET_MISSING)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("SET_MISSING" SET_MISSING) - SB-ALIEN:VOID - (|x| (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (|v| SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE MISSING)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("MISSING" MISSING) - SB-ALIEN:INT - (|x| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE CAD4R)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("CAD4R" CAD4R) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (|e| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE CADDDR)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("CADDDR" CADDDR) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (|e| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE CADDR)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("CADDR" CADDR) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (|e| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE CDDR)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("CDDR" CDDR) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (|e| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE CADR)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("CADR" CADR) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (|e| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE CDAR)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("CDAR" CDAR) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (|e| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE CAAR)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("CAAR" CAAR) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (|e| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE CDR)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("CDR" CDR) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (|e| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE CAR)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("CAR" CAR) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (|e| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE TAG)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("TAG" TAG) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (|e| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE VECTOR_PTR)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("VECTOR_PTR" VECTOR_PTR) - (COMMON-LISP:* - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (|x| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE STRING_PTR)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("STRING_PTR" STRING_PTR) - (COMMON-LISP:* - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (|x| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE SET_VECTOR_ELT)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("SET_VECTOR_ELT" SET_VECTOR_ELT) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (|x| (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (|i| SB-ALIEN:INT) - (|v| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE SET_STRING_ELT)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("SET_STRING_ELT" SET_STRING_ELT) - SB-ALIEN:VOID - (|x| (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (|i| SB-ALIEN:INT) - (|v| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE VECTOR_ELT)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("VECTOR_ELT" VECTOR_ELT) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (|x| (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (|i| SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE STRING_ELT)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("STRING_ELT" STRING_ELT) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (|x| (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (|i| SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE COMPLEX)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("COMPLEX" COMPLEX) - (COMMON-LISP:* (SB-ALIEN:STRUCT |Rcomplex|)) - (|x| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE REAL)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("REAL" REAL) - (COMMON-LISP:* SB-ALIEN:DOUBLE) - (|x| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE RAW)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("RAW" RAW) - (COMMON-LISP:* SB-ALIEN:UNSIGNED-CHAR) - (|x| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE INTEGER)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("INTEGER" INTEGER) - (COMMON-LISP:* SB-ALIEN:INT) - (|x| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE LOGICAL)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("LOGICAL" LOGICAL) - (COMMON-LISP:* SB-ALIEN:INT) - (|x| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE SETLEVELS)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("SETLEVELS" SETLEVELS) - SB-ALIEN:INT - (|x| (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (|v| SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE LEVELS)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("LEVELS" LEVELS) - SB-ALIEN:INT - (|x| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE SET_TRUELENGTH)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("SET_TRUELENGTH" SET_TRUELENGTH) - SB-ALIEN:VOID - (|x| (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (|v| SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE SETLENGTH)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("SETLENGTH" SETLENGTH) - SB-ALIEN:VOID - (|x| (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (|v| SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE TRUELENGTH)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("TRUELENGTH" TRUELENGTH) - SB-ALIEN:INT - (|x| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE LENGTH)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("LENGTH" LENGTH) - SB-ALIEN:INT - (|x| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE SET_ATTRIB)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("SET_ATTRIB" SET_ATTRIB) - SB-ALIEN:VOID - (|x| (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (|v| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE SET_NAMED)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("SET_NAMED" SET_NAMED) - SB-ALIEN:VOID - (|x| (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (|v| SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE SET_TYPEOF)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("SET_TYPEOF" SET_TYPEOF) - SB-ALIEN:VOID - (|x| (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (|v| SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE SET_OBJECT)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("SET_OBJECT" SET_OBJECT) - SB-ALIEN:VOID - (|x| (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))) - (|v| SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE NAMED)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("NAMED" NAMED) - SB-ALIEN:INT - (|x| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE TYPEOF)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("TYPEOF" TYPEOF) - SB-ALIEN:INT - (|x| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE MARK)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("MARK" MARK) - SB-ALIEN:INT - (|x| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE OBJECT)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("OBJECT" OBJECT) - SB-ALIEN:INT - (|x| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE ATTRIB)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("ATTRIB" ATTRIB) - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC)) - (|x| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE R_CHAR)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("R_CHAR" R_CHAR) - (COMMON-LISP:* COMMON-LISP:CHAR) - (|x| - (COMMON-LISP:* (SB-ALIEN:STRUCT SEXPREC))))) -(COMMON-LISP:PROGN - (SB-ALIEN:DEFINE-ALIEN-TYPE |__darwin_ct_rune_t| SB-ALIEN:INT) - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |__wcwidth|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("__wcwidth" |__wcwidth|) - SB-ALIEN:INT - (|_c| SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |__tolower|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("__tolower" |__tolower|) - SB-ALIEN:INT - (ARG1 SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |__toupper|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("__toupper" |__toupper|) - SB-ALIEN:INT - (ARG1 SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |__isctype|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("__isctype" |__isctype|) - SB-ALIEN:INT - (|_c| SB-ALIEN:INT) - (|_f| SB-ALIEN:UNSIGNED-LONG))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |__istype|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("__istype" |__istype|) - SB-ALIEN:INT - (|_c| SB-ALIEN:INT) - (|_f| SB-ALIEN:UNSIGNED-LONG))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |__maskrune|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("__maskrune" |__maskrune|) - SB-ALIEN:INT - (ARG1 SB-ALIEN:INT) - (ARG2 SB-ALIEN:UNSIGNED-LONG))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |___toupper|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("___toupper" |___toupper|) - SB-ALIEN:INT - (ARG1 SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |___tolower|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("___tolower" |___tolower|) - SB-ALIEN:INT - (ARG1 SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |___runetype|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("___runetype" |___runetype|) - SB-ALIEN:UNSIGNED-LONG - (ARG1 SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |isspecial|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("isspecial" |isspecial|) - SB-ALIEN:INT - (ARG1 SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |isrune|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("isrune" |isrune|) - SB-ALIEN:INT - (ARG1 SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |isphonogram|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("isphonogram" |isphonogram|) - SB-ALIEN:INT - (ARG1 SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |isnumber|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("isnumber" |isnumber|) - SB-ALIEN:INT - (ARG1 SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |isideogram|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("isideogram" |isideogram|) - SB-ALIEN:INT - (ARG1 SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |ishexnumber|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("ishexnumber" |ishexnumber|) - SB-ALIEN:INT - (ARG1 SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |digittoint|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("digittoint" |digittoint|) - SB-ALIEN:INT - (ARG1 SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |_toupper|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("_toupper" |_toupper|) - SB-ALIEN:INT - (ARG1 SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |_tolower|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("_tolower" |_tolower|) - SB-ALIEN:INT - (ARG1 SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |toascii|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("toascii" |toascii|) - SB-ALIEN:INT - (ARG1 SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |isascii|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("isascii" |isascii|) - SB-ALIEN:INT - (ARG1 SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |toupper|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("toupper" |toupper|) - SB-ALIEN:INT - (ARG1 SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |tolower|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("tolower" |tolower|) - SB-ALIEN:INT - (ARG1 SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |isxdigit|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("isxdigit" |isxdigit|) - SB-ALIEN:INT - (ARG1 SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |isupper|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("isupper" |isupper|) - SB-ALIEN:INT - (ARG1 SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |isspace|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("isspace" |isspace|) - SB-ALIEN:INT - (ARG1 SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |ispunct|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("ispunct" |ispunct|) - SB-ALIEN:INT - (ARG1 SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |isprint|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("isprint" |isprint|) - SB-ALIEN:INT - (ARG1 SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |islower|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("islower" |islower|) - SB-ALIEN:INT - (ARG1 SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |isgraph|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("isgraph" |isgraph|) - SB-ALIEN:INT - (ARG1 SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |isdigit|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("isdigit" |isdigit|) - SB-ALIEN:INT - (ARG1 SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |iscntrl|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("iscntrl" |iscntrl|) - SB-ALIEN:INT - (ARG1 SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |isblank|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("isblank" |isblank|) - SB-ALIEN:INT - (ARG1 SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |isalpha|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("isalpha" |isalpha|) - SB-ALIEN:INT - (ARG1 SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |isalnum|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("isalnum" |isalnum|) - SB-ALIEN:INT - (ARG1 SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:PROGN - (COMMON-LISP:PROGN - (COMMON-LISP:PROGN - (SB-ALIEN:DEFINE-ALIEN-TYPE |__darwin_wchar_t| SB-ALIEN:INT) - (SB-ALIEN:DEFINE-ALIEN-TYPE |__darwin_rune_t| SB-ALIEN:INT)) - (COMMON-LISP:PROGN - (SB-ALIEN:DEFINE-ALIEN-TYPE |__uint32_t| SB-ALIEN:UNSIGNED-INT)) - (SB-ALIEN:DEFINE-ALIEN-TYPE |_RuneRange| - (SB-ALIEN:STRUCT |_RuneRange| - (|__nranges| SB-ALIEN:INT - :ALIGNMENT - 8) - (|__ranges| - (COMMON-LISP:* - (SB-ALIEN:STRUCT - |_RuneEntry|)) - :ALIGNMENT - 32))) - (SB-ALIEN:DEFINE-ALIEN-TYPE |_RuneLocale| - (SB-ALIEN:STRUCT |_RuneLocale| - (|__magic| - (COMMON-LISP:ARRAY - COMMON-LISP:CHAR - 8) - :ALIGNMENT - 8) - (|__encoding| - (COMMON-LISP:ARRAY - COMMON-LISP:CHAR - 32) - :ALIGNMENT - 64) - (|__sgetrune| - (COMMON-LISP:* - (COMMON-LISP:FUNCTION - SB-ALIEN:INT - (COMMON-LISP:* - COMMON-LISP:CHAR) - SB-ALIEN:UNSIGNED-LONG - (COMMON-LISP:* - (COMMON-LISP:* - COMMON-LISP:CHAR)))) - :ALIGNMENT - 64) - (|__sputrune| - (COMMON-LISP:* - (COMMON-LISP:FUNCTION - SB-ALIEN:INT SB-ALIEN:INT - (COMMON-LISP:* - COMMON-LISP:CHAR) - SB-ALIEN:UNSIGNED-LONG - (COMMON-LISP:* - (COMMON-LISP:* - COMMON-LISP:CHAR)))) - :ALIGNMENT - 32) - (|__invalid_rune| SB-ALIEN:INT - :ALIGNMENT - 64) - (|__runetype| - (COMMON-LISP:ARRAY - SB-ALIEN:UNSIGNED-INT - 256) - :ALIGNMENT - 32) - (|__maplower| - (COMMON-LISP:ARRAY - SB-ALIEN:INT - 256) - :ALIGNMENT - 32) - (|__mapupper| - (COMMON-LISP:ARRAY - SB-ALIEN:INT - 256) - :ALIGNMENT - 32) - (|__runetype_ext| - (SB-ALIEN:STRUCT |_RuneRange|) - :ALIGNMENT - 32) - (|__maplower_ext| - (SB-ALIEN:STRUCT |_RuneRange|) - :ALIGNMENT - 32) - (|__mapupper_ext| - (SB-ALIEN:STRUCT |_RuneRange|) - :ALIGNMENT - 32) - (|__variable| - (COMMON-LISP:* COMMON-LISP:T) - :ALIGNMENT - 32) - (|__variable_len| SB-ALIEN:INT - :ALIGNMENT - 64))))) - (SB-ALIEN:DEFINE-ALIEN-VARIABLE ("_CurrentRuneLocale" |_CurrentRuneLocale|) - (COMMON-LISP:* - (SB-ALIEN:STRUCT |_RuneLocale|)))) -(SB-ALIEN:DEFINE-ALIEN-VARIABLE ("_DefaultRuneLocale" |_DefaultRuneLocale|) - (SB-ALIEN:STRUCT |_RuneLocale|)) -(SB-ALIEN:DEFINE-ALIEN-TYPE |_RuneEntry| - (SB-ALIEN:STRUCT |_RuneEntry| - (|__min| SB-ALIEN:INT - :ALIGNMENT - 8) - (|__max| SB-ALIEN:INT - :ALIGNMENT - 32) - (|__map| SB-ALIEN:INT - :ALIGNMENT - 64) - (|__types| - (COMMON-LISP:* - SB-ALIEN:UNSIGNED-INT) - :ALIGNMENT - 32))) -(COMMON-LISP:PROGN - (SB-ALIEN:DEFINE-ALIEN-TYPE |__darwin_wint_t| SB-ALIEN:INT) - (SB-ALIEN:DEFINE-ALIEN-TYPE |wint_t| SB-ALIEN:INT)) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |__error|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("__error" |__error|) - (COMMON-LISP:* SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_printComplexVector|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE - ("Rf_printComplexVector" |Rf_printComplexVector|) - SB-ALIEN:VOID - (|x| (COMMON-LISP:* (SB-ALIEN:STRUCT |Rcomplex|))) - (|n| SB-ALIEN:INT) - (|indx| SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_printRealVector|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_printRealVector" |Rf_printRealVector|) - SB-ALIEN:VOID - (|x| (COMMON-LISP:* SB-ALIEN:DOUBLE)) - (|n| SB-ALIEN:INT) - (|indx| SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_printIntegerVector|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE - ("Rf_printIntegerVector" |Rf_printIntegerVector|) - SB-ALIEN:VOID - (|x| (COMMON-LISP:* SB-ALIEN:INT)) - (|n| SB-ALIEN:INT) - (|indx| SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |printLogicalVector|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("printLogicalVector" |printLogicalVector|) - SB-ALIEN:VOID - (|x| (COMMON-LISP:* SB-ALIEN:INT)) - (|n| SB-ALIEN:INT) - (|indx| SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_VectorIndex|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_VectorIndex" |Rf_VectorIndex|) - SB-ALIEN:VOID - (ARG1 SB-ALIEN:INT) - (ARG2 SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_EncodeComplex|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_EncodeComplex" |Rf_EncodeComplex|) - (COMMON-LISP:* COMMON-LISP:CHAR) - (ARG1 (SB-ALIEN:STRUCT |Rcomplex|)) - (ARG2 SB-ALIEN:INT) - (ARG3 SB-ALIEN:INT) - (ARG4 SB-ALIEN:INT) - (ARG5 SB-ALIEN:INT) - (ARG6 SB-ALIEN:INT) - (ARG7 SB-ALIEN:INT) - (ARG8 COMMON-LISP:CHAR))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_EncodeReal|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_EncodeReal" |Rf_EncodeReal|) - (COMMON-LISP:* COMMON-LISP:CHAR) - (ARG1 SB-ALIEN:DOUBLE) - (ARG2 SB-ALIEN:INT) - (ARG3 SB-ALIEN:INT) - (ARG4 SB-ALIEN:INT) - (ARG5 COMMON-LISP:CHAR))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_EncodeInteger|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_EncodeInteger" |Rf_EncodeInteger|) - (COMMON-LISP:* COMMON-LISP:CHAR) - (ARG1 SB-ALIEN:INT) - (ARG2 SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_EncodeLogical|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_EncodeLogical" |Rf_EncodeLogical|) - (COMMON-LISP:* COMMON-LISP:CHAR) - (ARG1 SB-ALIEN:INT) - (ARG2 SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_formatComplex|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_formatComplex" |Rf_formatComplex|) - SB-ALIEN:VOID - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT |Rcomplex|))) - (ARG2 SB-ALIEN:INT) - (ARG3 (COMMON-LISP:* SB-ALIEN:INT)) - (ARG4 (COMMON-LISP:* SB-ALIEN:INT)) - (ARG5 (COMMON-LISP:* SB-ALIEN:INT)) - (ARG6 (COMMON-LISP:* SB-ALIEN:INT)) - (ARG7 (COMMON-LISP:* SB-ALIEN:INT)) - (ARG8 (COMMON-LISP:* SB-ALIEN:INT)) - (ARG9 SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_formatReal|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_formatReal" |Rf_formatReal|) - SB-ALIEN:VOID - (ARG1 (COMMON-LISP:* SB-ALIEN:DOUBLE)) - (ARG2 SB-ALIEN:INT) - (ARG3 (COMMON-LISP:* SB-ALIEN:INT)) - (ARG4 (COMMON-LISP:* SB-ALIEN:INT)) - (ARG5 (COMMON-LISP:* SB-ALIEN:INT)) - (ARG6 SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_formatInteger|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_formatInteger" |Rf_formatInteger|) - SB-ALIEN:VOID - (ARG1 (COMMON-LISP:* SB-ALIEN:INT)) - (ARG2 SB-ALIEN:INT) - (ARG3 (COMMON-LISP:* SB-ALIEN:INT)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_formatLogical|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_formatLogical" |Rf_formatLogical|) - SB-ALIEN:VOID - (ARG1 (COMMON-LISP:* SB-ALIEN:INT)) - (ARG2 SB-ALIEN:INT) - (ARG3 (COMMON-LISP:* SB-ALIEN:INT)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |R_ProcessEvents|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("R_ProcessEvents" |R_ProcessEvents|) - SB-ALIEN:VOID)) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |R_FlushConsole|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("R_FlushConsole" |R_FlushConsole|) - SB-ALIEN:VOID)) -(SB-ALIEN:DEFINE-ALIEN-TYPE |Sint| SB-ALIEN:INT) -(SB-ALIEN:DEFINE-ALIEN-TYPE |Sfloat| SB-ALIEN:DOUBLE) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |call_R|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("call_R" |call_R|) - SB-ALIEN:VOID - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)) - (ARG2 SB-ALIEN:LONG) - (ARG3 - (COMMON-LISP:* (COMMON-LISP:* COMMON-LISP:T))) - (ARG4 - (COMMON-LISP:* - (COMMON-LISP:* COMMON-LISP:CHAR))) - (ARG5 (COMMON-LISP:* SB-ALIEN:LONG)) - (ARG6 - (COMMON-LISP:* - (COMMON-LISP:* COMMON-LISP:CHAR))) - (ARG7 SB-ALIEN:LONG) - (ARG8 - (COMMON-LISP:* - (COMMON-LISP:* COMMON-LISP:CHAR))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |R_chk_free|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("R_chk_free" |R_chk_free|) - SB-ALIEN:VOID - (ARG1 (COMMON-LISP:* COMMON-LISP:T)))) -(COMMON-LISP:PROGN - (COMMON-LISP:PROGN - (SB-ALIEN:DEFINE-ALIEN-TYPE |__darwin_size_t| SB-ALIEN:UNSIGNED-LONG) - (SB-ALIEN:DEFINE-ALIEN-TYPE |size_t| SB-ALIEN:UNSIGNED-LONG)) - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |R_chk_realloc|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("R_chk_realloc" |R_chk_realloc|) - (COMMON-LISP:* COMMON-LISP:T) - (ARG1 (COMMON-LISP:* COMMON-LISP:T)) - (ARG2 SB-ALIEN:UNSIGNED-LONG))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |R_chk_calloc|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("R_chk_calloc" |R_chk_calloc|) - (COMMON-LISP:* COMMON-LISP:T) - (ARG1 SB-ALIEN:UNSIGNED-LONG) - (ARG2 SB-ALIEN:UNSIGNED-LONG))) -(COMMON-LISP:PROGN - (COMMON-LISP:PROGN - (SB-ALIEN:DEFINE-ALIEN-TYPE |__darwin_ssize_t| SB-ALIEN:LONG) - (SB-ALIEN:DEFINE-ALIEN-TYPE |ssize_t| SB-ALIEN:LONG)) - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |swab|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("swab" |swab|) - SB-ALIEN:VOID - (ARG1 (COMMON-LISP:* COMMON-LISP:T)) - (ARG2 (COMMON-LISP:* COMMON-LISP:T)) - (ARG3 SB-ALIEN:LONG))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |strsignal|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("strsignal" |strsignal|) - (COMMON-LISP:* COMMON-LISP:CHAR) - (|sig| SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |strsep|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("strsep" |strsep|) - (COMMON-LISP:* COMMON-LISP:CHAR) - (ARG1 - (COMMON-LISP:* - (COMMON-LISP:* COMMON-LISP:CHAR))) - (ARG2 (COMMON-LISP:* COMMON-LISP:CHAR)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |strncasecmp|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("strncasecmp" |strncasecmp|) - SB-ALIEN:INT - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)) - (ARG2 (COMMON-LISP:* COMMON-LISP:CHAR)) - (ARG3 SB-ALIEN:UNSIGNED-LONG))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |strmode|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("strmode" |strmode|) - SB-ALIEN:VOID - (ARG1 SB-ALIEN:INT) - (ARG2 (COMMON-LISP:* COMMON-LISP:CHAR)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |strlcpy|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("strlcpy" |strlcpy|) - SB-ALIEN:UNSIGNED-LONG - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)) - (ARG2 (COMMON-LISP:* COMMON-LISP:CHAR)) - (ARG3 SB-ALIEN:UNSIGNED-LONG))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |strlcat|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("strlcat" |strlcat|) - SB-ALIEN:UNSIGNED-LONG - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)) - (ARG2 (COMMON-LISP:* COMMON-LISP:CHAR)) - (ARG3 SB-ALIEN:UNSIGNED-LONG))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |strcasecmp|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("strcasecmp" |strcasecmp|) - SB-ALIEN:INT - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)) - (ARG2 (COMMON-LISP:* COMMON-LISP:CHAR)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |bcopy|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("bcopy" |bcopy|) - SB-ALIEN:VOID - (ARG1 (COMMON-LISP:* COMMON-LISP:T)) - (ARG2 (COMMON-LISP:* COMMON-LISP:T)) - (ARG3 SB-ALIEN:UNSIGNED-LONG))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |strdup|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("strdup" |strdup|) - (COMMON-LISP:* COMMON-LISP:CHAR) - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |strtok_r|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("strtok_r" |strtok_r|) - (COMMON-LISP:* COMMON-LISP:CHAR) - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)) - (ARG2 (COMMON-LISP:* COMMON-LISP:CHAR)) - (ARG3 - (COMMON-LISP:* - (COMMON-LISP:* COMMON-LISP:CHAR))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |memccpy|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("memccpy" |memccpy|) - (COMMON-LISP:* COMMON-LISP:T) - (ARG1 (COMMON-LISP:* COMMON-LISP:T)) - (ARG2 (COMMON-LISP:* COMMON-LISP:T)) - (ARG3 SB-ALIEN:INT) - (ARG4 SB-ALIEN:UNSIGNED-LONG))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |strxfrm|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("strxfrm" |strxfrm|) - SB-ALIEN:UNSIGNED-LONG - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)) - (ARG2 (COMMON-LISP:* COMMON-LISP:CHAR)) - (ARG3 SB-ALIEN:UNSIGNED-LONG))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |strtok|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("strtok" |strtok|) - (COMMON-LISP:* COMMON-LISP:CHAR) - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)) - (ARG2 (COMMON-LISP:* COMMON-LISP:CHAR)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |strnstr|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("strnstr" |strnstr|) - (COMMON-LISP:* COMMON-LISP:CHAR) - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)) - (ARG2 (COMMON-LISP:* COMMON-LISP:CHAR)) - (ARG3 SB-ALIEN:UNSIGNED-LONG))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |strerror_r|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("strerror_r" |strerror_r|) - SB-ALIEN:INT - (ARG1 SB-ALIEN:INT) - (ARG2 (COMMON-LISP:* COMMON-LISP:CHAR)) - (ARG3 SB-ALIEN:UNSIGNED-LONG))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |strerror|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("strerror" |strerror|) - (COMMON-LISP:* COMMON-LISP:CHAR) - (ARG1 SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |strcoll|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("strcoll" |strcoll|) - SB-ALIEN:INT - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)) - (ARG2 (COMMON-LISP:* COMMON-LISP:CHAR)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |strcasestr|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("strcasestr" |strcasestr|) - (COMMON-LISP:* COMMON-LISP:CHAR) - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)) - (ARG2 (COMMON-LISP:* COMMON-LISP:CHAR)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |stpcpy|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("stpcpy" |stpcpy|) - (COMMON-LISP:* COMMON-LISP:CHAR) - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)) - (ARG2 (COMMON-LISP:* COMMON-LISP:CHAR)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |memmove|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("memmove" |memmove|) - (COMMON-LISP:* COMMON-LISP:T) - (ARG1 (COMMON-LISP:* COMMON-LISP:T)) - (ARG2 (COMMON-LISP:* COMMON-LISP:T)) - (ARG3 SB-ALIEN:UNSIGNED-LONG))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |memchr|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("memchr" |memchr|) - (COMMON-LISP:* COMMON-LISP:T) - (ARG1 (COMMON-LISP:* COMMON-LISP:T)) - (ARG2 SB-ALIEN:INT) - (ARG3 SB-ALIEN:UNSIGNED-LONG))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |R_max_col|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("R_max_col" |R_max_col|) - SB-ALIEN:VOID - (|matrix| (COMMON-LISP:* SB-ALIEN:DOUBLE)) - (|nr| (COMMON-LISP:* SB-ALIEN:INT)) - (|nc| (COMMON-LISP:* SB-ALIEN:INT)) - (|maxes| (COMMON-LISP:* SB-ALIEN:INT)) - (|ties_meth| (COMMON-LISP:* SB-ALIEN:INT)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |find_interv_vec|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("find_interv_vec" |find_interv_vec|) - SB-ALIEN:VOID - (|xt| (COMMON-LISP:* SB-ALIEN:DOUBLE)) - (|n| (COMMON-LISP:* SB-ALIEN:INT)) - (|x| (COMMON-LISP:* SB-ALIEN:DOUBLE)) - (|nx| (COMMON-LISP:* SB-ALIEN:INT)) - (|rightmost_closed| - (COMMON-LISP:* SB-ALIEN:INT)) - (|all_inside| (COMMON-LISP:* SB-ALIEN:INT)) - (|indx| (COMMON-LISP:* SB-ALIEN:INT)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |findInterval|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("findInterval" |findInterval|) - SB-ALIEN:INT - (|xt| (COMMON-LISP:* SB-ALIEN:DOUBLE)) - (|n| SB-ALIEN:INT) - (|x| SB-ALIEN:DOUBLE) - (|rightmost_closed| |Rboolean|) - (|all_inside| |Rboolean|) - (|ilo| SB-ALIEN:INT) - (|mflag| (COMMON-LISP:* SB-ALIEN:INT)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |R_CheckStack|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("R_CheckStack" |R_CheckStack|) SB-ALIEN:VOID)) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |R_CheckUserInterrupt|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("R_CheckUserInterrupt" |R_CheckUserInterrupt|) - SB-ALIEN:VOID)) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_rgb2hsv|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_rgb2hsv" |Rf_rgb2hsv|) - SB-ALIEN:VOID - (|r| SB-ALIEN:DOUBLE) - (|g| SB-ALIEN:DOUBLE) - (|b| SB-ALIEN:DOUBLE) - (|h| (COMMON-LISP:* SB-ALIEN:DOUBLE)) - (|s| (COMMON-LISP:* SB-ALIEN:DOUBLE)) - (|v| (COMMON-LISP:* SB-ALIEN:DOUBLE)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_hsv2rgb|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_hsv2rgb" |Rf_hsv2rgb|) - SB-ALIEN:VOID - (|h| SB-ALIEN:DOUBLE) - (|s| SB-ALIEN:DOUBLE) - (|v| SB-ALIEN:DOUBLE) - (|r| (COMMON-LISP:* SB-ALIEN:DOUBLE)) - (|g| (COMMON-LISP:* SB-ALIEN:DOUBLE)) - (|b| (COMMON-LISP:* SB-ALIEN:DOUBLE)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |R_tmpnam|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("R_tmpnam" |R_tmpnam|) - (COMMON-LISP:* COMMON-LISP:CHAR) - (|prefix| (COMMON-LISP:* COMMON-LISP:CHAR)) - (|tempdir| (COMMON-LISP:* COMMON-LISP:CHAR)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |R_strtod|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("R_strtod" |R_strtod|) - SB-ALIEN:DOUBLE - (|c| (COMMON-LISP:* COMMON-LISP:CHAR)) - (|end| - (COMMON-LISP:* - (COMMON-LISP:* COMMON-LISP:CHAR))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_isBlankString|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_isBlankString" |Rf_isBlankString|) - |Rboolean| - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_StringTrue|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_StringTrue" |Rf_StringTrue|) - |Rboolean| - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_StringFalse|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_StringFalse" |Rf_StringFalse|) - |Rboolean| - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_setRVector|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_setRVector" |Rf_setRVector|) - SB-ALIEN:VOID - (ARG1 (COMMON-LISP:* SB-ALIEN:DOUBLE)) - (ARG2 SB-ALIEN:INT) - (ARG3 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_setIVector|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_setIVector" |Rf_setIVector|) - SB-ALIEN:VOID - (ARG1 (COMMON-LISP:* SB-ALIEN:INT)) - (ARG2 SB-ALIEN:INT) - (ARG3 SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |R_ExpandFileName|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("R_ExpandFileName" |R_ExpandFileName|) - (COMMON-LISP:* COMMON-LISP:CHAR) - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_IndexWidth|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_IndexWidth" |Rf_IndexWidth|) - SB-ALIEN:INT - (ARG1 SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |R_qsort_int_I|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("R_qsort_int_I" |R_qsort_int_I|) - SB-ALIEN:VOID - (|iv| (COMMON-LISP:* SB-ALIEN:INT)) - (I (COMMON-LISP:* SB-ALIEN:INT)) - (|i| SB-ALIEN:INT) - (|j| SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |R_qsort_int|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("R_qsort_int" |R_qsort_int|) - SB-ALIEN:VOID - (|iv| (COMMON-LISP:* SB-ALIEN:INT)) - (|i| SB-ALIEN:INT) - (|j| SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |R_qsort_I|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("R_qsort_I" |R_qsort_I|) - SB-ALIEN:VOID - (|v| (COMMON-LISP:* SB-ALIEN:DOUBLE)) - (I (COMMON-LISP:* SB-ALIEN:INT)) - (|i| SB-ALIEN:INT) - (|j| SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |R_qsort|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("R_qsort" |R_qsort|) - SB-ALIEN:VOID - (|v| (COMMON-LISP:* SB-ALIEN:DOUBLE)) - (|i| SB-ALIEN:INT) - (|j| SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_cPsort|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_cPsort" |Rf_cPsort|) - SB-ALIEN:VOID - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT |Rcomplex|))) - (ARG2 SB-ALIEN:INT) - (ARG3 SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_rPsort|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_rPsort" |Rf_rPsort|) - SB-ALIEN:VOID - (ARG1 (COMMON-LISP:* SB-ALIEN:DOUBLE)) - (ARG2 SB-ALIEN:INT) - (ARG3 SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_iPsort|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_iPsort" |Rf_iPsort|) - SB-ALIEN:VOID - (ARG1 (COMMON-LISP:* SB-ALIEN:INT)) - (ARG2 SB-ALIEN:INT) - (ARG3 SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_revsort|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_revsort" |Rf_revsort|) - SB-ALIEN:VOID - (ARG1 (COMMON-LISP:* SB-ALIEN:DOUBLE)) - (ARG2 (COMMON-LISP:* SB-ALIEN:INT)) - (ARG3 SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |rsort_with_index|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("rsort_with_index" |rsort_with_index|) - SB-ALIEN:VOID - (ARG1 (COMMON-LISP:* SB-ALIEN:DOUBLE)) - (ARG2 (COMMON-LISP:* SB-ALIEN:INT)) - (ARG3 SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |R_csort|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("R_csort" |R_csort|) - SB-ALIEN:VOID - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT |Rcomplex|))) - (ARG2 SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |R_rsort|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("R_rsort" |R_rsort|) - SB-ALIEN:VOID - (ARG1 (COMMON-LISP:* SB-ALIEN:DOUBLE)) - (ARG2 SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |R_isort|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("R_isort" |R_isort|) - SB-ALIEN:VOID - (ARG1 (COMMON-LISP:* SB-ALIEN:INT)) - (ARG2 SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |user_norm_rand|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("user_norm_rand" |user_norm_rand|) - (COMMON-LISP:* SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |user_unif_seedloc|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("user_unif_seedloc" |user_unif_seedloc|) - (COMMON-LISP:* SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |user_unif_nseed|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("user_unif_nseed" |user_unif_nseed|) - (COMMON-LISP:* SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (SB-ALIEN:DEFINE-ALIEN-TYPE |Int32| SB-ALIEN:UNSIGNED-INT) - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |user_unif_init|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("user_unif_init" |user_unif_init|) - SB-ALIEN:VOID - (ARG1 SB-ALIEN:UNSIGNED-INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |user_unif_rand|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("user_unif_rand" |user_unif_rand|) - (COMMON-LISP:* SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |exp_rand|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("exp_rand" |exp_rand|) SB-ALIEN:DOUBLE)) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |norm_rand|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("norm_rand" |norm_rand|) SB-ALIEN:DOUBLE)) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |unif_rand|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("unif_rand" |unif_rand|) SB-ALIEN:DOUBLE)) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |PutRNGstate|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("PutRNGstate" |PutRNGstate|) SB-ALIEN:VOID)) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |GetRNGstate|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("GetRNGstate" |GetRNGstate|) SB-ALIEN:VOID)) -(COMMON-LISP:PROGN - (SB-ALIEN:DEFINE-ALIEN-TYPE |N01type| - (SB-ALIEN:ENUM COMMON-LISP:NIL - (BUGGY_KINDERMAN_RAMAGE 0) - (AHRENS_DIETER 1) - (BOX_MULLER 2) - (USER_NORM 3) - (INVERSION 4) - (KINDERMAN_RAMAGE 5))) - (COMMON-LISP:DEFPARAMETER BUGGY_KINDERMAN_RAMAGE 0) - (COMMON-LISP:DEFPARAMETER AHRENS_DIETER 1) - (COMMON-LISP:DEFPARAMETER BOX_MULLER 2) - (COMMON-LISP:DEFPARAMETER USER_NORM 3) - (COMMON-LISP:DEFPARAMETER INVERSION 4) - (COMMON-LISP:DEFPARAMETER KINDERMAN_RAMAGE 5)) -(COMMON-LISP:PROGN - (SB-ALIEN:DEFINE-ALIEN-TYPE |RNGtype| - (SB-ALIEN:ENUM COMMON-LISP:NIL - (WICHMANN_HILL 0) - (MARSAGLIA_MULTICARRY 1) - (SUPER_DUPER 2) - (MERSENNE_TWISTER 3) - (KNUTH_TAOCP 4) - (USER_UNIF 5) - (KNUTH_TAOCP2 6))) - (COMMON-LISP:DEFPARAMETER WICHMANN_HILL 0) - (COMMON-LISP:DEFPARAMETER MARSAGLIA_MULTICARRY 1) - (COMMON-LISP:DEFPARAMETER SUPER_DUPER 2) - (COMMON-LISP:DEFPARAMETER MERSENNE_TWISTER 3) - (COMMON-LISP:DEFPARAMETER KNUTH_TAOCP 4) - (COMMON-LISP:DEFPARAMETER USER_UNIF 5) - (COMMON-LISP:DEFPARAMETER KNUTH_TAOCP2 6)) -(COMMON-LISP:PROGN - (COMMON-LISP:PROGN - (SB-ALIEN:DEFINE-ALIEN-TYPE |__darwin_va_list| - (COMMON-LISP:* COMMON-LISP:CHAR)) - (SB-ALIEN:DEFINE-ALIEN-TYPE |va_list| (COMMON-LISP:* COMMON-LISP:CHAR))) - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |REvprintf|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("REvprintf" |REvprintf|) - SB-ALIEN:VOID - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)) - (ARG2 (COMMON-LISP:* COMMON-LISP:CHAR)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rvprintf|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rvprintf" |Rvprintf|) - SB-ALIEN:VOID - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)) - (ARG2 (COMMON-LISP:* COMMON-LISP:CHAR)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |REprintf|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("REprintf" |REprintf|) - SB-ALIEN:VOID - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rprintf|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rprintf" |Rprintf|) - SB-ALIEN:VOID - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)))) -(SB-ALIEN:DEFINE-ALIEN-TYPE |__gnuc_va_list| (COMMON-LISP:* COMMON-LISP:CHAR)) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |S_realloc|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("S_realloc" |S_realloc|) - (COMMON-LISP:* COMMON-LISP:CHAR) - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)) - (ARG2 SB-ALIEN:LONG) - (ARG3 SB-ALIEN:LONG) - (ARG4 SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |S_alloc|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("S_alloc" |S_alloc|) - (COMMON-LISP:* COMMON-LISP:CHAR) - (ARG1 SB-ALIEN:LONG) - (ARG2 SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |R_alloc|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("R_alloc" |R_alloc|) - (COMMON-LISP:* COMMON-LISP:CHAR) - (ARG1 SB-ALIEN:LONG) - (ARG2 SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |R_gc|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("R_gc" |R_gc|) SB-ALIEN:VOID)) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |vmaxset|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("vmaxset" |vmaxset|) - SB-ALIEN:VOID - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |vmaxget|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("vmaxget" |vmaxget|) - (COMMON-LISP:* COMMON-LISP:CHAR))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |R_ShowMessage|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("R_ShowMessage" |R_ShowMessage|) - SB-ALIEN:VOID - (|s| (COMMON-LISP:* COMMON-LISP:CHAR)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE UNIMPLEMENTED)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("UNIMPLEMENTED" UNIMPLEMENTED) - SB-ALIEN:VOID - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |WrongArgCount|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("WrongArgCount" |WrongArgCount|) - SB-ALIEN:VOID - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_warning|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_warning" |Rf_warning|) - SB-ALIEN:VOID - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |Rf_error|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("Rf_error" |Rf_error|) - SB-ALIEN:VOID - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |R_isnancpp|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("R_isnancpp" |R_isnancpp|) - SB-ALIEN:INT - (ARG1 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |R_finite|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("R_finite" |R_finite|) - SB-ALIEN:INT - (ARG1 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |R_IsNaN|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("R_IsNaN" |R_IsNaN|) - SB-ALIEN:INT - (ARG1 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |R_IsNA|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("R_IsNA" |R_IsNA|) - SB-ALIEN:INT - (ARG1 SB-ALIEN:DOUBLE))) -(SB-ALIEN:DEFINE-ALIEN-VARIABLE ("R_NaInt" |R_NaInt|) SB-ALIEN:INT) -(SB-ALIEN:DEFINE-ALIEN-VARIABLE ("R_NaReal" |R_NaReal|) SB-ALIEN:DOUBLE) -(SB-ALIEN:DEFINE-ALIEN-VARIABLE ("R_NegInf" |R_NegInf|) SB-ALIEN:DOUBLE) -(SB-ALIEN:DEFINE-ALIEN-VARIABLE ("R_PosInf" |R_PosInf|) SB-ALIEN:DOUBLE) -(SB-ALIEN:DEFINE-ALIEN-VARIABLE ("R_NaN" |R_NaN|) SB-ALIEN:DOUBLE) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |drem|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("drem" |drem|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE) - (ARG2 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |significand|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("significand" |significand|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |gamma|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("gamma" |gamma|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |finite|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("finite" |finite|) - SB-ALIEN:INT - (ARG1 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |roundtol|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("roundtol" |roundtol|) - SB-ALIEN:LONG - (ARG1 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |rinttol|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("rinttol" |rinttol|) - SB-ALIEN:LONG - (ARG1 SB-ALIEN:DOUBLE))) -(SB-ALIEN:DEFINE-ALIEN-VARIABLE ("signgam" |signgam|) SB-ALIEN:INT) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |scalb|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("scalb" |scalb|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE) - (ARG2 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |yn|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("yn" |yn|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:INT) - (ARG2 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |y1|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("y1" |y1|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |y0|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("y0" |y0|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |jn|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("jn" |jn|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:INT) - (ARG2 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |j1|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("j1" |j1|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |j0|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("j0" |j0|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |__nan|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("__nan" |__nan|) COMMON-LISP:FLOAT)) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |__infl|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("__infl" |__infl|) SB-ALIEN:DOUBLE)) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |__inff|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("__inff" |__inff|) COMMON-LISP:FLOAT)) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |__inf|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("__inf" |__inf|) SB-ALIEN:DOUBLE)) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |fmal|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("fmal" |fmal|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE) - (ARG2 SB-ALIEN:DOUBLE) - (ARG3 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |fminl|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("fminl" |fminl|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE) - (ARG2 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |fmaxl|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("fmaxl" |fmaxl|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE) - (ARG2 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |fdiml|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("fdiml" |fdiml|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE) - (ARG2 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |nexttowardl|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("nexttowardl" |nexttowardl|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE) - (ARG2 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |nexttowardf|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("nexttowardf" |nexttowardf|) - COMMON-LISP:FLOAT - (ARG1 COMMON-LISP:FLOAT) - (ARG2 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |nexttoward|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("nexttoward" |nexttoward|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE) - (ARG2 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |nextafterl|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("nextafterl" |nextafterl|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE) - (ARG2 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |copysignl|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("copysignl" |copysignl|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE) - (ARG2 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |remquol|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("remquol" |remquol|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE) - (ARG2 SB-ALIEN:DOUBLE) - (ARG3 (COMMON-LISP:* SB-ALIEN:INT)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |remainderl|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("remainderl" |remainderl|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE) - (ARG2 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |fmodl|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("fmodl" |fmodl|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE) - (ARG2 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |truncl|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("truncl" |truncl|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |llroundl|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("llroundl" |llroundl|) - (COMMON-LISP:INTEGER 64) - (ARG1 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |lroundl|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("lroundl" |lroundl|) - SB-ALIEN:LONG - (ARG1 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |roundl|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("roundl" |roundl|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |llrintl|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("llrintl" |llrintl|) - (COMMON-LISP:INTEGER 64) - (ARG1 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |lrintl|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("lrintl" |lrintl|) - SB-ALIEN:LONG - (ARG1 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |rintl|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("rintl" |rintl|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |nearbyintl|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("nearbyintl" |nearbyintl|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |floorl|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("floorl" |floorl|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |ceill|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("ceill" |ceill|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |tgammal|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("tgammal" |tgammal|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |lgammal|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("lgammal" |lgammal|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |erfcl|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("erfcl" |erfcl|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |erfl|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("erfl" |erfl|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |powl|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("powl" |powl|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE) - (ARG2 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |hypotl|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("hypotl" |hypotl|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE) - (ARG2 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |cbrtl|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("cbrtl" |cbrtl|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |scalblnl|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("scalblnl" |scalblnl|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE) - (ARG2 SB-ALIEN:LONG))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |scalbnl|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("scalbnl" |scalbnl|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE) - (ARG2 SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |ilogbl|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("ilogbl" |ilogbl|) - SB-ALIEN:INT - (ARG1 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |frexpl|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("frexpl" |frexpl|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE) - (ARG2 (COMMON-LISP:* SB-ALIEN:INT)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |ldexpl|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("ldexpl" |ldexpl|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE) - (ARG2 SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |modfl|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("modfl" |modfl|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE) - (ARG2 (COMMON-LISP:* SB-ALIEN:DOUBLE)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |logbl|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("logbl" |logbl|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |log1pl|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("log1pl" |log1pl|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |log2l|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("log2l" |log2l|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |log10l|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("log10l" |log10l|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |expm1l|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("expm1l" |expm1l|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |exp2l|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("exp2l" |exp2l|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |tanhl|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("tanhl" |tanhl|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |sinhl|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("sinhl" |sinhl|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |coshl|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("coshl" |coshl|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |atanhl|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("atanhl" |atanhl|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |asinhl|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("asinhl" |asinhl|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |acoshl|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("acoshl" |acoshl|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |tanl|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("tanl" |tanl|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |atan2l|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("atan2l" |atan2l|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE) - (ARG2 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |atanl|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("atanl" |atanl|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |asinl|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("asinl" |asinl|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |acosl|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("acosl" |acosl|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |fmaf|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("fmaf" |fmaf|) - COMMON-LISP:FLOAT - (ARG1 COMMON-LISP:FLOAT) - (ARG2 COMMON-LISP:FLOAT) - (ARG3 COMMON-LISP:FLOAT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |fma|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("fma" |fma|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE) - (ARG2 SB-ALIEN:DOUBLE) - (ARG3 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |fminf|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("fminf" |fminf|) - COMMON-LISP:FLOAT - (ARG1 COMMON-LISP:FLOAT) - (ARG2 COMMON-LISP:FLOAT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |fmin|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("fmin" |fmin|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE) - (ARG2 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |fmaxf|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("fmaxf" |fmaxf|) - COMMON-LISP:FLOAT - (ARG1 COMMON-LISP:FLOAT) - (ARG2 COMMON-LISP:FLOAT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |fmax|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("fmax" |fmax|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE) - (ARG2 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |fdimf|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("fdimf" |fdimf|) - COMMON-LISP:FLOAT - (ARG1 COMMON-LISP:FLOAT) - (ARG2 COMMON-LISP:FLOAT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |fdim|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("fdim" |fdim|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE) - (ARG2 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |nextafterf|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("nextafterf" |nextafterf|) - COMMON-LISP:FLOAT - (ARG1 COMMON-LISP:FLOAT) - (ARG2 COMMON-LISP:FLOAT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |nextafter|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("nextafter" |nextafter|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE) - (ARG2 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |copysignf|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("copysignf" |copysignf|) - COMMON-LISP:FLOAT - (ARG1 COMMON-LISP:FLOAT) - (ARG2 COMMON-LISP:FLOAT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |copysign|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("copysign" |copysign|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE) - (ARG2 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |remquof|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("remquof" |remquof|) - COMMON-LISP:FLOAT - (ARG1 COMMON-LISP:FLOAT) - (ARG2 COMMON-LISP:FLOAT) - (ARG3 (COMMON-LISP:* SB-ALIEN:INT)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |remquo|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("remquo" |remquo|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE) - (ARG2 SB-ALIEN:DOUBLE) - (ARG3 (COMMON-LISP:* SB-ALIEN:INT)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |remainderf|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("remainderf" |remainderf|) - COMMON-LISP:FLOAT - (ARG1 COMMON-LISP:FLOAT) - (ARG2 COMMON-LISP:FLOAT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |remainder|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("remainder" |remainder|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE) - (ARG2 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |fmodf|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("fmodf" |fmodf|) - COMMON-LISP:FLOAT - (ARG1 COMMON-LISP:FLOAT) - (ARG2 COMMON-LISP:FLOAT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |fmod|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("fmod" |fmod|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE) - (ARG2 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |truncf|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("truncf" |truncf|) - COMMON-LISP:FLOAT - (ARG1 COMMON-LISP:FLOAT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |trunc|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("trunc" |trunc|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |llroundf|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("llroundf" |llroundf|) - (COMMON-LISP:INTEGER 64) - (ARG1 COMMON-LISP:FLOAT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |llround|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("llround" |llround|) - (COMMON-LISP:INTEGER 64) - (ARG1 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |lroundf|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("lroundf" |lroundf|) - SB-ALIEN:LONG - (ARG1 COMMON-LISP:FLOAT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |lround|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("lround" |lround|) - SB-ALIEN:LONG - (ARG1 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |roundf|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("roundf" |roundf|) - COMMON-LISP:FLOAT - (ARG1 COMMON-LISP:FLOAT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |round|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("round" |round|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |llrintf|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("llrintf" |llrintf|) - (COMMON-LISP:INTEGER 64) - (ARG1 COMMON-LISP:FLOAT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |llrint|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("llrint" |llrint|) - (COMMON-LISP:INTEGER 64) - (ARG1 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |lrintf|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("lrintf" |lrintf|) - SB-ALIEN:LONG - (ARG1 COMMON-LISP:FLOAT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |lrint|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("lrint" |lrint|) - SB-ALIEN:LONG - (ARG1 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |rintf|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("rintf" |rintf|) - COMMON-LISP:FLOAT - (ARG1 COMMON-LISP:FLOAT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |rint|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("rint" |rint|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |nearbyintf|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("nearbyintf" |nearbyintf|) - COMMON-LISP:FLOAT - (ARG1 COMMON-LISP:FLOAT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |nearbyint|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("nearbyint" |nearbyint|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |floorf|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("floorf" |floorf|) - COMMON-LISP:FLOAT - (ARG1 COMMON-LISP:FLOAT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |floor|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("floor" |floor|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |ceilf|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("ceilf" |ceilf|) - COMMON-LISP:FLOAT - (ARG1 COMMON-LISP:FLOAT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |ceil|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("ceil" |ceil|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |tgammaf|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("tgammaf" |tgammaf|) - COMMON-LISP:FLOAT - (ARG1 COMMON-LISP:FLOAT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |tgamma|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("tgamma" |tgamma|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |lgammaf|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("lgammaf" |lgammaf|) - COMMON-LISP:FLOAT - (ARG1 COMMON-LISP:FLOAT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |lgamma|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("lgamma" |lgamma|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |erfcf|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("erfcf" |erfcf|) - COMMON-LISP:FLOAT - (ARG1 COMMON-LISP:FLOAT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |erfc|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("erfc" |erfc|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |erff|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("erff" |erff|) - COMMON-LISP:FLOAT - (ARG1 COMMON-LISP:FLOAT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |erf|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("erf" |erf|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |powf|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("powf" |powf|) - COMMON-LISP:FLOAT - (ARG1 COMMON-LISP:FLOAT) - (ARG2 COMMON-LISP:FLOAT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |pow|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("pow" |pow|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE) - (ARG2 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |hypotf|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("hypotf" |hypotf|) - COMMON-LISP:FLOAT - (ARG1 COMMON-LISP:FLOAT) - (ARG2 COMMON-LISP:FLOAT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |hypot|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("hypot" |hypot|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE) - (ARG2 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |cbrtf|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("cbrtf" |cbrtf|) - COMMON-LISP:FLOAT - (ARG1 COMMON-LISP:FLOAT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |cbrt|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("cbrt" |cbrt|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |scalblnf|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("scalblnf" |scalblnf|) - COMMON-LISP:FLOAT - (ARG1 COMMON-LISP:FLOAT) - (ARG2 SB-ALIEN:LONG))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |scalbln|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("scalbln" |scalbln|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE) - (ARG2 SB-ALIEN:LONG))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |scalbnf|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("scalbnf" |scalbnf|) - COMMON-LISP:FLOAT - (ARG1 COMMON-LISP:FLOAT) - (ARG2 SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |scalbn|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("scalbn" |scalbn|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE) - (ARG2 SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |ilogbf|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("ilogbf" |ilogbf|) - SB-ALIEN:INT - (ARG1 COMMON-LISP:FLOAT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |ilogb|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("ilogb" |ilogb|) - SB-ALIEN:INT - (ARG1 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |frexpf|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("frexpf" |frexpf|) - COMMON-LISP:FLOAT - (ARG1 COMMON-LISP:FLOAT) - (ARG2 (COMMON-LISP:* SB-ALIEN:INT)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |frexp|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("frexp" |frexp|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE) - (ARG2 (COMMON-LISP:* SB-ALIEN:INT)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |ldexpf|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("ldexpf" |ldexpf|) - COMMON-LISP:FLOAT - (ARG1 COMMON-LISP:FLOAT) - (ARG2 SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |ldexp|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("ldexp" |ldexp|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE) - (ARG2 SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |modff|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("modff" |modff|) - COMMON-LISP:FLOAT - (ARG1 COMMON-LISP:FLOAT) - (ARG2 (COMMON-LISP:* COMMON-LISP:FLOAT)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |modf|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("modf" |modf|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE) - (ARG2 (COMMON-LISP:* SB-ALIEN:DOUBLE)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |logbf|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("logbf" |logbf|) - COMMON-LISP:FLOAT - (ARG1 COMMON-LISP:FLOAT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |logb|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("logb" |logb|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |log1pf|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("log1pf" |log1pf|) - COMMON-LISP:FLOAT - (ARG1 COMMON-LISP:FLOAT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |log1p|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("log1p" |log1p|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |log2f|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("log2f" |log2f|) - COMMON-LISP:FLOAT - (ARG1 COMMON-LISP:FLOAT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |log2|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("log2" |log2|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |log10f|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("log10f" |log10f|) - COMMON-LISP:FLOAT - (ARG1 COMMON-LISP:FLOAT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |log10|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("log10" |log10|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |expm1f|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("expm1f" |expm1f|) - COMMON-LISP:FLOAT - (ARG1 COMMON-LISP:FLOAT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |expm1|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("expm1" |expm1|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |exp2f|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("exp2f" |exp2f|) - COMMON-LISP:FLOAT - (ARG1 COMMON-LISP:FLOAT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |exp2|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("exp2" |exp2|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |tanhf|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("tanhf" |tanhf|) - COMMON-LISP:FLOAT - (ARG1 COMMON-LISP:FLOAT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |tanh|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("tanh" |tanh|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |sinhf|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("sinhf" |sinhf|) - COMMON-LISP:FLOAT - (ARG1 COMMON-LISP:FLOAT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |sinh|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("sinh" |sinh|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |coshf|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("coshf" |coshf|) - COMMON-LISP:FLOAT - (ARG1 COMMON-LISP:FLOAT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |cosh|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("cosh" |cosh|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |atanhf|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("atanhf" |atanhf|) - COMMON-LISP:FLOAT - (ARG1 COMMON-LISP:FLOAT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |atanh|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("atanh" |atanh|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |asinhf|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("asinhf" |asinhf|) - COMMON-LISP:FLOAT - (ARG1 COMMON-LISP:FLOAT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |asinh|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("asinh" |asinh|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |acoshf|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("acoshf" |acoshf|) - COMMON-LISP:FLOAT - (ARG1 COMMON-LISP:FLOAT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |acosh|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("acosh" |acosh|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |tanf|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("tanf" |tanf|) - COMMON-LISP:FLOAT - (ARG1 COMMON-LISP:FLOAT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |tan|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("tan" |tan|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |atan2f|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("atan2f" |atan2f|) - COMMON-LISP:FLOAT - (ARG1 COMMON-LISP:FLOAT) - (ARG2 COMMON-LISP:FLOAT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |atan2|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("atan2" |atan2|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE) - (ARG2 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |atanf|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("atanf" |atanf|) - COMMON-LISP:FLOAT - (ARG1 COMMON-LISP:FLOAT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |atan|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("atan" |atan|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |asinf|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("asinf" |asinf|) - COMMON-LISP:FLOAT - (ARG1 COMMON-LISP:FLOAT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |asin|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("asin" |asin|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |acosf|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("acosf" |acosf|) - COMMON-LISP:FLOAT - (ARG1 COMMON-LISP:FLOAT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |acos|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("acos" |acos|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |__signbitl|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("__signbitl" |__signbitl|) - SB-ALIEN:INT - (ARG1 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |__signbitd|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("__signbitd" |__signbitd|) - SB-ALIEN:INT - (ARG1 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |__signbitf|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("__signbitf" |__signbitf|) - SB-ALIEN:INT - (ARG1 COMMON-LISP:FLOAT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |__isnan|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("__isnan" |__isnan|) - SB-ALIEN:INT - (ARG1 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |__isnand|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("__isnand" |__isnand|) - SB-ALIEN:INT - (ARG1 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |__isnanf|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("__isnanf" |__isnanf|) - SB-ALIEN:INT - (ARG1 COMMON-LISP:FLOAT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |__isinf|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("__isinf" |__isinf|) - SB-ALIEN:INT - (ARG1 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |__isinfd|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("__isinfd" |__isinfd|) - SB-ALIEN:INT - (ARG1 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |__isinff|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("__isinff" |__isinff|) - SB-ALIEN:INT - (ARG1 COMMON-LISP:FLOAT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |__isfinite|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("__isfinite" |__isfinite|) - SB-ALIEN:INT - (ARG1 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |__isfinited|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("__isfinited" |__isfinited|) - SB-ALIEN:INT - (ARG1 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |__isfinitef|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("__isfinitef" |__isfinitef|) - SB-ALIEN:INT - (ARG1 COMMON-LISP:FLOAT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |__isnormal|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("__isnormal" |__isnormal|) - SB-ALIEN:INT - (ARG1 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |__isnormald|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("__isnormald" |__isnormald|) - SB-ALIEN:INT - (ARG1 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |__isnormalf|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("__isnormalf" |__isnormalf|) - SB-ALIEN:INT - (ARG1 COMMON-LISP:FLOAT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |__fpclassify|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("__fpclassify" |__fpclassify|) - SB-ALIEN:INT - (ARG1 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |__fpclassifyd|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("__fpclassifyd" |__fpclassifyd|) - SB-ALIEN:INT - (ARG1 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |__fpclassifyf|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("__fpclassifyf" |__fpclassifyf|) - SB-ALIEN:INT - (ARG1 COMMON-LISP:FLOAT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |__math_errhandling|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("__math_errhandling" |__math_errhandling|) - SB-ALIEN:UNSIGNED-INT)) -(COMMON-LISP:PROGN - (SB-ALIEN:DEFINE-ALIEN-TYPE $_9 - (SB-ALIEN:ENUM COMMON-LISP:NIL - (_FP_NAN 1) - (_FP_INFINITE 2) - (_FP_ZERO 3) - (_FP_NORMAL 4) - (_FP_SUBNORMAL 5) - (_FP_SUPERNORMAL 6))) - (COMMON-LISP:DEFPARAMETER _FP_NAN 1) - (COMMON-LISP:DEFPARAMETER _FP_INFINITE 2) - (COMMON-LISP:DEFPARAMETER _FP_ZERO 3) - (COMMON-LISP:DEFPARAMETER _FP_NORMAL 4) - (COMMON-LISP:DEFPARAMETER _FP_SUBNORMAL 5) - (COMMON-LISP:DEFPARAMETER _FP_SUPERNORMAL 6)) -(SB-ALIEN:DEFINE-ALIEN-TYPE |double_t| SB-ALIEN:DOUBLE) -(SB-ALIEN:DEFINE-ALIEN-TYPE |float_t| COMMON-LISP:FLOAT) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |valloc|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("valloc" |valloc|) - (COMMON-LISP:* COMMON-LISP:T) - (ARG1 SB-ALIEN:UNSIGNED-LONG))) -(SB-ALIEN:DEFINE-ALIEN-VARIABLE ("suboptarg" |suboptarg|) - (COMMON-LISP:* COMMON-LISP:CHAR)) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |strtouq|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("strtouq" |strtouq|) - (COMMON-LISP:INTEGER 64) - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)) - (ARG2 - (COMMON-LISP:* - (COMMON-LISP:* COMMON-LISP:CHAR))) - (ARG3 SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |strtoq|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("strtoq" |strtoq|) - (COMMON-LISP:INTEGER 64) - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)) - (ARG2 - (COMMON-LISP:* - (COMMON-LISP:* COMMON-LISP:CHAR))) - (ARG3 SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |reallocf|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("reallocf" |reallocf|) - (COMMON-LISP:* COMMON-LISP:T) - (ARG1 (COMMON-LISP:* COMMON-LISP:T)) - (ARG2 SB-ALIEN:UNSIGNED-LONG))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |rand_r|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("rand_r" |rand_r|) - SB-ALIEN:INT - (ARG1 (COMMON-LISP:* SB-ALIEN:UNSIGNED-INT)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |srandomdev|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("srandomdev" |srandomdev|) SB-ALIEN:VOID)) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |sranddev|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("sranddev" |sranddev|) SB-ALIEN:VOID)) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |sradixsort|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("sradixsort" |sradixsort|) - SB-ALIEN:INT - (ARG1 - (COMMON-LISP:* - (COMMON-LISP:* SB-ALIEN:UNSIGNED-CHAR))) - (ARG2 SB-ALIEN:INT) - (ARG3 (COMMON-LISP:* SB-ALIEN:UNSIGNED-CHAR)) - (ARG4 SB-ALIEN:UNSIGNED-INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |setprogname|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("setprogname" |setprogname|) - SB-ALIEN:VOID - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |radixsort|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("radixsort" |radixsort|) - SB-ALIEN:INT - (ARG1 - (COMMON-LISP:* - (COMMON-LISP:* SB-ALIEN:UNSIGNED-CHAR))) - (ARG2 SB-ALIEN:INT) - (ARG3 (COMMON-LISP:* SB-ALIEN:UNSIGNED-CHAR)) - (ARG4 SB-ALIEN:UNSIGNED-INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |qsort_r|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("qsort_r" |qsort_r|) - SB-ALIEN:VOID - (ARG1 (COMMON-LISP:* COMMON-LISP:T)) - (ARG2 SB-ALIEN:UNSIGNED-LONG) - (ARG3 SB-ALIEN:UNSIGNED-LONG) - (ARG4 (COMMON-LISP:* COMMON-LISP:T)) - (ARG5 - (COMMON-LISP:* - (COMMON-LISP:FUNCTION SB-ALIEN:INT - (COMMON-LISP:* COMMON-LISP:T) - (COMMON-LISP:* COMMON-LISP:T) - (COMMON-LISP:* COMMON-LISP:T)))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |mergesort|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("mergesort" |mergesort|) - SB-ALIEN:INT - (ARG1 (COMMON-LISP:* COMMON-LISP:T)) - (ARG2 SB-ALIEN:UNSIGNED-LONG) - (ARG3 SB-ALIEN:UNSIGNED-LONG) - (ARG4 - (COMMON-LISP:* - (COMMON-LISP:FUNCTION SB-ALIEN:INT - (COMMON-LISP:* COMMON-LISP:T) - (COMMON-LISP:* COMMON-LISP:T)))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |heapsort|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("heapsort" |heapsort|) - SB-ALIEN:INT - (ARG1 (COMMON-LISP:* COMMON-LISP:T)) - (ARG2 SB-ALIEN:UNSIGNED-LONG) - (ARG3 SB-ALIEN:UNSIGNED-LONG) - (ARG4 - (COMMON-LISP:* - (COMMON-LISP:FUNCTION SB-ALIEN:INT - (COMMON-LISP:* COMMON-LISP:T) - (COMMON-LISP:* COMMON-LISP:T)))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |getprogname|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("getprogname" |getprogname|) - (COMMON-LISP:* COMMON-LISP:CHAR))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |getloadavg|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("getloadavg" |getloadavg|) - SB-ALIEN:INT - (ARG1 (COMMON-LISP:* SB-ALIEN:DOUBLE)) - (ARG2 SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |getbsize|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("getbsize" |getbsize|) - (COMMON-LISP:* COMMON-LISP:CHAR) - (ARG1 (COMMON-LISP:* SB-ALIEN:INT)) - (ARG2 (COMMON-LISP:* SB-ALIEN:LONG)))) -(COMMON-LISP:PROGN - (COMMON-LISP:PROGN - (COMMON-LISP:PROGN - (SB-ALIEN:DEFINE-ALIEN-TYPE |__int32_t| SB-ALIEN:INT) - (SB-ALIEN:DEFINE-ALIEN-TYPE |__darwin_dev_t| SB-ALIEN:INT)) - (SB-ALIEN:DEFINE-ALIEN-TYPE |dev_t| SB-ALIEN:INT)) - (COMMON-LISP:PROGN - (COMMON-LISP:PROGN - (SB-ALIEN:DEFINE-ALIEN-TYPE |__uint16_t| SB-ALIEN:UNSIGNED-SHORT) - (SB-ALIEN:DEFINE-ALIEN-TYPE |__darwin_mode_t| SB-ALIEN:UNSIGNED-SHORT)) - (SB-ALIEN:DEFINE-ALIEN-TYPE |mode_t| SB-ALIEN:UNSIGNED-SHORT)) - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |devname_r|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("devname_r" |devname_r|) - (COMMON-LISP:* COMMON-LISP:CHAR) - (ARG1 SB-ALIEN:INT) - (ARG2 SB-ALIEN:UNSIGNED-SHORT) - (|buf| (COMMON-LISP:* COMMON-LISP:CHAR)) - (|len| SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |devname|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("devname" |devname|) - (COMMON-LISP:* COMMON-LISP:CHAR) - (ARG1 SB-ALIEN:INT) - (ARG2 SB-ALIEN:UNSIGNED-SHORT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |daemon|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("daemon" |daemon|) - SB-ALIEN:INT - (ARG1 SB-ALIEN:INT) - (ARG2 SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |cgetustr|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("cgetustr" |cgetustr|) - SB-ALIEN:INT - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)) - (ARG2 (COMMON-LISP:* COMMON-LISP:CHAR)) - (ARG3 - (COMMON-LISP:* - (COMMON-LISP:* COMMON-LISP:CHAR))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |cgetstr|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("cgetstr" |cgetstr|) - SB-ALIEN:INT - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)) - (ARG2 (COMMON-LISP:* COMMON-LISP:CHAR)) - (ARG3 - (COMMON-LISP:* - (COMMON-LISP:* COMMON-LISP:CHAR))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |cgetset|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("cgetset" |cgetset|) - SB-ALIEN:INT - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |cgetnum|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("cgetnum" |cgetnum|) - SB-ALIEN:INT - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)) - (ARG2 (COMMON-LISP:* COMMON-LISP:CHAR)) - (ARG3 (COMMON-LISP:* SB-ALIEN:LONG)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |cgetnext|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("cgetnext" |cgetnext|) - SB-ALIEN:INT - (ARG1 - (COMMON-LISP:* - (COMMON-LISP:* COMMON-LISP:CHAR))) - (ARG2 - (COMMON-LISP:* - (COMMON-LISP:* COMMON-LISP:CHAR))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |cgetmatch|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("cgetmatch" |cgetmatch|) - SB-ALIEN:INT - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)) - (ARG2 (COMMON-LISP:* COMMON-LISP:CHAR)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |cgetfirst|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("cgetfirst" |cgetfirst|) - SB-ALIEN:INT - (ARG1 - (COMMON-LISP:* - (COMMON-LISP:* COMMON-LISP:CHAR))) - (ARG2 - (COMMON-LISP:* - (COMMON-LISP:* COMMON-LISP:CHAR))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |cgetent|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("cgetent" |cgetent|) - SB-ALIEN:INT - (ARG1 - (COMMON-LISP:* - (COMMON-LISP:* COMMON-LISP:CHAR))) - (ARG2 - (COMMON-LISP:* - (COMMON-LISP:* COMMON-LISP:CHAR))) - (ARG3 (COMMON-LISP:* COMMON-LISP:CHAR)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |cgetclose|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("cgetclose" |cgetclose|) SB-ALIEN:INT)) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |cgetcap|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("cgetcap" |cgetcap|) - (COMMON-LISP:* COMMON-LISP:CHAR) - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)) - (ARG2 (COMMON-LISP:* COMMON-LISP:CHAR)) - (ARG3 SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |arc4random_stir|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("arc4random_stir" |arc4random_stir|) - SB-ALIEN:VOID)) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |arc4random_addrandom|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("arc4random_addrandom" |arc4random_addrandom|) - SB-ALIEN:VOID - (|dat| (COMMON-LISP:* SB-ALIEN:UNSIGNED-CHAR)) - (|datlen| SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (SB-ALIEN:DEFINE-ALIEN-TYPE |u_int32_t| SB-ALIEN:UNSIGNED-INT) - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |arc4random|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("arc4random" |arc4random|) - SB-ALIEN:UNSIGNED-INT)) -(COMMON-LISP:PROGN - (SB-ALIEN:DEFINE-ALIEN-TYPE |u_int64_t| (COMMON-LISP:INTEGER 64)) - (SB-ALIEN:DEFINE-ALIEN-TYPE |syscall_arg_t| (COMMON-LISP:INTEGER 64))) -(COMMON-LISP:PROGN - (SB-ALIEN:DEFINE-ALIEN-TYPE |int64_t| (COMMON-LISP:INTEGER 64)) - (SB-ALIEN:DEFINE-ALIEN-TYPE |user_time_t| (COMMON-LISP:INTEGER 64))) -(SB-ALIEN:DEFINE-ALIEN-TYPE |user_ulong_t| (COMMON-LISP:INTEGER 64)) -(SB-ALIEN:DEFINE-ALIEN-TYPE |user_long_t| (COMMON-LISP:INTEGER 64)) -(SB-ALIEN:DEFINE-ALIEN-TYPE |user_ssize_t| (COMMON-LISP:INTEGER 64)) -(SB-ALIEN:DEFINE-ALIEN-TYPE |user_size_t| (COMMON-LISP:INTEGER 64)) -(SB-ALIEN:DEFINE-ALIEN-TYPE |user_addr_t| (COMMON-LISP:INTEGER 64)) -(COMMON-LISP:PROGN - (SB-ALIEN:DEFINE-ALIEN-TYPE |int32_t| SB-ALIEN:INT) - (SB-ALIEN:DEFINE-ALIEN-TYPE |register_t| SB-ALIEN:INT)) -(SB-ALIEN:DEFINE-ALIEN-TYPE |u_int16_t| SB-ALIEN:UNSIGNED-SHORT) -(SB-ALIEN:DEFINE-ALIEN-TYPE |u_int8_t| SB-ALIEN:UNSIGNED-CHAR) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |unsetenv|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("unsetenv" |unsetenv|) - SB-ALIEN:VOID - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |unlockpt|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("unlockpt" |unlockpt|) - SB-ALIEN:INT - (ARG1 SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |srandom|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("srandom" |srandom|) - SB-ALIEN:VOID - (ARG1 SB-ALIEN:UNSIGNED-LONG))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |srand48|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("srand48" |srand48|) - SB-ALIEN:VOID - (ARG1 SB-ALIEN:LONG))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |setstate|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("setstate" |setstate|) - (COMMON-LISP:* COMMON-LISP:CHAR) - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |setkey|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("setkey" |setkey|) - SB-ALIEN:INT - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |setenv|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("setenv" |setenv|) - SB-ALIEN:INT - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)) - (ARG2 (COMMON-LISP:* COMMON-LISP:CHAR)) - (ARG3 SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |seed48|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("seed48" |seed48|) - (COMMON-LISP:* SB-ALIEN:UNSIGNED-SHORT) - (ARG1 (COMMON-LISP:* SB-ALIEN:UNSIGNED-SHORT)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |realpath|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("realpath" |realpath|) - (COMMON-LISP:* COMMON-LISP:CHAR) - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)) - (|resolved_path| - (COMMON-LISP:* COMMON-LISP:CHAR)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |random|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("random" |random|) SB-ALIEN:LONG)) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |putenv|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("putenv" |putenv|) - SB-ALIEN:INT - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |ptsname|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("ptsname" |ptsname|) - (COMMON-LISP:* COMMON-LISP:CHAR) - (ARG1 SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |posix_openpt|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("posix_openpt" |posix_openpt|) - SB-ALIEN:INT - (ARG1 SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |nrand48|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("nrand48" |nrand48|) - SB-ALIEN:LONG - (ARG1 (COMMON-LISP:* SB-ALIEN:UNSIGNED-SHORT)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |mrand48|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("mrand48" |mrand48|) SB-ALIEN:LONG)) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |mkstemp|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("mkstemp" |mkstemp|) - SB-ALIEN:INT - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |mktemp|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("mktemp" |mktemp|) - (COMMON-LISP:* COMMON-LISP:CHAR) - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |lrand48|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("lrand48" |lrand48|) SB-ALIEN:LONG)) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |lcong48|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("lcong48" |lcong48|) - SB-ALIEN:VOID - (ARG1 (COMMON-LISP:* SB-ALIEN:UNSIGNED-SHORT)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |l64a|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("l64a" |l64a|) - (COMMON-LISP:* COMMON-LISP:CHAR) - (ARG1 SB-ALIEN:LONG))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |jrand48|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("jrand48" |jrand48|) - SB-ALIEN:LONG - (ARG1 (COMMON-LISP:* SB-ALIEN:UNSIGNED-SHORT)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |initstate|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("initstate" |initstate|) - (COMMON-LISP:* COMMON-LISP:CHAR) - (ARG1 SB-ALIEN:UNSIGNED-LONG) - (ARG2 (COMMON-LISP:* COMMON-LISP:CHAR)) - (ARG3 SB-ALIEN:LONG))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |grantpt|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("grantpt" |grantpt|) - SB-ALIEN:INT - (ARG1 SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |getsubopt|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("getsubopt" |getsubopt|) - SB-ALIEN:INT - (ARG1 - (COMMON-LISP:* - (COMMON-LISP:* COMMON-LISP:CHAR))) - (ARG2 - (COMMON-LISP:* - (COMMON-LISP:* COMMON-LISP:CHAR))) - (ARG3 - (COMMON-LISP:* - (COMMON-LISP:* COMMON-LISP:CHAR))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |gcvt|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("gcvt" |gcvt|) - (COMMON-LISP:* COMMON-LISP:CHAR) - (ARG1 SB-ALIEN:DOUBLE) - (ARG2 SB-ALIEN:INT) - (ARG3 (COMMON-LISP:* COMMON-LISP:CHAR)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |fcvt|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("fcvt" |fcvt|) - (COMMON-LISP:* COMMON-LISP:CHAR) - (ARG1 SB-ALIEN:DOUBLE) - (ARG2 SB-ALIEN:INT) - (ARG3 (COMMON-LISP:* SB-ALIEN:INT)) - (ARG4 (COMMON-LISP:* SB-ALIEN:INT)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |erand48|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("erand48" |erand48|) - SB-ALIEN:DOUBLE - (ARG1 (COMMON-LISP:* SB-ALIEN:UNSIGNED-SHORT)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |ecvt|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("ecvt" |ecvt|) - (COMMON-LISP:* COMMON-LISP:CHAR) - (ARG1 SB-ALIEN:DOUBLE) - (ARG2 SB-ALIEN:INT) - (ARG3 (COMMON-LISP:* SB-ALIEN:INT)) - (ARG4 (COMMON-LISP:* SB-ALIEN:INT)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |drand48|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("drand48" |drand48|) SB-ALIEN:DOUBLE)) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |a64l|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("a64l" |a64l|) - SB-ALIEN:LONG - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |wctomb|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("wctomb" |wctomb|) - SB-ALIEN:INT - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)) - (ARG2 SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |wcstombs|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("wcstombs" |wcstombs|) - SB-ALIEN:UNSIGNED-LONG - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)) - (ARG2 (COMMON-LISP:* SB-ALIEN:INT)) - (ARG3 SB-ALIEN:UNSIGNED-LONG))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |system|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("system" |system|) - SB-ALIEN:INT - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |strtoull|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("strtoull" |strtoull|) - (COMMON-LISP:INTEGER 64) - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)) - (ARG2 - (COMMON-LISP:* - (COMMON-LISP:* COMMON-LISP:CHAR))) - (ARG3 SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |strtoul|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("strtoul" |strtoul|) - SB-ALIEN:UNSIGNED-LONG - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)) - (ARG2 - (COMMON-LISP:* - (COMMON-LISP:* COMMON-LISP:CHAR))) - (ARG3 SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |strtoll|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("strtoll" |strtoll|) - (COMMON-LISP:INTEGER 64) - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)) - (ARG2 - (COMMON-LISP:* - (COMMON-LISP:* COMMON-LISP:CHAR))) - (ARG3 SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |strtold|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("strtold" |strtold|) - SB-ALIEN:DOUBLE - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)) - (ARG2 - (COMMON-LISP:* - (COMMON-LISP:* COMMON-LISP:CHAR))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |strtol|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("strtol" |strtol|) - SB-ALIEN:LONG - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)) - (ARG2 - (COMMON-LISP:* - (COMMON-LISP:* COMMON-LISP:CHAR))) - (ARG3 SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |strtof|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("strtof" |strtof|) - COMMON-LISP:FLOAT - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)) - (ARG2 - (COMMON-LISP:* - (COMMON-LISP:* COMMON-LISP:CHAR))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |strtod|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("strtod" |strtod|) - SB-ALIEN:DOUBLE - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)) - (ARG2 - (COMMON-LISP:* - (COMMON-LISP:* COMMON-LISP:CHAR))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |srand|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("srand" |srand|) - SB-ALIEN:VOID - (ARG1 SB-ALIEN:UNSIGNED-INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |realloc|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("realloc" |realloc|) - (COMMON-LISP:* COMMON-LISP:T) - (ARG1 (COMMON-LISP:* COMMON-LISP:T)) - (ARG2 SB-ALIEN:UNSIGNED-LONG))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |rand|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("rand" |rand|) SB-ALIEN:INT)) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |qsort|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("qsort" |qsort|) - SB-ALIEN:VOID - (ARG1 (COMMON-LISP:* COMMON-LISP:T)) - (ARG2 SB-ALIEN:UNSIGNED-LONG) - (ARG3 SB-ALIEN:UNSIGNED-LONG) - (ARG4 - (COMMON-LISP:* - (COMMON-LISP:FUNCTION SB-ALIEN:INT - (COMMON-LISP:* COMMON-LISP:T) - (COMMON-LISP:* COMMON-LISP:T)))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |mbtowc|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("mbtowc" |mbtowc|) - SB-ALIEN:INT - (ARG1 (COMMON-LISP:* SB-ALIEN:INT)) - (ARG2 (COMMON-LISP:* COMMON-LISP:CHAR)) - (ARG3 SB-ALIEN:UNSIGNED-LONG))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |mbstowcs|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("mbstowcs" |mbstowcs|) - SB-ALIEN:UNSIGNED-LONG - (ARG1 (COMMON-LISP:* SB-ALIEN:INT)) - (ARG2 (COMMON-LISP:* COMMON-LISP:CHAR)) - (ARG3 SB-ALIEN:UNSIGNED-LONG))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |mblen|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("mblen" |mblen|) - SB-ALIEN:INT - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)) - (ARG2 SB-ALIEN:UNSIGNED-LONG))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |malloc|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("malloc" |malloc|) - (COMMON-LISP:* COMMON-LISP:T) - (ARG1 SB-ALIEN:UNSIGNED-LONG))) -(COMMON-LISP:PROGN - (SB-ALIEN:DEFINE-ALIEN-TYPE |lldiv_t| - (SB-ALIEN:STRUCT |lldiv_t| - (|quot| (COMMON-LISP:INTEGER 64) - :ALIGNMENT - 8) - (|rem| (COMMON-LISP:INTEGER 64) - :ALIGNMENT - 64))) - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |lldiv|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("lldiv" |lldiv|) - (SB-ALIEN:STRUCT |lldiv_t|) - (ARG1 (COMMON-LISP:INTEGER 64)) - (ARG2 (COMMON-LISP:INTEGER 64)))) -(COMMON-LISP:PROGN - (SB-ALIEN:DEFINE-ALIEN-TYPE |ldiv_t| - (SB-ALIEN:STRUCT |ldiv_t| - (|quot| SB-ALIEN:LONG - :ALIGNMENT - 8) - (|rem| SB-ALIEN:LONG - :ALIGNMENT - 32))) - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |ldiv|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("ldiv" |ldiv|) - (SB-ALIEN:STRUCT |ldiv_t|) - (ARG1 SB-ALIEN:LONG) - (ARG2 SB-ALIEN:LONG))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |getenv|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("getenv" |getenv|) - (COMMON-LISP:* COMMON-LISP:CHAR) - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |free|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("free" |free|) - SB-ALIEN:VOID - (ARG1 (COMMON-LISP:* COMMON-LISP:T)))) -(COMMON-LISP:PROGN - (SB-ALIEN:DEFINE-ALIEN-TYPE |div_t| - (SB-ALIEN:STRUCT |div_t| - (|quot| SB-ALIEN:INT - :ALIGNMENT - 8) - (|rem| SB-ALIEN:INT - :ALIGNMENT - 32))) - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |div|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("div" |div|) - (SB-ALIEN:STRUCT |div_t|) - (ARG1 SB-ALIEN:INT) - (ARG2 SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |calloc|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("calloc" |calloc|) - (COMMON-LISP:* COMMON-LISP:T) - (ARG1 SB-ALIEN:UNSIGNED-LONG) - (ARG2 SB-ALIEN:UNSIGNED-LONG))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |bsearch|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("bsearch" |bsearch|) - (COMMON-LISP:* COMMON-LISP:T) - (ARG1 (COMMON-LISP:* COMMON-LISP:T)) - (ARG2 (COMMON-LISP:* COMMON-LISP:T)) - (ARG3 SB-ALIEN:UNSIGNED-LONG) - (ARG4 SB-ALIEN:UNSIGNED-LONG) - (ARG5 - (COMMON-LISP:* - (COMMON-LISP:FUNCTION SB-ALIEN:INT - (COMMON-LISP:* COMMON-LISP:T) - (COMMON-LISP:* COMMON-LISP:T)))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |atoll|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("atoll" |atoll|) - (COMMON-LISP:INTEGER 64) - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |atol|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("atol" |atol|) - SB-ALIEN:LONG - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |atoi|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("atoi" |atoi|) - SB-ALIEN:INT - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |atof|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("atof" |atof|) - SB-ALIEN:DOUBLE - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |atexit|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("atexit" |atexit|) - SB-ALIEN:INT - (ARG1 (COMMON-LISP:* #'SB-ALIEN:VOID)))) -(SB-ALIEN:DEFINE-ALIEN-VARIABLE ("__mb_cur_max" |__mb_cur_max|) SB-ALIEN:INT) -(SB-ALIEN:DEFINE-ALIEN-TYPE |rune_t| SB-ALIEN:INT) -(SB-ALIEN:DEFINE-ALIEN-TYPE |ct_rune_t| SB-ALIEN:INT) -(COMMON-LISP:PROGN - (COMMON-LISP:PROGN - (SB-ALIEN:DEFINE-ALIEN-TYPE |__darwin_pid_t| SB-ALIEN:INT) - (SB-ALIEN:DEFINE-ALIEN-TYPE |pid_t| SB-ALIEN:INT)) - (COMMON-LISP:PROGN - (COMMON-LISP:PROGN - (COMMON-LISP:PROGN - (SB-ALIEN:DEFINE-ALIEN-TYPE |__darwin_time_t| SB-ALIEN:LONG) - (SB-ALIEN:DEFINE-ALIEN-TYPE |__darwin_suseconds_t| SB-ALIEN:INT) - (SB-ALIEN:DEFINE-ALIEN-TYPE |timeval| - (SB-ALIEN:STRUCT |timeval| - (|tv_sec| SB-ALIEN:LONG - :ALIGNMENT - 8) - (|tv_usec| SB-ALIEN:INT - :ALIGNMENT - 32)))) - (SB-ALIEN:DEFINE-ALIEN-TYPE |rusage| - (SB-ALIEN:STRUCT |rusage| - (|ru_utime| - (SB-ALIEN:STRUCT |timeval|) - :ALIGNMENT - 8) - (|ru_stime| - (SB-ALIEN:STRUCT |timeval|) - :ALIGNMENT - 64) - (|ru_maxrss| SB-ALIEN:LONG - :ALIGNMENT - 64) - (|ru_ixrss| SB-ALIEN:LONG - :ALIGNMENT - 32) - (|ru_idrss| SB-ALIEN:LONG - :ALIGNMENT - 64) - (|ru_isrss| SB-ALIEN:LONG - :ALIGNMENT - 32) - (|ru_minflt| SB-ALIEN:LONG - :ALIGNMENT - 64) - (|ru_majflt| SB-ALIEN:LONG - :ALIGNMENT - 32) - (|ru_nswap| SB-ALIEN:LONG - :ALIGNMENT - 64) - (|ru_inblock| SB-ALIEN:LONG - :ALIGNMENT - 32) - (|ru_oublock| SB-ALIEN:LONG - :ALIGNMENT - 64) - (|ru_msgsnd| SB-ALIEN:LONG - :ALIGNMENT - 32) - (|ru_msgrcv| SB-ALIEN:LONG - :ALIGNMENT - 64) - (|ru_nsignals| SB-ALIEN:LONG - :ALIGNMENT - 32) - (|ru_nvcsw| SB-ALIEN:LONG - :ALIGNMENT - 64) - (|ru_nivcsw| SB-ALIEN:LONG - :ALIGNMENT - 32))))) - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |wait4|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("wait4" |wait4|) - SB-ALIEN:INT - (ARG1 SB-ALIEN:INT) - (ARG2 (COMMON-LISP:* SB-ALIEN:INT)) - (ARG3 SB-ALIEN:INT) - (ARG4 - (COMMON-LISP:* (SB-ALIEN:STRUCT |rusage|))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |wait3|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("wait3" |wait3|) - SB-ALIEN:INT - (ARG1 (COMMON-LISP:* SB-ALIEN:INT)) - (ARG2 SB-ALIEN:INT) - (ARG3 - (COMMON-LISP:* (SB-ALIEN:STRUCT |rusage|))))) -(COMMON-LISP:PROGN - (COMMON-LISP:PROGN - (SB-ALIEN:DEFINE-ALIEN-TYPE |idtype_t| - (SB-ALIEN:ENUM COMMON-LISP:NIL - (P_ALL 0) - (P_PID 1) - (P_PGID 2))) - (COMMON-LISP:DEFPARAMETER P_ALL 0) - (COMMON-LISP:DEFPARAMETER P_PID 1) - (COMMON-LISP:DEFPARAMETER P_PGID 2)) - (COMMON-LISP:PROGN - (SB-ALIEN:DEFINE-ALIEN-TYPE |__darwin_id_t| SB-ALIEN:UNSIGNED-INT) - (SB-ALIEN:DEFINE-ALIEN-TYPE |id_t| SB-ALIEN:UNSIGNED-INT)) - (COMMON-LISP:PROGN - (COMMON-LISP:PROGN - (COMMON-LISP:PROGN - (COMMON-LISP:PROGN - (SB-ALIEN:DEFINE-ALIEN-TYPE |__darwin_uid_t| SB-ALIEN:UNSIGNED-INT) - (SB-ALIEN:DEFINE-ALIEN-TYPE |uid_t| SB-ALIEN:UNSIGNED-INT)) - (SB-ALIEN:DEFINE-ALIEN-TYPE |sigval| - (COMMON-LISP:UNION |sigval| - (|sival_int| SB-ALIEN:INT) - (|sival_ptr| - (COMMON-LISP:* - COMMON-LISP:T)))) - (SB-ALIEN:DEFINE-ALIEN-TYPE |__siginfo| - (SB-ALIEN:STRUCT |__siginfo| - (|si_signo| SB-ALIEN:INT - :ALIGNMENT - 8) - (|si_errno| SB-ALIEN:INT - :ALIGNMENT - 32) - (|si_code| SB-ALIEN:INT - :ALIGNMENT - 64) - (|si_pid| SB-ALIEN:INT - :ALIGNMENT - 32) - (|si_uid| - SB-ALIEN:UNSIGNED-INT - :ALIGNMENT - 64) - (|si_status| SB-ALIEN:INT - :ALIGNMENT - 32) - (|si_addr| - (COMMON-LISP:* COMMON-LISP:T) - :ALIGNMENT - 64) - (|si_value| - (COMMON-LISP:UNION |sigval|) - :ALIGNMENT - 32) - (|si_band| SB-ALIEN:LONG - :ALIGNMENT - 64) - (|pad| - (COMMON-LISP:ARRAY - SB-ALIEN:UNSIGNED-LONG - 7) - :ALIGNMENT - 32)))) - (SB-ALIEN:DEFINE-ALIEN-TYPE |siginfo_t| (SB-ALIEN:STRUCT |__siginfo|)))) - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |waitid|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("waitid" |waitid|) - SB-ALIEN:INT - (ARG1 |idtype_t|) - (ARG2 SB-ALIEN:UNSIGNED-INT) - (ARG3 - (COMMON-LISP:* (SB-ALIEN:STRUCT |__siginfo|))) - (ARG4 SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |waitpid|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("waitpid" |waitpid|) - SB-ALIEN:INT - (ARG1 SB-ALIEN:INT) - (ARG2 (COMMON-LISP:* SB-ALIEN:INT)) - (ARG3 SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |wait|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("wait" |wait|) - SB-ALIEN:INT - (ARG1 (COMMON-LISP:* SB-ALIEN:INT)))) -(COMMON-LISP:PROGN - (SB-ALIEN:DEFINE-ALIEN-TYPE |N4wait3$_4E| - (SB-ALIEN:STRUCT |N4wait3$_4E| - (|w_Termsig| - SB-ALIEN:UNSIGNED-INT - :ALIGNMENT - 8) - (|w_Coredump| - SB-ALIEN:UNSIGNED-INT - :ALIGNMENT - 1) - (|w_Retcode| - SB-ALIEN:UNSIGNED-INT - :ALIGNMENT - 8) - (|w_Filler| SB-ALIEN:UNSIGNED-INT - :ALIGNMENT - 16))) - (SB-ALIEN:DEFINE-ALIEN-TYPE |N4wait3$_5E| - (SB-ALIEN:STRUCT |N4wait3$_5E| - (|w_Stopval| - SB-ALIEN:UNSIGNED-INT - :ALIGNMENT - 8) - (|w_Stopsig| - SB-ALIEN:UNSIGNED-INT - :ALIGNMENT - 8) - (|w_Filler| SB-ALIEN:UNSIGNED-INT - :ALIGNMENT - 16))) - (SB-ALIEN:DEFINE-ALIEN-TYPE |wait| - (COMMON-LISP:UNION |wait| - (|w_status| SB-ALIEN:INT) - (|w_T| - (SB-ALIEN:STRUCT - |N4wait3$_4E|)) - (|w_S| - (SB-ALIEN:STRUCT - |N4wait3$_5E|))))) -(COMMON-LISP:PROGN - (SB-ALIEN:DEFINE-ALIEN-TYPE |uint32_t| SB-ALIEN:UNSIGNED-INT) - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |htonl|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("htonl" |htonl|) - SB-ALIEN:UNSIGNED-INT - (ARG1 SB-ALIEN:UNSIGNED-INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |ntohl|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("ntohl" |ntohl|) - SB-ALIEN:UNSIGNED-INT - (ARG1 SB-ALIEN:UNSIGNED-INT))) -(COMMON-LISP:PROGN - (SB-ALIEN:DEFINE-ALIEN-TYPE |uint16_t| SB-ALIEN:UNSIGNED-SHORT) - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |htons|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("htons" |htons|) - SB-ALIEN:UNSIGNED-SHORT - (ARG1 SB-ALIEN:UNSIGNED-SHORT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |ntohs|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("ntohs" |ntohs|) - SB-ALIEN:UNSIGNED-SHORT - (ARG1 SB-ALIEN:UNSIGNED-SHORT))) -(COMMON-LISP:PROGN - (SB-ALIEN:DEFINE-ALIEN-TYPE |uintptr_t| SB-ALIEN:UNSIGNED-LONG) - (SB-ALIEN:DEFINE-ALIEN-TYPE |uint64_t| (COMMON-LISP:INTEGER 64)) - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |_OSWriteInt64|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("_OSWriteInt64" |_OSWriteInt64|) - SB-ALIEN:VOID - (|base| (COMMON-LISP:* COMMON-LISP:T)) - (|byteOffset| SB-ALIEN:UNSIGNED-LONG) - (|data| (COMMON-LISP:INTEGER 64)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |_OSWriteInt32|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("_OSWriteInt32" |_OSWriteInt32|) - SB-ALIEN:VOID - (|base| (COMMON-LISP:* COMMON-LISP:T)) - (|byteOffset| SB-ALIEN:UNSIGNED-LONG) - (|data| SB-ALIEN:UNSIGNED-INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |_OSWriteInt16|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("_OSWriteInt16" |_OSWriteInt16|) - SB-ALIEN:VOID - (|base| (COMMON-LISP:* COMMON-LISP:T)) - (|byteOffset| SB-ALIEN:UNSIGNED-LONG) - (|data| SB-ALIEN:UNSIGNED-SHORT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |_OSReadInt64|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("_OSReadInt64" |_OSReadInt64|) - (COMMON-LISP:INTEGER 64) - (|base| (COMMON-LISP:* COMMON-LISP:T)) - (|byteOffset| SB-ALIEN:UNSIGNED-LONG))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |_OSReadInt32|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("_OSReadInt32" |_OSReadInt32|) - SB-ALIEN:UNSIGNED-INT - (|base| (COMMON-LISP:* COMMON-LISP:T)) - (|byteOffset| SB-ALIEN:UNSIGNED-LONG))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |_OSReadInt16|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("_OSReadInt16" |_OSReadInt16|) - SB-ALIEN:UNSIGNED-SHORT - (|base| (COMMON-LISP:* COMMON-LISP:T)) - (|byteOffset| SB-ALIEN:UNSIGNED-LONG))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |OSHostByteOrder|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("OSHostByteOrder" |OSHostByteOrder|) - SB-ALIEN:INT)) -(COMMON-LISP:PROGN - (SB-ALIEN:DEFINE-ALIEN-TYPE $_3 - (SB-ALIEN:ENUM COMMON-LISP:NIL - (|OSUnknownByteOrder| 0) - (|OSLittleEndian| 1) - (|OSBigEndian| 2))) - (COMMON-LISP:DEFPARAMETER |OSUnknownByteOrder| 0) - (COMMON-LISP:DEFPARAMETER |OSLittleEndian| 1) - (COMMON-LISP:DEFPARAMETER |OSBigEndian| 2)) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |OSWriteSwapInt64|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("OSWriteSwapInt64" |OSWriteSwapInt64|) - SB-ALIEN:VOID - (|base| (COMMON-LISP:* COMMON-LISP:T)) - (|byteOffset| SB-ALIEN:UNSIGNED-LONG) - (|data| (COMMON-LISP:INTEGER 64)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |OSWriteSwapInt32|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("OSWriteSwapInt32" |OSWriteSwapInt32|) - SB-ALIEN:VOID - (|base| (COMMON-LISP:* COMMON-LISP:T)) - (|byteOffset| SB-ALIEN:UNSIGNED-LONG) - (|data| SB-ALIEN:UNSIGNED-INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |OSWriteSwapInt16|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("OSWriteSwapInt16" |OSWriteSwapInt16|) - SB-ALIEN:VOID - (|base| (COMMON-LISP:* COMMON-LISP:T)) - (|byteOffset| SB-ALIEN:UNSIGNED-LONG) - (|data| SB-ALIEN:UNSIGNED-SHORT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |OSReadSwapInt64|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("OSReadSwapInt64" |OSReadSwapInt64|) - (COMMON-LISP:INTEGER 64) - (|base| (COMMON-LISP:* COMMON-LISP:T)) - (|byteOffset| SB-ALIEN:UNSIGNED-LONG))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |OSReadSwapInt32|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("OSReadSwapInt32" |OSReadSwapInt32|) - SB-ALIEN:UNSIGNED-INT - (|base| (COMMON-LISP:* COMMON-LISP:T)) - (|byteOffset| SB-ALIEN:UNSIGNED-LONG))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |OSReadSwapInt16|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("OSReadSwapInt16" |OSReadSwapInt16|) - SB-ALIEN:UNSIGNED-SHORT - (|base| (COMMON-LISP:* COMMON-LISP:T)) - (|byteOffset| SB-ALIEN:UNSIGNED-LONG))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |_OSSwapInt64|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("_OSSwapInt64" |_OSSwapInt64|) - (COMMON-LISP:INTEGER 64) - (|data| (COMMON-LISP:INTEGER 64)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |_OSSwapInt32|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("_OSSwapInt32" |_OSSwapInt32|) - SB-ALIEN:UNSIGNED-INT - (|data| SB-ALIEN:UNSIGNED-INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |_OSSwapInt16|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("_OSSwapInt16" |_OSSwapInt16|) - SB-ALIEN:UNSIGNED-SHORT - (|data| SB-ALIEN:UNSIGNED-SHORT))) -(SB-ALIEN:DEFINE-ALIEN-TYPE |uintmax_t| (COMMON-LISP:INTEGER 64)) -(SB-ALIEN:DEFINE-ALIEN-TYPE |intmax_t| (COMMON-LISP:INTEGER 64)) -(SB-ALIEN:DEFINE-ALIEN-TYPE |intptr_t| SB-ALIEN:LONG) -(SB-ALIEN:DEFINE-ALIEN-TYPE |uint_fast64_t| (COMMON-LISP:INTEGER 64)) -(SB-ALIEN:DEFINE-ALIEN-TYPE |uint_fast32_t| SB-ALIEN:UNSIGNED-INT) -(SB-ALIEN:DEFINE-ALIEN-TYPE |uint_fast16_t| SB-ALIEN:UNSIGNED-SHORT) -(COMMON-LISP:PROGN - (SB-ALIEN:DEFINE-ALIEN-TYPE |uint8_t| SB-ALIEN:UNSIGNED-CHAR) - (SB-ALIEN:DEFINE-ALIEN-TYPE |uint_fast8_t| SB-ALIEN:UNSIGNED-CHAR)) -(SB-ALIEN:DEFINE-ALIEN-TYPE |int_fast64_t| (COMMON-LISP:INTEGER 64)) -(SB-ALIEN:DEFINE-ALIEN-TYPE |int_fast32_t| SB-ALIEN:INT) -(COMMON-LISP:PROGN - (SB-ALIEN:DEFINE-ALIEN-TYPE |int16_t| SB-ALIEN:SHORT) - (SB-ALIEN:DEFINE-ALIEN-TYPE |int_fast16_t| SB-ALIEN:SHORT)) -(COMMON-LISP:PROGN - (SB-ALIEN:DEFINE-ALIEN-TYPE |int8_t| COMMON-LISP:CHAR) - (SB-ALIEN:DEFINE-ALIEN-TYPE |int_fast8_t| COMMON-LISP:CHAR)) -(SB-ALIEN:DEFINE-ALIEN-TYPE |uint_least64_t| (COMMON-LISP:INTEGER 64)) -(SB-ALIEN:DEFINE-ALIEN-TYPE |uint_least32_t| SB-ALIEN:UNSIGNED-INT) -(SB-ALIEN:DEFINE-ALIEN-TYPE |uint_least16_t| SB-ALIEN:UNSIGNED-SHORT) -(SB-ALIEN:DEFINE-ALIEN-TYPE |uint_least8_t| SB-ALIEN:UNSIGNED-CHAR) -(SB-ALIEN:DEFINE-ALIEN-TYPE |int_least64_t| (COMMON-LISP:INTEGER 64)) -(SB-ALIEN:DEFINE-ALIEN-TYPE |int_least32_t| SB-ALIEN:INT) -(SB-ALIEN:DEFINE-ALIEN-TYPE |int_least16_t| SB-ALIEN:SHORT) -(SB-ALIEN:DEFINE-ALIEN-TYPE |int_least8_t| COMMON-LISP:CHAR) -(COMMON-LISP:PROGN - (COMMON-LISP:PROGN - (COMMON-LISP:PROGN - (COMMON-LISP:PROGN - (SB-ALIEN:DEFINE-ALIEN-TYPE |rlim_t| (COMMON-LISP:INTEGER 64)) - (SB-ALIEN:DEFINE-ALIEN-TYPE |rlimit| - (SB-ALIEN:STRUCT |rlimit| - (|rlim_cur| - (COMMON-LISP:INTEGER 64) - :ALIGNMENT - 8) - (|rlim_max| - (COMMON-LISP:INTEGER 64) - :ALIGNMENT - 64)))))) - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |setrlimit|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("setrlimit" |setrlimit|) - SB-ALIEN:INT - (ARG1 SB-ALIEN:INT) - (ARG2 - (COMMON-LISP:* (SB-ALIEN:STRUCT |rlimit|))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |setpriority|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("setpriority" |setpriority|) - SB-ALIEN:INT - (ARG1 SB-ALIEN:INT) - (ARG2 SB-ALIEN:UNSIGNED-INT) - (ARG3 SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |getrusage|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("getrusage" |getrusage|) - SB-ALIEN:INT - (ARG1 SB-ALIEN:INT) - (ARG2 - (COMMON-LISP:* (SB-ALIEN:STRUCT |rusage|))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |getrlimit|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("getrlimit" |getrlimit|) - SB-ALIEN:INT - (ARG1 SB-ALIEN:INT) - (ARG2 - (COMMON-LISP:* (SB-ALIEN:STRUCT |rlimit|))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |getpriority|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("getpriority" |getpriority|) - SB-ALIEN:INT - (ARG1 SB-ALIEN:INT) - (ARG2 SB-ALIEN:UNSIGNED-INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |signal|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("signal" |signal|) - (COMMON-LISP:* - (COMMON-LISP:FUNCTION SB-ALIEN:VOID - SB-ALIEN:INT)) - (ARG1 SB-ALIEN:INT) - (ARG2 - (COMMON-LISP:* - (COMMON-LISP:FUNCTION SB-ALIEN:VOID - SB-ALIEN:INT))))) -(SB-ALIEN:DEFINE-ALIEN-TYPE |sigstack| - (SB-ALIEN:STRUCT |sigstack| - (|ss_sp| - (COMMON-LISP:* COMMON-LISP:CHAR) - :ALIGNMENT - 8) - (|ss_onstack| SB-ALIEN:INT - :ALIGNMENT - 32))) -(SB-ALIEN:DEFINE-ALIEN-TYPE |sigvec| - (SB-ALIEN:STRUCT |sigvec| - (|sv_handler| - (COMMON-LISP:* - (COMMON-LISP:FUNCTION - SB-ALIEN:VOID SB-ALIEN:INT)) - :ALIGNMENT - 8) - (|sv_mask| SB-ALIEN:INT - :ALIGNMENT - 32) - (|sv_flags| SB-ALIEN:INT - :ALIGNMENT - 64))) -(SB-ALIEN:DEFINE-ALIEN-TYPE |sigaltstack| - (SB-ALIEN:STRUCT |sigaltstack| - (|ss_sp| - (COMMON-LISP:* COMMON-LISP:T) - :ALIGNMENT - 8) - (|ss_size| SB-ALIEN:UNSIGNED-LONG - :ALIGNMENT - 32) - (|ss_flags| SB-ALIEN:INT - :ALIGNMENT - 64))) -(COMMON-LISP:PROGN - (SB-ALIEN:DEFINE-ALIEN-TYPE |__darwin_stack_t| - (SB-ALIEN:STRUCT |sigaltstack|)) - (SB-ALIEN:DEFINE-ALIEN-TYPE |stack_t| (SB-ALIEN:STRUCT |sigaltstack|))) -(SB-ALIEN:DEFINE-ALIEN-TYPE |sig_t| - (COMMON-LISP:* - (COMMON-LISP:FUNCTION SB-ALIEN:VOID SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (SB-ALIEN:DEFINE-ALIEN-TYPE |__sigaction_u| - (COMMON-LISP:UNION |__sigaction_u| - (|__sa_handler| - (COMMON-LISP:* - (COMMON-LISP:FUNCTION - SB-ALIEN:VOID - SB-ALIEN:INT))) - (|__sa_sigaction| - (COMMON-LISP:* - (COMMON-LISP:FUNCTION - SB-ALIEN:VOID SB-ALIEN:INT - (COMMON-LISP:* - (SB-ALIEN:STRUCT - |__siginfo|)) - (COMMON-LISP:* - COMMON-LISP:T)))))) - (COMMON-LISP:PROGN - (SB-ALIEN:DEFINE-ALIEN-TYPE |__darwin_sigset_t| SB-ALIEN:UNSIGNED-INT) - (SB-ALIEN:DEFINE-ALIEN-TYPE |sigset_t| SB-ALIEN:UNSIGNED-INT)) - (SB-ALIEN:DEFINE-ALIEN-TYPE |sigaction| - (SB-ALIEN:STRUCT |sigaction| - (|__sigaction_u| - (COMMON-LISP:UNION - |__sigaction_u|) - :ALIGNMENT - 8) - (|sa_mask| SB-ALIEN:UNSIGNED-INT - :ALIGNMENT - 32) - (|sa_flags| SB-ALIEN:INT - :ALIGNMENT - 64)))) -(SB-ALIEN:DEFINE-ALIEN-TYPE |__sigaction| - (SB-ALIEN:STRUCT |__sigaction| - (|__sigaction_u| - (COMMON-LISP:UNION - |__sigaction_u|) - :ALIGNMENT - 8) - (|sa_tramp| - (COMMON-LISP:* - (COMMON-LISP:FUNCTION - SB-ALIEN:VOID - (COMMON-LISP:* COMMON-LISP:T) - SB-ALIEN:INT SB-ALIEN:INT - (COMMON-LISP:* - (SB-ALIEN:STRUCT |__siginfo|)) - (COMMON-LISP:* COMMON-LISP:T))) - :ALIGNMENT - 32) - (|sa_mask| SB-ALIEN:UNSIGNED-INT - :ALIGNMENT - 64) - (|sa_flags| SB-ALIEN:INT - :ALIGNMENT - 32))) -(SB-ALIEN:DEFINE-ALIEN-TYPE |sigevent| - (SB-ALIEN:STRUCT |sigevent| - (|sigev_notify| SB-ALIEN:INT - :ALIGNMENT - 8) - (|sigev_signo| SB-ALIEN:INT - :ALIGNMENT - 32) - (|sigev_value| - (COMMON-LISP:UNION |sigval|) - :ALIGNMENT - 64) - (|sigev_notify_function| - (COMMON-LISP:* - (COMMON-LISP:FUNCTION - SB-ALIEN:VOID - (COMMON-LISP:UNION |sigval|))) - :ALIGNMENT - 32) - (|sigev_notify_attributes| - (COMMON-LISP:* - (SB-ALIEN:STRUCT - |_opaque_pthread_attr_t|)) - :ALIGNMENT - 64))) -(SB-ALIEN:DEFINE-ALIEN-TYPE |ucontext64| - (SB-ALIEN:STRUCT |ucontext64| - (|uc_onstack| SB-ALIEN:INT - :ALIGNMENT - 8) - (|uc_sigmask| - SB-ALIEN:UNSIGNED-INT - :ALIGNMENT - 32) - (|uc_stack| - (SB-ALIEN:STRUCT |sigaltstack|) - :ALIGNMENT - 64) - (|uc_link| - (COMMON-LISP:* - (SB-ALIEN:STRUCT |ucontext64|)) - :ALIGNMENT - 32) - (|uc_mcsize| - SB-ALIEN:UNSIGNED-LONG - :ALIGNMENT - 64) - (|uc_mcontext64| - (COMMON-LISP:* - (SB-ALIEN:STRUCT |mcontext64|)) - :ALIGNMENT - 32))) -(COMMON-LISP:PROGN - (SB-ALIEN:DEFINE-ALIEN-TYPE |__darwin_ucontext64_t| - (SB-ALIEN:STRUCT |ucontext64|)) - (SB-ALIEN:DEFINE-ALIEN-TYPE |ucontext64_t| (SB-ALIEN:STRUCT |ucontext64|))) -(SB-ALIEN:DEFINE-ALIEN-TYPE |ucontext| - (SB-ALIEN:STRUCT |ucontext| - (|uc_onstack| SB-ALIEN:INT - :ALIGNMENT - 8) - (|uc_sigmask| - SB-ALIEN:UNSIGNED-INT - :ALIGNMENT - 32) - (|uc_stack| - (SB-ALIEN:STRUCT |sigaltstack|) - :ALIGNMENT - 64) - (|uc_link| - (COMMON-LISP:* - (SB-ALIEN:STRUCT |ucontext|)) - :ALIGNMENT - 32) - (|uc_mcsize| - SB-ALIEN:UNSIGNED-LONG - :ALIGNMENT - 64) - (|uc_mcontext| - (COMMON-LISP:* - (SB-ALIEN:STRUCT |mcontext|)) - :ALIGNMENT - 32))) -(COMMON-LISP:PROGN - (SB-ALIEN:DEFINE-ALIEN-TYPE |__darwin_ucontext_t| - (SB-ALIEN:STRUCT |ucontext|)) - (SB-ALIEN:DEFINE-ALIEN-TYPE |ucontext_t| (SB-ALIEN:STRUCT |ucontext|))) -(SB-ALIEN:DEFINE-ALIEN-TYPE |_opaque_pthread_attr_t| - (SB-ALIEN:STRUCT |_opaque_pthread_attr_t| - (|__sig| SB-ALIEN:LONG - :ALIGNMENT - 8) - (|__opaque| - (COMMON-LISP:ARRAY - COMMON-LISP:CHAR - 36) - :ALIGNMENT - 32))) -(COMMON-LISP:PROGN - (SB-ALIEN:DEFINE-ALIEN-TYPE |__darwin_pthread_attr_t| - (SB-ALIEN:STRUCT |_opaque_pthread_attr_t|)) - (SB-ALIEN:DEFINE-ALIEN-TYPE |pthread_attr_t| - (SB-ALIEN:STRUCT |_opaque_pthread_attr_t|))) -(COMMON-LISP:PROGN - (SB-ALIEN:DEFINE-ALIEN-TYPE |mcontext64| (SB-ALIEN:STRUCT |mcontext64|))) -(COMMON-LISP:PROGN - (SB-ALIEN:DEFINE-ALIEN-TYPE |__darwin_mcontext64_t| - (COMMON-LISP:* (SB-ALIEN:STRUCT |mcontext64|))) - (SB-ALIEN:DEFINE-ALIEN-TYPE |mcontext64_t| - (COMMON-LISP:* (SB-ALIEN:STRUCT |mcontext64|)))) -(COMMON-LISP:PROGN - (SB-ALIEN:DEFINE-ALIEN-TYPE |mcontext| (SB-ALIEN:STRUCT |mcontext|))) -(COMMON-LISP:PROGN - (SB-ALIEN:DEFINE-ALIEN-TYPE |__darwin_mcontext_t| - (COMMON-LISP:* (SB-ALIEN:STRUCT |mcontext|))) - (SB-ALIEN:DEFINE-ALIEN-TYPE |mcontext_t| - (COMMON-LISP:* (SB-ALIEN:STRUCT |mcontext|)))) -(SB-ALIEN:DEFINE-ALIEN-TYPE |sigcontext| - (SB-ALIEN:STRUCT |sigcontext| - (|sc_onstack| SB-ALIEN:INT - :ALIGNMENT - 8) - (|sc_mask| SB-ALIEN:INT - :ALIGNMENT - 32) - (|sc_eax| SB-ALIEN:UNSIGNED-INT - :ALIGNMENT - 64) - (|sc_ebx| SB-ALIEN:UNSIGNED-INT - :ALIGNMENT - 32) - (|sc_ecx| SB-ALIEN:UNSIGNED-INT - :ALIGNMENT - 64) - (|sc_edx| SB-ALIEN:UNSIGNED-INT - :ALIGNMENT - 32) - (|sc_edi| SB-ALIEN:UNSIGNED-INT - :ALIGNMENT - 64) - (|sc_esi| SB-ALIEN:UNSIGNED-INT - :ALIGNMENT - 32) - (|sc_ebp| SB-ALIEN:UNSIGNED-INT - :ALIGNMENT - 64) - (|sc_esp| SB-ALIEN:UNSIGNED-INT - :ALIGNMENT - 32) - (|sc_ss| SB-ALIEN:UNSIGNED-INT - :ALIGNMENT - 64) - (|sc_eflags| SB-ALIEN:UNSIGNED-INT - :ALIGNMENT - 32) - (|sc_eip| SB-ALIEN:UNSIGNED-INT - :ALIGNMENT - 64) - (|sc_cs| SB-ALIEN:UNSIGNED-INT - :ALIGNMENT - 32) - (|sc_ds| SB-ALIEN:UNSIGNED-INT - :ALIGNMENT - 64) - (|sc_es| SB-ALIEN:UNSIGNED-INT - :ALIGNMENT - 32) - (|sc_fs| SB-ALIEN:UNSIGNED-INT - :ALIGNMENT - 64) - (|sc_gs| SB-ALIEN:UNSIGNED-INT - :ALIGNMENT - 32))) -(SB-ALIEN:DEFINE-ALIEN-TYPE |sig_atomic_t| SB-ALIEN:INT) -(SB-ALIEN:DEFINE-ALIEN-TYPE |ptrdiff_t| SB-ALIEN:INT) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |__sputc|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("__sputc" |__sputc|) - SB-ALIEN:INT - (|_c| SB-ALIEN:INT) - (|_p| - (COMMON-LISP:* (SB-ALIEN:STRUCT |__sFILE|))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |__swbuf|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("__swbuf" |__swbuf|) - SB-ALIEN:INT - (ARG1 SB-ALIEN:INT) - (ARG2 - (COMMON-LISP:* (SB-ALIEN:STRUCT |__sFILE|))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |__svfscanf|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("__svfscanf" |__svfscanf|) - SB-ALIEN:INT - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT |__sFILE|))) - (ARG2 (COMMON-LISP:* COMMON-LISP:CHAR)) - (ARG3 (COMMON-LISP:* COMMON-LISP:CHAR)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |__srget|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("__srget" |__srget|) - SB-ALIEN:INT - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT |__sFILE|))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |funopen|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("funopen" |funopen|) - (COMMON-LISP:* (SB-ALIEN:STRUCT |__sFILE|)) - (ARG1 (COMMON-LISP:* COMMON-LISP:T)) - (ARG2 - (COMMON-LISP:* - (COMMON-LISP:FUNCTION SB-ALIEN:INT - (COMMON-LISP:* COMMON-LISP:T) - (COMMON-LISP:* COMMON-LISP:CHAR) - SB-ALIEN:INT))) - (ARG3 - (COMMON-LISP:* - (COMMON-LISP:FUNCTION SB-ALIEN:INT - (COMMON-LISP:* COMMON-LISP:T) - (COMMON-LISP:* COMMON-LISP:CHAR) - SB-ALIEN:INT))) - (ARG4 - (COMMON-LISP:* - (COMMON-LISP:FUNCTION - (COMMON-LISP:INTEGER 64) - (COMMON-LISP:* COMMON-LISP:T) - (COMMON-LISP:INTEGER 64) SB-ALIEN:INT))) - (ARG5 - (COMMON-LISP:* - (COMMON-LISP:FUNCTION SB-ALIEN:INT - (COMMON-LISP:* COMMON-LISP:T)))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |zopen|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("zopen" |zopen|) - (COMMON-LISP:* (SB-ALIEN:STRUCT |__sFILE|)) - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)) - (ARG2 (COMMON-LISP:* COMMON-LISP:CHAR)) - (ARG3 SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |vfscanf|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("vfscanf" |vfscanf|) - SB-ALIEN:INT - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT |__sFILE|))) - (ARG2 (COMMON-LISP:* COMMON-LISP:CHAR)) - (ARG3 (COMMON-LISP:* COMMON-LISP:CHAR)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |tempnam|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("tempnam" |tempnam|) - (COMMON-LISP:* COMMON-LISP:CHAR) - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)) - (ARG2 (COMMON-LISP:* COMMON-LISP:CHAR)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |setlinebuf|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("setlinebuf" |setlinebuf|) - SB-ALIEN:INT - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT |__sFILE|))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |setbuffer|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("setbuffer" |setbuffer|) - SB-ALIEN:VOID - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT |__sFILE|))) - (ARG2 (COMMON-LISP:* COMMON-LISP:CHAR)) - (ARG3 SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |putw|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("putw" |putw|) - SB-ALIEN:INT - (ARG1 SB-ALIEN:INT) - (ARG2 - (COMMON-LISP:* (SB-ALIEN:STRUCT |__sFILE|))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |putchar_unlocked|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("putchar_unlocked" |putchar_unlocked|) - SB-ALIEN:INT - (ARG1 SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |putc_unlocked|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("putc_unlocked" |putc_unlocked|) - SB-ALIEN:INT - (ARG1 SB-ALIEN:INT) - (ARG2 - (COMMON-LISP:* (SB-ALIEN:STRUCT |__sFILE|))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |popen|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("popen" |popen|) - (COMMON-LISP:* (SB-ALIEN:STRUCT |__sFILE|)) - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)) - (ARG2 (COMMON-LISP:* COMMON-LISP:CHAR)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |pclose|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("pclose" |pclose|) - SB-ALIEN:INT - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT |__sFILE|))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |getw|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("getw" |getw|) - SB-ALIEN:INT - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT |__sFILE|))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |getchar_unlocked|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("getchar_unlocked" |getchar_unlocked|) - SB-ALIEN:INT)) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |getc_unlocked|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("getc_unlocked" |getc_unlocked|) - SB-ALIEN:INT - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT |__sFILE|))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |funlockfile|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("funlockfile" |funlockfile|) - SB-ALIEN:VOID - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT |__sFILE|))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |ftrylockfile|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("ftrylockfile" |ftrylockfile|) - SB-ALIEN:INT - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT |__sFILE|))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |ftello|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("ftello" |ftello|) - (COMMON-LISP:INTEGER 64) - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT |__sFILE|))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |fseeko|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("fseeko" |fseeko|) - SB-ALIEN:INT - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT |__sFILE|))) - (ARG2 (COMMON-LISP:INTEGER 64)) - (ARG3 SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |fpurge|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("fpurge" |fpurge|) - SB-ALIEN:INT - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT |__sFILE|))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |fmtcheck|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("fmtcheck" |fmtcheck|) - (COMMON-LISP:* COMMON-LISP:CHAR) - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)) - (ARG2 (COMMON-LISP:* COMMON-LISP:CHAR)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |flockfile|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("flockfile" |flockfile|) - SB-ALIEN:VOID - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT |__sFILE|))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |fileno|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("fileno" |fileno|) - SB-ALIEN:INT - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT |__sFILE|))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |fgetln|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("fgetln" |fgetln|) - (COMMON-LISP:* COMMON-LISP:CHAR) - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT |__sFILE|))) - (ARG2 (COMMON-LISP:* SB-ALIEN:UNSIGNED-LONG)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |fdopen|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("fdopen" |fdopen|) - (COMMON-LISP:* (SB-ALIEN:STRUCT |__sFILE|)) - (ARG1 SB-ALIEN:INT) - (ARG2 (COMMON-LISP:* COMMON-LISP:CHAR)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |ctermid_r|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("ctermid_r" |ctermid_r|) - (COMMON-LISP:* COMMON-LISP:CHAR) - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |ctermid|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("ctermid" |ctermid|) - (COMMON-LISP:* COMMON-LISP:CHAR) - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |vasprintf|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("vasprintf" |vasprintf|) - SB-ALIEN:INT - (ARG1 - (COMMON-LISP:* - (COMMON-LISP:* COMMON-LISP:CHAR))) - (ARG2 (COMMON-LISP:* COMMON-LISP:CHAR)) - (ARG3 (COMMON-LISP:* COMMON-LISP:CHAR)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |asprintf|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("asprintf" |asprintf|) - SB-ALIEN:INT - (ARG1 - (COMMON-LISP:* - (COMMON-LISP:* COMMON-LISP:CHAR))) - (ARG2 (COMMON-LISP:* COMMON-LISP:CHAR)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |vfprintf|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("vfprintf" |vfprintf|) - SB-ALIEN:INT - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT |__sFILE|))) - (ARG2 (COMMON-LISP:* COMMON-LISP:CHAR)) - (ARG3 (COMMON-LISP:* COMMON-LISP:CHAR)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |ungetc|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("ungetc" |ungetc|) - SB-ALIEN:INT - (ARG1 SB-ALIEN:INT) - (ARG2 - (COMMON-LISP:* (SB-ALIEN:STRUCT |__sFILE|))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |tmpnam|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("tmpnam" |tmpnam|) - (COMMON-LISP:* COMMON-LISP:CHAR) - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |tmpfile|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("tmpfile" |tmpfile|) - (COMMON-LISP:* (SB-ALIEN:STRUCT |__sFILE|)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |setvbuf|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("setvbuf" |setvbuf|) - SB-ALIEN:INT - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT |__sFILE|))) - (ARG2 (COMMON-LISP:* COMMON-LISP:CHAR)) - (ARG3 SB-ALIEN:INT) - (ARG4 SB-ALIEN:UNSIGNED-LONG))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |setbuf|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("setbuf" |setbuf|) - SB-ALIEN:VOID - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT |__sFILE|))) - (ARG2 (COMMON-LISP:* COMMON-LISP:CHAR)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |rewind|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("rewind" |rewind|) - SB-ALIEN:VOID - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT |__sFILE|))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |rename|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("rename" |rename|) - SB-ALIEN:INT - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)) - (ARG2 (COMMON-LISP:* COMMON-LISP:CHAR)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |remove|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("remove" |remove|) - SB-ALIEN:INT - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |putc|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("putc" |putc|) - SB-ALIEN:INT - (ARG1 SB-ALIEN:INT) - (ARG2 - (COMMON-LISP:* (SB-ALIEN:STRUCT |__sFILE|))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |perror|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("perror" |perror|) - SB-ALIEN:VOID - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)))) -(SB-ALIEN:DEFINE-ALIEN-VARIABLE ("sys_errlist" |sys_errlist|) - (COMMON-LISP:ARRAY - (COMMON-LISP:* COMMON-LISP:CHAR) - 1)) -(SB-ALIEN:DEFINE-ALIEN-VARIABLE ("sys_nerr" |sys_nerr|) SB-ALIEN:INT) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |gets|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("gets" |gets|) - (COMMON-LISP:* COMMON-LISP:CHAR) - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |getchar|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("getchar" |getchar|) SB-ALIEN:INT)) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |getc|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("getc" |getc|) - SB-ALIEN:INT - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT |__sFILE|))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |fwrite|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("fwrite" |fwrite|) - SB-ALIEN:UNSIGNED-LONG - (ARG1 (COMMON-LISP:* COMMON-LISP:T)) - (ARG2 SB-ALIEN:UNSIGNED-LONG) - (ARG3 SB-ALIEN:UNSIGNED-LONG) - (ARG4 - (COMMON-LISP:* (SB-ALIEN:STRUCT |__sFILE|))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |ftell|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("ftell" |ftell|) - SB-ALIEN:LONG - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT |__sFILE|))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |fsetpos|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("fsetpos" |fsetpos|) - SB-ALIEN:INT - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT |__sFILE|))) - (ARG2 - (COMMON-LISP:* (COMMON-LISP:INTEGER 64))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |fseek|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("fseek" |fseek|) - SB-ALIEN:INT - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT |__sFILE|))) - (ARG2 SB-ALIEN:LONG) - (ARG3 SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |fscanf|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("fscanf" |fscanf|) - SB-ALIEN:INT - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT |__sFILE|))) - (ARG2 (COMMON-LISP:* COMMON-LISP:CHAR)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |freopen|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("freopen" |freopen|) - (COMMON-LISP:* (SB-ALIEN:STRUCT |__sFILE|)) - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)) - (ARG2 (COMMON-LISP:* COMMON-LISP:CHAR)) - (ARG3 - (COMMON-LISP:* (SB-ALIEN:STRUCT |__sFILE|))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |fread|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("fread" |fread|) - SB-ALIEN:UNSIGNED-LONG - (ARG1 (COMMON-LISP:* COMMON-LISP:T)) - (ARG2 SB-ALIEN:UNSIGNED-LONG) - (ARG3 SB-ALIEN:UNSIGNED-LONG) - (ARG4 - (COMMON-LISP:* (SB-ALIEN:STRUCT |__sFILE|))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |fputc|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("fputc" |fputc|) - SB-ALIEN:INT - (ARG1 SB-ALIEN:INT) - (ARG2 - (COMMON-LISP:* (SB-ALIEN:STRUCT |__sFILE|))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |fopen|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("fopen" |fopen|) - (COMMON-LISP:* (SB-ALIEN:STRUCT |__sFILE|)) - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)) - (ARG2 (COMMON-LISP:* COMMON-LISP:CHAR)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |fgets|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("fgets" |fgets|) - (COMMON-LISP:* COMMON-LISP:CHAR) - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)) - (ARG2 SB-ALIEN:INT) - (ARG3 - (COMMON-LISP:* (SB-ALIEN:STRUCT |__sFILE|))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |fgetpos|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("fgetpos" |fgetpos|) - SB-ALIEN:INT - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT |__sFILE|))) - (ARG2 - (COMMON-LISP:* (COMMON-LISP:INTEGER 64))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |fgetc|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("fgetc" |fgetc|) - SB-ALIEN:INT - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT |__sFILE|))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |fflush|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("fflush" |fflush|) - SB-ALIEN:INT - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT |__sFILE|))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |ferror|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("ferror" |ferror|) - SB-ALIEN:INT - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT |__sFILE|))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |feof|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("feof" |feof|) - SB-ALIEN:INT - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT |__sFILE|))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |fclose|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("fclose" |fclose|) - SB-ALIEN:INT - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT |__sFILE|))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |clearerr|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("clearerr" |clearerr|) - SB-ALIEN:VOID - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT |__sFILE|))))) -(SB-ALIEN:DEFINE-ALIEN-VARIABLE ("__sF" |__sF|) - (COMMON-LISP:ARRAY (SB-ALIEN:STRUCT |__sFILE|) - 1)) -(SB-ALIEN:DEFINE-ALIEN-TYPE |__sFILEX| (SB-ALIEN:STRUCT |__sFILEX|)) -(SB-ALIEN:DEFINE-ALIEN-TYPE |__darwin_wctype_t| SB-ALIEN:UNSIGNED-LONG) -(SB-ALIEN:DEFINE-ALIEN-TYPE |__darwin_wctrans_t| SB-ALIEN:INT) -(SB-ALIEN:DEFINE-ALIEN-TYPE |__darwin_nl_item| SB-ALIEN:INT) -(SB-ALIEN:DEFINE-ALIEN-TYPE |__darwin_uuid_t| - (COMMON-LISP:ARRAY SB-ALIEN:UNSIGNED-CHAR 16)) -(SB-ALIEN:DEFINE-ALIEN-TYPE |__darwin_useconds_t| SB-ALIEN:UNSIGNED-INT) -(COMMON-LISP:PROGN - (SB-ALIEN:DEFINE-ALIEN-TYPE |_opaque_pthread_t| - (SB-ALIEN:STRUCT |_opaque_pthread_t| - (|__sig| SB-ALIEN:LONG - :ALIGNMENT - 8) - (|__cleanup_stack| - (COMMON-LISP:* - (SB-ALIEN:STRUCT - |__darwin_pthread_handler_rec|)) - :ALIGNMENT - 32) - (|__opaque| - (COMMON-LISP:ARRAY - COMMON-LISP:CHAR - 596) - :ALIGNMENT - 64)))) -(SB-ALIEN:DEFINE-ALIEN-TYPE |__darwin_pthread_t| - (COMMON-LISP:* - (SB-ALIEN:STRUCT |_opaque_pthread_t|))) -(SB-ALIEN:DEFINE-ALIEN-TYPE |_opaque_pthread_rwlockattr_t| - (SB-ALIEN:STRUCT |_opaque_pthread_rwlockattr_t| - (|__sig| SB-ALIEN:LONG - :ALIGNMENT - 8) - (|__opaque| - (COMMON-LISP:ARRAY - COMMON-LISP:CHAR - 12) - :ALIGNMENT - 32))) -(SB-ALIEN:DEFINE-ALIEN-TYPE |__darwin_pthread_rwlockattr_t| - (SB-ALIEN:STRUCT |_opaque_pthread_rwlockattr_t|)) -(SB-ALIEN:DEFINE-ALIEN-TYPE |_opaque_pthread_rwlock_t| - (SB-ALIEN:STRUCT |_opaque_pthread_rwlock_t| - (|__sig| SB-ALIEN:LONG - :ALIGNMENT - 8) - (|__opaque| - (COMMON-LISP:ARRAY - COMMON-LISP:CHAR - 124) - :ALIGNMENT - 32))) -(SB-ALIEN:DEFINE-ALIEN-TYPE |__darwin_pthread_rwlock_t| - (SB-ALIEN:STRUCT |_opaque_pthread_rwlock_t|)) -(SB-ALIEN:DEFINE-ALIEN-TYPE |_opaque_pthread_once_t| - (SB-ALIEN:STRUCT |_opaque_pthread_once_t| - (|__sig| SB-ALIEN:LONG - :ALIGNMENT - 8) - (|__opaque| - (COMMON-LISP:ARRAY - COMMON-LISP:CHAR - 4) - :ALIGNMENT - 32))) -(SB-ALIEN:DEFINE-ALIEN-TYPE |__darwin_pthread_once_t| - (SB-ALIEN:STRUCT |_opaque_pthread_once_t|)) -(SB-ALIEN:DEFINE-ALIEN-TYPE |_opaque_pthread_mutexattr_t| - (SB-ALIEN:STRUCT |_opaque_pthread_mutexattr_t| - (|__sig| SB-ALIEN:LONG - :ALIGNMENT - 8) - (|__opaque| - (COMMON-LISP:ARRAY - COMMON-LISP:CHAR - 8) - :ALIGNMENT - 32))) -(SB-ALIEN:DEFINE-ALIEN-TYPE |__darwin_pthread_mutexattr_t| - (SB-ALIEN:STRUCT |_opaque_pthread_mutexattr_t|)) -(SB-ALIEN:DEFINE-ALIEN-TYPE |_opaque_pthread_mutex_t| - (SB-ALIEN:STRUCT |_opaque_pthread_mutex_t| - (|__sig| SB-ALIEN:LONG - :ALIGNMENT - 8) - (|__opaque| - (COMMON-LISP:ARRAY - COMMON-LISP:CHAR - 40) - :ALIGNMENT - 32))) -(SB-ALIEN:DEFINE-ALIEN-TYPE |__darwin_pthread_mutex_t| - (SB-ALIEN:STRUCT |_opaque_pthread_mutex_t|)) -(SB-ALIEN:DEFINE-ALIEN-TYPE |__darwin_pthread_key_t| SB-ALIEN:UNSIGNED-LONG) -(SB-ALIEN:DEFINE-ALIEN-TYPE |_opaque_pthread_condattr_t| - (SB-ALIEN:STRUCT |_opaque_pthread_condattr_t| - (|__sig| SB-ALIEN:LONG - :ALIGNMENT - 8) - (|__opaque| - (COMMON-LISP:ARRAY - COMMON-LISP:CHAR - 4) - :ALIGNMENT - 32))) -(SB-ALIEN:DEFINE-ALIEN-TYPE |__darwin_pthread_condattr_t| - (SB-ALIEN:STRUCT |_opaque_pthread_condattr_t|)) -(SB-ALIEN:DEFINE-ALIEN-TYPE |_opaque_pthread_cond_t| - (SB-ALIEN:STRUCT |_opaque_pthread_cond_t| - (|__sig| SB-ALIEN:LONG - :ALIGNMENT - 8) - (|__opaque| - (COMMON-LISP:ARRAY - COMMON-LISP:CHAR - 24) - :ALIGNMENT - 32))) -(SB-ALIEN:DEFINE-ALIEN-TYPE |__darwin_pthread_cond_t| - (SB-ALIEN:STRUCT |_opaque_pthread_cond_t|)) -(COMMON-LISP:PROGN - (COMMON-LISP:PROGN - (SB-ALIEN:DEFINE-ALIEN-TYPE |__darwin_natural_t| SB-ALIEN:UNSIGNED-INT) - (SB-ALIEN:DEFINE-ALIEN-TYPE |__darwin_mach_port_name_t| - SB-ALIEN:UNSIGNED-INT)) - (SB-ALIEN:DEFINE-ALIEN-TYPE |__darwin_mach_port_t| SB-ALIEN:UNSIGNED-INT)) -(SB-ALIEN:DEFINE-ALIEN-TYPE |__darwin_ino_t| SB-ALIEN:UNSIGNED-INT) -(SB-ALIEN:DEFINE-ALIEN-TYPE |__darwin_gid_t| SB-ALIEN:UNSIGNED-INT) -(SB-ALIEN:DEFINE-ALIEN-TYPE |__darwin_fsfilcnt_t| SB-ALIEN:UNSIGNED-INT) -(SB-ALIEN:DEFINE-ALIEN-TYPE |__darwin_fsblkcnt_t| SB-ALIEN:UNSIGNED-INT) -(SB-ALIEN:DEFINE-ALIEN-TYPE |__darwin_blksize_t| SB-ALIEN:INT) -(SB-ALIEN:DEFINE-ALIEN-TYPE |__darwin_blkcnt_t| (COMMON-LISP:INTEGER 64)) -(SB-ALIEN:DEFINE-ALIEN-TYPE |__darwin_pthread_handler_rec| - (SB-ALIEN:STRUCT |__darwin_pthread_handler_rec| - (|__routine| - (COMMON-LISP:* - (COMMON-LISP:FUNCTION - SB-ALIEN:VOID - (COMMON-LISP:* COMMON-LISP:T))) - :ALIGNMENT - 8) - (|__arg| - (COMMON-LISP:* COMMON-LISP:T) - :ALIGNMENT - 32) - (|__next| - (COMMON-LISP:* - (SB-ALIEN:STRUCT - |__darwin_pthread_handler_rec|)) - :ALIGNMENT - 64))) -(SB-ALIEN:DEFINE-ALIEN-TYPE |__darwin_socklen_t| SB-ALIEN:UNSIGNED-INT) -(SB-ALIEN:DEFINE-ALIEN-TYPE |__darwin_clock_t| SB-ALIEN:UNSIGNED-LONG) -(SB-ALIEN:DEFINE-ALIEN-TYPE |__darwin_ptrdiff_t| SB-ALIEN:INT) -(SB-ALIEN:DEFINE-ALIEN-TYPE |__mbstate_t| - (COMMON-LISP:UNION |__mbstate_t| - (|__mbstate8| - (COMMON-LISP:ARRAY - COMMON-LISP:CHAR - 128)) - (|_mbstateL| - (COMMON-LISP:INTEGER 64)))) -(SB-ALIEN:DEFINE-ALIEN-TYPE |__darwin_mbstate_t| - (COMMON-LISP:UNION |__mbstate_t|)) -(SB-ALIEN:DEFINE-ALIEN-TYPE |__darwin_intptr_t| SB-ALIEN:LONG) -(SB-ALIEN:DEFINE-ALIEN-TYPE |__uint64_t| (COMMON-LISP:INTEGER 64)) -(SB-ALIEN:DEFINE-ALIEN-TYPE |__int16_t| SB-ALIEN:SHORT) -(SB-ALIEN:DEFINE-ALIEN-TYPE |__uint8_t| SB-ALIEN:UNSIGNED-CHAR) -(SB-ALIEN:DEFINE-ALIEN-TYPE |__int8_t| COMMON-LISP:CHAR) -(COMMON-LISP:PROGN - (SB-ALIEN:DEFINE-ALIEN-TYPE |SEXPTYPE_enum| - (SB-ALIEN:ENUM COMMON-LISP:NIL - (NILSXP 0) - (SYMSXP 1) - (LISTSXP 2) - (CLOSXP 3) - (ENVSXP 4) - (PROMSXP 5) - (LANGSXP 6) - (SPECIALSXP 7) - (BUILTINSXP 8) - (CHARSXP 9) - (LGLSXP 10) - (INTSXP 13) - (REALSXP 14) - (CPLXSXP 15) - (STRSXP 16) - (DOTSXP 17) - (ANYSXP 18) - (VECSXP 19) - (EXPRSXP 20) - (BCODESXP 21) - (EXTPTRSXP 22) - (WEAKREFSXP 23) - (RAWSXP 24) - (FUNSXP 99))) - (COMMON-LISP:DEFPARAMETER NILSXP 0) - (COMMON-LISP:DEFPARAMETER SYMSXP 1) - (COMMON-LISP:DEFPARAMETER LISTSXP 2) - (COMMON-LISP:DEFPARAMETER CLOSXP 3) - (COMMON-LISP:DEFPARAMETER ENVSXP 4) - (COMMON-LISP:DEFPARAMETER PROMSXP 5) - (COMMON-LISP:DEFPARAMETER LANGSXP 6) - (COMMON-LISP:DEFPARAMETER SPECIALSXP 7) - (COMMON-LISP:DEFPARAMETER BUILTINSXP 8) - (COMMON-LISP:DEFPARAMETER CHARSXP 9) - (COMMON-LISP:DEFPARAMETER LGLSXP 10) - (COMMON-LISP:DEFPARAMETER INTSXP 13) - (COMMON-LISP:DEFPARAMETER REALSXP 14) - (COMMON-LISP:DEFPARAMETER CPLXSXP 15) - (COMMON-LISP:DEFPARAMETER STRSXP 16) - (COMMON-LISP:DEFPARAMETER DOTSXP 17) - (COMMON-LISP:DEFPARAMETER ANYSXP 18) - (COMMON-LISP:DEFPARAMETER VECSXP 19) - (COMMON-LISP:DEFPARAMETER EXPRSXP 20) - (COMMON-LISP:DEFPARAMETER BCODESXP 21) - (COMMON-LISP:DEFPARAMETER EXTPTRSXP 22) - (COMMON-LISP:DEFPARAMETER WEAKREFSXP 23) - (COMMON-LISP:DEFPARAMETER RAWSXP 24) - (COMMON-LISP:DEFPARAMETER FUNSXP 99)) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |_Exit|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("_Exit" |_Exit|) - SB-ALIEN:VOID - (ARG1 SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |exit|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("exit" |exit|) - SB-ALIEN:VOID - (ARG1 SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |abort|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("abort" |abort|) SB-ALIEN:VOID)) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |fprintf|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("fprintf" |fprintf|) - SB-ALIEN:INT - (ARG1 - (COMMON-LISP:* (SB-ALIEN:STRUCT |__sFILE|))) - (ARG2 (COMMON-LISP:* COMMON-LISP:CHAR)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |fputs|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("fputs" |fputs|) - SB-ALIEN:INT - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)) - (ARG2 - (COMMON-LISP:* (SB-ALIEN:STRUCT |__sFILE|))))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |vsprintf|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("vsprintf" |vsprintf|) - SB-ALIEN:INT - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)) - (ARG2 (COMMON-LISP:* COMMON-LISP:CHAR)) - (ARG3 (COMMON-LISP:* COMMON-LISP:CHAR)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |vsnprintf|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("vsnprintf" |vsnprintf|) - SB-ALIEN:INT - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)) - (ARG2 SB-ALIEN:UNSIGNED-LONG) - (ARG3 (COMMON-LISP:* COMMON-LISP:CHAR)) - (ARG4 (COMMON-LISP:* COMMON-LISP:CHAR)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |vsscanf|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("vsscanf" |vsscanf|) - SB-ALIEN:INT - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)) - (ARG2 (COMMON-LISP:* COMMON-LISP:CHAR)) - (ARG3 (COMMON-LISP:* COMMON-LISP:CHAR)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |vscanf|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("vscanf" |vscanf|) - SB-ALIEN:INT - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)) - (ARG2 (COMMON-LISP:* COMMON-LISP:CHAR)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |vprintf|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("vprintf" |vprintf|) - SB-ALIEN:INT - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)) - (ARG2 (COMMON-LISP:* COMMON-LISP:CHAR)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |sscanf|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("sscanf" |sscanf|) - SB-ALIEN:INT - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)) - (ARG2 (COMMON-LISP:* COMMON-LISP:CHAR)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |scanf|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("scanf" |scanf|) - SB-ALIEN:INT - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |sprintf|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("sprintf" |sprintf|) - SB-ALIEN:INT - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)) - (ARG2 (COMMON-LISP:* COMMON-LISP:CHAR)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |snprintf|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("snprintf" |snprintf|) - SB-ALIEN:INT - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)) - (ARG2 SB-ALIEN:UNSIGNED-LONG) - (ARG3 (COMMON-LISP:* COMMON-LISP:CHAR)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |puts|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("puts" |puts|) - SB-ALIEN:INT - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |putchar|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("putchar" |putchar|) - SB-ALIEN:INT - (ARG1 SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |printf|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("printf" |printf|) - SB-ALIEN:INT - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |nanl|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("nanl" |nanl|) - SB-ALIEN:DOUBLE - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |nanf|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("nanf" |nanf|) - COMMON-LISP:FLOAT - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |nan|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("nan" |nan|) - SB-ALIEN:DOUBLE - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |logl|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("logl" |logl|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |expl|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("expl" |expl|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |cosl|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("cosl" |cosl|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |sinl|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("sinl" |sinl|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |sqrtl|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("sqrtl" |sqrtl|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |logf|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("logf" |logf|) - COMMON-LISP:FLOAT - (ARG1 COMMON-LISP:FLOAT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |expf|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("expf" |expf|) - COMMON-LISP:FLOAT - (ARG1 COMMON-LISP:FLOAT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |cosf|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("cosf" |cosf|) - COMMON-LISP:FLOAT - (ARG1 COMMON-LISP:FLOAT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |sinf|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("sinf" |sinf|) - COMMON-LISP:FLOAT - (ARG1 COMMON-LISP:FLOAT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |sqrtf|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("sqrtf" |sqrtf|) - COMMON-LISP:FLOAT - (ARG1 COMMON-LISP:FLOAT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |log|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("log" |log|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |exp|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("exp" |exp|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |cos|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("cos" |cos|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |sin|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("sin" |sin|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |sqrt|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("sqrt" |sqrt|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |strrchr|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("strrchr" |strrchr|) - (COMMON-LISP:* COMMON-LISP:CHAR) - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)) - (ARG2 SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |strchr|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("strchr" |strchr|) - (COMMON-LISP:* COMMON-LISP:CHAR) - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)) - (ARG2 SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |strcspn|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("strcspn" |strcspn|) - SB-ALIEN:UNSIGNED-LONG - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)) - (ARG2 (COMMON-LISP:* COMMON-LISP:CHAR)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |strspn|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("strspn" |strspn|) - SB-ALIEN:UNSIGNED-LONG - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)) - (ARG2 (COMMON-LISP:* COMMON-LISP:CHAR)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |strpbrk|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("strpbrk" |strpbrk|) - (COMMON-LISP:* COMMON-LISP:CHAR) - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)) - (ARG2 (COMMON-LISP:* COMMON-LISP:CHAR)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |strstr|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("strstr" |strstr|) - (COMMON-LISP:* COMMON-LISP:CHAR) - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)) - (ARG2 (COMMON-LISP:* COMMON-LISP:CHAR)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |strlen|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("strlen" |strlen|) - SB-ALIEN:UNSIGNED-LONG - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |strncmp|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("strncmp" |strncmp|) - SB-ALIEN:INT - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)) - (ARG2 (COMMON-LISP:* COMMON-LISP:CHAR)) - (ARG3 SB-ALIEN:UNSIGNED-LONG))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |strcmp|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("strcmp" |strcmp|) - SB-ALIEN:INT - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)) - (ARG2 (COMMON-LISP:* COMMON-LISP:CHAR)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |strncpy|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("strncpy" |strncpy|) - (COMMON-LISP:* COMMON-LISP:CHAR) - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)) - (ARG2 (COMMON-LISP:* COMMON-LISP:CHAR)) - (ARG3 SB-ALIEN:UNSIGNED-LONG))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |strcpy|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("strcpy" |strcpy|) - (COMMON-LISP:* COMMON-LISP:CHAR) - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)) - (ARG2 (COMMON-LISP:* COMMON-LISP:CHAR)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |strncat|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("strncat" |strncat|) - (COMMON-LISP:* COMMON-LISP:CHAR) - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)) - (ARG2 (COMMON-LISP:* COMMON-LISP:CHAR)) - (ARG3 SB-ALIEN:UNSIGNED-LONG))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |strcat|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("strcat" |strcat|) - (COMMON-LISP:* COMMON-LISP:CHAR) - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)) - (ARG2 (COMMON-LISP:* COMMON-LISP:CHAR)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |memset|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("memset" |memset|) - (COMMON-LISP:* COMMON-LISP:T) - (ARG1 (COMMON-LISP:* COMMON-LISP:T)) - (ARG2 SB-ALIEN:INT) - (ARG3 SB-ALIEN:UNSIGNED-LONG))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |memcmp|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("memcmp" |memcmp|) - SB-ALIEN:INT - (ARG1 (COMMON-LISP:* COMMON-LISP:T)) - (ARG2 (COMMON-LISP:* COMMON-LISP:T)) - (ARG3 SB-ALIEN:UNSIGNED-LONG))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |memcpy|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("memcpy" |memcpy|) - (COMMON-LISP:* COMMON-LISP:T) - (ARG1 (COMMON-LISP:* COMMON-LISP:T)) - (ARG2 (COMMON-LISP:* COMMON-LISP:T)) - (ARG3 SB-ALIEN:UNSIGNED-LONG))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |rindex|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("rindex" |rindex|) - (COMMON-LISP:* COMMON-LISP:CHAR) - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)) - (ARG2 SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |index|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("index" |index|) - (COMMON-LISP:* COMMON-LISP:CHAR) - (ARG1 (COMMON-LISP:* COMMON-LISP:CHAR)) - (ARG2 SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |ffs|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("ffs" |ffs|) SB-ALIEN:INT (ARG1 SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |bcmp|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("bcmp" |bcmp|) - SB-ALIEN:INT - (ARG1 (COMMON-LISP:* COMMON-LISP:T)) - (ARG2 (COMMON-LISP:* COMMON-LISP:T)) - (ARG3 SB-ALIEN:UNSIGNED-LONG))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |bzero|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("bzero" |bzero|) - SB-ALIEN:VOID - (ARG1 (COMMON-LISP:* COMMON-LISP:T)) - (ARG2 SB-ALIEN:UNSIGNED-LONG))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |llabs|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("llabs" |llabs|) - (COMMON-LISP:INTEGER 64) - (ARG1 (COMMON-LISP:INTEGER 64)))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |fabsl|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("fabsl" |fabsl|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |fabsf|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("fabsf" |fabsf|) - COMMON-LISP:FLOAT - (ARG1 COMMON-LISP:FLOAT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |fabs|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("fabs" |fabs|) - SB-ALIEN:DOUBLE - (ARG1 SB-ALIEN:DOUBLE))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |labs|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("labs" |labs|) - SB-ALIEN:LONG - (ARG1 SB-ALIEN:LONG))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |abs|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("abs" |abs|) SB-ALIEN:INT (ARG1 SB-ALIEN:INT))) -(COMMON-LISP:PROGN - (COMMON-LISP:DECLAIM (COMMON-LISP:INLINE |alloca|)) - (SB-ALIEN:DEFINE-ALIEN-ROUTINE ("alloca" |alloca|) - (COMMON-LISP:* COMMON-LISP:T) - (ARG1 SB-ALIEN:UNSIGNED-LONG))) diff --git a/clsr/gccxml-src/clsr.xml b/clsr/gccxml-src/clsr.xml deleted file mode 100644 index 2f2e3ee..0000000 --- a/clsr/gccxml-src/clsr.xml +++ /dev/null @@ -1,4542 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -- 2.11.4.GIT