;;; -*- Mode:Lisp; Readtable:ZL; Package:USER; Base:8; Patch-File:T -*-
;;; Patch file for System version 126.124
;;; Reason:
;;;  Add COMPILER:DISCOURAGE-FEATURE, style-checker for features that ('tho
;;;  not exactly obsolete) we either "discourage"; allows suggesting
;;;  alternatives.
;;;  
;;;  Also, discourage ZL:CALL and ZL:G-L-P for portability reasons.
;;; Written 22-Oct-88 02:26:12 by keith (Keith Corbett) at site Gigamos Cambridge
;;; while running on Breaking Glass from band 1
;;; with Experimental System 126.119, Experimental ZWEI 126.23, Experimental ZMail 74.12, Experimental Local-File 76.0, Experimental File-Server 25.0, Experimental Lambda-Diag 18.0, Experimental Unix-Interface 15.0, Experimental Tape 26.4, Experimental KMC-SYSTEM 4.0, Microcode 1762, SDU Boot Tape 3.14, SDU ROM 103, 10/17.



; From modified file DJ: L.SYS; QCOPT.LISP#189 at 22-Oct-88 02:26:13
#8R COMPILER#: 
(COMPILER-LET ((*PACKAGE* (PKG-FIND-PACKAGE "COMPILER")))
  (PATCH-SOURCE-FILE "SYS: SYS; QCOPT  "



;;;Miscellaneous things we're frowning at

(defmacro discourage-feature (thing &optional instead)
  `(defun (:property ,thing style-checker) (form)
     (warn 'feature-is-not-portable :not-portable
       ,(string-append
	  "~~S should be avoided; it is not portable."
	  (typecase instead
	    (symbol (format nil " Consider using ~S instead." instead))
	    (string (string-append  " " instead))
	    (t ""))
	  "~")
       (car form))))

(discourage-feature zl:call apply)
(discourage-feature zl:g-l-p "Try to find an alternative to ART-Q-LIST arrays.")

))
