From e658d75cda04a34e810875b2b5dceb0998335bc8 Mon Sep 17 00:00:00 2001 From: Glenn Morris Date: Tue, 28 May 2013 00:01:59 -0700 Subject: [PATCH] Silence some vc compilation warnings * lisp/vc/vc-arch.el (vc-exec-after): Declare. (vc-switches): Autoload. * lisp/vc/vc-bzr.el: No need to require vc when compiling. (vc-exec-after, vc-set-async-update, vc-default-dir-printer) (vc-resynch-buffer, vc-dir-refresh): Declare. (vc-setup-buffer, vc-switches): Autoload. * lisp/vc/vc-dir.el (desktop-missing-file-warning): Declare. * lisp/vc/vc-mtn.el (vc-exec-after): Declare. (vc-switches): Autoload. * lisp/vc/vc-rcs.el (vc-expand-dirs, vc-switches) (vc-tag-precondition, vc-buffer-sync, vc-rename-master): Autoload. (vc-file-tree-walk): Declare. * lisp/vc/vc-svn.el (vc-exec-after): Declare. (vc-switches, vc-setup-buffer): Autoload. * lisp/obsolete/vc-mcvs.el (vc-checkout, vc-switches, vc-default-revert): Autoload. (vc-resynch-buffer): Declare. --- lisp/ChangeLog | 18 ++++++++++++++++++ lisp/vc/vc-arch.el | 5 +++++ lisp/vc/vc-bzr.el | 22 ++++++++++++++++++++-- lisp/vc/vc-dir.el | 2 ++ lisp/vc/vc-mtn.el | 5 +++++ lisp/vc/vc-rcs.el | 11 +++++++++++ lisp/vc/vc-svn.el | 7 +++++++ 7 files changed, 68 insertions(+), 2 deletions(-) diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 76da6f6e74f..abb250ecc65 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,5 +1,23 @@ 2013-05-28 Glenn Morris + * vc/vc-arch.el (vc-exec-after): Declare. + (vc-switches): Autoload. + * vc/vc-bzr.el: No need to require vc when compiling. + (vc-exec-after, vc-set-async-update, vc-default-dir-printer) + (vc-resynch-buffer, vc-dir-refresh): Declare. + (vc-setup-buffer, vc-switches): Autoload. + * vc/vc-dir.el (desktop-missing-file-warning): Declare. + * vc/vc-mtn.el (vc-exec-after): Declare. + (vc-switches): Autoload. + * vc/vc-rcs.el (vc-expand-dirs, vc-switches) + (vc-tag-precondition, vc-buffer-sync, vc-rename-master): Autoload. + (vc-file-tree-walk): Declare. + * vc/vc-svn.el (vc-exec-after): Declare. + (vc-switches, vc-setup-buffer): Autoload. + * obsolete/vc-mcvs.el (vc-checkout, vc-switches, vc-default-revert): + Autoload. + (vc-resynch-buffer): Declare. + * obsolete/fast-lock.el (byte-compile-warnings): Don't warn about obsolete features in this obsolete file. diff --git a/lisp/vc/vc-arch.el b/lisp/vc/vc-arch.el index 52609457ebc..f94e19271ee 100644 --- a/lisp/vc/vc-arch.el +++ b/lisp/vc/vc-arch.el @@ -311,6 +311,9 @@ Only the value `maybe' can be trusted :-(." 'up-to-date 'edited))))))))) +;; -dir-status called from vc-dir, which loads vc, which loads vc-dispatcher. +(declare-function vc-exec-after "vc-dispatcher" (code)) + (defun vc-arch-dir-status (dir callback) "Run 'tla inventory' for DIR and pass results to CALLBACK. CALLBACK expects (ENTRIES &optional MORE-TO-COME); see @@ -432,6 +435,8 @@ CALLBACK expects (ENTRIES &optional MORE-TO-COME); see (message "There are unresolved conflicts in %s" (file-name-nondirectory rej)))))) +(autoload 'vc-switches "vc") + (defun vc-arch-checkin (files rev comment) (if rev (error "Committing to a specific revision is unsupported")) ;; FIXME: This implementation probably only works for singleton filesets diff --git a/lisp/vc/vc-bzr.el b/lisp/vc/vc-bzr.el index 4a08403c93e..5e76d8464a5 100644 --- a/lisp/vc/vc-bzr.el +++ b/lisp/vc/vc-bzr.el @@ -47,8 +47,7 @@ (eval-when-compile (require 'cl-lib) - (require 'vc) ;; for vc-exec-after - (require 'vc-dir)) + (require 'vc-dir)) ; vc-dir-at-event ;; Clear up the cache to force vc-call to check again and discover ;; new functions when we reload this file. @@ -320,6 +319,12 @@ in the repository root directory of FILE." ("^Using saved parent location: \\(.+\\)" 1 nil nil 0)) "Value of `compilation-error-regexp-alist' in *vc-bzr* buffers.") +;; Follows vc-bzr-(async-)command, which uses vc-do-(async-)command +;; from vc-dispatcher. +(declare-function vc-exec-after "vc-dispatcher" (code)) +;; Follows vc-exec-after. +(declare-function vc-set-async-update "vc-dispatcher" (process-buffer)) + (defun vc-bzr-pull (prompt) "Pull changes into the current Bzr branch. Normally, this runs \"bzr pull\". However, if the branch is a @@ -693,6 +698,8 @@ REV non-nil gets an error." (2 'change-log-email)) ("^ *timestamp: \\(.*\\)" (1 'change-log-date-face))))))) +(autoload 'vc-setup-buffer "vc-dispatcher") + (defun vc-bzr-print-log (files buffer &optional shortlog start-revision limit) "Print commit log associated with FILES into specified BUFFER. If SHORTLOG is non-nil, use --line format. @@ -778,6 +785,8 @@ If LIMIT is non-nil, show no more than this many entries." (goto-char (point-min))) found))) +(autoload 'vc-switches "vc") + (defun vc-bzr-diff (files &optional rev1 rev2 buffer) "VC bzr backend for diff." (let* ((switches (vc-switches 'bzr 'diff)) @@ -898,6 +907,8 @@ stream. Standard error output is discarded." (:conc-name vc-bzr-extra-fileinfo->)) extra-name) ;; original name for rename targets, new name for +(declare-function vc-default-dir-printer "vc-dir" (backend fileentry)) + (defun vc-bzr-dir-printer (info) "Pretty-printer for the vc-dir-fileinfo structure." (let ((extra (vc-dir-fileinfo->extra info))) @@ -1110,6 +1121,10 @@ stream. Standard error output is discarded." 'help-echo shelve-help-echo 'face 'font-lock-variable-name-face)))))) +;; Follows vc-bzr-command, which uses vc-do-command from vc-dispatcher. +(declare-function vc-resynch-buffer "vc-dispatcher" + (file &optional keep noquery reset-vc-info)) + (defun vc-bzr-shelve (name) "Create a shelve." (interactive "sShelf name: ") @@ -1169,6 +1184,9 @@ stream. Standard error output is discarded." (match-string 1) (error "Cannot find shelf at point")))) +;; vc-bzr-shelve-delete-at-point must be called from a vc-dir buffer. +(declare-function vc-dir-refresh "vc-dir" ()) + (defun vc-bzr-shelve-delete-at-point () (interactive) (let ((shelve (vc-bzr-shelve-get-at-point (point)))) diff --git a/lisp/vc/vc-dir.el b/lisp/vc/vc-dir.el index 1fdd2018946..80f78496a43 100644 --- a/lisp/vc/vc-dir.el +++ b/lisp/vc/vc-dir.el @@ -1299,6 +1299,8 @@ These are the commands available for use in the file status buffer: "Auxiliary information to be saved in desktop file." (cons (desktop-file-name default-directory dirname) vc-dir-backend)) +(defvar desktop-missing-file-warning) + (defun vc-dir-restore-desktop-buffer (_filename _buffername misc-data) "Restore a `vc-dir' buffer specified in a desktop file." (let ((dir (car misc-data)) diff --git a/lisp/vc/vc-mtn.el b/lisp/vc/vc-mtn.el index fbfd89561b7..29996fafe92 100644 --- a/lisp/vc/vc-mtn.el +++ b/lisp/vc/vc-mtn.el @@ -123,6 +123,9 @@ If nil, use the value of `vc-diff-switches'. If t, use no switches." ((match-end 2) (push (list (match-string 3) 'added) result)))) (funcall update-function result))) +;; -dir-status called from vc-dir, which loads vc, which loads vc-dispatcher. +(declare-function vc-exec-after "vc-dispatcher" (code)) + (defun vc-mtn-dir-status (dir update-function) (vc-mtn-command (current-buffer) 'async dir "status") (vc-exec-after @@ -233,6 +236,8 @@ If LIMIT is non-nil, show no more than this many entries." ;; (defun vc-mtn-show-log-entry (revision) ;; ) +(autoload 'vc-switches "vc") + (defun vc-mtn-diff (files &optional rev1 rev2 buffer) "Get a difference report using monotone between two revisions of FILES." (apply 'vc-mtn-command (or buffer "*vc-diff*") 1 files "diff" diff --git a/lisp/vc/vc-rcs.el b/lisp/vc/vc-rcs.el index 0a2fc804e6d..e85494b2156 100644 --- a/lisp/vc/vc-rcs.el +++ b/lisp/vc/vc-rcs.el @@ -200,6 +200,8 @@ For a description of possible values, see `vc-check-master-templates'." (vc-rcs-state file)))) (vc-rcs-state file))))) +(autoload 'vc-expand-dirs "vc") + (defun vc-rcs-dir-status (dir update-function) ;; FIXME: this function should be rewritten or `vc-expand-dirs' ;; should be changed to take a backend parameter. Using @@ -270,6 +272,8 @@ When VERSION is given, perform check for that version." ;; RCS is totally file-oriented, so all we have to do is make the directory. (make-directory "RCS")) +(autoload 'vc-switches "vc") + (defun vc-rcs-register (files &optional rev comment) "Register FILES into the RCS version-control system. REV is the optional revision number for the files. COMMENT can be used @@ -821,6 +825,9 @@ systime, or nil if there is none. Also, reposition point." ;;; Tag system ;;; +(autoload 'vc-tag-precondition "vc") +(declare-function vc-file-tree-walk "vc" (dirname func &rest args)) + (defun vc-rcs-create-tag (dir name branchp) (when branchp (error "RCS backend does not support module branches")) @@ -892,6 +899,8 @@ and CVS." (t "rcs2log"))) "Path to the `rcs2log' program (normally in `exec-directory').") +(autoload 'vc-buffer-sync "vc-dispatcher") + (defun vc-rcs-update-changelog (files) "Default implementation of update-changelog. Uses `rcs2log' which only works for RCS and CVS." @@ -958,6 +967,8 @@ Uses `rcs2log' which only works for RCS and CVS." nil t) (replace-match "$\\1$")))) +(autoload 'vc-rename-master "vc") + (defun vc-rcs-rename-file (old new) ;; Just move the master file (using vc-rcs-master-templates). (vc-rename-master (vc-name old) new vc-rcs-master-templates)) diff --git a/lisp/vc/vc-svn.el b/lisp/vc/vc-svn.el index a94bf0d6117..39b107b81b5 100644 --- a/lisp/vc/vc-svn.el +++ b/lisp/vc/vc-svn.el @@ -215,6 +215,9 @@ If you want to force an empty list of arguments, use t." (setq result (cons (list filename state) result))))) (funcall callback result))) +;; -dir-status called from vc-dir, which loads vc, which loads vc-dispatcher. +(declare-function vc-exec-after "vc-dispatcher" (code)) + (defun vc-svn-dir-status (dir callback) "Run 'svn status' for DIR and update BUFFER via CALLBACK. CALLBACK is called as (CALLBACK RESULT BUFFER), where @@ -293,6 +296,8 @@ RESULT is a list of conses (FILE . STATE) for directory DIR." (vc-svn-command "*vc*" 0 "." "checkout" (concat "file://" default-directory "SVN"))) +(autoload 'vc-switches "vc") + (defun vc-svn-register (files &optional rev comment) "Register FILES into the SVN version-control system. The COMMENT argument is ignored This does an add but not a commit. @@ -493,6 +498,8 @@ or svn+ssh://." (require 'add-log) (set (make-local-variable 'log-view-per-file-logs) nil)) +(autoload 'vc-setup-buffer "vc-dispatcher") + (defun vc-svn-print-log (files buffer &optional shortlog start-revision limit) "Print commit log associated with FILES into specified BUFFER. SHORTLOG is ignored. -- 2.39.2