mirror of
git://git.sv.gnu.org/emacs.git
synced 2026-01-04 11:00:45 -08:00
* lisp/cedet/semantic/bovine/c.el (semantic-tag-protection): Silence warning
We used to get
cedet/semantic/bovine/c.el:1462:25: Warning: value returned from
(string= s "static") is unused
* lisp/cedet/semantic/bovine/c.el (semantic-tag-protection): Merge two
`when` into an `if` and set `prot` instead of throwing away a result.
Use `pcase` while we're at it.
This commit is contained in:
parent
c6dd8dd223
commit
aaf0e62048
1 changed files with 18 additions and 22 deletions
|
|
@ -1466,36 +1466,32 @@ Override function for `semantic-tag-protection'."
|
|||
(prot nil))
|
||||
;; Check the modifiers for protection if we are not a child
|
||||
;; of some class type.
|
||||
(when (or (not parent) (not (eq (semantic-tag-class parent) 'type)))
|
||||
(while (and (not prot) mods)
|
||||
(if (stringp (car mods))
|
||||
(let ((s (car mods)))
|
||||
;; A few silly defaults to get things started.
|
||||
(cond ((or (string= s "extern")
|
||||
(string= s "export"))
|
||||
'public)
|
||||
((string= s "static")
|
||||
'private))))
|
||||
(setq mods (cdr mods))))
|
||||
;; If we have a typed parent, look for :public style labels.
|
||||
(when (and parent (eq (semantic-tag-class parent) 'type))
|
||||
(if (not (and parent (eq (semantic-tag-class parent) 'type)))
|
||||
(while (and (not prot) mods)
|
||||
(if (stringp (car mods))
|
||||
(let ((s (car mods)))
|
||||
;; A few silly defaults to get things started.
|
||||
(setq prot (pcase s
|
||||
((or "extern" "export") 'public)
|
||||
("static" 'private)))))
|
||||
(setq mods (cdr mods)))
|
||||
;; If we have a typed parent, look for :public style labels.
|
||||
(let ((pp (semantic-tag-type-members parent)))
|
||||
(while (and pp (not (semantic-equivalent-tag-p (car pp) tag)))
|
||||
(when (eq (semantic-tag-class (car pp)) 'label)
|
||||
(setq prot
|
||||
(cond ((string= (semantic-tag-name (car pp)) "public")
|
||||
'public)
|
||||
((string= (semantic-tag-name (car pp)) "private")
|
||||
'private)
|
||||
((string= (semantic-tag-name (car pp)) "protected")
|
||||
'protected)))
|
||||
(pcase (semantic-tag-name (car pp))
|
||||
("public" 'public)
|
||||
("private" 'private)
|
||||
("protected" 'protected)))
|
||||
)
|
||||
(setq pp (cdr pp)))))
|
||||
(when (and (not prot) (eq (semantic-tag-class parent) 'type))
|
||||
(setq prot
|
||||
(cond ((string= (semantic-tag-type parent) "class") 'private)
|
||||
((string= (semantic-tag-type parent) "struct") 'public)
|
||||
(t 'unknown))))
|
||||
(pcase (semantic-tag-type parent)
|
||||
("class" 'private)
|
||||
("struct" 'public)
|
||||
(_ 'unknown))))
|
||||
(or prot
|
||||
(if (and parent (semantic-tag-of-class-p parent 'type))
|
||||
'public
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue