------------------------------------------------------------ revno: 117372 fixes bug: http://debbugs.gnu.org/17278 committer: Paul Eggert branch nick: trunk timestamp: Fri 2014-06-20 09:05:10 -0700 message: Diagnose failures due to colons in directory names. * Makefile.in (epaths-force): Don't allow ':' in directories whose names go into a colon-separated path. * configure.ac: Fail if submake fails. diff: === modified file 'ChangeLog' --- ChangeLog 2014-06-17 16:09:19 +0000 +++ ChangeLog 2014-06-20 16:05:10 +0000 @@ -1,3 +1,10 @@ +2014-06-20 Paul Eggert + + Diagnose failures due to colons in directory names (Bug#17278). + * Makefile.in (epaths-force): Don't allow ':' in directories whose + names go into a colon-separated path. + * configure.ac: Fail if submake fails. + 2014-06-17 Paul Eggert Omit redundant extern decls. === modified file 'Makefile.in' --- Makefile.in 2014-06-15 00:34:22 +0000 +++ Makefile.in 2014-06-20 16:05:10 +0000 @@ -297,6 +297,14 @@ # to just letting configure generate epaths.h from epaths.in in a # similar way to how Makefile is made from Makefile.in. epaths-force: + @for dir in '$(abs_srcdir)' '$(lispdir)' '$(archlibdir)'; do \ + case $$dir in \ + *:*) \ + echo >&2 "Build or installation directory '$$dir'"; \ + echo >&2 "cannot contain ':'."; \ + exit 1;; \ + esac; \ + done @(standardlisppath=`echo "${standardlisppath}" | ${removenullpaths}` ; \ locallisppath=`echo "${locallisppath}" | ${removenullpaths}` ; \ buildlisppath=`echo "${buildlisppath}" | ${removenullpaths}` ; \ === modified file 'configure.ac' --- configure.ac 2014-06-17 16:09:19 +0000 +++ configure.ac 2014-06-20 16:05:10 +0000 @@ -5121,7 +5121,7 @@ ${MAKE-make} MAKEFILE_NAME=do-not-make-Makefile epaths-force-w32 else ${MAKE-make} MAKEFILE_NAME=do-not-make-Makefile epaths-force -fi +fi || AC_MSG_ERROR(['src/epaths.h' could not be made.]) ], [GCC="$GCC" CPPFLAGS="$CPPFLAGS" opsys="$opsys"]) dnl NB we have to cheat and use the ac_... version because abs_top_srcdir ------------------------------------------------------------ revno: 117371 committer: Stefan Monnier branch nick: trunk timestamp: Thu 2014-06-19 18:07:09 -0400 message: * cedet/semantic/ia.el (semantic-ia-complete-symbol-menu): Use posn-at-point instead of senator-completion-menu-point-as-event; un-comment, tho keep the "no smart completion" fallback commented since it still doesn't work. diff: === modified file 'lisp/cedet/ChangeLog' --- lisp/cedet/ChangeLog 2014-05-04 19:37:56 +0000 +++ lisp/cedet/ChangeLog 2014-06-19 22:07:09 +0000 @@ -1,3 +1,9 @@ +2014-06-19 Stefan Monnier + + * semantic/ia.el (semantic-ia-complete-symbol-menu): Use posn-at-point + instead of senator-completion-menu-point-as-event; un-comment, tho keep + the "no smart completion" fallback commented since it still doesn't work. + 2014-05-01 Glenn Morris * ede.el (ede-project-directories, ede-check-project-directory): === modified file 'lisp/cedet/semantic/ia.el' --- lisp/cedet/semantic/ia.el 2014-01-13 20:04:08 +0000 +++ lisp/cedet/semantic/ia.el 2014-06-19 22:07:09 +0000 @@ -150,45 +150,47 @@ :group 'semantic :type semantic-format-tag-custom-list) -;; Disabled - see http://debbugs.gnu.org/14522 -;; ;;;###autoload -;; (defun semantic-ia-complete-symbol-menu (point) -;; "Complete the current symbol via a menu based at POINT. -;; Completion options are calculated with `semantic-analyze-possible-completions'." -;; (interactive "d") -;; (require 'imenu) -;; (let* ((a (semantic-analyze-current-context point)) -;; (syms (semantic-analyze-possible-completions a)) -;; ) -;; ;; Complete this symbol. -;; (if (not syms) -;; (progn -;; (message "No smart completions found. Trying Senator.") -;; (when (semantic-analyze-context-p a) -;; ;; This is a quick way of getting a nice completion list -;; ;; in the menu if the regular context mechanism fails. -;; (senator-completion-menu-popup))) -;; -;; (let* ((menu -;; (mapcar -;; (lambda (tag) -;; (cons -;; (funcall semantic-ia-completion-menu-format-tag-function tag) -;; (vector tag))) -;; syms)) -;; (ans -;; (imenu--mouse-menu -;; ;; XEmacs needs that the menu has at least 2 items. So, -;; ;; include a nil item that will be ignored by imenu. -;; (cons nil menu) -;; (senator-completion-menu-point-as-event) -;; "Completions"))) -;; (when ans -;; (if (not (semantic-tag-p ans)) -;; (setq ans (aref (cdr ans) 0))) -;; (delete-region (car (oref a bounds)) (cdr (oref a bounds))) -;; (semantic-ia-insert-tag ans)) -;; )))) +;;;###autoload +(defun semantic-ia-complete-symbol-menu (point) + "Complete the current symbol via a menu based at POINT. +Completion options are calculated with `semantic-analyze-possible-completions'." + (interactive "d") + (require 'imenu) + (let* ((a (semantic-analyze-current-context point)) + (syms (semantic-analyze-possible-completions a)) + ) + ;; Complete this symbol. + (if (not syms) + (progn + (message "No smart completions found.") + ;; Disabled - see http://debbugs.gnu.org/14522 + ;; (message "No smart completions found. Trying Senator.") + ;; (when (semantic-analyze-context-p a) + ;; ;; This is a quick way of getting a nice completion list + ;; ;; in the menu if the regular context mechanism fails. + ;; (senator-completion-menu-popup)) + ) + + (let* ((menu + (mapcar + (lambda (tag) + (cons + (funcall semantic-ia-completion-menu-format-tag-function tag) + (vector tag))) + syms)) + (ans + (imenu--mouse-menu + ;; XEmacs needs that the menu has at least 2 items. So, + ;; include a nil item that will be ignored by imenu. + (cons nil menu) + `(down-mouse-1 ,(posn-at-point)) + "Completions"))) + (when ans + (if (not (semantic-tag-p ans)) + (setq ans (aref (cdr ans) 0))) + (delete-region (car (oref a bounds)) (cdr (oref a bounds))) + (semantic-ia-insert-tag ans)) + )))) ;;; Completions Tip ;;