;;; -*- Mode:Lisp; Readtable:ZL; Package:USER; Base:10; Patch-File:T -*- ;;; Patch file for System version 124.112 ;;; Reason: ;;; 3 MISC instructions, INTERNAL-=, INTERNAL-<, and INTERNAL-> ended up in ;;; the si: package, not the system: package. Thus, compiler:internal-xxx ;;; were entirely different symbols. They still ended up being optimized ;;; into the appropriate MISC instructions EXCEPT when a multiple-value ;;; call was required, which actually generated a function call to ;;; compiler:internal-xxx -- which was not fdefined. ;;; ;;; Cure: perform package hackery to make sure the right symbols are in ;;; the right packages. Next cold load, they WILL be in the system: ;;; package to start with. ;;; Written 27-Jun-88 15:34:36 by pld (Peter L. DeWolf) at site Gigamos Cambridge ;;; while running on Azathoth from band 1 ;;; with Experimental System 124.111, Experimental Local-File 74.3, Experimental File-Server 23.1, Experimental Unix-Interface 12.0, Experimental ZMail 72.1, Experimental Tape 23.6, Experimental Lambda-Diag 16.2, microcode 1761, SDU Boot Tape 3.14, SDU ROM 8, the old ones. #| The following fails, because compiler:internal-= is not is the system package (defun flen (f n) (with-open-file (s f) s (= n 4))) |# (setf (symbol-function (intern "INTERNAL-=" "COMPILER")) (symbol-function (intern "INTERNAL-=" "SI"))) (unintern "INTERNAL-=" (pkg-find-package "SI")) (unintern "INTERNAL-=" pkg-system-package) (globalize (intern "INTERNAL-=" "COMPILER") pkg-system-package) (setf (symbol-function (intern "INTERNAL-<" "COMPILER")) (symbol-function (intern "INTERNAL-<" "SI"))) (unintern "INTERNAL-<" (pkg-find-package "SI")) (unintern "INTERNAL-<" pkg-system-package) (globalize (intern "INTERNAL-<" "COMPILER") pkg-system-package) (setf (symbol-function (intern "INTERNAL->" "COMPILER")) (symbol-function (intern "INTERNAL->" "SI"))) (unintern "INTERNAL->" (pkg-find-package "SI")) (unintern "INTERNAL->" pkg-system-package) (globalize (intern "INTERNAL->" "COMPILER") pkg-system-package)