emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: CEDET merge


From: Chong Yidong
Subject: Re: CEDET merge
Date: Tue, 02 Oct 2012 01:48:53 +0800
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.2.50 (gnu/linux)

David Engster <address@hidden> writes:

> Unfortunately, I see now that I forgot to remove some defadvices. After
> applying the patch, please remove the two defadvices for hideif from
> semantic/bovine/c.el. We have to see if we somehow can implement this
> feature using hooks, or maybe we have to remove the semantical
> hideif-feature altogether.
>
> Also, I merged lots of stuff from senator.el (including some defadvices)
> which shouldn't land in Emacs. So for now, I would suggest to simply
> revert senator.el after the patch is applied. I think Eric wanted to
> remove senator.el at some point in time, but I guess we don't have a
> good replacement yet...?

I've done the merge, omitting senator and the defadvices as you
suggested.

To replace the defadvice, it is acceptable to just change the code of
hif-defined and hif-lookup directly to refer to
semantic-c-takeover-hideif (if it is bound); no need to use a hook.
Feel free to submit a patch, or I'll get around to it when I have the
time.

Attached is a patch of leftovers, consisting of a few whitespace
cleanups and file header fixes.  Please apply to the to-emacs branch or
wherever is appropriate.  Thanks.

=== modified file 'lisp/cedet/cedet.el'
*** lisp/cedet/cedet.el 2012-09-25 20:18:22 +0000
--- lisp/cedet/cedet.el 2012-10-01 17:26:33 +0000
***************
*** 44,51 ****
      (cedet         ,cedet-version "common"   "common"                 )
      (eieio         "1.4"           nil       "eieio"       )
      (semantic      "2.1"           nil       "semantic/doc")
!     (srecode       "1.1"           nil       "srecode"     ) 
!     (ede           "1.1"           nil       "ede"         )    
      (speedbar      "1.0.4"         nil       "speedbar"    )
      (cogre         "1.1"           nil       "cogre"       )
      (cedet-contrib "1.1"           "contrib" nil           )
--- 44,51 ----
      (cedet         ,cedet-version "common"   "common"                 )
      (eieio         "1.4"           nil       "eieio"       )
      (semantic      "2.1"           nil       "semantic/doc")
!     (srecode       "1.1"           nil       "srecode"     )
!     (ede           "1.1"           nil       "ede"         )
      (speedbar      "1.0.4"         nil       "speedbar"    )
      (cogre         "1.1"           nil       "cogre"       )
      (cedet-contrib "1.1"           "contrib" nil           )

=== modified file 'lisp/cedet/ede.el'
*** lisp/cedet/ede.el   2012-09-25 20:18:22 +0000
--- lisp/cedet/ede.el   2012-10-01 17:26:44 +0000
***************
*** 382,390 ****
    (oset (ede-current-project) configuration-default newconfig)
    (message "%s will now build in %s mode."
           (object-name (ede-current-project))
!          newconfig)
!   )
!          
  
  (defun ede-customize-forms-menu (menu-def)
    "Create a menu of the project, and targets that can be customized.
--- 382,388 ----
    (oset (ede-current-project) configuration-default newconfig)
    (message "%s will now build in %s mode."
           (object-name (ede-current-project))
!          newconfig))
  
  (defun ede-customize-forms-menu (menu-def)
    "Create a menu of the project, and targets that can be customized.
***************
*** 879,885 ****
  
    (project-add-file target (buffer-file-name))
    (setq ede-object nil)
!   
    ;; Setup buffer local variables.
    (ede-initialize-state-current-buffer)
  
--- 877,883 ----
  
    (project-add-file target (buffer-file-name))
    (setq ede-object nil)
! 
    ;; Setup buffer local variables.
    (ede-initialize-state-current-buffer)
  
***************
*** 1424,1430 ****
      ;; This is a heavy hammer, but will apply variables properly
      ;; based on stacking between the toplevel and child projects.
      (ede-map-buffers 'ede-apply-project-local-variables)
!     
      value))
  
  (defun ede-apply-project-local-variables (&optional buffer)
--- 1422,1428 ----
      ;; This is a heavy hammer, but will apply variables properly
      ;; based on stacking between the toplevel and child projects.
      (ede-map-buffers 'ede-apply-project-local-variables)
! 
      value))
  
  (defun ede-apply-project-local-variables (&optional buffer)

=== modified file 'lisp/cedet/ede/auto.el'
*** lisp/cedet/ede/auto.el      2012-09-25 20:18:22 +0000
--- lisp/cedet/ede/auto.el      2012-10-01 17:26:36 +0000
***************
*** 35,41 ****
  (declare-function ede-add-project-to-global-list "ede")
  
  (defclass ede-project-autoload-dirmatch ()
!   ((fromconfig :initarg :fromconfig 
               :initform nil
               :documentation
               "A config file within which the match pattern lives.")
--- 35,41 ----
  (declare-function ede-add-project-to-global-list "ede")
  
  (defclass ede-project-autoload-dirmatch ()
!   ((fromconfig :initarg :fromconfig
               :initform nil
               :documentation
               "A config file within which the match pattern lives.")
***************
*** 70,76 ****
  
       ;; Error for wierd stuff
       (t (error "Unknown dirmatch type.")))))
!   
  
  (defmethod ede-do-dirmatch ((dirmatch ede-project-autoload-dirmatch) file)
    "Does DIRMATCH match the filename FILE."
--- 70,76 ----
  
       ;; Error for wierd stuff
       (t (error "Unknown dirmatch type.")))))
