CMUCL commit: intl-branch src (8 files)

Raymond Toy rtoy at common-lisp.net
Thu Feb 11 03:45:33 CET 2010


    Date: Wednesday, February 10, 2010 @ 21:45:33
  Author: rtoy
    Path: /project/cmucl/cvsroot/src
     Tag: intl-branch

Modified: compiler/represent.lisp compiler/saptran.lisp compiler/seqtran.lisp
          compiler/srctran.lisp compiler/tn.lisp compiler/typetran.lisp
          i18n/locale/cmucl.pot i18n/locale/ko/LC_MESSAGES/cmucl.po

Mark translatable strings; regenerate cmucl.pot and ko/cmucl.po
accordingly. 


-------------------------------------+
 compiler/represent.lisp             |   30 +--
 compiler/saptran.lisp               |    4 
 compiler/seqtran.lisp               |   34 ++--
 compiler/srctran.lisp               |   88 +++++-----
 compiler/tn.lisp                    |    6 
 compiler/typetran.lisp              |   14 -
 i18n/locale/cmucl.pot               |  274 +++++++++++++++++++++++++++++++++
 i18n/locale/ko/LC_MESSAGES/cmucl.po |  275 ++++++++++++++++++++++++++++++++++
 8 files changed, 637 insertions(+), 88 deletions(-)


Index: src/compiler/represent.lisp
diff -u src/compiler/represent.lisp:1.38.38.1 src/compiler/represent.lisp:1.38.38.2
--- src/compiler/represent.lisp:1.38.38.1	Mon Feb  8 12:15:51 2010
+++ src/compiler/represent.lisp	Wed Feb 10 21:45:32 2010
@@ -5,7 +5,7 @@
 ;;; Carnegie Mellon University, and has been placed in the public domain.
 ;;;
 (ext:file-comment
-  "$Header: /project/cmucl/cvsroot/src/compiler/represent.lisp,v 1.38.38.1 2010-02-08 17:15:51 rtoy Exp $")
+  "$Header: /project/cmucl/cvsroot/src/compiler/represent.lisp,v 1.38.38.2 2010-02-11 02:45:32 rtoy Exp $")
 ;;;
 ;;; **********************************************************************
 ;;;
@@ -52,7 +52,7 @@
 		  (values arg-p
 			  (+ n
 			     (or (position-in #'tn-ref-across ref refs)
-				 (error "Couldn't find REF?"))
+				 (error _"Couldn't find REF?"))
 			     1)
 			  t
 			  more-cost
@@ -118,10 +118,10 @@
 	    (losers (svref (backend-sc-numbers *backend*) scn))))
 
 	(unless (losers)
-	  (error "Representation selection flamed out for no obvious reason.~@
+	  (error _"Representation selection flamed out for no obvious reason.~@
 	          Try again after recompiling the VM definition."))
 	
-	(error "~S is not valid as the ~:R ~:[result~;argument~] to the~@
+	(error _"~S is not valid as the ~:R ~:[result~;argument~] to the~@
 	        ~S VOP, since the TN's primitive type ~S allows SCs:~%  ~S~@
 		~:[which cannot be coerced or loaded into the allowed SCs:~
 		~%  ~S~;~*~]~:[~;~@
@@ -169,14 +169,14 @@
 			   (dolist (vop vops) (move-lose (template-name vop)))
 			   (no-move-scs i-sc))))
 		    (t
-		     (error "Representation selection flamed out for no ~
+		     (error _"Representation selection flamed out for no ~
 		             obvious reason."))))))
 	
 	(unless (or (load-lose) (no-move-scs) (move-lose))
-	  (error "Representation selection flamed out for no obvious reason.~@
+	  (error _"Representation selection flamed out for no obvious reason.~@
 	          Try again after recompiling the VM definition."))
 
-	(error "~S is not valid as the ~:R ~:[result~;argument~] to VOP:~
+	(error _"~S is not valid as the ~:R ~:[result~;argument~] to VOP:~
 	        ~%  ~S~%Primitive type: ~S~@
 		SC restrictions:~%  ~S~@
 		~@[The primitive type disallows these loadable SCs:~%  ~S~%~]~
@@ -201,7 +201,7 @@
 ;;;
 (defun bad-move-arg-error (val pass)
   (declare (type tn val pass))
-  (error "No :MOVE-ARGUMENT VOP defined to move ~S (SC ~S) to ~
+  (error _"No :MOVE-ARGUMENT VOP defined to move ~S (SC ~S) to ~
           ~S (SC ~S.)"
 	 val (sc-name (tn-sc val))
 	 pass (sc-name (tn-sc pass))))
@@ -221,17 +221,17 @@
 	(let ((moves (sc-move-functions sc)))
 	  (dolist (const (sc-constant-scs sc))
 	    (unless (svref moves (sc-number const))
-	      (warn "No move function defined to load SC ~S from constant ~
+	      (warn _"No move function defined to load SC ~S from constant ~
 	             SC ~S."
 		    (sc-name sc) (sc-name const))))
 	  
 	  (dolist (alt (sc-alternate-scs sc))
 	    (unless (svref moves (sc-number alt))
-	      (warn "No move function defined to load SC ~S from alternate ~
+	      (warn _"No move function defined to load SC ~S from alternate ~
 	             SC ~S."
 		    (sc-name sc) (sc-name alt)))
 	    (unless (svref (sc-move-functions alt) i)
-	      (warn "No move function defined to save SC ~S to alternate ~
+	      (warn _"No move function defined to save SC ~S to alternate ~
 	             SC ~S."
 		    (sc-name sc) (sc-name alt)))))))))
 
@@ -387,7 +387,7 @@
     (cond ((lambda-var-p leaf) (leaf-name leaf))
 	  ((and (not arg-p) reads
 		(return-p (vop-node (tn-ref-vop reads))))
-	   "<return value>")
+	   _"<return value>")
 	  (t
 	   nil))))
 
@@ -419,14 +419,14 @@
 					    (if arg-p
 						(vop-args op-vop)
 						(vop-results op-vop)))
-			       (error "Couldn't fine op?  Bug!")))))
+			       (error _"Couldn't fine op?  Bug!")))))
 	     (compiler-note
-	      "Doing ~A (cost ~D)~:[~2*~; ~:[to~;from~] ~S~], for:~%~6T~
+	      _"Doing ~A (cost ~D)~:[~2*~; ~:[to~;from~] ~S~], for:~%~6T~
 	       The ~:R ~:[result~;argument~] of ~A."
 	      note cost name arg-p name
 	      pos arg-p op-note)))
 	  (t
-	   (compiler-note "Doing ~A (cost ~D)~@[ from ~S~]~@[ to ~S~]."
+	   (compiler-note _"Doing ~A (cost ~D)~@[ from ~S~]~@[ to ~S~]."
 			  note cost (get-operand-name op-tn t)
 			  (get-operand-name dest-tn nil)))))
   (undefined-value))
Index: src/compiler/saptran.lisp
diff -u src/compiler/saptran.lisp:1.18.24.1 src/compiler/saptran.lisp:1.18.24.2
--- src/compiler/saptran.lisp:1.18.24.1	Mon Feb  8 12:15:51 2010
+++ src/compiler/saptran.lisp	Wed Feb 10 21:45:32 2010
@@ -5,7 +5,7 @@
 ;;; Carnegie Mellon University, and has been placed in the public domain.
 ;;;
 (ext:file-comment
-  "$Header: /project/cmucl/cvsroot/src/compiler/saptran.lisp,v 1.18.24.1 2010-02-08 17:15:51 rtoy Exp $")
+  "$Header: /project/cmucl/cvsroot/src/compiler/saptran.lisp,v 1.18.24.2 2010-02-11 02:45:32 rtoy Exp $")
 ;;;
 ;;; **********************************************************************
 ;;;
