aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChong Yidong2012-10-02 23:21:47 +0800
committerChong Yidong2012-10-02 23:21:47 +0800
commita96e1cb758db988df6e301f43bc020a009a4175b (patch)
tree8ca33ae1d318154f7955693905f02844ca29cbe0
parent0a99eee11b09820a5ab78dadae4ccbdc7e16ccb3 (diff)
downloademacs-a96e1cb758db988df6e301f43bc020a009a4175b.tar.gz
emacs-a96e1cb758db988df6e301f43bc020a009a4175b.zip
Incorporate Semantic's hideif components into hideif.el (replacing advice)
* progmodes/hideif.el (hif-lookup, hif-defined): Handle semantic-c-takeover-hideif.
-rw-r--r--lisp/ChangeLog5
-rw-r--r--lisp/progmodes/hideif.el19
2 files changed, 18 insertions, 6 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index 1527307f00e..ea4affe77c4 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,3 +1,8 @@
12012-10-02 Chong Yidong <cyd@gnu.org>
2
3 * progmodes/hideif.el (hif-lookup, hif-defined): Handle
4 semantic-c-takeover-hideif.
5
12012-10-02 Paul Eggert <eggert@cs.ucla.edu> 62012-10-02 Paul Eggert <eggert@cs.ucla.edu>
2 7
3 Change sampling interval units from ms to ns. 8 Change sampling interval units from ms to ns.
diff --git a/lisp/progmodes/hideif.el b/lisp/progmodes/hideif.el
index 4b77c6dab1a..7bddbff9596 100644
--- a/lisp/progmodes/hideif.el
+++ b/lisp/progmodes/hideif.el
@@ -329,16 +329,23 @@ that form should be displayed.")
329 "Prepend (var value) pair to hide-ifdef-env." 329 "Prepend (var value) pair to hide-ifdef-env."
330 (setq hide-ifdef-env (cons (cons var value) hide-ifdef-env))) 330 (setq hide-ifdef-env (cons (cons var value) hide-ifdef-env)))
331 331
332(declare-function semantic-c-hideif-lookup "semantic/bovine/c" (var))
333(declare-function semantic-c-hideif-defined "semantic/bovine/c" (var))
332 334
333(defun hif-lookup (var) 335(defun hif-lookup (var)
334 ;; (message "hif-lookup %s" var) 336 (or (when (bound-and-true-p semantic-c-takeover-hideif)
335 (let ((val (assoc var hide-ifdef-env))) 337 (semantic-c-hideif-lookup var))
336 (if val 338 (let ((val (assoc var hide-ifdef-env)))
337 (cdr val) 339 (if val
338 hif-undefined-symbol))) 340 (cdr val)
341 hif-undefined-symbol))))
339 342
340(defun hif-defined (var) 343(defun hif-defined (var)
341 (if (assoc var hide-ifdef-env) 1 0)) 344 (cond
345 ((bound-and-true-p semantic-c-takeover-hideif)
346 (semantic-c-hideif-defined var))
347 ((assoc var hide-ifdef-env) 1)
348 (t 0)))
342 349
343;;===%%SF%% evaluation (End) === 350;;===%%SF%% evaluation (End) ===
344 351