! 
  
  (defmethod ede-do-dirmatch ((dirmatch ede-project-autoload-dirmatch) file)
    "Does DIRMATCH match the filename FILE."
***************
*** 274,280 ****
                 (not (ede-dirmatch-installed dirmatch)))
            (setq callfcn nil)
          ;; Other types of dirmatch:
!         (when (and 
                 ;; If the Emacs Lisp file handling this project hasn't
                 ;; been loaded, we will use the quick dirmatch feature.
                 (not (featurep (oref this file)))
--- 274,280 ----
                 (not (ede-dirmatch-installed dirmatch)))
            (setq callfcn nil)
          ;; Other types of dirmatch:
!         (when (and
                 ;; If the Emacs Lisp file handling this project hasn't
                 ;; been loaded, we will use the quick dirmatch feature.
                 (not (featurep (oref this file)))
***************
*** 292,298 ****
        (when callfcn
          (condition-case nil
              (funcall rootfcn file)
!           (error 
             (funcall rootfcn))))
        ))))
  
--- 292,298 ----
        (when callfcn
          (condition-case nil
              (funcall rootfcn file)
!           (error
             (funcall rootfcn))))
        ))))
  

=== modified file 'lisp/cedet/ede/linux.el'
*** lisp/cedet/ede/linux.el     2012-09-25 20:18:22 +0000
--- lisp/cedet/ede/linux.el     2012-10-01 17:26:43 +0000
***************
*** 302,305 ****
  ;; generated-autoload-load-name: "ede/linux"
  ;; End:
  
! ;;; ede-linux.el ends here
--- 302,305 ----
  ;; generated-autoload-load-name: "ede/linux"
  ;; End:
  
! ;;; ede/linux.el ends here