@@ -55,7 +55,7 @@
 	 symbol))
       (t
        (compiler-error
-        "FOREIGN-SYMBOL-ADDRESS flavor ~S is not :CODE or :DATA" flav)))))
+        _"FOREIGN-SYMBOL-ADDRESS flavor ~S is not :CODE or :DATA" flav)))))
 
 (defknown (sap< sap<= sap= sap>= sap>)
 	  (system-area-pointer system-area-pointer) boolean
Index: src/compiler/seqtran.lisp
diff -u src/compiler/seqtran.lisp:1.33.10.1 src/compiler/seqtran.lisp:1.33.10.2
--- src/compiler/seqtran.lisp:1.33.10.1	Mon Feb  8 12:15:51 2010
+++ src/compiler/seqtran.lisp	Wed Feb 10 21:45:32 2010
@@ -5,7 +5,7 @@
 ;;; Carnegie Mellon University, and has been placed in the public domain.
 ;;;
 (ext:file-comment
-  "$Header: /project/cmucl/cvsroot/src/compiler/seqtran.lisp,v 1.33.10.1 2010-02-08 17:15:51 rtoy Exp $")
+  "$Header: /project/cmucl/cvsroot/src/compiler/seqtran.lisp,v 1.33.10.2 2010-02-11 02:45:32 rtoy Exp $")
 ;;;
 ;;; **********************************************************************
 ;;;
