aboutsummaryrefslogtreecommitdiffstats
path: root/lisp/cedet/semantic
diff options
context:
space:
mode:
authorEric M. Ludlam <[email protected]>2010-06-03 13:17:50 -0400
committerChong Yidong <[email protected]>2010-06-03 13:17:50 -0400
commit988b91ce8f6f84e03123bf7d3eb31f1c7ecbcef0 (patch)
tree0c97cb1ffc076983c9fca0eaa51498caa944de47 /lisp/cedet/semantic
parent78edd3b72d7d7e006db5aac8c5f0514777d6e01c (diff)
Fix to semantic-lex-spp-table-write-slot-value (Bug#6324).
* cedet/semantic/lex-spp.el (semantic-lex-spp-table-write-slot-value): Instead of erroring on invalid values during save, just save a nil (Bug#6324).
Diffstat (limited to 'lisp/cedet/semantic')
-rw-r--r--lisp/cedet/semantic/lex-spp.el56
1 files changed, 25 insertions, 31 deletions
diff --git a/lisp/cedet/semantic/lex-spp.el b/lisp/cedet/semantic/lex-spp.el
index e76b8cdf5d..58ad681008 100644
--- a/lisp/cedet/semantic/lex-spp.el
+++ b/lisp/cedet/semantic/lex-spp.el
@@ -1121,37 +1121,31 @@ The VALUE is a spp lexical table."
(prin1 (car sym))
(let* ((first (car (cdr sym)))
(rest (cdr sym)))
- (when (not (listp first))
- (error "Error in macro \"%s\"" (car sym)))
- (when (eq (car first) 'spp-arg-list)
- (princ " ")
- (prin1 first)
- (setq rest (cdr rest))
- )
-
- (when rest
- (princ " . ")
- (let ((len (length (cdr rest))))
- (cond ((< len 2)
- (condition-case nil
- (prin1 rest)
- (error
- (princ "nil ;; Error writing macro\n"))))
- ((< len semantic-lex-spp-macro-max-length-to-save)
- (princ "\n ")
- (condition-case nil
- (prin1 rest)
- (error
- (princ "nil ;; Error writing macro\n ")))
- )
- (t ;; Too Long!
- (princ "nil ;; Too Long!\n ")
- ))))
- )
- (princ ")\n ")
- )
- (princ ")\n"))
-)
+ (if (not (listp first))
+ (insert "nil ;; bogus macro found.\n")
+ (when (eq (car first) 'spp-arg-list)
+ (princ " ")
+ (prin1 first)
+ (setq rest (cdr rest)))
+
+ (when rest
+ (princ " . ")
+ (let ((len (length (cdr rest))))
+ (cond ((< len 2)
+ (condition-case nil
+ (prin1 rest)
+ (error
+ (princ "nil ;; Error writing macro\n"))))
+ ((< len semantic-lex-spp-macro-max-length-to-save)
+ (princ "\n ")
+ (condition-case nil
+ (prin1 rest)
+ (error
+ (princ "nil ;; Error writing macro\n "))))
+ (t ;; Too Long!
+ (princ "nil ;; Too Long!\n ")))))))
+ (princ ")\n "))
+ (princ ")\n")))
;;; MACRO TABLE DEBUG
;;