aboutsummaryrefslogtreecommitdiffstats
path: root/test/lisp (follow)
Commit message (Collapse)AuthorAgeFilesLines
...
* New dns-mode command for IPv6 address conversionPeder O. Klingenberg2017-05-231-0/+58
| | | | | | | | | | | This converts IPv6 addresses to a format suitable for reverse lookup zone files. (Bug#26820) * lisp/textmodes/dns-mode.el (dns-mode-map, dns-mode-menu): Add dns-mode-ipv6-to-nibbles. (dns-mode-ipv6-to-nibbles, dns-mode-reverse-and-expand-ipv6): New functions. * test/lisp/dns-mode-tests.el: New file. ; * etc/NEWS: Mention this.
* Add test for Bug#27009 in tramp-tests.elMichael Albinus2017-05-231-0/+41
| | | | | | | | | | | * lisp/net/tramp-sh.el (tramp-compute-multi-hops): Check `tramp-file-name-real-host' for being a local host. * lisp/net/tramp.el (tramp-postfix-host-regexp): Fix docstring. * test/lisp/net/tramp-tests.el (tramp-test-temporary-file-directory): Declare default host for mock method. (tramp-test29-environment-variables-and-port-numbers): New test.
* Fix definition of whitespace in JSONPhilipp Stephani2017-05-211-1/+4
| | | | | | | | | See https://lists.gnu.org/archive/html/emacs-devel/2017-05/msg00115.html. * lisp/json.el (json-skip-whitespace): Fix definition. * test/lisp/json-tests.el (test-json-skip-whitespace): Adapt unit test.
* Prevent running vc-tests writing to ~/.bzr.logGlenn Morris2017-05-201-7/+38
| | | | | | * test/lisp/vc/vc-tests.el (vc-test--create-repo) (vc-test--register, vc-test--working-revision) (vc-test--checkout-model): Set temporary BZR_HOME, to disable logging.
* Fix macOS mouse movementCharles A. Roelli2017-05-211-0/+9
| | | | | | | | | | | | | | * lisp/frame.el (ns-set-mouse-absolute-pixel-position): New function (Lisp). (set-mouse-absolute-pixel-position): Change it to call `ns-set-mouse-absolute-pixel-position' on macOS. * src/nsfns.m (Fns_set_mouse_absolute_pixel_position): New function. * src/nsterm.h (NS_PARENT_WINDOW_TOP_POS): Use the primary screen's height as a base for calculating global coordinates. * src/nsterm.m (frame_set_mouse_pixel_position): Fix it in macOS. * test/lisp/mouse-tests.el (bug26816-mouse-frame-movement): Test movement of mouse relative to frame.
* ; Set transient-mark-mode to let mark-defun tests passNoam Postavsky2017-05-201-2/+4
| | | | | | | The tests fail when transient-mark-mode is not set since 2017-05-12 "Fix Bug#21072 and rework `mark-defun'". * test/lisp/progmodes/python-tests.el (python-mark-defun-1) (python-mark-defun-2): Bind 'transient-mark-mode' to t.
* Limit integers printed as characters (Bug#16828)Noam Postavsky2017-05-192-0/+100
| | | | | | | | | | | | | | | | | | | | | | | | | * lisp/simple.el (eval-expression-print-maximum-character): New variable. (eval-expression-print-format): Only display value as character if it's less than or equal to `eval-expression-print-maximum-character'. (eval-expression-get-print-arguments): Check eval-expression-print-maximum-character, allow negative arg to override it. (eval-expression): * lisp/progmodes/elisp-mode.el (elisp--eval-last-sexp): (elisp--eval-last-sexp-print-value): Handle new variable. * doc/emacs/building.texi (Lisp Eval): Document new variable and behavior. * etc/NEWS: Announce it. * test/lisp/progmodes/elisp-mode-tests.el (eval-last-sexp-print-format-small-int) (eval-last-sexp-print-format-small-int-echo) (eval-last-sexp-print-format-large-int) (eval-last-sexp-print-format-large-int-echo): * test/lisp/simple-tests.el (eval-expression-print-format-small-int) (eval-expression-print-format-small-int-echo) (eval-expression-print-format-large-int) (eval-expression-print-format-large-int-echo): New tests.
* Refactor lisp eval result printingNoam Postavsky2017-05-192-10/+50
| | | | | | | | | | | * lisp/simple.el (eval-expression-print-format): Don't check `standard-output' or `current-prefix-arg'. (eval-expression-get-print-arguments): New function, centralizes decision about how to print results of `eval-expression' and `eval-last-sexp'. (eval-expression): * lisp/progmodes/elisp-mode.el (elisp--eval-last-sexp-print-value): Use it.
* Fix turning off whitespace-modeNick Helm2017-05-191-0/+34
| | | | | | | | | | | | * lisp/whitespace.el (whitespace-display-char-on): Correct the way the original buffer-display-table is saved and restored when global-whitespace-mode is active. (Bug#26892) * test/lisp/whitespace-tests.el (whitespace-tests-whitespace-mode-on): New function. (whitespace-tests-display-tables): New test. Copyright-paperwork-exempt: yes
* Minor tweaks in tramp-tests.elMichael Albinus2017-05-191-0/+16
| | | | | | * test/lisp/net/tramp-tests.el (tramp--test-afp-or-smb-p): New defun. (tramp-test05-expand-file-name-relative): Use it. (tramp-test38-unload): Run only in batch mode.
* Use the expression angle units while simplifying itTino Calancha2017-05-181-0/+44
| | | | | | | | | | | | | Don't use the angle mode, use the angle units included in the expression instead (Bug#23889). * lisp/calc/calc-alg.el (calc-input-angle-units): New defun. (math-simplify): Use it. * lisp/calc/calc-forms.el (math-to-hms, math-from-hms): Don't use calc-angle-mode if math-simplifying-units is non-nil. * lisp/calc/calc-math.el (calcFunc-nroot, math-from-radians) (math-to-radians-2, math-from-radians-2): Don't convert angle to radians if math-simplifying-units is non-nil. * test/lisp/calc/calc-tests.el (test-calc-23889): Add test.
* Extend tramp-tests.elMichael Albinus2017-05-161-2/+29
| | | | | | | * test/lisp/net/tramp-tests.el (tramp-change-syntax): Remove declaration, not needed anymore. (tramp-test05-expand-file-name-relative): New test. (tramp-test10-write-region): Extend test.
* Make sure indent-sexp stops at end of sexp (Bug#26878)Noam Postavsky2017-05-151-0/+14
| | | | | | | * lisp/emacs-lisp/lisp-mode.el (indent-sexp): Check endpos before indenting. * test/lisp/emacs-lisp/lisp-mode-tests.el (indent-sexp-stop): New test.
* Stop some epg tests failing on rhel7 with gpg 2.0.22 (bug#23619)Glenn Morris2017-05-151-2/+6
| | | | | | | * test/lisp/epg-tests.el (with-epg-tests): Also set GNUPGHOME in the environment of child processes. This avoids problems if gpg does not pass --homedir to spawned agent. ; Ref eg https://gpgtools.tenderapp.com/discussions/problems/29537-gpg2-doesnt-start-agent-properly-if-using-homedir
* Make edebug-step-in work on generic methods (Bug#22294)Gemini Lasswell2017-05-141-0/+24
| | | | | | | | | | | | | | | | | | * lisp/emacs-lisp/edebug.el (edebug-match-cl-generic-method-args): New function to implement the edebug-form-spec property of the symbol cl-generic-method-args. (edebug-instrument-function): If the function is a generic function, find and instrument all of its methods. Return a list instead of a single symbol. (edebug-instrument-callee): Now returns a list. Update docstring. (edebug-step-in): Handle the list returned by edebug-instrument-callee. * lisp/emacs-lisp/cl-generic.el (cl-defmethod): Use name and cl-generic-method-args in its Edebug spec. * lisp/emacs-lisp/eieio-compat.el (defmethod): Use name and cl-generic-method-args in its Edebug spec. * lisp/subr.el (method-files): New function. * test/lisp/subr-tests.el (subr-tests--method-files--finds-methods) (subr-tests--method-files--nonexistent-methods): New tests.
* Merge branch 'fix/bug-21072'Marcin Borkowski2017-05-141-0/+286
|\
| * Fix elisp-tests-with-temp-buffer compilationNoam Postavsky2017-05-121-33/+33
| | | | | | | | | | | | | | | | | | | | | | | | * test/lisp/emacs-lisp/lisp-tests.el (elisp-tests-with-temp-buffer): Don't refer to the =!NAME= as "markers" since they produce variables with just plain positions, not marker objects. Explicitly specify that CONTENTS is evaluated at compile time. Don't re-evaluate CONTENTS at runtime. Fix debug specification. Suppress warnings due to BODY not using =!NAME= variables. (elisp-test-point-position-regex): Rename from `elisp-test-point-marker-regex'. (mark-defun-test-buffer): Wrap in `eval-and-compile'.
| * Fix Bug#21072 and rework `mark-defun'Marcin Borkowski2017-05-121-0/+247
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * test/lisp/progmodes/elisp-mode-tests.el (mark-defun-test-buffer): New variable (mark-defun-no-arg-region-inactive) (mark-defun-no-arg-region-active) (mark-defun-arg-region-active) (mark-defun-pos-arg-region-inactive) (mark-defun-neg-arg-region-inactive, mark-defun-bob): Add tests for the new `mark-defun'. * lisp/emacs-lisp/lisp.el (beginning-of-defun--in-emptyish-line-p): New function. (beginning-of-defun-comments): New function. (mark-defun): Fix bug#21072, also rewrite large parts of `mark-defun' to accept a numerical prefix argument.
| * Add elisp-tests-with-temp-buffer, a new testing macroMarcin Borkowski2017-05-091-0/+39
| | | | | | | | | | | | | | * test/lisp/emacs-lisp/lisp-tests.el (elisp-test-point-marker-regex) New variable. (elisp-tests-with-temp-buffer): New macro to help test functions moving the point and/or mark.
* | Make `old-style-backquotes' variable internalPhilipp2017-05-131-0/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | * src/lread.c (load_warn_old_style_backquotes, Fload, read1) (syms_of_lread): Rename `old-style-backquotes' to `lread--old-style-backquotes', and clarify that it's for internal use only. * lisp/emacs-lisp/bytecomp.el (byte-compile-from-buffer): Rename variable. * test/src/lread-tests.el (lread-tests--old-style-backquotes): Add unit test. * emacs-lisp/bytecomp-tests.el (bytecomp-tests--old-style-backquotes): Add unit test.
* | Improve unescaped character literal warningsPhilipp Stephani2017-05-131-1/+2
| | | | | | | | | | | | | | | | | | | | | | * src/lread.c (load_warn_unescaped_character_literals) (syms_of_lread): lisp/emacs-lisp/bytecomp.el (byte-compile-from-buffer): Improve formatting of unescaped character literal warnings. * test/src/lread-tests.el (lread-tests--unescaped-char-literals): test/lisp/emacs-lisp/bytecomp-tests.el (bytecomp-tests--unescaped-char-literals): Adapt unit tests.
* | Make Tramp backward compatibleMichael Albinus2017-05-121-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * lisp/net/tramp-cmds.el (tramp-change-syntax): Set tramp-autoload cookie. * lisp/net/tramp-compat.el: Run `tramp-change-syntax' at startup, if necessary. * lisp/net/tramp.el (tramp-syntax): Use `tramp-compat-user-error'. (tramp-register-autoload-file-name-handlers): Do not mark `operations' for `tramp-file-name-handler'. (tramp-register-file-name-handlers): Remove also `tramp-autoload-file-name-handler' for backward compatibility. (tramp-register-foreign-file-name-handler): Use `delete-dups'. * test/lisp/net/tramp-tests.el (tramp-change-syntax): Declare.
* | Fix lisp-indent-region and indent-sexp (Bug#26619)Noam Postavsky2017-05-091-5/+80
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The new lisp-indent-region introduced in 2017-04-22 "Add new `lisp-indent-region' that doesn't reparse the code." is broken because it doesn't save the calculated indent amounts for already seen sexp depths. Fix this by unifying the indent-sexp and lisp-indent-region code. Furthermore, only preserve position 2 of the running parse when the depth doesn't change. * lisp/emacs-lisp/lisp-mode.el (lisp-ppss): Use an OLDSTATE that corresponds with the start point when calling parse-partial-sexp. (lisp-indent-state): New struct. (lisp-indent-calc-next): New function, extracted from indent-sexp. (indent-sexp, lisp-indent-region): Use it. (lisp-indent-line): Take indentation, instead of parse state. * test/lisp/emacs-lisp/lisp-mode-tests.el (lisp-mode-tests--correctly-indented-sexp): New constant. (lisp-indent-region, lisp-indent-region-defun-with-docstring): (lisp-indent-region-open-paren, lisp-indent-region-in-sexp): New tests.
* | Simplify url-encode-url and add a testDmitry Gutov2017-05-101-0/+5
| | | | | | | | | | | | | | | | | | * lisp/url/url-util.el (url-encode-url): Simplify. url-generic-parse-url copes with multibyte strings just fine (https://debbugs.gnu.org/cgi/bugreport.cgi?bug=24117#185). * test/lisp/url/url-parse-tests.el (url-generic-parse-url/multibyte-host-and-path): New test.
* | * test/lisp/net/tramp-tests.el: Keep additional test.Michael Albinus2017-05-091-0/+10
| |
* | Revert "Output number of characters added to file (Bug#354)"Noam Postavsky2017-05-081-52/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The extra message text turned out to be quite annoying in practice, and is generally more trouble than it's worth. Also revert several related changes. Partially revert "Handle `write-region' messages in Tramp properly" Revert "New var write-region-verbose, default nil" Revert "* src/fileio.c (write_region): Don't say "1 characters". (Bug#26796)" Revert "Minor tuneup of write-region change" Revert "Adjust write-region so file name is at the beginning again" Revert "Fix handling of non-integer START param to write-region" Revert "Output number of characters added to file (Bug#354)" * doc/emacs/files.texi (Misc File Ops): * etc/NEWS: * lisp/epa-file.el (epa-file-write-region): * lisp/gnus/mm-util.el (mm-append-to-file): * lisp/jka-compr.el (jka-compr-write-region): * lisp/net/ange-ftp.el (ange-ftp-write-region): * lisp/net/tramp-adb.el (tramp-adb-handle-write-region): * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-write-region): * lisp/net/tramp-sh.el (tramp-sh-handle-write-region): * lisp/net/tramp-smb.el (tramp-smb-handle-write-region): * lisp/net/tramp.el (tramp-handle-write-region-message): * src/fileio.c (write_region, syms_of_fileio): * test/lisp/net/tramp-tests.el (tramp-test10-write-region): Remove extra characters from file writing messages.
* | Skip a test from filenotify-tests.el on CygwinKen Brown2017-05-081-3/+6
| | | | | | | | | | | | | | | | * test/lisp/filenotify-tests.el (file-notify-test02-rm-watch): Skip the last part of the test on Cygwin; it fails due to timing issues. (file-notify--test-read-event): Remove `sit-for' that was added for Cygwin.
* | Handle `write-region' messages in Tramp properlyMichael Albinus2017-05-081-2/+52
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * lisp/net/tramp.el (tramp-handle-write-region-message): New defsubst. * lisp/net/tramp-adb.el (tramp-adb-handle-write-region): * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-write-region): * lisp/net/tramp-sh.el (tramp-sh-handle-write-region): * lisp/net/tramp-smb.el (tramp-smb-handle-write-region): Use it. * lisp/net/tramp.el (tramp-password-prompt-regexp) (tramp-completion-mode-p): * lisp/net/tramp-cmds.el (tramp-reporter-dump-variable) (tramp-append-tramp-buffers): * lisp/net/tramp-smb.el (tramp-smb-maybe-open-connection): Use `bound-and-true-p'. * lisp/net/tramp-compat.el (tramp-compat-delete-file): Don't check for `boundp' anymore. * test/lisp/net/tramp-tests.el (ert-x): Require it. (tramp--test-messages): New defvar. (tramp-test10-write-region): Extend test.
* | Fix quoted files for 'verify-visited-file-modtime'Philipp Stephani2017-05-061-1/+63
| | | | | | | | | | | | | | | | | | | | | | | | Fixes Bug#25951. * lisp/files.el (file-name-non-special): Set the file name for the correct buffer. * test/lisp/files-tests.el (files-tests--file-name-non-special--buffers): Add unit test. (files-tests--with-advice, files-tests--with-temp-file): New helper macros.
* | Ensure the created temp file in a test is newTino Calancha2017-05-061-4/+2
| | | | | | | | | | * test/lisp/buff-menu-tests.el (buff-menu-24962): Use `make-temp-file' to create the temp file.
* | Add seq-set-equal-p to test for set equalityDamien Cassou2017-05-041-0/+25
| | | | | | | | | | | | | | | | * lisp/emacs-lisp/seq.el (seq-set-equal-p): Add function to compare two lists as if they were sets. * test/lisp/emacs-lisp/seq-tests.el (test-seq-set-equal-p): Add test for seq-set-equal-p.
* | Add color highlighting to css-modeTom Tromey2017-05-031-1/+45
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Bug#25525 * lisp/textmodes/css-mode.el (css--color-map): New constant. (css-value-class-alist): Use css--color-map. (css--number-regexp, css--percent-regexp) (css--number-or-percent-regexp, css--angle-regexp): New constants. (css--color-skip-blanks, css--rgb-color, css--hsl-color): New functions. (css--colors-regexp): New constant. (css--hex-color, css--named-color, css--compute-color) (css--contrasty-color, css--fontify-colors) (css--fontify-region): New functions. (css-mode): Set font-lock-fontify-region-function. (css-mode-syntax-table): Set syntax on more characters. (css-fontify-colors): New defcustom. (scss-mode-syntax-table): Define syntax for ?$ and ?%. * test/lisp/textmodes/css-mode-tests.el (css-test-property-values): Update. (css-test-rgb-parser, css-test-hsl-parser) (css-test-named-color): New tests. * etc/NEWS: Add entry.
* | Fix error in completion for separate Tramp syntaxMichael Albinus2017-05-021-25/+54
| | | | | | | | | | | | | | | | * lisp/net/tramp.el (tramp-completion-file-name-regexp-separate): Tweak regexp. * test/lisp/net/tramp-tests.el (tramp-test24-file-name-completion): Run method and host name completion for all syntaxes.
* | Warn about missing backslashes during loadPhilipp Stephani2017-05-011-0/+23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * src/lread.c (load_warn_unescaped_character_literals, Fload, read1) (syms_of_lread): Warn if unescaped character literals are found (Bug#20152). * lisp/emacs-lisp/bytecomp.el (byte-compile-from-buffer): Check for unescaped character literals during byte compilation. * test/src/lread-tests.el (lread-tests--unescaped-char-literals): New unit test. (lread-tests--with-temp-file, lread-tests--last-message): Helper functions for unit test. * test/lisp/emacs-lisp/bytecomp-tests.el (bytecomp-tests--unescaped-char-literals): New unit test. * test/lisp/emacs-lisp/bytecomp-tests.el (bytecomp-tests--with-temp-file): Helper macro for unit test.
* | Tweak vc-tests.el for bzrGlenn Morris2017-05-011-2/+9
| | | | | | | | | | * test/lisp/vc/vc-tests.el (vc-test--working-revision): Handle test environments where HOME does not exist.
* | Fix filenotify-tests.el for cygwinMichael Albinus2017-05-011-1/+3
| | | | | | | | | | | | | | * test/lisp/filenotify-tests.el (file-notify--test-read-event): Add an additional `sit-for'. (file-notify-test02-rm-watch): Add an additional `file-notify--test-read-event' call.
* | ; Tighten up vc-state tests, allowed by the previous changeDmitry Gutov2017-05-011-5/+8
| |
* | * test/lisp/auth-source-pass-tests.el: Fix loading of cl-lib.Glenn Morris2017-04-271-1/+1
| |
* | ; Fix copyright and license notice in recent additionsGlenn Morris2017-04-271-5/+5
| |
* | auth-source-pass: Add documentation; fix tests and indentation.Damien Cassou2017-04-271-127/+116
| | | | | | | | | | | | | | | | * doc/misc/auth.texi: Document new integration with Pass. Use @itemize instead of @enumerate. * lisp/auth-source-pass.el: Fix indentation. (auth-source-pass--remove-directory-name): Remove. * test/lisp/auth-source-pass-tests.el: Adjust test macros.
* | auth-source-pass: Enable finding entries by "host/username"foudfou2017-04-271-6/+10
| | | | | | | | | | * lisp/auth-source-pass.el: Enable finding entries by "host/username". * test/lisp/auth-source-pass-tests.el: Adjust tests to check it.
* | Integrate auth-source with password-storeDamien Cassou2017-04-271-0/+234
| | | | | | | | | | | | * lisp/auth-source-pass.el: auth-source backend for password-store. * test/lisp/auth-source-pass-tests.el: Tests for auth-source-pass behavior.
* | auth-source: factor out parsers and add testsTed Zlatanov2017-04-271-18/+27
| | | | | | | | | | * lisp/auth-source.el: Factor out the source parsers. Clean up comments. * test/lisp/auth-source-tests.el: Add tests.
* | Drop face from hi-lock--unused-faces only when usedTino Calancha2017-04-271-0/+40
| | | | | | | | | | | | * lisp/hi-lock.el (hi-lock-set-pattern): If REGEXP is already highlighted, then push FACE into hi-lock--unused-faces (Bug#26666). * test/lisp/hi-lock-tests.el (hi-lock-bug26666): Add test.
* | Suppress intermittent test failure on hydraGlenn Morris2017-04-251-0/+3
| | | | | | | | | | * test/lisp/emacs-lisp/eieio-tests/eieio-test-methodinvoke.el (eieio-test-method-order-list-6): Skip on hydra.
* | Add missing remappings for Ido modePhilipp Stephani2017-04-231-0/+47
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Among others, add a remapping for C-x 4 d, cf. Bug#26360. * lisp/ido.el (ido-mode): Remap missing commands. (ido-file-internal, ido-visit-buffer): Add support for new methods. (ido-display-buffer-other-frame) (ido-find-alternate-file-other-window, ido-dired-other-window) (ido-dired-other-frame): New commands. * test/lisp/ido-tests.el (ido-tests--other-window-frame): Add unit test for the bindings.
* | Don't reparse the sexp in indent-sexp (Bug#25122)Noam Postavsky2017-04-221-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | * lisp/emacs-lisp/lisp-mode.el (calculate-lisp-indent): Let PARSE-START be a parse state that can be reused. (indent-sexp): Pass the running parse state to calculate-lisp-indent instead of the sexp beginning position. Saving the CONTAINING-SEXP-START returned by `calculate-lisp-indent' is no longer needed. Don't bother stopping if we don't descend below init-depth, since we now alway scan the whole buffer (via syntax-ppss) anyway. * test/lisp/emacs-lisp/lisp-mode-tests.el (indent-sexp): Add blank line to test case.
* | Add cond test cases for singleton clauses.Vibhav Pant2017-04-221-1/+7
| | | | | | | | | | * test/lisp/emacs-lisp/bytecomp-tests.el: Add test cond forms where the default clause is a single non-nil expression.
* | ffap: Don't switch window unless neededPhilipp Stephani2017-04-221-0/+13
| | | | | | | | | | | | | | | | | | | | When using ffap-other-window, don't change the window configuration unless a new buffer has actually been created (Bug#25352). * lisp/ffap.el (ffap-other-frame): Don't change the window configuration if no new buffer has been created. * test/lisp/ffap-tests.el (ffap-other-window--bug-25352): Add unit test.
* | * lisp/emacs-lisp/cl-macs.el: Fix symbol-macroletStefan Monnier2017-04-211-1/+0
|/ | | | | | | | | Revert 0d112c00ba0ec14bd3014efcd3430b9ddcfe1fc1 (to fix bug#26325) and use a different fix for bug#26068. (cl--symbol-macro-key): New function. (cl--sm-macroexpand, cl-symbol-macrolet): Use it instead of `symbol-name`. * test/lisp/emacs-lisp/cl-lib-tests.el (cl-lib-symbol-macrolet): Failure is not expected any more.