=== modified file 'lisp/cedet/ede/proj-elisp.el'
*** lisp/cedet/ede/proj-elisp.el        2012-09-25 20:18:22 +0000
--- lisp/cedet/ede/proj-elisp.el        2012-10-01 17:26:38 +0000
***************
*** 36,43 ****
     (keybindings :initform nil)
     (phony :initform t)
     (sourcetype :initform '(ede-source-emacs))
!    (availablecompilers :initform '(ede-emacs-compiler 
!                                  ede-xemacs-compiler))
     (aux-packages :initarg :aux-packages
                 :initform nil
                 :type list
--- 36,42 ----
     (keybindings :initform nil)
     (phony :initform t)
     (sourcetype :initform '(ede-source-emacs))
!    (availablecompilers :initform '(ede-emacs-compiler ede-xemacs-compiler))
     (aux-packages :initarg :aux-packages
                 :initform nil
                 :type list

=== modified file 'lisp/cedet/semantic/bovine/c.el'
*** lisp/cedet/semantic/bovine/c.el     2012-09-30 08:28:41 +0000
--- lisp/cedet/semantic/bovine/c.el     2012-10-01 17:26:48 +0000
***************
*** 459,479 ****
  (defvar semantic-c-takeover-hideif nil
    "Non-nil when Semantic is taking over hideif features.")
  
! (defadvice hif-defined (around semantic-c activate)
!   "Is the variable defined?"
!   (if semantic-c-takeover-hideif
!       (setq ad-return-value
!           (semantic-c-hideif-defined (ad-get-arg 0)))
!     ad-do-it))
  
! (defadvice hif-lookup (around semantic-c activate)
!   "Is the argument defined?  Return true or false."
!   (let ((ans nil))
!     (when semantic-c-takeover-hideif
!       (setq ans (semantic-c-hideif-lookup (ad-get-arg 0))))
!     (if (null ans)
!       ad-do-it
!       (setq ad-return-value ans))))
  
  ;;; #if macros
  ;;
--- 459,479 ----
  (defvar semantic-c-takeover-hideif nil
    "Non-nil when Semantic is taking over hideif features.")
  
! ;; (defadvice hif-defined (around semantic-c activate)
! ;;   "Is the variable defined?"
! ;;   (if semantic-c-takeover-hideif
! ;;       (setq ad-return-value
! ;;        (semantic-c-hideif-defined (ad-get-arg 0)))
! ;;     ad-do-it))
  
! ;; (defadvice hif-lookup (around semantic-c activate)
! ;;   "Is the argument defined?  Return true or false."
! ;;   (let ((ans nil))
! ;;     (when semantic-c-takeover-hideif
! ;;       (setq ans (semantic-c-hideif-lookup (ad-get-arg 0))))
! ;;     (if (null ans)
! ;;    ad-do-it
! ;;       (setq ad-return-value ans))))
  
  ;;; #if macros
  ;;

=== modified file 'lisp/cedet/semantic/bovine/make-by.el'
*** lisp/cedet/semantic/bovine/make-by.el       2012-09-30 10:36:41 +0000
--- lisp/cedet/semantic/bovine/make-by.el       2012-10-01 17:26:47 +0000
***************
*** 1,6 ****
  ;;; semantic/bovine/make-by.el --- Generated parser support file
  
! ;; Copyright (C) 1999-2012 Free Software Foundation, Inc.
  
  ;; This file is part of GNU Emacs.
  
--- 1,6 ----
  ;;; semantic/bovine/make-by.el --- Generated parser support file
  
! ;; Copyright (C) 1999-2004, 2008-2012  Free Software Foundation, Inc.
  
  ;; This file is part of GNU Emacs.
  

=== modified file 'lisp/cedet/semantic/bovine/scm-by.el'
*** lisp/cedet/semantic/bovine/scm-by.el        2012-09-30 10:36:41 +0000
--- lisp/cedet/semantic/bovine/scm-by.el        2012-10-01 17:26:46 +0000
***************
*** 1,6 ****
  ;;; semantic/bovine/scm-by.el --- Generated parser support file
  
! ;; Copyright (C) 2001-2012 Free Software Foundation, Inc.
  
  ;; This file is part of GNU Emacs.
  
--- 1,6 ----
  ;;; semantic/bovine/scm-by.el --- Generated parser support file
  
! ;; Copyright (C) 2001, 2003, 2009-2012 Free Software Foundation, Inc.
  
  ;; This file is part of GNU Emacs.
  

=== modified file 'lisp/cedet/semantic/grammar-wy.el'
*** lisp/cedet/semantic/grammar-wy.el   2012-09-30 10:36:41 +0000
--- lisp/cedet/semantic/grammar-wy.el   2012-10-01 17:27:09 +0000
***************
*** 1,6 ****
  ;;; semantic/grammar-wy.el --- Generated parser support file
  
! ;; Copyright (C) 2002-2012 Free Software Foundation, Inc.
  
  ;; This file is part of GNU Emacs.
  
--- 1,6 ----
  ;;; semantic/grammar-wy.el --- Generated parser support file
  
! ;; Copyright (C) 2002-2004, 2009-2012  Free Software Foundation, Inc.
  
  ;; This file is part of GNU Emacs.
  

=== modified file 'lisp/cedet/semantic/tag-ls.el'
*** lisp/cedet/semantic/tag-ls.el       2012-09-25 20:18:22 +0000
--- lisp/cedet/semantic/tag-ls.el       2012-10-01 17:26:49 +0000
***************
*** 114,120 ****
              taglist1 (cdr taglist1)
              taglist2 (cdr taglist2)))
        ans))
