From 2b8353c7ad2f53e750c084801312aed59a1937cf Mon Sep 17 00:00:00 2001
From: wlott <wlott>
Date: Tue, 27 Mar 1990 17:39:19 +0000
Subject: [PATCH] Initial revision

---
 compiler/generic/vm-typetran.lisp | 43 +++++++++++++++++++++++++++++++
 1 file changed, 43 insertions(+)
 create mode 100644 compiler/generic/vm-typetran.lisp

diff --git a/compiler/generic/vm-typetran.lisp b/compiler/generic/vm-typetran.lisp
new file mode 100644
index 000000000..0465161ca
--- /dev/null
+++ b/compiler/generic/vm-typetran.lisp
@@ -0,0 +1,43 @@
+;;; -*- Package: C; Log: C.Log -*-
+;;;
+;;; **********************************************************************
+;;; This code was written as part of the Spice Lisp project at
+;;; Carnegie-Mellon University, and has been placed in the public domain.
+;;; If you want to use this code or any part of Spice Lisp, please contact
+;;; Scott Fahlman (FAHLMAN@CMUC). 
+;;; **********************************************************************
+;;;
+;;; $Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/generic/vm-typetran.lisp,v 1.1 1990/03/27 17:39:19 wlott Exp $
+;;;
+;;; This file contains the implimentation specific type transformation magic.
+;;; Basically, the various non-standard predicates that can be used in typep
+;;; transformations.
+;;; 
+;;; Written by William Lott.
+;;;
+
+(in-package "C")
+
+
+;;;; Internal predicates:
+;;;
+;;;    These type predicates are used to implement simple cases of typep.  They
+;;; shouldn't be used explicitly.
+
+(define-type-predicate base-char-p base-character)
+(define-type-predicate bignump bignum)
+(define-type-predicate double-float-p double-float)
+(define-type-predicate fixnump fixnum)
+(define-type-predicate long-float-p long-float)
+(define-type-predicate ratiop ratio)
+(define-type-predicate short-float-p short-float)
+(define-type-predicate single-float-p single-float)
+(define-type-predicate simple-array-p simple-array)
+(define-type-predicate system-area-pointer system-area-pointer-p)
+
+;;; Unlike the un-%'ed versions, these are true type predicates, accepting any
+;;; type object.
+;;;
+(define-type-predicate %string-char-p string-char)
+(define-type-predicate %standard-char-p standard-char)
+
-- 
GitLab