1. 14 Dec, 2013 3 commits
  2. 13 Dec, 2013 10 commits
  3. 12 Dec, 2013 7 commits
    • Fabián Ezequiel Gallina's avatar
      * lisp/progmodes/python.el (python-indent-calculate-indentation): Fix · bc9222c9
      Fabián Ezequiel Gallina authored
      de-denters cornercase.
      
      * test/automated/python-tests.el (python-indent-dedenters-2): New test.
      
      Fixes: debbugs:15731
      bc9222c9
    • David Engster's avatar
      Merge with CEDET upstream. · b0fe992f
      David Engster authored
      * admin/grammars/c.by (expr-binop): Add MOD.
      (variablearg): Add 'opt-assign'.
      (variablearg, varnamelist): Add default values so that it can be
      later expanded into the tag.
      (opt-stuff-after-symbol): Rename to 'brackets-after-symbol' and
      remove empty match.
      (multi-stage-dereference): Adapt to above rename.
      (unaryexpression): Use 'symbol' instead of 'namespace-symbol',
      since the latter also leads to an empty match at the end which
      would make this too greedy.
      (variablearg-opt-name): Support parsing of function pointers
      inside an argument list.
      
      * semantic/analyze.el
      (semantic-analyze-find-tag-sequence-default): Always add scope to
      the local miniscope for each type.  Otherwise, structure tags are
      not analyzed correctly.  Also, always search the extended
      miniscope even when not dealing with types.
      
      * semantic/ctxt.el (semantic-get-local-variables-default): Also
      try to parse local variables for buffers which are currently
      marked as unparseable.  Otherwise, it is often impossible to
      complete local variables.
      
      * semantic/scope.el (semantic-analyze-scoped-types-default): If we
      cannot find a type in the typecache, also look into the the types
      we already found.  This is necessary since in C++, a 'using
      namespace' can be dependend on a previous one.
      (semantic-completable-tags-from-type): When creating the list of
      completable types, pull in types which are referenced through
      'using' statements, and also preserve their filenames.
      
      * semanitc/bovine/c.el (semantic/analyze/refs): Require.
      (semantic-analyze-tag-references): New override.  Mainly copied
      from the default implementation, but if nothing could be found (or
      just the tag itself), drop all namespaces from the scope and
      search again.  This is necessary for implementations which are
      defined outside of the namespace and only pull those in through
      'using' statements.
      (semantic-ctxt-scoped-types): Go through all tags around point and
      search them for using statements.  In the case for using
      statements outside of function scope, append them in the correct
      order instead of using 'cons'.  This is important since using
      statements may depend on previous ones.
      (semantic-expand-c-tag-namelist): Do not try to parse struct
      definitions as default values.  The grammar parser seems to return
      the point positions slightly differently (as a cons instead of a
      list).  Also, set parent for typedefs to 'nil'.  It does not
      really make sense to set a parent class for typedefs, and it can
      also lead to endless loops when calculating scope.
      (semantic-c-reconstitute-token): Change handling of function
      pointers; instead of seeing them as variables, handle them as
      functions with a 'function-pointer' attribute.  Also, correctly
      deal with function pointers as function arguments.
      (semantic-c-reconstitute-function-arglist): New function to parse
      function pointers inside an argument list.
      (semantic-format-tag-name): Use 'function-pointer' attribute
      instead of the old 'functionpointer-flag'.
      (semantic-cpp-lexer): Use new `semantic-lex-spp-paren-or-list'.
      
      * semantic/bovine/gcc.el (semantic-gcc-setup): Add 'features.h' to
      the list of files whose preprocessor symbols are included.  This
      pulls in things like __USE_POSIX and similar.
      
      * semantic/format.el (semantic-format-tag-prototype-default):
      Display default values if available.
      
      * semantic/analyze/refs.el (semantic-analyze-refs-impl)
      (semantic-analyze-refs-proto): Add 'default-value' as ignorable in
      call to `semantic-tag-similar-p'.
      
      * semantic/db-mode.el (semanticdb-semantic-init-hook-fcn): Always
      set buffer for `semanticdb-current-table'.
      
      * semantic/db.el (semanticdb-table::semanticdb-refresh-table): The
      previous change turned up a bug in this method.  Since the current
      table now correctly has a buffer set, the first clause in the
      `cond' would be taken, but there was a `save-excursion' missing.
      
      * semantic/lex-spp.el (semantic-c-end-of-macro): Declare.
      (semantic-lex-spp-token-macro-to-macro-stream): Deal with macros
      which open/close a scope.  For this, leave an overlay if we
      encounter a single open paren and return a semantic-list in the
      lexer.  When this list gets expanded, retrieve the old position
      from the overlay.  See the comments in the function for further
      details.
      (semantic-lex-spp-find-closing-macro): New function to find the
      next macro which closes scope (i.e., has a closing paren).
      (semantic-lex-spp-replace-or-symbol-or-keyword): Go to end of
      closing macro if necessary.
      (semantic-lex-spp-paren-or-list): New lexer to specially deal with
      parens in macro definitions.
      
      * semantic/decorate/mode.el (semantic-decoration-mode): Do not
      decorate available tags immediately but in an idle timer, since
      EDE will usually not be activated yet, which will make it
      impossible to find project includes.
      
      * semantic/decorate/include.el
      (semantic-decoration-on-includes-highlight-default): Remove
      'unloaded' from throttle when decorating includes, otherwise all
      would be loaded.  Rename 'table' to 'currenttable' to make things
      clearer.
      
      * ede/linux.el (cl): Require during compile.
      
      * ede/linux.el (project-linux-build-directory-default)
      (project-linux-architecture-default): Add customizable variables.
      (ede-linux-project): Add additional slots to track Linux-specific
      information (out-of-tree build directory and selected
      architecture).
      (ede-linux--get-build-directory, ede-linux--get-archs)
      (ede-linux--detect-architecture, ede-linux--get-architecture)
      (ede-linux--include-path): Added function to detect Linux-specific
      information.
      (ede-linux-load): Set new Linux-specific information when creating
      a project.
      (ede-expand-filename-impl): Use new and more accurate include
      information.
      
      * semantic/scope.el (semantic-calculate-scope): Return a clone of
      the scopecache, so that everyone is working with its own (shallow)
      copy.  Otherwise, if one caller is resetting the scope, it would
      be reset for all others working with the scope cache as well.
      b0fe992f
    • Stefan Monnier's avatar
      * lisp/emacs-lisp/nadvice.el: Add `depth' property to manage ordering. · cb3a1380
      Stefan Monnier authored
      (advice--make): Pay attention to `depth'.
      (advice--make-1): Don't autoload commands eagerly.
      * lisp/emacs-lisp/elp.el (elp-instrument-function):
      * lisp/emacs-lisp/trace.el (trace-function-internal):
      * lisp/emacs-lisp/debug.el (debug-on-entry): Keep them "first".
      
      * lisp/iswitchb.el (iswitchb-mode): Don't belittle ido.
      cb3a1380
    • Fabián Ezequiel Gallina's avatar
      * lisp/progmodes/python.el (python-indent-context) · 09faee72
      Fabián Ezequiel Gallina authored
      (python-indent-calculate-indentation): Fix auto-identation
      behavior for comment blocks.
      
      * test/automated/python-tests.el (python-indent-after-comment-1)
      (python-indent-after-comment-2): New tests.
      
      Fixes: debbugs:15916
      09faee72
    • Glenn Morris's avatar
      f4f84024
    • Nathan Trapuzzano's avatar
      * lisp/progmodes/python.el (python-indent-calculate-indentation): When · f54de22e
      Nathan Trapuzzano authored
      determining indentation, don't treat "return", "pass", etc., as
      operators when they are just string constituents. 
      
      * automated/python-test.el (python-indent-block-enders-1): Rename
      from python-indent-block-enders.
      (python-indent-block-enders-2): New test.
      
      Fixes: debbugs:15812
      f54de22e
    • Juri Linkov's avatar
      * lisp/uniquify.el (uniquify-buffer-name-style): Change default to `post-forward-angle-brackets'. · d5ccb7be
      Juri Linkov authored
      * lisp/menu-bar.el (menu-bar-options-menu): Don't require preloaded `uniquify'.
      Change default to `post-forward-angle-brackets'.
      
      http://lists.gnu.org/archive/html/emacs-devel/2013-12/msg00317.html
      d5ccb7be
  4. 11 Dec, 2013 15 commits
  5. 10 Dec, 2013 2 commits
  6. 09 Dec, 2013 3 commits