aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorWilson Snyder2019-11-21 14:38:09 -0500
committerWilson Snyder2019-11-21 14:38:09 -0500
commit6c9c45bfabaa06bd604c95e194102143b87f700e (patch)
tree5f5beb1ad6f38e30edfa158d9aa0868779207905
parent03938ba381a25ae53c9d39478c020849d09c3656 (diff)
downloademacs-6c9c45bfabaa06bd604c95e194102143b87f700e.tar.gz
emacs-6c9c45bfabaa06bd604c95e194102143b87f700e.zip
When verilog-auto-ignore-concat is true, also ignore parenthesized signals.
* lisp/progmodes/verilog-mode.el (verilog-auto-ignore-concat): When `verilog-auto-ignore-concat' is true, also ignore parenthesized signals.
-rw-r--r--lisp/progmodes/verilog-mode.el22
1 files changed, 11 insertions, 11 deletions
diff --git a/lisp/progmodes/verilog-mode.el b/lisp/progmodes/verilog-mode.el
index 85657b385d5..0afbdc3dd18 100644
--- a/lisp/progmodes/verilog-mode.el
+++ b/lisp/progmodes/verilog-mode.el
@@ -9,7 +9,7 @@
9;; Keywords: languages 9;; Keywords: languages
10;; The "Version" is the date followed by the decimal rendition of the Git 10;; The "Version" is the date followed by the decimal rendition of the Git
11;; commit hex. 11;; commit hex.
12;; Version: 2019.11.11.038630457 12;; Version: 2019.11.21.248091482
13 13
14;; Yoni Rabkin <yoni@rabkins.net> contacted the maintainer of this 14;; Yoni Rabkin <yoni@rabkins.net> contacted the maintainer of this
15;; file on 19/3/2008, and the maintainer agreed that when a bug is 15;; file on 19/3/2008, and the maintainer agreed that when a bug is
@@ -124,7 +124,7 @@
124;; 124;;
125 125
126;; This variable will always hold the version number of the mode 126;; This variable will always hold the version number of the mode
127(defconst verilog-mode-version "2019-11-11-24d7439-vpo-GNU" 127(defconst verilog-mode-version "2019-11-21-ec9935a-vpo-GNU"
128 "Version of this Verilog mode.") 128 "Version of this Verilog mode.")
129(defconst verilog-mode-release-emacs t 129(defconst verilog-mode-release-emacs t
130 "If non-nil, this version of Verilog mode was released with Emacs itself.") 130 "If non-nil, this version of Verilog mode was released with Emacs itself.")
@@ -809,9 +809,7 @@ The name of the function or case will be set between the braces."
809(defcustom verilog-auto-ignore-concat nil 809(defcustom verilog-auto-ignore-concat nil
810 "Non-nil means ignore signals in {...} concatenations for AUTOWIRE etc. 810 "Non-nil means ignore signals in {...} concatenations for AUTOWIRE etc.
811This will exclude signals referenced as pin connections in {...} 811This will exclude signals referenced as pin connections in {...}
812from AUTOWIRE, AUTOOUTPUT and friends. This flag should be set 812or (...) from AUTOWIRE, AUTOOUTPUT and friends."
813for backward compatibility only and not set in new designs; it
814may be removed in future versions."
815 :group 'verilog-mode-actions 813 :group 'verilog-mode-actions
816 :type 'boolean) 814 :type 'boolean)
817(put 'verilog-auto-ignore-concat 'safe-local-variable 'verilog-booleanp) 815(put 'verilog-auto-ignore-concat 'safe-local-variable 'verilog-booleanp)
@@ -8862,11 +8860,10 @@ Return an array of [outputs inouts inputs wire reg assign const]."
8862 ;; {..., a, b} requires us to recurse on a,b 8860 ;; {..., a, b} requires us to recurse on a,b
8863 ;; To support {#{},{#{a,b}} we'll just split everything on [{},] 8861 ;; To support {#{},{#{a,b}} we'll just split everything on [{},]
8864 ((string-match "^\\s-*{\\(.*\\)}\\s-*$" expr) 8862 ((string-match "^\\s-*{\\(.*\\)}\\s-*$" expr)
8865 (unless verilog-auto-ignore-concat 8863 (let ((mlst (split-string (match-string 1 expr) "[{},]"))
8866 (let ((mlst (split-string (match-string 1 expr) "[{},]")) 8864 mstr)
8867 mstr) 8865 (while (setq mstr (pop mlst))
8868 (while (setq mstr (pop mlst)) 8866 (verilog-read-sub-decls-expr submoddecls par-values comment port mstr))))
8869 (verilog-read-sub-decls-expr submoddecls par-values comment port mstr)))))
8870 (t 8867 (t
8871 (let (sig vec multidim mem) 8868 (let (sig vec multidim mem)
8872 ;; Remove leading reduction operators, etc 8869 ;; Remove leading reduction operators, etc
@@ -8942,7 +8939,10 @@ Inserts the list of signals found, using submodi to look up each port."
8942 ;; We intentionally ignore (non-escaped) signals with .s in them 8939 ;; We intentionally ignore (non-escaped) signals with .s in them
8943 ;; this prevents AUTOWIRE etc from noticing hierarchical sigs. 8940 ;; this prevents AUTOWIRE etc from noticing hierarchical sigs.
8944 (when port 8941 (when port
8945 (cond ((looking-at "\\([a-zA-Z_][a-zA-Z_0-9]*\\)\\s-*)") 8942 (cond ((and verilog-auto-ignore-concat
8943 (looking-at "[({]"))
8944 nil) ; {...} or (...) historically ignored with auto-ignore-concat
8945 ((looking-at "\\([a-zA-Z_][a-zA-Z_0-9]*\\)\\s-*)")
8946 (verilog-read-sub-decls-sig 8946 (verilog-read-sub-decls-sig
8947 submoddecls par-values comment port 8947 submoddecls par-values comment port
8948 (verilog-string-remove-spaces (match-string-no-properties 1)) ; sig 8948 (verilog-string-remove-spaces (match-string-no-properties 1)) ; sig