!    
     ;; The attributes are not the same?
     ((not (equal value1 value2))
      nil)
--- 114,120 ----
              taglist1 (cdr taglist1)
              taglist2 (cdr taglist2)))
        ans))
! 
     ;; The attributes are not the same?
     ((not (equal value1 value2))
      nil)

=== modified file 'lisp/cedet/semantic/wisent/javat-wy.el'
*** lisp/cedet/semantic/wisent/javat-wy.el      2012-09-30 10:36:41 +0000
--- lisp/cedet/semantic/wisent/javat-wy.el      2012-10-01 17:27:11 +0000
***************
*** 1,6 ****
  ;;; semantic/wisent/javat-wy.el --- Generated parser support file
  
! ;; Copyright (C) 2002-2012 Free Software Foundation, Inc.
  
  ;; This file is part of GNU Emacs.
  
--- 1,6 ----
  ;;; semantic/wisent/javat-wy.el --- Generated parser support file
  
! ;; Copyright (C) 2002, 2007, 2009-2012  Free Software Foundation, Inc.
  
  ;; This file is part of GNU Emacs.
  

=== modified file 'lisp/cedet/semantic/wisent/js-wy.el'
*** lisp/cedet/semantic/wisent/js-wy.el 2012-09-30 10:36:41 +0000
--- lisp/cedet/semantic/wisent/js-wy.el 2012-10-01 17:27:09 +0000
***************
*** 1,6 ****
  ;;; semantic/wisent/js-wy.el --- Generated parser support file
  
! ;; Copyright (C) 2005-2012 Free Software Foundation, Inc.
  ;; Copyright (C) 1998-2011 Ecma International.
  
  ;; This file is part of GNU Emacs.
--- 1,6 ----
  ;;; semantic/wisent/js-wy.el --- Generated parser support file
  
! ;; Copyright (C) 2005, 2009-2012  Free Software Foundation, Inc.
  ;; Copyright (C) 1998-2011 Ecma International.
  
  ;; This file is part of GNU Emacs.

=== modified file 'lisp/cedet/semantic/wisent/python.el'
*** lisp/cedet/semantic/wisent/python.el        2012-09-25 20:18:22 +0000
--- lisp/cedet/semantic/wisent/python.el        2012-10-01 17:27:10 +0000
***************
*** 393,399 ****
       (cons "static"
           (semantic-tag-get-attribute tag :typemodifiers))))
  
!   ;; TODO 
    ;; + check for decorators classmethod
    ;; + check for operators
    tag)
--- 393,399 ----
       (cons "static"
           (semantic-tag-get-attribute tag :typemodifiers))))
  
!   ;; TODO
    ;; + check for decorators classmethod
    ;; + check for operators
    tag)
***************
*** 445,451 ****
        (setq expand (cons (semantic-tag-clone tag E) expand)))
        (setq expand (nreverse expand)))
       )))
!      
  
  
  ;;; Overridden Semantic API.
--- 445,451 ----
        (setq expand (cons (semantic-tag-clone tag E) expand)))
        (setq expand (nreverse expand)))
       )))
! 
  
  
  ;;; Overridden Semantic API.

=== modified file 'lisp/cedet/srecode/srt-wy.el'
*** lisp/cedet/srecode/srt-wy.el        2012-09-30 13:27:07 +0000
--- lisp/cedet/srecode/srt-wy.el        2012-10-01 17:27:16 +0000
***************
*** 1,6 ****
  ;;; srecode/srt-wy.el --- Generated parser support file
  
! ;; Copyright (C) 2005-2012 Free Software Foundation, Inc.
  
  ;; This file is part of GNU Emacs.
  
--- 1,6 ----
  ;;; srecode/srt-wy.el --- Generated parser support file
  
! ;; Copyright (C) 2005, 2007-2012 Free Software Foundation, Inc.
  
  ;; This file is part of GNU Emacs.
  

