diff --git a/compiler/float-tran.lisp b/compiler/float-tran.lisp
index 0247f75393e13c9b5112cee5fbbe436cff3b3139..1824fae6b2876602a7c89e7dd82dba374aaec7cd 100644
--- a/compiler/float-tran.lisp
+++ b/compiler/float-tran.lisp
@@ -5,7 +5,7 @@
 ;;; Carnegie Mellon University, and has been placed in the public domain.
 ;;;
 (ext:file-comment
-  "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/float-tran.lisp,v 1.45 1997/12/06 18:47:34 dtc Exp $")
+  "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/float-tran.lisp,v 1.46 1997/12/06 20:12:21 pw Exp $")
 ;;;
 ;;; **********************************************************************
 ;;;
@@ -1258,6 +1258,12 @@
   (frob single-float)
   (frob double-float))
 
+(macrolet ((frob (type)
+	     `(deftransform cis ((z) ((,type)) *)
+	       '(complex (cos z) (sin z)))))
+  (frob single-float)
+  (frob double-float))
+
 ;;; Here are simple optimizers for sin, cos, and tan.  They do not
 ;;; produce a minimal range for the result; the result is the widest
 ;;; possible answer.  This gets around the problem of doing range