• Alan Mackenzie's avatar
    Convert CC Mode to lexical binding in Emacs · 3f5fe0cd
    Alan Mackenzie authored
    lisp/progmodes/cc-align.el, lisp/progmodes/cc-awk.el,
    lisp/progmodes/cc-bytecomp.el, lisp/progmodes/cc-cmds.el,
    lisp/progmodes/cc-defs.el, lisp/progmodes/cc-engine.el,
    lisp/progmodes/cc-fonts.el, lisp/progmodes/cc-guess.el,
    lisp/progmodes/cc-langs.el, lisp/progmodes/cc-menus.el,
    lisp/progmodes/cc-mode.el, lisp/progmodes/cc-styles.el,
    lisp/progmodes/cc-subword.el, lisp/progmodes/cc-vars.el: Mark these files with
    a `lexical-binding' setting in line 1.
    
    lisp/progmodes/cc-align.el, lisp/progmodes/cc-engine.el,
    lisp/progmodes/cc-vars.el (c-syntactic-context, c-syntactic-element): Declare
    these as special variables.
    
    lisp/progmodes/cc-bytecomp.el (cc-bytecomp-debug-msg): prefix the parameter
    ARGS with a _, and remove an `ignore' call.
    
    lisp/progmodes/cc-cmds.el (c-where-wrt-brace-construct): Remove `kluge-start',
    an unused variable.
    (c-while-widening-to-decl-block): Add an extra parameter, which suppresses
    the generation of a setting of variable `where'.
    (c-defun-name-and-limits): Remove variable `where' from the function and use
    the new argument to the previous macro.
    
    lisp/progmodes/cc-engine.el (c-cache-to-parse-ps-state): Remove two unneeded
    variables, `last' and `intermediate'.
    
    lisp/progmodes/cc-fonts.el (c-font-lock-c++-using): Remove unused variable.
    
    lisp/progmodes/cc-langs.el (c-vsemi-status-unknown-p-fn): Replace the doc
    string with the more precise one from stand-alone CC Mode.
    
    lisp/progmodes/cc-styles.el (c-set-offset): Give the `ignored' parameter a
    leading _.
    3f5fe0cd
cc-engine.el 533 KB