=== modified file 'lisp/emacs-lisp/eieio-base.el'
*** lisp/emacs-lisp/eieio-base.el       2012-09-30 08:28:41 +0000
--- lisp/emacs-lisp/eieio-base.el       2012-10-01 17:26:01 +0000
***************
*** 230,238 ****
  for CLASS.  Optional ALLOW-SUBCLASS says that it is ok for
  `eieio-peristent-read' to load in subclasses of class instead of
  being pendantic."
!   (when (not class)
!     (message "Unsafe call to `eieio-persistent-read'.")
!     )
    (when (and class (not (class-p class)))
      (signal 'wrong-type-argument (list 'class-p class)))
    (let ((ret nil)
--- 230,237 ----
  for CLASS.  Optional ALLOW-SUBCLASS says that it is ok for
  `eieio-peristent-read' to load in subclasses of class instead of
  being pendantic."
!   (unless class
!     (message "Unsafe call to `eieio-persistent-read'."))
    (when (and class (not (class-p class)))
      (signal 'wrong-type-argument (list 'class-p class)))
    (let ((ret nil)
***************
*** 272,287 ****
    (let ((objclass (nth 0 inputlist))
        (objname (nth 1 inputlist))
        (slots (nthcdr 2 inputlist))
!       (createslots nil)
!       )
!     
      ;; If OBJCLASS is an eieio autoload object, then we need to load it.
      (eieio-class-un-autoload objclass)
  
      (while slots
        (let ((name (car slots))
!           (value (car (cdr slots)))
!           )
  
        ;; Make sure that the value proposed for SLOT is valid.
        ;; In addition, strip out quotes, list functions, and update
--- 271,284 ----
    (let ((objclass (nth 0 inputlist))
        (objname (nth 1 inputlist))
        (slots (nthcdr 2 inputlist))
!       (createslots nil))
! 
      ;; If OBJCLASS is an eieio autoload object, then we need to load it.
      (eieio-class-un-autoload objclass)
  
      (while slots
        (let ((name (car slots))
!           (value (car (cdr slots))))
  
        ;; Make sure that the value proposed for SLOT is valid.
        ;; In addition, strip out quotes, list functions, and update
***************
*** 366,372 ****
                    (nreverse objlist)))
                 (t
                  proposed-value))))
!        
         ((stringp proposed-value)
          ;; Else, check for strings, remove properties.
          (substring-no-properties proposed-value))
--- 363,369 ----
                    (nreverse objlist)))
                 (t
                  proposed-value))))
! 
         ((stringp proposed-value)
          ;; Else, check for strings, remove properties.
          (substring-no-properties proposed-value))

=== modified file 'lisp/emacs-lisp/eieio.el'
*** lisp/emacs-lisp/eieio.el    2012-09-25 20:18:22 +0000
--- lisp/emacs-lisp/eieio.el    2012-10-01 17:26:03 +0000
***************
*** 792,798 ****
        (when (string-match "\\.elc$" fname)
          (setq fname (substring fname 0 (1- (length fname)))))
        (put cname 'class-location fname)))
!     
      ;; We have a list of custom groups.  Store them into the options.
      (let ((g (class-option-assoc options :custom-groups)))
        (mapc (lambda (cg) (add-to-list 'g cg)) groups)
--- 792,798 ----
        (when (string-match "\\.elc$" fname)
          (setq fname (substring fname 0 (1- (length fname)))))
        (put cname 'class-location fname)))
! 
      ;; We have a list of custom groups.  Store them into the options.
      (let ((g (class-option-assoc options :custom-groups)))
        (mapc (lambda (cg) (add-to-list 'g cg)) groups)
***************
*** 1270,1278 ****
                  `(apply ,(list 'quote impl) local-args)
                `(apply #',impl local-args))
              ;(,impl local-args)
!             ))))
!      )
!   ))
  
  (defsubst eieio-defgeneric-reset-generic-form-primary-only-one (method)
    "Setup METHOD to call the generic form."
--- 1270,1276 ----
                  `(apply ,(list 'quote impl) local-args)
                `(apply #',impl local-args))
              ;(,impl local-args)
!             )))))))
  
  (defsubst eieio-defgeneric-reset-generic-form-primary-only-one (method)
    "Setup METHOD to call the generic form."


reply via email to

[Prev in Thread] Current Thread [Next in Thread]