emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] Changes to emacs/lisp/progmodes/verilog-mode.el,v


From: Dan Nicolaescu
Subject: [Emacs-diffs] Changes to emacs/lisp/progmodes/verilog-mode.el,v
Date: Sat, 05 Jan 2008 10:23:29 +0000

CVSROOT:        /cvsroot/emacs
Module name:    emacs
Changes by:     Dan Nicolaescu <dann>   08/01/05 10:23:28

Index: progmodes/verilog-mode.el
===================================================================
RCS file: /cvsroot/emacs/emacs/lisp/progmodes/verilog-mode.el,v
retrieving revision 1.1.2.9
retrieving revision 1.1.2.10
diff -u -b -r1.1.2.9 -r1.1.2.10
--- progmodes/verilog-mode.el   11 Dec 2007 03:19:09 -0000      1.1.2.9
+++ progmodes/verilog-mode.el   5 Jan 2008 10:23:26 -0000       1.1.2.10
@@ -115,27 +115,20 @@
 (defun verilog-version ()
   "Inform caller of the version of this file."
   (interactive)
-  (message (concat "Using verilog-mode version " verilog-mode-version) ))
+  (message "Using verilog-mode version %s" verilog-mode-version))
 
 ;; Insure we have certain packages, and deal with it if we don't
 (eval-when-compile
-  (condition-case nil
-      (require 'imenu)
-    (error nil))
-  (condition-case nil
-      (require 'reporter)
-    (error nil))
+  (when (featurep 'xemacs)
   (condition-case nil
       (require 'easymenu)
     (error nil))
   (condition-case nil
       (require 'regexp-opt)
     (error nil))
+    ;; Bug in 19.28 through 19.30 skeleton.el, not provided.
   (condition-case nil
-      (load "skeleton") ;; bug in 19.28 through 19.30 skeleton.el, not 
provided.
-    (error nil))
-  (condition-case nil
-      (require 'vc)
+        (load "skeleton")
     (error nil))
   (condition-case nil
       (if (fboundp 'when)
@@ -154,18 +147,12 @@
          nil ;; fab
        (defmacro store-match-data (&rest args) nil))
     (error nil))
-  (if (featurep 'xemacs)
       (condition-case nil
          (if (boundp 'current-menubar)
              nil ;; great
            (progn
              (defmacro add-submenu (&rest args) nil))
            )
-       (error nil)))
-  (condition-case nil
-      (if (fboundp 'zmacs-activate-region)
-         nil ;; great
-       (defmacro zmacs-activate-region (&rest args) nil))
     (error nil))
   (condition-case nil
       (if (fboundp 'char-before)
@@ -173,30 +160,10 @@
        (defmacro char-before (&rest body)
          (char-after (1- (point)))))
     (error nil))
-  ;; Requires to define variables that would be "free" warnings
-  (condition-case nil
-      (require 'font-lock)
-    (error nil))
-  (condition-case nil
-      (require 'compile)
-    (error nil))
   (condition-case nil
       (require 'custom)
     (error nil))
   (condition-case nil
-      (require 'dinotrace)
-    (error nil))
-  (condition-case nil
-      (if (fboundp 'dinotrace-unannotate-all)
-         nil ;; great
-       (defun dinotrace-unannotate-all (&rest args) nil))
-    (error nil))
-  (condition-case nil
-      (if (fboundp 'customize-apropos)
-         nil ;; great
-       (defun customize-apropos (&rest args) nil))
-    (error nil))
-  (condition-case nil
       (if (fboundp 'match-string-no-properties)
          nil ;; great
        (defsubst match-string-no-properties (num &optional string)
@@ -208,7 +175,8 @@
          (if (match-beginning num)
              (if string
                  (let ((result
-                        (substring string (match-beginning num) (match-end 
num))))
+                           (substring string
+                                     (match-beginning num) (match-end num))))
                    (set-text-properties 0 (length result) nil result)
                    result)
                (buffer-substring-no-properties (match-beginning num)
@@ -221,7 +189,8 @@
     ;; We have the old custom-library, hack around it!
     (defmacro defgroup (&rest args)  nil)
     (defmacro customize (&rest args)
-      (message "Sorry, Customize is not available with this version of emacs"))
+        (message
+        "Sorry, Customize is not available with this version of emacs"))
     (defmacro defcustom (var value doc &rest args)
       `(defvar ,var ,value ,doc))
     )
@@ -236,12 +205,12 @@
     ;; We have an intermediate custom-library, hack around it!
     (defmacro customize-group (var &rest args)
       `(customize ,var))
-    )
+      )))
 
-  )
 ;; Provide a regular expression optimization routine, using regexp-opt
 ;; if provided by the user's elisp libraries
 (eval-and-compile
+  (if (featurep 'xemacs)
   (if (fboundp 'regexp-opt)
       ;; regexp-opt is defined, does it take 3 or 2 arguments?
       (if (fboundp 'function-max-args)
@@ -272,7 +241,9 @@
     (defun verilog-regexp-opt (strings &optional paren shy)
       (let ((open (if paren "\\(" "")) (close (if paren "\\)" "")))
        (concat open (mapconcat 'regexp-quote strings "\\|") close)))
-    ))
+        )
+    ;; Emacs.
+    (defalias 'verilog-regexp-opt 'regexp-opt)))
 
 (eval-when-compile
   (defun verilog-regexp-words (a)
@@ -287,7 +258,8 @@
 (defun verilog-font-customize ()
   "Link to customize fonts used for Verilog."
   (interactive)
-  (customize-apropos "font-lock-*" 'faces))
+  (if (fboundp 'customize-apropos)
+      (customize-apropos "font-lock-*" 'faces)))
 
 (defgroup verilog-mode nil
   "Facilitates easy editing of Verilog source text"
@@ -872,10 +844,14 @@
   "*Default name of Company for verilog header.
 If set will become buffer local.")
 
+(make-variable-buffer-local 'verilog-company)
+
 (defvar verilog-project nil
   "*Default name of Project for verilog header.
 If set will become buffer local.")
 
+(make-variable-buffer-local 'verilog-project)
+
 (defvar verilog-mode-map
   (let ((map (make-sparse-keymap)))
     (define-key map ";"        'electric-verilog-semi)
@@ -1208,9 +1184,13 @@
           "\\b__FILE__\\b" (file-name-nondirectory (buffer-file-name))
           t t compile-command))))
 
+;; Following code only gets called from compilation-mode-hook.
+(defvar compilation-error-regexp-alist)
+
 (defun verilog-error-regexp-add ()
   "Add the messages to the `compilation-error-regexp-alist'.
-Called by `compilation-mode-hook'.  This allows \\[next-error] to find the 
errors."
+Called by `compilation-mode-hook'.  This allows \\[next-error] to
+find the errors."
   (if (not verilog-error-regexp-add-didit)
       (progn
        (setq verilog-error-regexp-add-didit t)
@@ -1218,7 +1198,8 @@
                      (append verilog-error-regexp
                              (default-value 'compilation-error-regexp-alist)))
        ;; Could be buffer local at this point; maybe also in let; change all 
three
-       (setq compilation-error-regexp-alist (default-value 
'compilation-error-regexp-alist))
+       (setq compilation-error-regexp-alist
+             (default-value 'compilation-error-regexp-alist))
        (set (make-local-variable 'compilation-error-regexp-alist)
             (default-value 'compilation-error-regexp-alist))
        )))
@@ -1685,10 +1666,10 @@
     ;; figure out version numbers if not already discovered
     (and (or (not major) (not minor))
         (string-match "\\([0-9]+\\).\\([0-9]+\\)" emacs-version)
-        (setq major (string-to-int (substring emacs-version
+        (setq major (string-to-number (substring emacs-version
                                               (match-beginning 1)
                                               (match-end 1)))
-              minor (string-to-int (substring emacs-version
+              minor (string-to-number (substring emacs-version
                                               (match-beginning 2)
                                               (match-end 2)))))
     (if (not (and major minor))
@@ -1827,17 +1808,17 @@
 (defvar verilog-mode-syntax-table nil
   "Syntax table used in `verilog-mode' buffers.")
 
-(defconst verilog-font-lock-keywords nil
+(defvar verilog-font-lock-keywords nil
   "Default highlighting for Verilog mode.")
 
-(defconst verilog-font-lock-keywords-1 nil
+(defvar verilog-font-lock-keywords-1 nil
   "Subdued level highlighting for Verilog mode.")
 
-(defconst verilog-font-lock-keywords-2 nil
+(defvar verilog-font-lock-keywords-2 nil
   "Medium level highlighting for Verilog mode.
 See also `verilog-font-lock-extra-types'.")
 
-(defconst verilog-font-lock-keywords-3 nil
+(defvar verilog-font-lock-keywords-3 nil
   "Gaudy level highlighting for Verilog mode.
 See also `verilog-font-lock-extra-types'.")
 (defvar  verilog-font-lock-translate-off-face
@@ -2029,10 +2010,9 @@
                (when verilog-highlight-translate-off
                  (list
                   ;; Fontify things in translate off regions
-                  '(verilog-match-translate-off (0 
'verilog-font-lock-translate-off-face prepend))
-                  )))
-  )
-  )
+                  '(verilog-match-translate-off
+                    (0 'verilog-font-lock-translate-off-face prepend))
+                  )))))
 
 
 
@@ -2042,9 +2022,13 @@
     (let ((st-point (point)) hitbeg)
       (or (search-backward "//" (verilog-get-beg-of-line) t)
          (if (progn
-               ;; This is for tricky case //*, we keep searching if /* is 
proceeded by // on same line
-               (while (and (setq hitbeg (search-backward "/*" nil t))
-                           (progn (forward-char 1) (search-backward "//" 
(verilog-get-beg-of-line) t))))
+               ;; This is for tricky case //*, we keep searching if /* is
+               ;; proceeded by // on same line.
+               (while
+                   (and (setq hitbeg (search-backward "/*" nil t))
+                        (progn
+                          (forward-char 1)
+                          (search-backward "//" (verilog-get-beg-of-line) t))))
                hitbeg)
              (not (search-forward "*/" st-point t)))))))
 
@@ -2244,10 +2228,6 @@
 (defun verilog-declaration-beg ()
   (verilog-re-search-backward verilog-declaration-re (bobp) t))
 
-(require 'font-lock)
-(defvar verilog-need-fld 1)
-(defvar font-lock-defaults-alist nil)  ;In case we are XEmacs
-
 (defun verilog-font-lock-init ()
   "Initialize fontification."
   ;; highlight keywords and standardized types, attributes, enumeration
@@ -2257,38 +2237,19 @@
                (when verilog-highlight-translate-off
                  (list
                   ;; Fontify things in translate off regions
-                  '(verilog-match-translate-off (0 
'verilog-font-lock-translate-off-face prepend))
-                  ))
-       )
-  )
+                  '(verilog-match-translate-off
+                     (0 'verilog-font-lock-translate-off-face prepend))
+                  ))))
   (put 'verilog-mode 'font-lock-defaults
        '((verilog-font-lock-keywords
          verilog-font-lock-keywords-1
          verilog-font-lock-keywords-2
-         verilog-font-lock-keywords-3
-         )
-        nil ;; nil means highlight strings & comments as well as keywords
-        nil ;; nil means keywords must match case
-        nil ;; syntax table handled elsewhere
-        verilog-beg-of-defun ;; function to move to beginning of reasonable 
region to highlight
-        ))
-  (if verilog-need-fld
-      (let ((verilog-mode-defaults
-            '((verilog-font-lock-keywords
-               verilog-font-lock-keywords-1
-               verilog-font-lock-keywords-2
-               verilog-font-lock-keywords-3
-               )
-              nil ;; nil means highlight strings & comments as well as keywords
-              nil ;; nil means keywords must match case
-              nil ;; syntax table handled elsewhere
-              verilog-beg-of-defun ;; function to move to beginning of 
reasonable region to highlight
-              )))
-       (setq font-lock-defaults-alist
-             (append
-              font-lock-defaults-alist
-              (list (cons 'verilog-mode  verilog-mode-defaults))))
-       (setq verilog-need-fld 0))))
+         verilog-font-lock-keywords-3)
+        nil ; nil means highlight strings & comments as well as keywords
+        nil ; nil means keywords must match case
+        nil ; syntax table handled elsewhere
+         ;; Function to move to beginning of reasonable region to highlight
+        verilog-beg-of-defun)))
 
 ;; initialize fontification for Verilog Mode
 (verilog-font-lock-init)
@@ -2297,7 +2258,7 @@
   '("Please use \\[verilog-submit-bug-report] to report bugs."
     "Visit http://www.verilog.com to check for updates"
     ))
-(defconst verilog-startup-message-displayed t)
+(defvar verilog-startup-message-displayed t)
 (defun verilog-display-startup-message ()
   (if (not verilog-startup-message-displayed)
       (if (sit-for 5)
@@ -2486,15 +2447,20 @@
       (add-submenu nil verilog-stmt-menu)
       ))
   ;; Stuff for GNU emacs
-  (make-local-variable 'font-lock-defaults)
+  (set (make-local-variable 'font-lock-defaults)
+       '((verilog-font-lock-keywords verilog-font-lock-keywords-1
+                                     verilog-font-lock-keywords-2
+                                     verilog-font-lock-keywords-3)
+         nil nil nil verilog-beg-of-defun))
   ;;------------------------------------------------------------
   ;; now hook in 'verilog-colorize-include-files (eldo-mode.el&spice-mode.el)
   ;; all buffer local:
+  (when (featurep 'xemacs)
   (make-local-hook 'font-lock-mode-hook)
   (make-local-hook 'font-lock-after-fontify-buffer-hook); doesn't exist in 
emacs 20
+    (make-local-hook 'after-change-functions))
   (add-hook 'font-lock-mode-hook 'verilog-colorize-include-files-buffer t t)
   (add-hook 'font-lock-after-fontify-buffer-hook 
'verilog-colorize-include-files-buffer t t) ; not in emacs 20
-  (make-local-hook 'after-change-functions)
   (add-hook 'after-change-functions 'verilog-colorize-include-files t t)
 
   ;; Tell imenu how to handle verilog.
@@ -2535,7 +2501,7 @@
            (newline))
        (progn
          (newline)
-         (insert-string "// ")
+         (insert "// ")
          (beginning-of-line)))
       (verilog-indent-line))
      ((nth 4 state)                    ; Inside any comment (hence /**/)
@@ -2723,13 +2689,30 @@
   (newline)
   (insert " * "))
 
-(defun verilog-insert-indices (MAX)
-  "Insert a set of indices at into the rectangle.
-The upper left corner is defined by the current point.  Indices always
-begin with 0 and extend to the MAX - 1.  If no prefix arg is given, the
-user is prompted for a value.  The indices are surrounded by square brackets
-\[].  For example, the following code with the point located after the first
-'a' gives:
+(defun verilog-insert-1 (fmt max)
+  "Insert integers 0 to MAX-1 according to format string FMT.
+Inserts one integer per line, at the current column.  Stops early
+if it reaches the end of the buffer."
+  (let ((col (current-column))
+        (n 0))
+    (save-excursion
+      (while (< n max)
+        (insert (format fmt n))
+        (forward-line 1)
+        ;; Note that this function does not bother to check for lines
+        ;; shorter than col.
+        (if (eobp)
+            (setq n max)
+          (setq n (1+ n))
+          (move-to-column col))))))
+
+(defun verilog-insert-indices (max)
+  "Insert a set of indices into a rectangle.
+The upper left corner is defined by point.  Indices begin with 0
+and extend to the MAX - 1.  If no prefix arg is given, the user
+is prompted for a value.  The indices are surrounded by square
+brackets \[].  For example, the following code with the point
+located after the first 'a' gives:
 
     a = b                           a[  0] = b
     a = b                           a[  1] = b
@@ -2741,41 +2724,28 @@
     a = b                           a[  7] = b
     a = b                           a[  8] = b"
 
-  (interactive "NMAX?")
-  (save-excursion
-  (let ((n 0))
-    (while (< n MAX)
-      (save-excursion
-      (insert (format "[%3d]" n)))
-      (next-line 1)
-      (setq n (1+ n))))))
-
+  (interactive "NMAX? ")
+  (verilog-insert-1 "[%3d]" max))
 
-(defun verilog-generate-numbers (MAX)
+(defun verilog-generate-numbers (max)
   "Insert a set of generated numbers into a rectangle.
 The upper left corner is defined by point.  The numbers are padded to three
 digits, starting with 000 and extending to (MAX - 1).  If no prefix argument
-is supplied, then the user is prompted for the MAX number.  consider the
+is supplied, then the user is prompted for the MAX number.  Consider the
 following code fragment:
 
     buf buf                           buf buf000
     buf buf                           buf buf001
     buf buf                           buf buf002
     buf buf                           buf buf003
-    buf buf   ==> insert-indices ==>  buf buf004
+    buf buf   ==> generate-numbers ==>  buf buf004
     buf buf                           buf buf005
     buf buf                           buf buf006
     buf buf                           buf buf007
     buf buf                           buf buf008"
 
-  (interactive "NMAX?")
-  (save-excursion
-  (let ((n 0))
-    (while (< n MAX)
-      (save-excursion
-      (insert (format "%3.3d" n)))
-      (next-line 1)
-      (setq n (1+ n))))))
+  (interactive "NMAX? ")
+  (verilog-insert-1 "%3.3d" max))
 
 (defun verilog-mark-defun ()
   "Mark the current verilog function (or procedure).
@@ -2785,7 +2755,8 @@
   (verilog-end-of-defun)
   (push-mark (point))
   (verilog-beg-of-defun)
-  (zmacs-activate-region))
+  (if (fboundp 'zmacs-activate-region)
+      (zmacs-activate-region)))
 
 (defun verilog-comment-region (start end)
   ; checkdoc-params: (start end)
@@ -3272,8 +3243,7 @@
                    (cond
                     ((looking-at "\\<randcase\\>")
                      (setq str "randcase")
-                     (setq err nil)
-                     )
+                     (setq err nil))
                     ((match-end 0)
                      (goto-char (match-end 1))
                      (if nil
@@ -3291,8 +3261,7 @@
                      (verilog-kill-existing-comment))
                  (delete-horizontal-space)
                  (insert (concat " // " str ))
-                 (if err (ding 't))
-                 ))
+                 (if err (ding 't))))
 
               (;- This is a begin..end block
                (match-end 2) ;; of verilog-end-block-ordered-re
@@ -3628,19 +3597,25 @@
     (let ((signal-string (buffer-substring (point)
                                           (progn
                                             (end-of-line) (point)))))
-      (if (string-match (concat "\\(.*\\)"
+      (if (string-match
+          (concat "\\(.*\\)"
                                (regexp-quote bra)
                                
"\\([0-9]*\\)\\(:[0-9]*\\|\\)\\(::[0-9---]*\\|\\)"
                                (regexp-quote ket)
                                "\\(.*\\)$") signal-string)
          (let* ((sig-head (match-string 1 signal-string))
-                (vec-start (string-to-int (match-string 2 signal-string)))
+                (vec-start (string-to-number (match-string 2 signal-string)))
                 (vec-end (if (= (match-beginning 3) (match-end 3))
                              vec-start
-                           (string-to-int (substring signal-string (1+ 
(match-beginning 3)) (match-end 3)))))
-                (vec-range (if (= (match-beginning 4) (match-end 4))
+                           (string-to-number
+                            (substring signal-string (1+ (match-beginning 3))
+                                       (match-end 3)))))
+                (vec-range
+                 (if (= (match-beginning 4) (match-end 4))
                                1
-                             (string-to-int (substring signal-string (+ 2 
(match-beginning 4)) (match-end 4)))))
+                   (string-to-number
+                    (substring signal-string (+ 2 (match-beginning 4))
+                               (match-end 4)))))
                 (sig-tail (match-string 5 signal-string))
                 vec)
            ;; Decode vectors
@@ -3663,7 +3638,8 @@
            ;;
            ;; Expand vector
            (while vec
-             (insert (concat sig-head bra (int-to-string (car vec)) ket 
sig-tail "\n"))
+             (insert (concat sig-head bra
+                             (int-to-string (car vec)) ket sig-tail "\n"))
              (setq vec (cdr vec)))
            (delete-char -1)
            ;;
@@ -3727,6 +3703,8 @@
           (verilog-verilint-off))
          (t (error "Linter name not set")))))
 
+(defvar compilation-last-buffer)
+
 (defun verilog-surelint-off ()
   "Convert a SureLint warning line into a disable statement.
 Run from Verilog source window; assumes there is a *compile* buffer
@@ -3737,8 +3715,13 @@
 becomes:
        // surefire lint_line_off UDDONX"
   (interactive)
+  (let ((buff (if (boundp 'next-error-last-buffer)
+                  next-error-last-buffer
+                compilation-last-buffer)))
+    (when (buffer-live-p buff)
+      ;; FIXME with-current-buffer?
   (save-excursion
-    (switch-to-buffer compilation-last-buffer)
+        (switch-to-buffer buff)
     (beginning-of-line)
     (when
        (looking-at "\\(INFO\\|WARNING\\|ERROR\\) \\[[^-]+-\\([^]]+\\)\\]: 
\\([^,]+\\), line \\([0-9]+\\): \\(.*\\)$")
@@ -3777,16 +3760,16 @@
              (let ((lim (save-excursion (end-of-line) (point))))
                (if (re-search-forward code lim 'move)
                    (throw 'already t)
-                 (insert-string (concat " " code)))))
+                      (insert (concat " " code)))))
             (t
              )))
           ((verilog-in-star-comment-p)
            (re-search-backward "/\*")
-           (insert-string (format " // surefire lint_off_line %6s" code ))
+                (insert (format " // surefire lint_off_line %6s" code ))
            )
           (t
-           (insert-string (format " // surefire lint_off_line %6s" code ))
-           )))))))
+                (insert (format " // surefire lint_off_line %6s" code ))
+                )))))))))
 
 (defun verilog-verilint-off ()
   "Convert a Verilint warning line into a disable statement.
@@ -3839,7 +3822,7 @@
    ;; Make sure any sub-files we read get proper mode
    (setq default-major-mode `verilog-mode)
    ;; Ditto files already read in
-   (mapcar '(lambda (buf)
+   (mapc (lambda (buf)
              (when (buffer-file-name buf)
                (save-excursion
                  (set-buffer buf)
@@ -3850,7 +3833,8 @@
              (when (buffer-file-name buf)
                (save-excursion
                  (if (not (file-exists-p (buffer-file-name buf)))
-                     (error (concat "File not found: " (buffer-file-name 
buf))))
+                     (error
+                      (concat "File not found: " (buffer-file-name buf))))
                  (message (concat "Processing " (buffer-file-name buf)))
                  (set-buffer buf)
                  (funcall funref)
@@ -4121,8 +4105,7 @@
            (save-excursion
              (verilog-beg-of-statement)
              (if (= (point) here)
-                 (throw 'nesting 'block))
-             )))
+                 (throw 'nesting 'block)))))
         (t              (throw 'nesting 'block))))
 
        ((looking-at verilog-end-block-re)
@@ -4142,11 +4125,8 @@
        (throw 'nesting 'cpp))
 
        ((bobp)
-       (throw 'nesting 'cpp))
-       ))
-    (throw 'nesting 'cpp)
-    )
-  )
+       (throw 'nesting 'cpp))))
+    (throw 'nesting 'cpp)))
 
 (defun verilog-calculate-indent-directive ()
   "Return indentation level for directive.
@@ -4668,8 +4648,10 @@
         ((verilog-continued-line)
          (let ((sp1 (point)))
            (if (verilog-continued-line)
-               (progn (goto-char sp)
-                      (setq indent-str (list 'statement 
(verilog-current-indent-level))))
+               (progn
+                 (goto-char sp)
+                 (setq
+                  indent-str (list 'statement (verilog-current-indent-level))))
              (goto-char sp1)
              (setq indent-str (list 'block (verilog-current-indent-level)))))
          (goto-char sp))
@@ -5027,7 +5009,8 @@
                  (setq e (point))      ;Might be on last line
                  (verilog-forward-syntactic-ws)
                  (beginning-of-line)
-                 (while (and (not(looking-at (concat "^\\s-*" 
verilog-complete-reg)))
+                 (while (and (not (looking-at
+                                   (concat "^\\s-*" verilog-complete-reg)))
                              (looking-at myre))
                    (end-of-line)
                    (setq e (point))
@@ -5112,7 +5095,8 @@
        (val)
        (m1 (make-marker))
        )
-    (setq val (+ baseind (eval (cdr (assoc 'declaration 
verilog-indent-alist)))))
+    (setq val
+         (+ baseind (eval (cdr (assoc 'declaration verilog-indent-alist)))))
     (indent-line-to val)
 
     ;; Use previous declaration (in this module) as template.
@@ -5127,7 +5111,9 @@
              (skip-chars-forward " \t")
              (setq ind (current-column))
              (goto-char pos)
-             (setq val (+ baseind (eval (cdr (assoc 'declaration 
verilog-indent-alist)))))
+             (setq val
+                   (+ baseind
+                      (eval (cdr (assoc 'declaration verilog-indent-alist)))))
              (indent-line-to val)
              (if (and verilog-indent-declaration-macros
                       (looking-at verilog-declaration-re-2-macro))
@@ -5159,14 +5145,8 @@
                        (if (/= (current-column) ind)
                            (progn
                              (just-one-space)
-                             (indent-to ind))
-                         )))
-                 )))
-         )
-      )
-    (goto-char pos)
-    )
-  )
+                             (indent-to ind))))))))))
+    (goto-char pos)))
 
 (defun verilog-get-lineup-indent (b edpos)
   "Return the indent level that will line up several lines within the region.
@@ -5677,7 +5657,8 @@
        (progn
          (save-excursion
            (goto-char (point-min))
-           (setq pt (re-search-forward (verilog-build-defun-re label t) nil 
t)))
+           (setq pt
+                 (re-search-forward (verilog-build-defun-re label t) nil t)))
          (when pt
            (goto-char pt)
            (beginning-of-line))
@@ -5861,12 +5842,10 @@
       (search-forward "<title>")
       (replace-match string t t)
       (setq string (read-string "project: " verilog-project))
-      (make-variable-buffer-local 'verilog-project)
       (setq verilog-project string)
       (search-forward "<project>")
       (replace-match string t t)
       (setq string (read-string "Company: " verilog-company))
-      (make-variable-buffer-local 'verilog-company)
       (setq verilog-company string)
       (search-forward "<company>")
       (replace-match string t t)
@@ -6021,10 +6000,11 @@
       (setq bus (verilog-sig-bits sig))
       (cond ((and bus
                  (or (and (string-match "\\[\\([0-9]+\\):\\([0-9]+\\)\\]" bus)
-                          (setq highbit (string-to-int (match-string 1 bus))
-                                lowbit  (string-to-int (match-string 2 bus))))
+                          (setq highbit (string-to-number (match-string 1 bus))
+                                lowbit  (string-to-number
+                                         (match-string 2 bus))))
                      (and (string-match "\\[\\([0-9]+\\)\\]" bus)
-                          (setq highbit (string-to-int (match-string 1 bus))
+                          (setq highbit (string-to-number (match-string 1 bus))
                                 lowbit  highbit))))
             ;; Combine bits in bus
             (if sv-highbit
@@ -6040,7 +6020,8 @@
       (setq sig (car in-list))
       (cond ((and sig (equal sv-name (verilog-sig-name sig)))
             ;; Combine with this signal
-            (when (and sv-busstring (not (equal sv-busstring (verilog-sig-bits 
sig))))
+            (when (and sv-busstring
+                       (not (equal sv-busstring (verilog-sig-bits sig))))
               (when nil  ;; Debugging
                 (message (concat "Warning, can't merge into single bus "
                                  sv-name bus
@@ -6056,10 +6037,12 @@
            ;; Note sig may also be nil for the last signal in the list
            (t
             (setq out-list
-                  (cons (list sv-name
+                  (cons
+                   (list sv-name
                               (or sv-busstring
                                   (if sv-highbit
-                                      (concat "[" (int-to-string sv-highbit) 
":" (int-to-string sv-lowbit) "]")))
+                                 (concat "[" (int-to-string sv-highbit) ":"
+                                         (int-to-string sv-lowbit) "]")))
                               (concat sv-comment combo buswarn)
                               sv-memory sv-enum sv-signed sv-type sv-multidim)
                         out-list)
@@ -6292,9 +6275,44 @@
              (nreverse sigs-gparam)
              ))))
 
-(defvar sigs-in nil) ; Prevent compile warning
-(defvar sigs-inout nil) ; Prevent compile warning
-(defvar sigs-out nil) ; Prevent compile warning
+(defvar sigs-in)                        ; Prevent compile warning
+(defvar sigs-inout)                     ; Prevent compile warning
+(defvar sigs-out)                       ; Prevent compile warning
+
+
+(defsubst verilog-modi-get-decls (modi)
+  (verilog-modi-cache-results modi 'verilog-read-decls))
+
+(defsubst verilog-modi-get-sub-decls (modi)
+  (verilog-modi-cache-results modi 'verilog-read-sub-decls))
+
+
+;; Signal reading for given module
+;; Note these all take modi's - as returned from the
+;; verilog-modi-current function.
+(defsubst verilog-modi-get-outputs (modi)
+  (aref (verilog-modi-get-decls modi) 0))
+(defsubst verilog-modi-get-inouts (modi)
+  (aref (verilog-modi-get-decls modi) 1))
+(defsubst verilog-modi-get-inputs (modi)
+  (aref (verilog-modi-get-decls modi) 2))
+(defsubst verilog-modi-get-wires (modi)
+  (aref (verilog-modi-get-decls modi) 3))
+(defsubst verilog-modi-get-regs (modi)
+  (aref (verilog-modi-get-decls modi) 4))
+(defsubst verilog-modi-get-assigns (modi)
+  (aref (verilog-modi-get-decls modi) 5))
+(defsubst verilog-modi-get-consts (modi)
+  (aref (verilog-modi-get-decls modi) 6))
+(defsubst verilog-modi-get-gparams (modi)
+  (aref (verilog-modi-get-decls modi) 7))
+(defsubst verilog-modi-get-sub-outputs (modi)
+  (aref (verilog-modi-get-sub-decls modi) 0))
+(defsubst verilog-modi-get-sub-inouts (modi)
+  (aref (verilog-modi-get-sub-decls modi) 1))
+(defsubst verilog-modi-get-sub-inputs (modi)
+  (aref (verilog-modi-get-sub-decls modi) 2))
+
 
 (defun verilog-read-sub-decls-sig (submodi comment port sig vec multidim)
   "For verilog-read-sub-decls-line, add a signal."
@@ -6506,11 +6524,10 @@
             (end-pt (point)))
        (eval-region beg-pt end-pt nil)))))
 
-(eval-when-compile
-  ;; These are passed in a let, not global
-  (if (not (boundp 'sigs-in))
-      (defvar sigs-in nil) (defvar sigs-out nil)
-      (defvar got-sig nil) (defvar got-rvalue nil) (defvar uses-delayed nil)))
+;; These are passed in a let, not global
+(defvar got-sig)
+(defvar got-rvalue)
+(defvar uses-delayed)
 
 (defun verilog-read-always-signals-recurse
   (exit-keywd rvalue ignore-next)
@@ -7033,10 +7050,10 @@
   "Convert `verilog-library-flags' into standard library variables."
   ;; If the flags are local, then all the outputs should be local also
   (when (local-variable-p `verilog-library-flags (current-buffer))
-    (make-variable-buffer-local 'verilog-library-extensions)
-    (make-variable-buffer-local 'verilog-library-directories)
-    (make-variable-buffer-local 'verilog-library-files)
-    (make-variable-buffer-local 'verilog-library-flags))
+    (mapc 'make-local-variable '(verilog-library-extensions
+                                 verilog-library-directories
+                                 verilog-library-files
+                                 verilog-library-flags)))
   ;; Allow user to customize
   (run-hooks 'verilog-before-getopt-flags-hook)
   ;; Process arguments
@@ -7061,10 +7078,7 @@
   "Return point if MODULE is specified inside FILENAME, else nil.
 Allows version control to check out the file if need be."
   (and (or (file-exists-p filename)
-          (and
-           (condition-case nil
-               (fboundp 'vc-backend)
-             (error nil))
+          (and (fboundp 'vc-backend)
            (vc-backend filename)))
        (let (pt)
         (save-excursion
@@ -7224,6 +7238,8 @@
 For speeding up verilog-modi-get-* commands.
 Buffer-local.")
 
+(make-variable-buffer-local 'verilog-modi-cache-list)
+
 (defvar verilog-modi-cache-preserve-tick nil
   "Modification tick after which the cache is still considered valid.
 Use verilog-preserve-cache's to set")
@@ -7349,7 +7365,6 @@
               (setq func-returns (funcall function))
               (when fontlocked (font-lock-mode t)))
             ;; Cache for next time
-            (make-variable-buffer-local 'verilog-modi-cache-list)
             (setq verilog-modi-cache-list
                   (cons (list (list (verilog-modi-name modi) function)
                               (buffer-modified-tick)
@@ -7384,37 +7399,6 @@
         (verilog-modi-cache-preserve-buffer (current-buffer)))
      (progn ,@body)))
 
-(defsubst verilog-modi-get-decls (modi)
-  (verilog-modi-cache-results modi 'verilog-read-decls))
-
-(defsubst verilog-modi-get-sub-decls (modi)
-  (verilog-modi-cache-results modi 'verilog-read-sub-decls))
-
-;; Signal reading for given module
-;; Note these all take modi's - as returned from the verilog-modi-current 
function
-(defsubst verilog-modi-get-outputs (modi)
-  (aref (verilog-modi-get-decls modi) 0))
-(defsubst verilog-modi-get-inouts (modi)
-  (aref (verilog-modi-get-decls modi) 1))
-(defsubst verilog-modi-get-inputs (modi)
-  (aref (verilog-modi-get-decls modi) 2))
-(defsubst verilog-modi-get-wires (modi)
-  (aref (verilog-modi-get-decls modi) 3))
-(defsubst verilog-modi-get-regs (modi)
-  (aref (verilog-modi-get-decls modi) 4))
-(defsubst verilog-modi-get-assigns (modi)
-  (aref (verilog-modi-get-decls modi) 5))
-(defsubst verilog-modi-get-consts (modi)
-  (aref (verilog-modi-get-decls modi) 6))
-(defsubst verilog-modi-get-gparams (modi)
-  (aref (verilog-modi-get-decls modi) 7))
-(defsubst verilog-modi-get-sub-outputs (modi)
-  (aref (verilog-modi-get-sub-decls modi) 0))
-(defsubst verilog-modi-get-sub-inouts (modi)
-  (aref (verilog-modi-get-sub-decls modi) 1))
-(defsubst verilog-modi-get-sub-inputs (modi)
-  (aref (verilog-modi-get-sub-decls modi) 2))
-
 
 (defun verilog-signals-matching-enum (in-list enum)
   "Return all signals in IN-LIST matching the given ENUM."
@@ -7603,13 +7587,15 @@
             (setq range-exp (match-string 1 range-exp)))
         (cond ((not range-exp)
                "1")
-              ((string-match "^\\s *\\([0-9]+\\)\\s *:\\s *\\([0-9]+\\)\\s *$" 
range-exp)
-               (int-to-string (1+ (abs (- (string-to-int (match-string 1 
range-exp))
-                                          (string-to-int (match-string 2 
range-exp)))))))
+              ((string-match "^\\s *\\([0-9]+\\)\\s *:\\s *\\([0-9]+\\)\\s *$"
+                             range-exp)
+               (int-to-string
+                (1+ (abs (- (string-to-number (match-string 1 range-exp))
+                            (string-to-number (match-string 2 range-exp)))))))
               ((string-match "^\\(.*\\)\\s *:\\s *\\(.*\\)\\s *$" range-exp)
-               (concat "(1+(" (match-string 1 range-exp)
-                       ")"
-                       (if (equal "0" (match-string 2 range-exp))  ;; Don't 
bother with -(0)
+               (concat "(1+(" (match-string 1 range-exp) ")"
+                       (if (equal "0" (match-string 2 range-exp)) 
+                           ;; Don't bother with -(0)
                            ""
                          (concat "-(" (match-string 2 range-exp) ")"))
                        ")"))
@@ -7928,7 +7914,7 @@
 (defun verilog-auto-reeval-locals (&optional force)
   "Read file local variable segment at bottom of file if it has changed.
 If FORCE, always reread it."
-  (make-variable-buffer-local 'verilog-auto-last-file-locals)
+  (make-local-variable 'verilog-auto-last-file-locals)
   (let ((curlocal (verilog-auto-read-locals)))
     (when (or force (not (equal verilog-auto-last-file-locals curlocal)))
       (setq verilog-auto-last-file-locals curlocal)
@@ -8435,9 +8421,11 @@
          (when sig-list
            (when (not did-first) (verilog-auto-inst-first) (setq did-first t))
            (indent-to indent-pt)
-           (insert "// Outputs\n")     ;; Note these are searched for in 
verilog-read-sub-decls
-           (mapcar (function (lambda (port)
-                               (verilog-auto-inst-port port indent-pt tpl-list 
tpl-num for-star)))
+            ;; Note these are searched for in verilog-read-sub-decls.
+           (insert "// Outputs\n")
+           (mapc (lambda (port)
+                    (verilog-auto-inst-port port indent-pt
+                                            tpl-list tpl-num for-star))
                    sig-list)))
        (let ((sig-list (verilog-signals-not-in
                         (verilog-modi-get-inouts submodi)
@@ -8447,8 +8435,9 @@
            (when (not did-first) (verilog-auto-inst-first) (setq did-first t))
            (indent-to indent-pt)
            (insert "// Inouts\n")
-           (mapcar (function (lambda (port)
-                               (verilog-auto-inst-port port indent-pt tpl-list 
tpl-num for-star)))
+           (mapc (lambda (port)
+                    (verilog-auto-inst-port port indent-pt
+                                            tpl-list tpl-num for-star))
                    sig-list)))
        (let ((sig-list (verilog-signals-not-in
                         (verilog-modi-get-inputs submodi)
@@ -8458,8 +8447,9 @@
            (when (not did-first) (verilog-auto-inst-first) (setq did-first t))
            (indent-to indent-pt)
            (insert "// Inputs\n")
-           (mapcar (function (lambda (port)
-                               (verilog-auto-inst-port port indent-pt tpl-list 
tpl-num for-star)))
+           (mapc (lambda (port)
+                    (verilog-auto-inst-port port indent-pt
+                                            tpl-list tpl-num for-star))
                    sig-list)))
        ;; Kill extra semi
        (save-excursion
@@ -8561,9 +8551,11 @@
          (when sig-list
            (when (not did-first) (verilog-auto-inst-first) (setq did-first t))
            (indent-to indent-pt)
-           (insert "// Parameters\n")  ;; Note these are searched for in 
verilog-read-sub-decls
-           (mapcar (function (lambda (port)
-                               (verilog-auto-inst-port port indent-pt tpl-list 
tpl-num nil)))
+            ;; Note these are searched for in verilog-read-sub-decls.
+           (insert "// Parameters\n")
+           (mapc (lambda (port)
+                    (verilog-auto-inst-port port indent-pt
+                                            tpl-list tpl-num nil))
                    sig-list)))
        ;; Kill extra semi
        (save-excursion
@@ -9563,15 +9555,17 @@
     (goto-char (point-min))
     (while (search-forward "AUTO_TEMPLATE" nil t)
       (setq templateno (1+ templateno))
-      (setq template-line (cons (count-lines (point-min) (point)) 
template-line)))
+      (setq template-line
+           (cons (count-lines (point-min) (point)) template-line)))
     (setq template-line (nreverse template-line))
     ;; Replace T# L# with absolute line number
     (goto-char (point-min))
     (while (re-search-forward " Templated T\\([0-9]+\\) L\\([0-9]+\\)" nil t)
-      (replace-match (concat " Templated "
-                            (int-to-string (+ (nth (string-to-int 
(match-string 1))
+      (replace-match
+       (concat " Templated "
+              (int-to-string (+ (nth (string-to-number (match-string 1))
                                                    template-line)
-                                              (string-to-int (match-string 
2)))))
+                                (string-to-number (match-string 2)))))
                     t t))))
 
 
@@ -9636,7 +9630,7 @@
 Wilson Snyder (address@hidden), and/or see http://www.veripool.com.";
   (interactive)
   (unless noninteractive (message "Updating AUTOs..."))
-  (if (featurep 'dinotrace)
+  (if (fboundp 'dinotrace-unannotate-all)
       (dinotrace-unannotate-all))
   (let ((oldbuf (if (not (buffer-modified-p))
                    (buffer-string)))
@@ -9790,7 +9784,7 @@
 (defvar verilog-sk-reset nil)
 (defun verilog-sk-prompt-reset ()
   "Prompt for the name of a state machine reset."
-  (setq verilog-sk-reset (read-input "name of reset: " "rst")))
+  (setq verilog-sk-reset (read-string "name of reset: " "rst")))
 
 
 (define-skeleton verilog-sk-prompt-state-selector
@@ -10235,6 +10229,8 @@
     (princ "To submit a bug, use M-x verilog-submit-bug-report\n")
     (princ "\n")))
 
+(autoload 'reporter-submit-bug-report "reporter")
+
 (defun verilog-submit-bug-report ()
   "Submit via mail a bug report on verilog-mode.el."
   (interactive)




reply via email to

[Prev in Thread] Current Thread [Next in Thread]