@@ -78,7 +78,7 @@
 (deftransform map-into ((result fun &rest seqs)
                         (vector * &rest *)
                         *)
-  "open code"
+  _N"open code"
   (let ((seqs-names (mapcar (lambda (x)
                               (declare (ignore x))
                               (gensym))
@@ -143,17 +143,17 @@
   (destructuring-bind (fun eq-fun) x
     (deftransform fun ((item list &key test) '(t list &rest t) '*
 			:eval-name t)
-      "convert to EQ test"
+      _N"convert to EQ test"
       (cond (test
 	     (unless (continuation-function-is test '(eq))
 	       (give-up)))
 	    ((types-intersect (continuation-type item)
 			      (specifier-type 'number))
-	     (give-up "Item might be a number")))
+	     (give-up _"Item might be a number")))
       `(,eq-fun item list))))
 
 (deftransform delete-if ((pred list) (t list))
-  "inline expand"
+  _N"inline expand"
   '(do ((x list (cdr x))
 	(splice '()))
        ((endp x) list)
@@ -165,14 +165,14 @@
 
 (deftransform fill ((seq item &key (start 0) (end (length seq)))
 		    (simple-array t &key (:start t) (:end index)))
-  "open code"
+  _N"open code"
   '(do ((i start (1+ i)))
        ((= i end) seq)
      (declare (type index i))
      (setf (aref seq i) item)))
 
 (deftransform position ((item list &key (test #'eql)) (t list))
-  "open code"
+  _N"open code"
   '(do ((i 0 (1+ i))
 	(l list (cdr l)))
        ((endp l) nil)
@@ -182,7 +182,7 @@
 (deftransform position ((item vec &key (test #'eql) (start 0)
 			      (end (length vec)))
 			(t simple-array &key (:start t) (:end index)))
-  "open code"
+  _N"open code"
   '(do ((i start (1+ i)))
        ((= i end) nil)
      (declare (type index i))
@@ -296,7 +296,7 @@
   (if (and arg (arg-cont arg))
       (let ((cont (arg-cont arg)))
 	(unless (constant-continuation-p cont)
-	  (give-up "Argument is not constant: ~S." (arg-name arg)))
+	  (give-up _"Argument is not constant: ~S." (arg-name arg)))
 	(continuation-value from-end))
       default))
 
@@ -328,7 +328,7 @@
   ;;
   ;; A form that returns the current value.  This may be set with SETF to set
   ;; the current value.
-  (current (error "Must specify CURRENT."))
+  (current (error _"Must specify CURRENT."))
   ;;
   ;; In a :Normal iterator, a form that tests whether there is a current value.
   (done nil)
@@ -339,11 +339,11 @@
   ;;
   ;; A form that returns the initial total number of values.  The result is
   ;; undefined after NEXT has been evaluated.
-  (length (error "Must specify LENGTH."))
+  (length (error _"Must specify LENGTH."))
   ;;
   ;; A form that advances the state to the next value.  It is an error to call
   ;; this when the iterator is Done.
-  (next (error "Must specify NEXT.")))
+  (next (error _"Must specify NEXT.")))
 
 
 ;;; Type of an index var that can go negative (in the from-end case.)
@@ -420,7 +420,7 @@
 					`(1- ,index)
 					`(1+ ,index)))))))))
 	  (t
-	   (give-up "Can't tell whether sequence is a list or a vector.")))))
+	   (give-up _"Can't tell whether sequence is a list or a vector.")))))
 
 
 ;;; MAKE-RESULT-SEQUENCE-ITERATOR  --  Interface
@@ -440,7 +440,7 @@
 ;;; function, give them an efficiency note and reference a coerced version.
 ;;;
 (defmacro coerce-functions (specs &body body)
-  "COERCE-FUNCTIONS ({(Name Fun-Arg Default)}*) Form*"
+  _N"COERCE-FUNCTIONS ({(Name Fun-Arg Default)}*) Form*"
   (collect ((binds)
 	    (defs))
     (dolist (spec specs)
@@ -455,7 +455,7 @@
 				(specifier-type 'function)))
 		(when (policy *compiler-error-context* (> speed brevity))
 		  (compiler-note
-		   "~S may not be a function, so must coerce at run-time."
+		   _"~S may not be a function, so must coerce at run-time."
 		   n-fun))
 		(once-only ((n-fun `(if (functionp ,n-fun)
 					,n-fun
@@ -479,7 +479,7 @@
 (defmacro with-sequence-test ((name test test-not) &body body)
   `(let ((not-p (arg-cont ,test-not)))
      (when (and (arg-cont ,test) not-p)
-       (abort-transform "Both ~S and ~S supplied." (arg-name ,test)
+       (abort-transform _"Both ~S and ~S supplied." (arg-name ,test)
 			(arg-name ,test-not)))
      (coerce-functions ((,name (if not-p ,test-not ,test) eql))
        , at body)))
@@ -651,7 +651,7 @@
     (let ((spec (continuation-value output-spec)))
       (if (subtypep spec 'sequence)
 	  (specifier-type spec)
-	  (compiler-warning "Specified output type ~S is not a sequence type" spec)))))
+	  (compiler-warning _"Specified output type ~S is not a sequence type" spec)))))
 
 (defoptimizer (concatenate derive-type) ((output-spec  seq &rest more-seq))
   ;; The result type of CONCATENATE is OUTPUT-SPEC, but check to see
Index: src/compiler/srctran.lisp
diff -u src/compiler/srctran.lisp:1.170.12.1 src/compiler/srctran.lisp:1.170.12.2
--- src/compiler/srctran.lisp:1.170.12.1	Mon Feb  8 12:15:51 2010
+++ src/compiler/srctran.lisp	Wed Feb 10 21:45:32 2010
@@ -5,7 +5,7 @@
 ;;; Carnegie Mellon University, and has been placed in the public domain.
 ;;;
 (ext:file-comment
-  "$Header: /project/cmucl/cvsroot/src/compiler/srctran.lisp,v 1.170.12.1 2010-02-08 17:15:51 rtoy Exp $")
+  "$Header: /project/cmucl/cvsroot/src/compiler/srctran.lisp,v 1.170.12.2 2010-02-11 02:45:32 rtoy Exp $")
 ;;;
 ;;; **********************************************************************
 ;;;
@@ -68,7 +68,7 @@
 ;;; things out.
 ;;;
 (deftransform complement ((fun) * * :node node :when :both)
-  "open code"
+  _N"open code"
   (multiple-value-bind (min max)
 		       (function-type-nargs (continuation-type fun))
     (cond
@@ -82,7 +82,7 @@
       '#'(lambda (&rest args)
 	   (not (apply fun args))))
      (t
-      (give-up "Function doesn't have fixed argument count.")))))
+      (give-up _"Function doesn't have fixed argument count.")))))
 
 
 ;;;; List hackery:
@@ -149,7 +149,7 @@
 (defvar *extreme-nthcdr-open-code-limit* 20)
 
 (deftransform nthcdr ((n l) (unsigned-byte t) * :node node)
-  "convert NTHCDR to CAxxR"
+  _N"convert NTHCDR to CAxxR"
   (unless (constant-continuation-p n) (give-up))
   (let ((n (continuation-value n)))
     (when (> n
@@ -280,7 +280,7 @@
 			;; Bound exists, so keep it open still
 			(list new-val))))
 		   (t
-		    (error "Unknown bound type in make-interval!")))))
+		    (error _"Unknown bound type in make-interval!")))))
     (%make-interval :low (normalize-bound low)
 		    :high (normalize-bound high))))
 
@@ -771,7 +771,7 @@
 			      :high (bound-mul (interval-high x)
 					       (interval-high y)))))
 	    (t
-	     (error "This shouldn't happen!"))))))
+	     (error _"This shouldn't happen!"))))))
 
 ;;; INTERVAL-DIV
 ;;;
@@ -836,7 +836,7 @@
 			      :high (bound-div (interval-high top)
 					       (interval-low bot) t))))
 	    (t
-	     (error "This shouldn't happen!"))))))
+	     (error _"This shouldn't happen!"))))))
 
 
 ;;; INTERVAL-FUNC
@@ -2862,7 +2862,7 @@
 (deftransform %ldb ((size posn int)
 		    (fixnum fixnum integer)
 		    (unsigned-byte #.vm:word-bits))
-  "convert to inline logical ops"
+  _N"convert to inline logical ops"
   ;; Try to help out the compiler by precomputing things if SIZE or
   ;; POSN are constants.  This helps out modular arithmetic in some
   ;; cases.  (I think it's a deficiency in modular arithmetic that it
@@ -2882,7 +2882,7 @@
 (deftransform %mask-field ((size posn int)
 			   (fixnum fixnum integer)
 			   (unsigned-byte #.vm:word-bits))
-  "convert to inline logical ops"
+  _N"convert to inline logical ops"
   `(logand int
 	   (ash (ash ,(1- (ash 1 vm:word-bits))
 		     (- size ,vm:word-bits))
@@ -2896,7 +2896,7 @@
 (deftransform %dpb ((new size posn int)
 		    *
 		    (unsigned-byte #.vm:word-bits))
-  "convert to inline logical ops"
+  _N"convert to inline logical ops"
   `(let ((mask (ldb (byte size 0) -1)))
      (logior (ash (logand new mask) posn)
 	     (logand int (lognot (ash mask posn))))))
@@ -2904,7 +2904,7 @@
 (deftransform %dpb ((new size posn int)
 		    *
 		    (signed-byte #.vm:word-bits))
-  "convert to inline logical ops"
+  _N"convert to inline logical ops"
   `(let ((mask (ldb (byte size 0) -1)))
      (logior (ash (logand new mask) posn)
 	     (logand int (lognot (ash mask posn))))))
@@ -2912,7 +2912,7 @@
 (deftransform %deposit-field ((new size posn int)
 			      *
 			      (unsigned-byte #.vm:word-bits))
-  "convert to inline logical ops"
+  _N"convert to inline logical ops"
   `(let ((mask (ash (ldb (byte size 0) -1) posn)))
      (logior (logand new mask)
 	     (logand int (lognot mask)))))
@@ -2920,7 +2920,7 @@
 (deftransform %deposit-field ((new size posn int)
 			      *
 			      (signed-byte #.vm:word-bits))
-  "convert to inline logical ops"
+  _N"convert to inline logical ops"
   `(let ((mask (ash (ldb (byte size 0) -1) posn)))
      (logior (logand new mask)
 	     (logand int (lognot mask)))))
@@ -2948,9 +2948,9 @@
 ;;; Handle the case of a constant boole-code.
 ;;;
 (deftransform boole ((op x y) * * :when :both)
-  "convert to inline logical ops"
+  _N"convert to inline logical ops"
   (unless (constant-continuation-p op)
-    (give-up "BOOLE code is not a constant."))
+    (give-up _"BOOLE code is not a constant."))
   (let ((control (continuation-value op)))
     (case control
       (#.boole-clr 0)
@@ -2970,7 +2970,7 @@
       (#.boole-orc1 '(logorc1 x y))
       (#.boole-orc2 '(logorc2 x y))
       (t
-       (abort-transform "~S illegal control arg to BOOLE." control)))))
+       (abort-transform _"~S illegal control arg to BOOLE." control)))))
 
 
 ;;;; Convert multiply/divide to shifts.
@@ -2978,7 +2978,7 @@
 ;;; If arg is a constant power of two, turn * into a shift.
 ;;;
 (deftransform * ((x y) (integer integer) * :when :both)
-  "convert x*2^k to shift"
+  _N"convert x*2^k to shift"
   (unless (constant-continuation-p y) (give-up))
   (let* ((y (continuation-value y))
 	 (y-abs (abs y))
@@ -3012,17 +3012,17 @@
 		     `(values (ash x ,shift)
 			      (- (logand x ,mask) ,delta))))))))
   (deftransform floor ((x y) (integer integer) *)
-    "convert division by 2^k to shift"
+    _N"convert division by 2^k to shift"
     (frob y nil))
   (deftransform ceiling ((x y) (integer integer) *)
-    "convert division by 2^k to shift"
+    _N"convert division by 2^k to shift"
     (frob y t)))
 
 
 ;;; Do the same for mod.
 ;;;
 (deftransform mod ((x y) (integer integer) * :when :both)
-  "convert remainder mod 2^k to LOGAND"
+  _N"convert remainder mod 2^k to LOGAND"
   (unless (constant-continuation-p y) (give-up))
   (let* ((y (continuation-value y))
 	 (y-abs (abs y))
@@ -3039,7 +3039,7 @@
 ;;; If arg is a constant power of two, turn truncate into a shift and mask.
 ;;;
 (deftransform truncate ((x y) (integer integer))
-  "convert division by 2^k to shift"
+  _N"convert division by 2^k to shift"
   (unless (constant-continuation-p y) (give-up))
   (let* ((y (continuation-value y))
 	 (y-abs (abs y))
@@ -3062,7 +3062,7 @@
 ;;; And the same for rem.
 ;;;
 (deftransform rem ((x y) (integer integer) * :when :both)
-  "convert remainder mod 2^k to LOGAND"
+  _N"convert remainder mod 2^k to LOGAND"
   (unless (constant-continuation-p y) (give-up))
   (let* ((y (continuation-value y))
 	 (y-abs (abs y))
@@ -3092,11 +3092,11 @@
   (destructuring-bind (name identity result) stuff
     (deftransform name ((x y) `(* (constant-argument (member ,identity))) '*
 			:eval-name t :when :both)
-      "fold identity operations"
+      _N"fold identity operations"
       result)))
 
 (deftransform logand ((x y) (* (constant-argument t)) *)
-  "fold identity operation"
+  _N"fold identity operation"
   (let ((y (continuation-value y)))
     (unless (and (plusp y)
                  (= y (1- (ash 1 (integer-length y)))))
@@ -3112,14 +3112,14 @@
 ;;;
 (deftransform - ((x y) ((constant-argument (member 0)) rational) *
 		 :when :both)
-  "convert (- 0 x) to negate"
+  _N"convert (- 0 x) to negate"
   '(%negate y))
 
 ;;; Restricted to rationals, because (* 0 -4.0) is -0.0.
 ;;;
 (deftransform * ((x y) (rational (constant-argument (member 0))) *
 		 :when :both)
-  "convert (* x 0) to 0."
+  _N"convert (* x 0) to 0."
   0)
 
 ;;; Fold (+ x 0).
@@ -3128,7 +3128,7 @@
 ;;;
 (deftransform + ((x y) (rational (constant-argument (member 0))) *
 		 :when :both)
-  "fold zero arg"
+  _N"fold zero arg"
   'x)
 
 
@@ -3179,7 +3179,7 @@
 		((and (eq class1 'float) (member class2 '(integer rational)))
 		 Nil)
 		(t
-		 (error "Unexpected types: ~s ~s~%" type1 type2)))))))
+		 (error _"Unexpected types: ~s ~s~%" type1 type2)))))))
 
 ;;; Fold (- x 0).
 ;;;
@@ -3187,7 +3187,7 @@
 ;;; float -0.0 then give up because (- -0.0 -0.0) is 0.0, not -0.0.
 ;;;
 (deftransform - ((x y) (t (constant-argument number)) * :when :both)
-  "fold zero arg"
+  _N"fold zero arg"
   (let ((val (continuation-value y)))
     (unless (and (zerop val)
 		 (not (and (floatp val) (minusp (float-sign val))))
@@ -3203,7 +3203,7 @@
   (destructuring-bind (name result minus-result) stuff
     (deftransform name ((x y) '(t (constant-argument real)) '* :eval-name t
 			:when :both)
-      "fold identity operations"
+      _N"fold identity operations"
       (let ((val (continuation-value y)))
 	(unless (and (= (abs val) 1)
 		     (not-more-contagious y x))
@@ -3214,7 +3214,7 @@
 ;;; N; convert (expt x 1/2) to sqrt.
 ;;;
 (deftransform expt ((x y) (t (constant-argument real)) *)
-  "recode as multiplication or sqrt"
+  _N"recode as multiplication or sqrt"
   (let ((val (continuation-value y)))
     ;; If Y would cause the result to be promoted to the same type as
     ;; Y, we give up.  If not, then the result will be the same type
@@ -3245,13 +3245,13 @@
 (dolist (name '(ash /))
   (deftransform name ((x y) '((constant-argument (integer 0 0)) integer) '*
 		      :eval-name t :when :both)
-    "fold zero arg"
+    _N"fold zero arg"
     0))
 
 (dolist (name '(truncate round floor ceiling))
   (deftransform name ((x y) '((constant-argument (integer 0 0)) integer) '*
 		      :eval-name t :when :both)
-    "fold zero arg"
+    _N"fold zero arg"
     '(values 0 0)))
 
     
@@ -3259,7 +3259,7 @@
 ;;;; Character operations:
 
 (deftransform char-equal ((a b) (base-char base-char))
-  "open code"
+  _N"open code"
   #-(and unicode (not unicode-bootstrap))
   '(let* ((ac (char-code a))
 	  (bc (char-code b))
@@ -3284,7 +3284,7 @@
 	    (lisp::equal-char-code b)))))
 
 (deftransform char-upcase ((x) (base-char))
-  "open code"
+  _N"open code"
   #-(and unicode (not unicode-bootstrap))
   '(if (lower-case-p x)
        (code-char (- (char-code x) 32))
@@ -3296,7 +3296,7 @@
 	   (t x))))
 
 (deftransform char-downcase ((x) (base-char))
-  "open code"
+  _N"open code"
   #-(and unicode (not unicode-bootstrap))
   '(if (upper-case-p x)
        (code-char (+ (char-code x) 32))
@@ -3360,7 +3360,7 @@
 ;;;    that case, otherwise give an efficency note.
 ;;;
 (deftransform eql ((x y) * * :when :both)
-  "convert to simpler equality predicate"
+  _N"convert to simpler equality predicate"
   (let ((x-type (continuation-type x))
 	(y-type (continuation-type y))
 	(char-type (specifier-type 'character))
@@ -3390,7 +3390,7 @@
 ;;; and the same for both.
 ;;; 
 (deftransform = ((x y) * * :when :both)
-  "open code"
+  _N"open code"
   (let ((x-type (continuation-type x))
 	(y-type (continuation-type y)))
     (if (and (csubtypep x-type (specifier-type 'number))
@@ -3410,8 +3410,8 @@
 	       ;; to EQL.
 	       '(eql x y))
 	      (t
-	       (give-up "Operands might not be the same type.")))
-	(give-up "Operands might not be the same type."))))
+	       (give-up _"Operands might not be the same type.")))
+	(give-up _"Operands might not be the same type."))))
 
 
 ;;; Numeric-Type-Or-Lose  --  Interface
@@ -3732,10 +3732,10 @@
       (cond ((stringp min-args)
 	     (compiler-warning "~a" min-args))
 	    ((< nargs min-args)
-	     (compiler-warning "~s: too few args (~d), need at least ~d"
+	     (compiler-warning _"~s: too few args (~d), need at least ~d"
 			       context nargs min-args))
 	    ((> nargs max-args)
-	     (compiler-note "~s: too many args (~d), wants at most ~d"
+	     (compiler-note _"~s: too many args (~d), wants at most ~d"
 			    context nargs max-args))))))
 
 (defun check-format-args-1 (string args context)
@@ -3754,7 +3754,7 @@
 (deftransform format ((dest control &rest args) (t simple-string &rest t) *)
   (cond ((policy nil (> speed space))
 	 (unless (constant-continuation-p control)
-	   (give-up "Control string is not a constant."))
+	   (give-up _"Control string is not a constant."))
 	 (let ((string (continuation-value control)))
 	   (check-format-args-1 string args 'format)
 	   (let ((arg-names (loop repeat (length args) collect (gensym))))
@@ -3959,7 +3959,7 @@
               )))))))
 
 (defvar *enable-modular-arithmetic* t
-  "When non-NIL, the compiler will generate code utilizing modular
+  _N"When non-NIL, the compiler will generate code utilizing modular
   arithmetic.  Set to NIL to disable this, if you don't want modular
   arithmetic in some cases.")
 
Index: src/compiler/tn.lisp
diff -u src/compiler/tn.lisp:1.20.56.1 src/compiler/tn.lisp:1.20.56.2
--- src/compiler/tn.lisp:1.20.56.1	Mon Feb  8 12:15:51 2010
+++ src/compiler/tn.lisp	Wed Feb 10 21:45:32 2010
@@ -5,7 +5,7 @@
 ;;; Carnegie Mellon University, and has been placed in the public domain.
 ;;;
 (ext:file-comment
-  "$Header: /project/cmucl/cvsroot/src/compiler/tn.lisp,v 1.20.56.1 2010-02-08 17:15:51 rtoy Exp $")
+  "$Header: /project/cmucl/cvsroot/src/compiler/tn.lisp,v 1.20.56.2 2010-02-11 02:45:32 rtoy Exp $")
 ;;;
 ;;; **********************************************************************
 ;;;
@@ -34,7 +34,7 @@
 ;;; Do-Packed-TNs  --  Interface
 ;;;
 (defmacro do-packed-tns ((tn component &optional result) &body body)
-  "Do-Packed-TNs (TN-Var Component [Result]) Declaration* Form*
+  _N"Do-Packed-TNs (TN-Var Component [Result]) Declaration* Form*
   Iterate over all packed TNs allocated in Component."
   (let ((n-component (gensym)))
     `(let ((,n-component (component-info ,component)))
@@ -565,7 +565,7 @@
     (unless (and (not (sc-save-p sc))
 		 (eq (sb-kind (sc-sb sc)) :unbounded))
       (dolist (alt (sc-alternate-scs sc)
-		   (error "SC ~S has no :unbounded :save-p NIL alternate SC."
+		   (error _"SC ~S has no :unbounded :save-p NIL alternate SC."
 			  (sc-name sc)))
 	(when (and (not (sc-save-p alt))
 		   (eq (sb-kind (sc-sb alt)) :unbounded))
Index: src/compiler/typetran.lisp
diff -u src/compiler/typetran.lisp:1.45.38.1 src/compiler/typetran.lisp:1.45.38.2
--- src/compiler/typetran.lisp:1.45.38.1	Mon Feb  8 12:15:51 2010
+++ src/compiler/typetran.lisp	Wed Feb 10 21:45:32 2010
@@ -5,7 +5,7 @@
 ;;; Carnegie Mellon University, and has been placed in the public domain.
 ;;;
 (ext:file-comment
-  "$Header: /project/cmucl/cvsroot/src/compiler/typetran.lisp,v 1.45.38.1 2010-02-08 17:15:51 rtoy Exp $")
+  "$Header: /project/cmucl/cvsroot/src/compiler/typetran.lisp,v 1.45.38.2 2010-02-11 02:45:32 rtoy Exp $")
 ;;;
 ;;; **********************************************************************
 ;;;
@@ -42,7 +42,7 @@
 ;;; Define-Type-Predicate  --  Interface
 ;;;
 (defmacro define-type-predicate (name type)
-  "Define-Type-Predicate Name Type
+  _N"Define-Type-Predicate Name Type
   Establish an association between the type predicate Name and the
   corresponding Type.  This causes the type predicate to be recognized for
   purposes of optimization."
@@ -71,7 +71,7 @@
 ;;;
 (deftransform typep ((object type))
   (unless (constant-continuation-p type)
-    (give-up "Can't open-code test of non-constant type."))
+    (give-up _"Can't open-code test of non-constant type."))
   `(typep object ',(continuation-value type)))
 
 
@@ -125,7 +125,7 @@
   (let* ((name (continuation-value name))
 	 (cell (find-class-cell name)))
     `(or (class-cell-class ',cell)
-	 (error "Class not yet defined: ~S" ',name))))
+	 (error _"Class not yet defined: ~S" ',name))))
 
 ;;;; Standard type predicates:
 
@@ -248,7 +248,7 @@
   (let ((spec (hairy-type-specifier type)))
     (cond ((unknown-type-p type)
 	   (when (policy nil (> speed brevity))
-	     (compiler-note "Can't open-code test of unknown type ~S."
+	     (compiler-note _"Can't open-code test of unknown type ~S."
 			    (type-specifier type)))
 	   `(%typep ,object ',spec))
 	  (t
@@ -414,7 +414,7 @@
       ((csubtypep otype class) 't)
       ;; If not properly named, error.
       ((not (and name (eq (kernel::find-class name) class)))
-       (compiler-error "Can't compile TYPEP of anonymous or undefined ~
+       (compiler-error _"Can't compile TYPEP of anonymous or undefined ~
 			class:~%  ~S"
 		       class))
       (t
@@ -516,7 +516,7 @@
 	      (member-type
 	       `(member ,object ',(member-type-members type)))
 	      (args-type
-	       (compiler-warning "Illegal type specifier for Typep: ~S."
+	       (compiler-warning _"Illegal type specifier for Typep: ~S."
 				 (cadr spec))
 	       `(%typep ,object ,spec))
 	      (t nil))
Index: src/i18n/locale/cmucl.pot
diff -u src/i18n/locale/cmucl.pot:1.1.2.21 src/i18n/locale/cmucl.pot:1.1.2.22
--- src/i18n/locale/cmucl.pot:1.1.2.21	Wed Feb 10 21:19:58 2010
+++ src/i18n/locale/cmucl.pot	Wed Feb 10 21:45:32 2010
@@ -21,6 +21,43 @@
 "  Use (INTL:TEXTDOMAIN \"whatever\") in each source file to set this."
 msgstr ""
 
+#: target:pcl/cpl.lisp target:pcl/dfun.lisp target:pcl/vector.lisp
+#: target:pcl/boot.lisp target:pcl/cache.lisp target:pcl/fngen.lisp
+#: target:pcl/defs.lisp target:pcl/info.lisp pcl:defsys.lisp
+#: target:compiler/byte-comp.lisp target:compiler/eval-comp.lisp
+#: target:compiler/generic/new-genesis.lisp target:compiler/generic/core.lisp
+#: target:compiler/dump.lisp target:compiler/dyncount.lisp
+#: target:compiler/xref.lisp target:compiler/x86/c-call.lisp
+#: target:compiler/x86/insts.lisp target:compiler/srctran.lisp
+#: target:compiler/typetran.lisp target:compiler/ir1util.lisp
+#: target:compiler/main.lisp target:compiler/knownfun.lisp
+#: target:compiler/new-assem.lisp target:compiler/disassem.lisp
+#: target:compiler/meta-vmdef.lisp target:compiler/vop.lisp
+#: target:compiler/ctype.lisp target:compiler/node.lisp
+#: target:compiler/sset.lisp target:compiler/backend.lisp
+#: target:compiler/generic/vm-macs.lisp target:compiler/macros.lisp
+#: target:code/intl.lisp target:compiler/globaldb.lisp
+#: target:code/defstruct.lisp target:code/multi-proc.lisp
+#: target:code/remote.lisp target:code/wire.lisp target:code/internet.lisp
+#: target:code/loop.lisp target:code/run-program.lisp
+#: target:code/parse-time.lisp target:code/profile.lisp target:code/ntrace.lisp
+#: target:code/rand-mt19937.lisp target:code/debug.lisp
+#: target:code/debug-int.lisp target:code/debug-info.lisp target:code/eval.lisp
+#: target:code/filesys.lisp target:code/pathname.lisp
+#: target:code/fd-stream.lisp target:code/extfmts.lisp
+#: target:code/serve-event.lisp target:code/reader.lisp
+#: target:code/package.lisp target:code/format.lisp target:code/pprint.lisp
+#: target:code/stream.lisp target:code/room.lisp target:code/dfixnum.lisp
+#: target:code/commandline.lisp target:code/unidata.lisp
+#: target:compiler/proclaim.lisp target:code/unix.lisp
+#: target:code/hash-new.lisp target:code/byte-interp.lisp
+#: target:code/c-call.lisp target:code/alieneval.lisp target:code/type.lisp
+#: target:code/class.lisp target:code/typedefs.lisp target:code/error.lisp
+#: target:code/fwrappers.lisp target:assembly/assemfile.lisp
+#: target:code/struct.lisp
+msgid "Class not yet defined: ~S"
+msgstr ""
+
 #: target:code/intl.lisp
 msgid "Encountered illegal token: ="
 msgstr ""
@@ -17386,6 +17423,51 @@
 "	              array-has-fill-pointer-p at runtime."
 msgstr ""
 
+#: target:compiler/srctran.lisp target:compiler/seqtran.lisp
+msgid "open code"
+msgstr ""
+
+#: target:compiler/seqtran.lisp
+msgid "convert to EQ test"
+msgstr ""
+
+#: target:compiler/seqtran.lisp
+msgid "Item might be a number"
+msgstr ""
+
+#: target:compiler/seqtran.lisp
+msgid "inline expand"
+msgstr ""
+
+#: target:compiler/seqtran.lisp
+msgid "Specified output type ~S is not a sequence type"
+msgstr ""
+
+#: target:compiler/typetran.lisp
+msgid ""
+"Define-Type-Predicate Name Type\n"
+"  Establish an association between the type predicate Name and the\n"
+"  corresponding Type.  This causes the type predicate to be recognized for\n"
+"  purposes of optimization."
+msgstr ""
+
+#: target:compiler/typetran.lisp
+msgid "Can't open-code test of non-constant type."
+msgstr ""
+
+#: target:compiler/typetran.lisp
+msgid "Can't open-code test of unknown type ~S."
+msgstr ""
+
+#: target:compiler/typetran.lisp
+msgid "Can't compile TYPEP of anonymous or undefined ~\n"
+"			class:~%  ~S"
+msgstr ""
+
+#: target:compiler/typetran.lisp
+msgid "Illegal type specifier for Typep: ~S."
+msgstr ""
+
 #: target:compiler/float-tran.lisp
 msgid "use inline fixnum operations"
 msgstr ""
@@ -17491,6 +17573,105 @@
 msgid "Square"
 msgstr ""
 
+#: target:compiler/saptran.lisp
+msgid "FOREIGN-SYMBOL-ADDRESS flavor ~S is not :CODE or :DATA"
+msgstr ""
+
+#: target:compiler/srctran.lisp
+msgid "Function doesn't have fixed argument count."
+msgstr ""
+
+#: target:compiler/srctran.lisp
+msgid "convert NTHCDR to CAxxR"
+msgstr ""
+
+#: target:compiler/srctran.lisp
+msgid "Unknown bound type in make-interval!"
+msgstr ""
+
+#: target:compiler/srctran.lisp
+msgid "This shouldn't happen!"
+msgstr ""
+
+#: target:compiler/srctran.lisp
+msgid "convert to inline logical ops"
+msgstr ""
+
+#: target:compiler/srctran.lisp
+msgid "BOOLE code is not a constant."
+msgstr ""
+
+#: target:compiler/srctran.lisp
+msgid "~S illegal control arg to BOOLE."
+msgstr ""
+
+#: target:compiler/srctran.lisp
+msgid "convert x*2^k to shift"
+msgstr ""
+
+#: target:compiler/srctran.lisp
+msgid "convert division by 2^k to shift"
+msgstr ""
+
+#: target:compiler/srctran.lisp
+msgid "convert remainder mod 2^k to LOGAND"
+msgstr ""
+
+#: target:compiler/srctran.lisp
+msgid "fold identity operations"
+msgstr ""
+
+#: target:compiler/srctran.lisp
+msgid "fold identity operation"
+msgstr ""
+
+#: target:compiler/srctran.lisp
+msgid "convert (- 0 x) to negate"
+msgstr ""
+
+#: target:compiler/srctran.lisp
+msgid "convert (* x 0) to 0."
+msgstr ""
+
+#: target:compiler/srctran.lisp
+msgid "fold zero arg"
+msgstr ""
+
+#: target:compiler/srctran.lisp
+msgid "Unexpected types: ~s ~s~%"
+msgstr ""
+
+#: target:compiler/srctran.lisp
+msgid "recode as multiplication or sqrt"
+msgstr ""
+
+#: target:compiler/srctran.lisp
+msgid "convert to simpler equality predicate"
+msgstr ""
+
+#: target:compiler/srctran.lisp
+msgid "Operands might not be the same type."
+msgstr ""
+
+#: target:compiler/srctran.lisp
+msgid "~s: too few args (~d), need at least ~d"
+msgstr ""
+
+#: target:compiler/srctran.lisp
+msgid "~s: too many args (~d), wants at most ~d"
+msgstr ""
+
+#: target:compiler/srctran.lisp
+msgid "Control string is not a constant."
+msgstr ""
+
+#: target:compiler/srctran.lisp
+msgid ""
+"When non-NIL, the compiler will generate code utilizing modular\n"
+"  arithmetic.  Set to NIL to disable this, if you don't want modular\n"
+"  arithmetic in some cases."
+msgstr ""
+
 #: target:compiler/locall.lisp
 msgid ""
 "Couldn't inline expand because expansion ~\n"
@@ -17537,6 +17718,16 @@
 "			  propagation...  Bug?"
 msgstr ""
 
+#: target:compiler/tn.lisp
+msgid ""
+"Do-Packed-TNs (TN-Var Component [Result]) Declaration* Form*\n"
+"  Iterate over all packed TNs allocated in Component."
+msgstr ""
+
+#: target:compiler/tn.lisp
+msgid "SC ~S has no :unbounded :save-p NIL alternate SC."
+msgstr ""
+
 #: target:compiler/life.lisp
 msgid "More operand ~S used more than once in its VOP."
 msgstr ""
@@ -17746,6 +17937,89 @@
 msgid "~@<~2I~_~S ~_not found in ~_~S~:>"
 msgstr ""
 
+#: target:compiler/represent.lisp
+msgid "Couldn't find REF?"
+msgstr ""
+
+#: target:compiler/represent.lisp
+msgid ""
+"Representation selection flamed out for no obvious reason.~@\n"
+"	          Try again after recompiling the VM definition."
+msgstr ""
+
+#: target:compiler/represent.lisp
+msgid ""
+"~S is not valid as the ~:R ~:[result~;argument~] to the~@\n"
+"	        ~S VOP, since the TN's primitive type ~S allows SCs:~%  ~S~@\n"
+"		~:[which cannot be coerced or loaded into the allowed SCs:~\n"
+"		~%  ~S~;~*~]~:[~;~@\n"
+"		Current cost info inconsistent with that in effect at compile ~\n"
+"		time.  Recompile.~%Compilation order may be incorrect.~]"
+msgstr ""
+
+#: target:compiler/represent.lisp
+msgid ""
+"Representation selection flamed out for no ~\n"
+"		             obvious reason."
+msgstr ""
+
+#: target:compiler/represent.lisp
+msgid ""
+"~S is not valid as the ~:R ~:[result~;argument~] to VOP:~\n"
+"	        ~%  ~S~%Primitive type: ~S~@\n"
+"		SC restrictions:~%  ~S~@\n"
+"		~@[The primitive type disallows these loadable SCs:~%  ~S~%~]~\n"
+"		~@[No move VOPs are defined to coerce to these allowed SCs:~\n"
+"		~%  ~S~%~]~\n"
+"		~@[These move VOPs couldn't be used due to operand type ~\n"
+"		restrictions:~%  ~S~%~]~\n"
+"		~:[~;~@\n"
+"		Current cost info inconsistent with that in effect at compile ~\n"
+"		time.  Recompile.~%Compilation order may be incorrect.~]"
+msgstr ""
+
+#: target:compiler/represent.lisp
+msgid ""
+"No :MOVE-ARGUMENT VOP defined to move ~S (SC ~S) to ~\n"
+"          ~S (SC ~S.)"
+msgstr ""
+
+#: target:compiler/represent.lisp
+msgid ""
+"No move function defined to load SC ~S from constant ~\n"
+"	             SC ~S."
+msgstr ""
+
+#: target:compiler/represent.lisp
+msgid ""
+"No move function defined to load SC ~S from alternate ~\n"
+"	             SC ~S."
+msgstr ""
+
+#: target:compiler/represent.lisp
+msgid ""
+"No move function defined to save SC ~S to alternate ~\n"
+"	             SC ~S."
+msgstr ""
+
+#: target:compiler/represent.lisp
+msgid "<return value>"
+msgstr ""
+
+#: target:compiler/represent.lisp
+msgid "Couldn't fine op?  Bug!"
+msgstr ""
+
+#: target:compiler/represent.lisp
+msgid ""
+"Doing ~A (cost ~D)~:[~2*~; ~:[to~;from~] ~S~], for:~%~6T~\n"
+"	       The ~:R ~:[result~;argument~] of ~A."
+msgstr ""
+
+#: target:compiler/represent.lisp
+msgid "Doing ~A (cost ~D)~@[ from ~S~]~@[ to ~S~]."
+msgstr ""
+
 #: target:compiler/codegen.lisp
 msgid "Returns the number of bytes used by the code object header."
 msgstr ""
Index: src/i18n/locale/ko/LC_MESSAGES/cmucl.po
diff -u src/i18n/locale/ko/LC_MESSAGES/cmucl.po:1.1.2.21 src/i18n/locale/ko/LC_MESSAGES/cmucl.po:1.1.2.22
--- src/i18n/locale/ko/LC_MESSAGES/cmucl.po:1.1.2.21	Wed Feb 10 21:19:58 2010
+++ src/i18n/locale/ko/LC_MESSAGES/cmucl.po	Wed Feb 10 21:45:32 2010
@@ -21,6 +21,43 @@
 "  Use (INTL:TEXTDOMAIN \"whatever\") in each source file to set this."
 msgstr ""
 
+#: target:pcl/cpl.lisp target:pcl/dfun.lisp target:pcl/vector.lisp
+#: target:pcl/boot.lisp target:pcl/cache.lisp target:pcl/fngen.lisp
+#: target:pcl/defs.lisp target:pcl/info.lisp pcl:defsys.lisp
+#: target:compiler/byte-comp.lisp target:compiler/eval-comp.lisp
+#: target:compiler/generic/new-genesis.lisp target:compiler/generic/core.lisp
+#: target:compiler/dump.lisp target:compiler/dyncount.lisp
+#: target:compiler/xref.lisp target:compiler/x86/c-call.lisp
+#: target:compiler/x86/insts.lisp target:compiler/srctran.lisp
+#: target:compiler/typetran.lisp target:compiler/ir1util.lisp
+#: target:compiler/main.lisp target:compiler/knownfun.lisp
+#: target:compiler/new-assem.lisp target:compiler/disassem.lisp
+#: target:compiler/meta-vmdef.lisp target:compiler/vop.lisp
+#: target:compiler/ctype.lisp target:compiler/node.lisp
+#: target:compiler/sset.lisp target:compiler/backend.lisp
+#: target:compiler/generic/vm-macs.lisp target:compiler/macros.lisp
+#: target:code/intl.lisp target:compiler/globaldb.lisp
+#: target:code/defstruct.lisp target:code/multi-proc.lisp
+#: target:code/remote.lisp target:code/wire.lisp target:code/internet.lisp
+#: target:code/loop.lisp target:code/run-program.lisp
+#: target:code/parse-time.lisp target:code/profile.lisp
+#: target:code/ntrace.lisp target:code/rand-mt19937.lisp
+#: target:code/debug.lisp target:code/debug-int.lisp
+#: target:code/debug-info.lisp target:code/eval.lisp target:code/filesys.lisp
+#: target:code/pathname.lisp target:code/fd-stream.lisp
+#: target:code/extfmts.lisp target:code/serve-event.lisp
+#: target:code/reader.lisp target:code/package.lisp target:code/format.lisp
+#: target:code/pprint.lisp target:code/stream.lisp target:code/room.lisp
+#: target:code/dfixnum.lisp target:code/commandline.lisp
+#: target:code/unidata.lisp target:compiler/proclaim.lisp
+#: target:code/unix.lisp target:code/hash-new.lisp
+#: target:code/byte-interp.lisp target:code/c-call.lisp
+#: target:code/alieneval.lisp target:code/type.lisp target:code/class.lisp
+#: target:code/typedefs.lisp target:code/error.lisp target:code/fwrappers.lisp
+#: target:assembly/assemfile.lisp target:code/struct.lisp
+msgid "Class not yet defined: ~S"
+msgstr ""
+
 #: target:code/intl.lisp
 msgid "Encountered illegal token: ="
 msgstr ""
@@ -17710,6 +17747,52 @@
 "\t              array-has-fill-pointer-p at runtime."
 msgstr ""
 
+#: target:compiler/srctran.lisp target:compiler/seqtran.lisp
+msgid "open code"
+msgstr ""
+
+#: target:compiler/seqtran.lisp
+msgid "convert to EQ test"
+msgstr ""
+
+#: target:compiler/seqtran.lisp
+msgid "Item might be a number"
+msgstr ""
+
+#: target:compiler/seqtran.lisp
+msgid "inline expand"
+msgstr ""
+
+#: target:compiler/seqtran.lisp
+msgid "Specified output type ~S is not a sequence type"
+msgstr ""
+
+#: target:compiler/typetran.lisp
+msgid ""
+"Define-Type-Predicate Name Type\n"
+"  Establish an association between the type predicate Name and the\n"
+"  corresponding Type.  This causes the type predicate to be recognized for\n"
+"  purposes of optimization."
+msgstr ""
+
+#: target:compiler/typetran.lisp
+msgid "Can't open-code test of non-constant type."
+msgstr ""
+
+#: target:compiler/typetran.lisp
+msgid "Can't open-code test of unknown type ~S."
+msgstr ""
+
+#: target:compiler/typetran.lisp
+msgid ""
+"Can't compile TYPEP of anonymous or undefined ~\n"
+"\t\t\tclass:~%  ~S"
+msgstr ""
+
+#: target:compiler/typetran.lisp
+msgid "Illegal type specifier for Typep: ~S."
+msgstr ""
+
 #: target:compiler/float-tran.lisp
 msgid "use inline fixnum operations"
 msgstr ""
@@ -17816,6 +17899,105 @@
 msgid "Square"
 msgstr ""
 
+#: target:compiler/saptran.lisp
+msgid "FOREIGN-SYMBOL-ADDRESS flavor ~S is not :CODE or :DATA"
+msgstr ""
+
+#: target:compiler/srctran.lisp
+msgid "Function doesn't have fixed argument count."
+msgstr ""
+
+#: target:compiler/srctran.lisp
+msgid "convert NTHCDR to CAxxR"
+msgstr ""
+
+#: target:compiler/srctran.lisp
+msgid "Unknown bound type in make-interval!"
+msgstr ""
+
+#: target:compiler/srctran.lisp
+msgid "This shouldn't happen!"
+msgstr ""
+
+#: target:compiler/srctran.lisp
+msgid "convert to inline logical ops"
+msgstr ""
+
+#: target:compiler/srctran.lisp
+msgid "BOOLE code is not a constant."
+msgstr ""
+
+#: target:compiler/srctran.lisp
+msgid "~S illegal control arg to BOOLE."
+msgstr ""
+
+#: target:compiler/srctran.lisp
+msgid "convert x*2^k to shift"
+msgstr ""
+
+#: target:compiler/srctran.lisp
+msgid "convert division by 2^k to shift"
+msgstr ""
+
+#: target:compiler/srctran.lisp
+msgid "convert remainder mod 2^k to LOGAND"
+msgstr ""
+
+#: target:compiler/srctran.lisp
+msgid "fold identity operations"
+msgstr ""
+
+#: target:compiler/srctran.lisp
+msgid "fold identity operation"
+msgstr ""
+
+#: target:compiler/srctran.lisp
+msgid "convert (- 0 x) to negate"
+msgstr ""
+
+#: target:compiler/srctran.lisp
+msgid "convert (* x 0) to 0."
+msgstr ""
+
+#: target:compiler/srctran.lisp
+msgid "fold zero arg"
+msgstr ""
+
+#: target:compiler/srctran.lisp
+msgid "Unexpected types: ~s ~s~%"
+msgstr ""
+
+#: target:compiler/srctran.lisp
+msgid "recode as multiplication or sqrt"
+msgstr ""
+
+#: target:compiler/srctran.lisp
+msgid "convert to simpler equality predicate"
+msgstr ""
+
+#: target:compiler/srctran.lisp
+msgid "Operands might not be the same type."
+msgstr ""
+
+#: target:compiler/srctran.lisp
+msgid "~s: too few args (~d), need at least ~d"
+msgstr ""
+
+#: target:compiler/srctran.lisp
+msgid "~s: too many args (~d), wants at most ~d"
+msgstr ""
+
+#: target:compiler/srctran.lisp
+msgid "Control string is not a constant."
+msgstr ""
+
+#: target:compiler/srctran.lisp
+msgid ""
+"When non-NIL, the compiler will generate code utilizing modular\n"
+"  arithmetic.  Set to NIL to disable this, if you don't want modular\n"
+"  arithmetic in some cases."
+msgstr ""
+
 #: target:compiler/locall.lisp
 msgid ""
 "Couldn't inline expand because expansion ~\n"
@@ -17865,6 +18047,16 @@
 "\t\t\t  propagation...  Bug?"
 msgstr ""
 
+#: target:compiler/tn.lisp
+msgid ""
+"Do-Packed-TNs (TN-Var Component [Result]) Declaration* Form*\n"
+"  Iterate over all packed TNs allocated in Component."
+msgstr ""
+
+#: target:compiler/tn.lisp
+msgid "SC ~S has no :unbounded :save-p NIL alternate SC."
+msgstr ""
+
 #: target:compiler/life.lisp
 msgid "More operand ~S used more than once in its VOP."
 msgstr ""
@@ -18077,6 +18269,89 @@
 msgid "~@<~2I~_~S ~_not found in ~_~S~:>"
 msgstr ""
 
+#: target:compiler/represent.lisp
+msgid "Couldn't find REF?"
+msgstr ""
+
+#: target:compiler/represent.lisp
+msgid ""
+"Representation selection flamed out for no obvious reason.~@\n"
+"\t          Try again after recompiling the VM definition."
+msgstr ""
+
+#: target:compiler/represent.lisp
+msgid ""
+"~S is not valid as the ~:R ~:[result~;argument~] to the~@\n"
+"\t        ~S VOP, since the TN's primitive type ~S allows SCs:~%  ~S~@\n"
+"\t\t~:[which cannot be coerced or loaded into the allowed SCs:~\n"
+"\t\t~%  ~S~;~*~]~:[~;~@\n"
+"\t\tCurrent cost info inconsistent with that in effect at compile ~\n"
+"\t\ttime.  Recompile.~%Compilation order may be incorrect.~]"
+msgstr ""
+
+#: target:compiler/represent.lisp
+msgid ""
+"Representation selection flamed out for no ~\n"
+"\t\t             obvious reason."
+msgstr ""
+
+#: target:compiler/represent.lisp
+msgid ""
+"~S is not valid as the ~:R ~:[result~;argument~] to VOP:~\n"
+"\t        ~%  ~S~%Primitive type: ~S~@\n"
+"\t\tSC restrictions:~%  ~S~@\n"
+"\t\t~@[The primitive type disallows these loadable SCs:~%  ~S~%~]~\n"
+"\t\t~@[No move VOPs are defined to coerce to these allowed SCs:~\n"
+"\t\t~%  ~S~%~]~\n"
+"\t\t~@[These move VOPs couldn't be used due to operand type ~\n"
+"\t\trestrictions:~%  ~S~%~]~\n"
+"\t\t~:[~;~@\n"
+"\t\tCurrent cost info inconsistent with that in effect at compile ~\n"
+"\t\ttime.  Recompile.~%Compilation order may be incorrect.~]"
+msgstr ""
+
+#: target:compiler/represent.lisp
+msgid ""
+"No :MOVE-ARGUMENT VOP defined to move ~S (SC ~S) to ~\n"
+"          ~S (SC ~S.)"
+msgstr ""
+
+#: target:compiler/represent.lisp
+msgid ""
+"No move function defined to load SC ~S from constant ~\n"
+"\t             SC ~S."
+msgstr ""
+
+#: target:compiler/represent.lisp
+msgid ""
+"No move function defined to load SC ~S from alternate ~\n"
+"\t             SC ~S."
+msgstr ""
+
+#: target:compiler/represent.lisp
+msgid ""
+"No move function defined to save SC ~S to alternate ~\n"
+"\t             SC ~S."
+msgstr ""
+
+#: target:compiler/represent.lisp
+msgid "<return value>"
+msgstr ""
+
+#: target:compiler/represent.lisp
+msgid "Couldn't fine op?  Bug!"
+msgstr ""
+
+#: target:compiler/represent.lisp
+msgid ""
+"Doing ~A (cost ~D)~:[~2*~; ~:[to~;from~] ~S~], for:~%~6T~\n"
+"\t       The ~:R ~:[result~;argument~] of ~A."
+msgstr ""
+
+#: target:compiler/represent.lisp
+msgid "Doing ~A (cost ~D)~@[ from ~S~]~@[ to ~S~]."
+msgstr ""
+
 #: target:compiler/codegen.lisp
 #, fuzzy
 msgid "Returns the number of bytes used by the code object header."



More information about the cmucl-commit mailing list