aboutsummaryrefslogtreecommitdiffstats
path: root/lisp/progmodes/cc-awk.el (follow)
Commit message (Collapse)AuthorAgeFilesLines
* ; Add 2026 to copyright years.Sean Whitton2026-01-011-1/+1
|
* CC Mode: Remove workarounds for missing "\_<", "\_>" in XEmacsAlan Mackenzie2025-06-231-45/+41
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Also start using `symbols' as the PAREN argument to regexp-opt. lisp/progmodes/cc-defs.el (c-make-keywords-re): Simplify, remove the redundant `appendable' value of the ADORN parameter, use the `symbols' value of the PAREN argument to regexp. (c-emacs-features): Test that "\_<" and "\_>" work in regexps before allowing CC Mode to start. lisp/progmodes/cc-engine.el (c-looking-at-decl-block): When GOTO-START is set, leave point at the _last_ Java annotation, if any. Clarify this in the doc string. (c-guess-basic-syntax CASE 5G): Replace a not needed t GOTO-START argument to c-looking-at-decl-block with nil. lisp/progmodes/cc-langs.el (c-make-mode-syntax-table): Make the syntax of ?@ in Java Mode symbol for processing annotations. (c-opt-identifier-concat-key, c-opt-identifier-prefix-key) (c-opt-after-id-concat-key, c-identifier-key) (c-cpp-message-directives-re, c-cpp-include-key, c-pack-key) (c-brace-stack-thing-key, c-brace-stack-no-semi-key): Replace the `appendable' value of the ADORN argument to c-make-keywords-re with t. (c-annotation-re): New lang const and lang var. (c-keywords-obarray): Replace an explicit (apply 'nconc (mapcar ... )) with c--mapcan, now that the obscure bug with mapcan in Emacs has been resolved. lisp/progmodes/cc-align.el (c-lineup-gnu-DEFUN-intro-cont) (c-lineup-java-throws, c-snug-do-while) lisp/progmodes/cc-awk.el (c-awk-pre-exp-alphanum-kwd-re) (c-awk-after-if-for-while-condition-p) (c-awk-after-function-decl-param-list) (c-awk-after-continue-token) (c-awk-after-rbrace-or-statement-semicolon) (awk-font-lock-keywords) lisp/progmodes/cc-cmds.el (c-defun-name-1) lisp/progmodes/cc-engine.el (c-beginning-of-statement-1) (c-forward-<>-arglist, c-forward-label, c-skip-conditional) (c-looking-at-c++-lambda-expression, c-add-stmt-syntax) (c-guess-basic-syntax CASE 11, CASE 12, CASE 13, CASE 15) (CASE 5C.3, CASE 5D.4, CASE 7D) lisp/progmodes/cc-fonts.el (c-cpp-matchers) (c-basic-matchers-before, c-font-lock-declarations) (c-font-lock-c++-modules, c-simple-decl-matchers) (c-complex-decl-matchers, c-basic-matchers-after) lisp/progmodes/cc-langs.el (c-paragraph-start) (c-stmt-block-only-keywords-regexp) (c-type-decl-prefix-keywords-key, c-type-decl-prefix-key) (c-type-decl-suffix-key, c-known-type-key) (c-enum-clause-introduction-re) lisp/progmodes/cc-menus.el (cc-imenu-c++-generic-expression) lisp/progmodes/cc-vars.el (c-make-noise-macro-regexps) (c-make-macro-with-semi-re): Replace explicit "\<" and "\>" with "\_<" and "\_>". Replace explicit specification of non-'_' character after word end with "\_>". Replace concatenation of "\<" and "\>" with regexps with (regexp-opt ... 'symbols). Use (regexp-opt ... 'symbols) in general.
* Amend CC Mode so that the test suite in XEmacs runs error freeAlan Mackenzie2025-06-111-41/+42
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * lisp/progmodes/cc-awk.el (awk-font-lock-keywords): Reformulate this using backquote and ,@. Only include the entry for _" in Emacs. * lisp/progmodes/cc-defs.el (c--mapcan, c--set-difference) c--intersection, c--macroexpand-all, c--delete-duplicates): No longer use the existence of cl-lib.el as the criterion for what to expand to. (c-min-property-position): Use c-next-single-property-change rather than next-single-property-change. This now works in XEmacs. * lisp/progmodes/cc-engine.el (c-invalidate-sws-region-after-del) (c-invalidate-sws-region-after-ins, c-forward-sws) (c-backward-sws, c-find-decl-spots): Replace next/previous-single-property-change by c-next/previous-single-property-change to ensure functionality in XEmacs. (c-forward-sws, c-backward-sws): Handle NO-BREAKING-SPACE as whitespace. This corrects the error in hardspace.c in the test suite. * lisp/progmodes/cc-fonts.el (c-font-lock-ml-strings): Refactor some nested `if's into a cond form. Don't fontify multiline string delimiters in XEmacs, in keeping with its string conventions. * lisp/progmodes/cc-langs.el (c-populate-syntax-table): Set the syntax of NO-BREAKING-SPACE to whitespace rather than punctuation. * lisp/progmodes/cc-mode.el (c-before-change): Use c-previous-single-property-change rather than previous-single-property-change to ensure functionality in XEmacs.
* Update copyright year to 2025Paul Eggert2025-01-011-1/+1
| | | | Run "TZ=UTC0 admin/update-copyright".
* CC Mode: Minor corrections and tidy ups for cache invalidationAlan Mackenzie2024-12-281-6/+6
| | | | | | | | | | | | | | | | | | | | | | These cache variables are c-lit-pos-cache-limit, c-semi-near-cache-limit, c-full-near-cache-limit, and c-state-cache-invalid-pos. * lisp/progmodes/cc-awk.el (c-awk-set-string-regexp-syntax-table-properties): Invalidate the caches after changing the 'syntax-table property. * lisp/progmodes/cc-defs.el (c-put-string-fence-trim-caches): New macro. (c-unmark-<-or->-as-paren): New name for c-unmark-<->-as-paren. (Also renamed throughout CC Mode) * lisp/progmodes/cc-engine.el (c-propertize-ml-string-opener): Add missing cache invalidation. * lisp/progmodes/cc-mode.el (c-neutralize-CPP-line): Remove syntax-table properties from < and > as needed. (c-put-syn-tab): Add missing cache invalidation.
* ; Fix more obsoletion warningsStefan Kangas2024-12-191-2/+2
| | | | | | | * lisp/progmodes/cc-awk.el (awk-font-lock-keywords): * lisp/progmodes/cc-fonts.el (c-basic-matchers-before): * lisp/progmodes/csharp-mode.el (c-basic-matchers-before): Use faces instead of variables to silence an obsoletion warning. (Bug#71469)
* CC Mode: Rationalize and optimize cache invalidation (2).Alan Mackenzie2024-10-151-5/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Replace separate syntax-table text property changes and cache invalidation with macros which do both together. Correct a bug in the invocation of XEmacs's map-extents. * lisp/progmodes/cc-defs.el (c-put-syntax-table-trim-caches) (c-clear-syntax-table-trim-caches) (c-clear-syntax-table-properties-trim-caches) (c-clear-syntax-table-with-value-trim-caches) (c-clear-syntax-table-with-value-on-char-trim-caches) (c-put-syntax-table-properties-on-char-trim-caches): New macros. (c-clear-char-properties, c-clear-char-property-with-value) (c-clear-char-property-with-value-on-char): Correct the invocation of XEmacs's map-extents by returning nil from the mapping function to prevent premature exit from map-extents. (c-clear-char-property-with-value-function) (c-clear-char-property-with-value) (c-clear-char-property-with-value-on-char-function) (c-clear-char-property-with-value-on-char) (c-put-char-properties-on-char): Enhance to return the position of the first changed char property (or nil). * lisp/progmodes/cc-awk.el (c-awk-set-string-regexp-syntax-table-properties) (c-awk-set-syntax-table-properties) * lisp/progmodes/cc-engine.el (c-depropertize-ml-string-delims) (c-after-change-unmark-ml-strings, c-propertize-ml-string-id) (c-propertize-ml-string-opener, c-depropertize-ml-string) (c-depropertize-ml-strings-in-region) * lisp/progmodes/cc-mode.el (c-depropertize-CPP) (c-neutralize-CPP-line, c-put-syn-tab, c-clear-syn-tab) (c-parse-quotes-before-change, c-parse-quotes-after-change) (c-before-change-fix-comment-escapes) (c-after-change-fix-comment-escapes): Use the new macros from cc-defs.el. * lisp/progmodes/cc-mode.el (c-trim-cache-first-punctuation-prop): Remove. (c-depropertize-CPP): Remove calls to the above function.
* Fix fontification of network files in `awk-mode`Stefan Kangas2024-07-071-1/+3
| | | | | | * lisp/progmodes/cc-awk.el (awk-font-lock-keywords): Fix fontification of special network file names such as "/inet4/tcp/0/localhost/daytime". See Info node '(gawk) TCP/IP Networking'.
* Merge from savannah/emacs-30Po Lu2024-07-071-1/+1
|\ | | | | | | | | | | 99e510977b2 Correct JNI string error checking and miscellaneous corre... bbe95a8ceab Correctly highlight SYMTAB in `awk-mode` 9625e4af994 Fix formatting of tables with thead/tfoot but no tbody
| * Correctly highlight SYMTAB in `awk-mode`Stefan Kangas2024-07-071-1/+1
| | | | | | | | | | * lisp/progmodes/cc-awk.el (awk-font-lock-keywords): Fix typo for "SYMTAB" (see Info node '(gawk) Auto-set').
* | Fontify `mkbool` as function in `awk-mode`Stefan Kangas2024-07-071-2/+2
|/ | | | | | * lisp/progmodes/cc-awk.el (awk-font-lock-keywords): Fontify 'mkbool' function, added in gawk version 5.2. See Info node '(gawk) Boolean Functions'.
* Merge from savannah/emacs-29Po Lu2024-01-021-1/+1
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | dc4e6b13296 ; Update copyright years in more files 64b37776318 ; Run set-copyright from admin.el 8e1c56ae467 ; Add 2024 to copyright years # Conflicts: # doc/misc/modus-themes.org # doc/misc/texinfo.tex # etc/NEWS # etc/refcards/ru-refcard.tex # etc/themes/modus-operandi-theme.el # etc/themes/modus-themes.el # etc/themes/modus-vivendi-theme.el # lib/alloca.in.h # lib/binary-io.h # lib/c-ctype.h # lib/c-strcasecmp.c # lib/c-strncasecmp.c # lib/careadlinkat.c # lib/cloexec.c # lib/close-stream.c # lib/diffseq.h # lib/dup2.c # lib/filemode.h # lib/fpending.c # lib/fpending.h # lib/fsusage.c # lib/getgroups.c # lib/getloadavg.c # lib/gettext.h # lib/gettime.c # lib/gettimeofday.c # lib/group-member.c # lib/malloc.c # lib/md5-stream.c # lib/md5.c # lib/md5.h # lib/memmem.c # lib/memrchr.c # lib/nanosleep.c # lib/save-cwd.h # lib/sha1.c # lib/sig2str.c # lib/stdlib.in.h # lib/strtoimax.c # lib/strtol.c # lib/strtoll.c # lib/time_r.c # lib/xalloc-oversized.h # lisp/auth-source-pass.el # lisp/emacs-lisp/lisp-mnt.el # lisp/emacs-lisp/timer.el # lisp/info-look.el # lisp/jit-lock.el # lisp/loadhist.el # lisp/mail/rmail.el # lisp/net/ntlm.el # lisp/net/webjump.el # lisp/progmodes/asm-mode.el # lisp/progmodes/project.el # lisp/progmodes/sh-script.el # lisp/textmodes/flyspell.el # lisp/textmodes/reftex-toc.el # lisp/textmodes/reftex.el # lisp/textmodes/tex-mode.el # lisp/url/url-gw.el # m4/alloca.m4 # m4/clock_time.m4 # m4/d-type.m4 # m4/dirent_h.m4 # m4/dup2.m4 # m4/euidaccess.m4 # m4/fchmodat.m4 # m4/filemode.m4 # m4/fsusage.m4 # m4/getgroups.m4 # m4/getloadavg.m4 # m4/getrandom.m4 # m4/gettime.m4 # m4/gettimeofday.m4 # m4/gnulib-common.m4 # m4/group-member.m4 # m4/inttypes.m4 # m4/malloc.m4 # m4/manywarnings.m4 # m4/mempcpy.m4 # m4/memrchr.m4 # m4/mkostemp.m4 # m4/mktime.m4 # m4/nproc.m4 # m4/nstrftime.m4 # m4/pathmax.m4 # m4/pipe2.m4 # m4/pselect.m4 # m4/pthread_sigmask.m4 # m4/readlink.m4 # m4/realloc.m4 # m4/sig2str.m4 # m4/ssize_t.m4 # m4/stat-time.m4 # m4/stddef_h.m4 # m4/stdint.m4 # m4/stdio_h.m4 # m4/stdlib_h.m4 # m4/stpcpy.m4 # m4/strnlen.m4 # m4/strtoimax.m4 # m4/strtoll.m4 # m4/time_h.m4 # m4/timegm.m4 # m4/timer_time.m4 # m4/timespec.m4 # m4/unistd_h.m4 # m4/warnings.m4 # nt/configure.bat # nt/preprep.c # test/lisp/register-tests.el
| * ; Add 2024 to copyright yearsPo Lu2024-01-021-1/+1
| |
* | CC Mode: Fix bug in whitespace scanning functionsAlan Mackenzie2023-09-291-8/+8
|/ | | | | | | | | | | | | | | | | | | | | | | | | | | c-forward-sws and c-backward-sws were scanning over spaces and linefeeds marked with the string-fence syntax-table text property. Fix this by (i) removing the WS text properties c-in-sws and c-is-sws from characters when setting the string-fence on them; (ii) checking the syntax of "space" characters when scanning over them. * lisp/progmodes/cc-defs.el (c-skip-ws-chars-forward) c-skip-ws-chars-backward, c-put-string-fence): New macros. * lisp/progmodes/cc-awk.el (c-awk-set-string-regexp-syntax-table-properties): Use c-put-string-fence. * lisp/progmodes/cc-engine.el (c-beginning-of-statement-1): Correct the determination of macro-start. (c-forward-sws, c-backward-sws): Replace skip-chars-forward by c-skip-ws-chars-forward and skip-chars-backward by c-skip-ws-chars-backward. (c-unmark-<>-around-region, c-after-change-unmark-ml-strings) (c-propertize-ml-string-opener): Use c-put-string-fence. * lisp/progmodes/cc-mode.el (c-put-syn-tab): Use c-put-string-fence when appropriate.
* ; Add 2023 to copyright years.Eli Zaretskii2023-01-011-1/+1
|
* CC Mode. Make AWK Mode work with electric-pair-modeAlan Mackenzie2022-09-241-10/+15
| | | | | | | | | | | | | | | | Also fix some minor anomalies with other CC Mode modes in electric-pair-mode. This fixes bug #53446. * lisp/progmodes/cc-mode.el (c-open-string-opener): New buffer local variable. (c-after-change-mark-abnormal-strings): Set c-open-string-opener when an unbalanced string is detected. (c-before-change): Initilize c-open-string-opener to nil, each buffer change. (c-electric-pair-inhibit-predicate): Use the value of c-open-string-opener to flag an unbalaced string rather than trying to calculate it again. * lisp/progmodes/cc-awk.el (c-awk-syntax-tablify-string): Set c-open-string-opener when an unbalanced string is detected.
* Fix mis-spelling of c-awk-old-ByLL and really make it buffer-localPaul A. Patience2022-08-191-1/+1
| | | | | | | * lisp/progmodes/cc-awk.el (c-awk-old-ByLL): Make the correct variable buffer-local (bug#57294). Copyright-paperwork-exempt: yes
* CC Mode: Restore string fence properties at each relevant external entry pointAlan Mackenzie2022-05-221-57/+61
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This fixes bug #55230. * lisp/progmodes/cc-defs.el (c-string-fences-set-flag, c-with-string-fences): New variable and macro. * lisp/progmodes/cc-mode.el (c-called-from-text-property-change-p): Add remove-text-properties to the list of accepted functions. (c-clear-string-fences, c-restore-string-fences): Surround the functions' innards with c-save-buffer-state to prevent text property changes causing change functions to be called. (c-before-change, c-after-change, c-font-lock-fontify-region): Replace the explicit calls to c-restore-string-fences and c-clear-string-fences with invocations of the new macro c-with-string-fences. * lisp/progmodes/cc-awk.el (c-awk-extend-and-syntax-tablify-region) (c-awk-end-of-defun) * lisp/progmodes/cc-cmds.el (c-show-syntactic-information) (c-electric-backspace, c-hungry-delete-backwards, c-electric-delete-forward) (c-hungry-delete-forward, c-electric-pound, c-electric-brace) (c-electric-slash, c-electric-star, c-electric-semi&comma, c-electric-colon) (c-electric-lt-gt, c-electric-paren, c-beginning-of-defun, c-end-of-defun) (c-display-defun-name, c-mark-function, c-beginning-of-statement) (c-end-of-statement, c-indent-command, c-indent-exp, c-indent-defun) (c-indent-line-or-region, c-fill-paragraph, c-indent-new-comment-line) (c-context-line-break) * lisp/progmodes/cc-guess.el (c-guess-region-no-install): These are all "boundary" functions to CC Mode. Surround each by c-with-string-fences.
* ; Add 2022 to copyright years.Eli Zaretskii2022-01-011-1/+1
|
* ; Minor stylistic fixes found by checkdocStefan Kangas2021-09-161-3/+4
|
* ; Fix typosStefan Kangas2021-09-031-1/+1
|
* ; Normalize and add missing first and last linesStefan Kangas2021-04-191-1/+1
|
* Convert CC Mode to lexical binding in EmacsAlan Mackenzie2021-04-101-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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 _.
* Update copyright year to 2021Paul Eggert2021-01-011-1/+1
| | | | Run "TZ=UTC0 admin/update-copyright".
* CC Mode. Fix AWK Mode fontification bug, remove some unused variablesAlan Mackenzie2020-12-311-1/+1
| | | | | | | | * lisp/progmodes/cc-awk.el (awk-font-lock-keywords): Replace a hard use of c-preprocessor-face-name by an `eval' expression which evaluates it. * lisp/progmodes/cc-engine.el (c-in-knr-argdecl, c-laomib-put-cache) (c-laomib-fix-elt): Remove unused bound variables.
* CC Mode: Add newish AWK Mode facilities, as used in gawk-4.Alan Mackenzie2020-12-281-14/+87
| | | | | | | | | | | | | | | | | | | | * lisp/progmodes/cc-awk.el (c-awk-font-lock-invalid-namespace-separators): New function. (c-awk-context-expand-fl-region): New function. (awk-font-lock-keywords): Enhance handling of function declarations to include :: tokens. Fontify new system variable names FPAT, FUNCTAB, PREC, ROUNDMODE, SYNTAB. Fontify new keywords BEGINFILE and ENDFILE. Fontify new system functions asorti, dcngettext, isarray, patsplit, typeof. Fontify the new directives @include, @load, @namespace. Call c-awk-font-lock-invalid-namespace-separators as a matcher. * lisp/progmodes/cc-fonts.el (top level): No longer require 'cc-awk. * lisp/progmodes/cc-langs.el (c-before-context-fontification-functions): Give AWK the value c-awk-context-expand-fl-region rather than nil. * lisp/progmodes/cc-mode.el (top level): Declare awk-mode-syntax-table as a variable.
* Add and remove backslashes in regexpsMattias Engdegård2020-02-201-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | These irregularities were found by relint; see https://lists.gnu.org/archive/html/emacs-devel/2020-01/msg00949.html . * doc/lispref/modes.texi (Example Major Modes): * etc/srecode/el.srt: * lisp/cedet/data-debug.el (data-debug-mode): * lisp/cedet/semantic/grammar.el (semantic-grammar-mode): * lisp/cedet/srecode/srt-mode.el (srecode-template-mode): * lisp/comint.el (comint--unquote&requote-argument): * lisp/emacs-lisp/lisp-mode.el (lisp-mode): * lisp/gnus/mm-uu.el (mm-uu-type-alist): * lisp/progmodes/cc-awk.el (c-awk-harmless-pattern-characters*): * lisp/progmodes/cfengine.el (cfengine-common-settings): * lisp/progmodes/cperl-mode.el (cperl-after-sub-regexp, cperl-init-faces): * lisp/shell.el (shell-chdrive-regexp, shell--unquote&requote-argument): * lisp/textmodes/tex-mode.el (tex-common-initialization): Remove duplicated backslashes in character alternatives. * lisp/emacs-lisp/lisp-mode.el (lisp-el-font-lock-keywords-2): * lisp/progmodes/opascal.el (opascal--syntax-propertize): * lisp/progmodes/pascal.el (pascal--syntax-propertize): Remove backslashes escaping non-special characters. * lisp/progmodes/fortran.el (fortran-font-lock-keywords-3): Escape '*'. * lisp/progmodes/perl-mode.el (perl-syntax-propertize-function): Escape '^'.
* Update copyright year to 2020Paul Eggert2020-01-011-1/+1
| | | | Run "TZ=UTC0 admin/update-copyright $(git ls-files)".
* * lisp/progmodes/cc-awk.el (c-awk-var-num-ket-re): Remove /x80-/xff from it.Alan Mackenzie2019-07-251-3/+3
|
* Go back to "Maintainer: emacs-devel@gnu.org"Paul Eggert2019-05-251-0/+1
| | | | | | Restore lines saying "Maintainer: emacs-devel@gnu.org" when there is no special maintainer for a file. Although this wasn't documented it was common practice and removing the lines didn't have consensus.
* Fixes for "Maintainer:" and related linesPaul Eggert2019-05-191-1/+0
| | | | | | Mostly, this just removes "Maintainer: emacs-devel@gnu.org" lines, which are not that useful. It also cleans up and regularizes a few similar lines.
* Fix regexp branches that subsume other branchesPaul Eggert2019-04-191-1/+1
| | | | | | | | | | | | | | | Problems reported by Mattias Engdegård in: https://lists.gnu.org/r/emacs-devel/2019-04/msg00803.html * lisp/arc-mode.el (archive-rar-summarize): * lisp/eshell/em-hist.el (eshell-hist-word-designator): * lisp/info.el (Info-dir-remove-duplicates): * lisp/international/ja-dic-cnv.el (skkdic-convert-postfix) (skkdic-convert-prefix, skkdic-collect-okuri-nasi): * lisp/progmodes/cc-awk.el (c-awk-esc-pair-re): * lisp/xml.el (xml-att-type-re): Omit regexp branches that subsume other branches. * lisp/progmodes/cperl-mode.el (cperl-beautify-regexp-piece): $ and ^ aren’t simple-codes.
* CC Mode: Correct some incorrect regular expressions:Alan Mackenzie2019-03-091-2/+2
| | | | | | | | * lisp/progmodes/cc-awk.el (c-awk-regexp-char-list-re): "^" -> "\\^". R*x?R* -> \(R*x\)?R*. * lisp/progmodes/cc-mode.el (c-after-change-re-mark-unbalanced-strings): "|" -> "\\|".
* Correct some slightly incorrect regular expressions:Alan Mackenzie2019-03-031-3/+3
| | | | | | | | | | | * lisp/progmodes/cc-awk.el (c-awk-harmless-char-re) (c-awk-harmless-line-char-re, c-awk-_-harmless-nonws-char-re): [...\\\\...] -> [...\\...]. * lisp/progmodes/cc-engine.el (c-literal-limits): "*/" -> "\\*/". * lisp/progmodes/cc-mode.el (c-after-change-re-mark-unbalanced-strings): "\\\r" -> "\r".
* Update copyright year to 2019Paul Eggert2019-01-011-1/+1
| | | | Run 'TZ=UTC0 admin/update-copyright $(git ls-files)'.
* Update copyright year to 2018Paul Eggert2018-01-011-1/+1
| | | | Run admin/update-copyright.
* Prefer HTTPS to FTP and HTTP in documentationPaul Eggert2017-09-131-1/+1
| | | | | | | | | | | | | Most of this change is to boilerplate commentary such as license URLs. This change was prompted by ftp://ftp.gnu.org's going-away party, planned for November. Change these FTP URLs to https://ftp.gnu.org instead. Make similar changes for URLs to other organizations moving away from FTP. Also, change HTTP to HTTPS for URLs to gnu.org and fsf.org when this works, as this will further help defend against man-in-the-middle attacks (for this part I omitted the MS-DOS and MS-Windows sources and the test tarballs to keep the workload down). HTTPS is not fully working to lists.gnu.org so I left those URLs alone for now.
* * lisp/progmodes/cc-awk.el: Mark unused argsStefan Monnier2017-07-041-2/+2
|
* Update copyright year to 2017Paul Eggert2016-12-311-1/+1
| | | | Run admin/update-copyright.
* Update copyright year to 2016Paul Eggert2016-01-011-1/+1
| | | | Run admin/update-copyright.
* CC Mode: Eliminate compiler warning messages.Alan Mackenzie2015-11-241-8/+11
| | | | | | | | | | | * lisp/progmodes/cc-mode.el (top level): remove compile time declaration of `font-lock-syntactic-keywords' (which CC Mode doesn't use). * lisp/progmodes/cc-awk.el (awk-mode-syntax-table) (c-awk-set-syntax-table-properties): Clarify comments about `font-lock-syntactic-keywords'. * lisp/progmodes/cc-bytecomp.el (cc-bytecomp-load): Create a dummy declaration of this before the real (interpreted) one, to satisfy the byte compiler.
* Backslash cleanup in Elisp source filesPaul Eggert2015-09-171-3/+3
| | | | | | | | | | | This patch should not change behavior. It typically omits backslashes where they are redundant (e.g., in the string literal "^\$"). In a few places, insert backslashes where they make regular expressions clearer: e.g., replace "^\*" (equivalent to "^*") with "^\\*", which has the same effect as a regular expression. Also, use ‘\ %’ instead of ‘\%’ when avoiding confusion with SCCS IDs, and similarly use ‘\ $’ instead of ‘\$’ when avoiding confusion with RCS IDs, as that makes it clearer that the backslash is intended.
* * lisp/progmodes/cc-*.el: Fix up commenting styleStefan Monnier2015-08-211-4/+4
| | | | | | | | | | | * lisp/progmodes/cc-vars.el, lisp/progmodes/cc-styles.el: * lisp/progmodes/cc-mode.el, lisp/progmodes/cc-menus.el: * lisp/progmodes/cc-langs.el, lisp/progmodes/cc-guess.el: * lisp/progmodes/cc-fonts.el, lisp/progmodes/cc-engine.el: * lisp/progmodes/cc-defs.el, lisp/progmodes/cc-cmds.el: * lisp/progmodes/cc-bytecomp.el, lisp/progmodes/cc-awk.el: * lisp/progmodes/cc-align.el, lisp/net/soap-client.el: Fix up commenting style.
* Quieten cc-mode compilationGlenn Morris2015-05-061-0/+1
| | | | | | * lisp/progmodes/cc-awk.el (c-forward-sws): * lisp/progmodes/cc-cmds.el (c-forward-subword, c-backward-subword): Declare.
* Update copyright year to 2015Paul Eggert2015-01-011-1/+1
| | | | Run admin/update-copyright.
* Merge some of the differences from the standalone CC-mode.Stefan Monnier2014-12-011-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The main change is to only use the `category' text-property only when available. For that many calls are changed to use c-get-char-property, c-next-single-property-change, c-sc-scan-lists, c-sc-parse-partial-sexp, c-unmark-<->-as-paren. * lisp/progmodes/cc-align.el (c-lineup-respect-col-0): New function. * lisp/progmodes/cc-cmds.el (c-forward-into-nomenclature) (c-backward-into-nomenclature): Use cc-subword if subword-mode is not available. (c-beginning-of-defun, c-end-of-defun, c-mark-function) (c-indent-line-or-region): Use c-region-is-active-p. * lisp/progmodes/cc-defs.el (c-version): Bump up to 5.33. (c-use-category): New const. (c-next-single-property-change): New macro. (c-region-is-active-p): Prefer region-active-p when available. (c-search-backward-char-property): Fix old min/max typo; probably a copy/paste error. (c-mark-<-as-paren, c-mark->-as-paren, c-unmark-<->-as-paren): Turn them into macros that obey c-use-category. (c-sc-scan-lists-no-category+1+1, c-sc-scan-lists-no-category+1-1) (c-sc-scan-lists-no-category-1+1, c-sc-scan-lists-no-category-1-1) (c-sc-scan-lists, c-sc-parse-partial-sexp) (c-looking-at-non-alphnumspace): New macros. (c-sc-parse-partial-sexp-no-category): New function. (c-emacs-features): Add `category-properties' element. * lisp/progmodes/cc-engine.el (c-invalidate-state-cache, c-parse-state): Handle the case where categories are not available. (c-record-parse-state-state, c-replay-parse-state-state): Handle marker values. (c-before-change-check-<>-operators): Look for the `syntax-table' property rather than for the corresponding `category'. (c-looking-at-decl-block): Remove unused var `c-disallow-comma-in-<>-arglists'. (c-forward-<>-arglist-recur): Remove unused var `orig-record-found-types'. * lisp/progmodes/cc-langs.el (c-modified-constant): New lang var. (c-known-type-key): Don't make a list just to throw it away. * lisp/progmodes/cc-bytecomp.el (cc-bytecomp-unbound-variables) (cc-bytecomp-original-functions, cc-bytecomp-original-properties) (cc-bytecomp-loaded-files): Re-set each time the file is loaded. (cc-bytecomp-obsolete-var, cc-bytecomp-ignore-obsolete) (cc-bytecomp-obsolete-fun): Delete unused functions. * lisp/progmodes/cc-mode.el (c-just-done-before-change): New var. (c-basic-common-init): Initialize it. (c-common-init): Only use mode-require-final-newline when available. (c-before-change): Check and set c-just-done-before-change. (c-after-change): Re-set c-just-done-before-change. (c-advise-fl-for-region): New macro. (lazy-lock-defer-rest-after-change, lazy-lock-defer-line-after-change) (font-lock-after-change-function, jit-lock-after-change): Advise if needed.
* Merge trivially safe differences from standalone CC-mode.Stefan Monnier2014-10-041-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | * lisp/progmodes/cc-mode.el (c-initialize-cc-mode): Don't quote a symbol just to then pass it to `symbol-value'. (prog-mode): Provide fallback definition, if needed. * lisp/progmodes/cc-langs.el: Always load `cl'. Don't load `cl-lib'. Remove "cl-" prefix accordingly. * lisp/progmodes/cc-fonts.el (c-font-lock-invalid-string): Use integerp or characterp depending on the type of characters. (c-font-lock-enum-tail): Remove unused var `start'. * lisp/progmodes/cc-engine.el: Load CL at compile-time. (c-declare-lang-variables): Use mapcan. (c-append-to-state-cache): Remove unused var `ce+1'. (c-parse-state-state): Make buffer-local. (c-ssb-lit-begin): Remove unused var `pps-end-pos'. (c-just-after-func-arglist-p): Remove unused var `end'. * lisp/progmodes/cc-defs.el: Load cc-fix if delete-dups is undefined. (c-<-as-paren-syntax, c->-as-paren-syntax): Move definition earlier. (c-make-keywords-re): Use delete-dups. (c-get-current-file): Avoid file-name-base. * lisp/progmodes/cc-cmds.el (c-electric-lt-gt): Remove unused var `close-paren-inserted'. * lisp/progmodes/cc-awk.el (c-forward-sws): Remove unused declaration.
* CC Mode: revert recent changes and fix bug 17463 (cc-langs.elc getsAlan Mackenzie2014-09-101-327/+344
| | | | | | | | loaded at run-time). * progmodes/cc-langs.el (c-no-parens-syntax-table): Rename the c-lang-const to c-make-no-parens-syntax-table and correct the logic. (c-no-parens-syntax-table): Correct the logic of the c-lang-defvar.
* * lisp/progmodes/cc-awk.el: Remove unneeded cc-bytecomp use.Stefan Monnier2014-09-091-344/+327
| | | | | Change doc comments into docstrings. * lisp/Makefile.in: Remove cc-awk dependency.
* Replace "Maintainer: FSF" with the emacs-devel mailing addressGlenn Morris2014-02-091-1/+1
|