mirror of
git://git.sv.gnu.org/emacs.git
synced 2025-12-06 06:20:55 -08:00
I audited use of lsh in the Lisp source code, and fixed the glitches that I found. While I was at it, I replaced uses of lsh with ash when either will do. Replacement is OK when either argument is known to be nonnegative, or when only the low-order bits of the result matter, and is a (minor) win since ash is a bit more solid than lsh nowadays, and is a bit faster. * lisp/calc/calc-ext.el (math-check-fixnum): Prefer most-positive-fixnum to (lsh -1 -1). * lisp/vc/vc-hg.el (vc-hg-state-fast): When testing fixnum width, prefer (zerop (ash most-positive-fixnum -32)) to (zerop (lsh -1 32)) (Bug#32485#11). * lisp/emacs-lisp/bytecomp.el (byte-compile-lapcode): Tighten sanity-check for bytecode overflow, by checking that the result of (ash pc -8) is nonnegative. Formerly this check was not needed since lsh was used and the number overflowed differently. * lisp/net/dns.el (dns-write): Fix some obvious sign typos in shift counts. Evidently this part of the code has never been exercised. * lisp/progmodes/hideif.el (hif-shiftleft, hif-shiftright): * lisp/term/common-win.el (x-setup-function-keys): Simplify. * admin/unidata/unidata-gen.el, admin/unidata/uvs.el: * doc/lispref/keymaps.texi, doc/lispref/syntax.texi: * doc/misc/calc.texi, doc/misc/cl.texi, etc/NEWS.19: * lisp/arc-mode.el, lisp/calc/calc-bin.el, lisp/calc/calc-comb.el: * lisp/calc/calc-ext.el, lisp/calc/calc-math.el: * lisp/cedet/semantic/wisent/comp.el, lisp/composite.el: * lisp/disp-table.el, lisp/dos-fns.el, lisp/edmacro.el: * lisp/emacs-lisp/bindat.el, lisp/emacs-lisp/byte-opt.el: * lisp/emacs-lisp/bytecomp.el, lisp/emacs-lisp/cl-extra.el: * lisp/erc/erc-dcc.el, lisp/facemenu.el, lisp/gnus/message.el: * lisp/gnus/nndoc.el, lisp/gnus/nnmaildir.el, lisp/image.el: * lisp/international/ccl.el, lisp/international/fontset.el: * lisp/international/mule-cmds.el, lisp/international/mule.el: * lisp/json.el, lisp/mail/binhex.el, lisp/mail/rmail.el: * lisp/mail/uudecode.el, lisp/md4.el, lisp/net/dns.el: * lisp/net/ntlm.el, lisp/net/sasl.el, lisp/net/socks.el: * lisp/net/tramp.el, lisp/obsolete/levents.el: * lisp/obsolete/pgg-parse.el, lisp/org/org.el: * lisp/org/ox-publish.el, lisp/progmodes/cc-defs.el: * lisp/progmodes/ebnf2ps.el, lisp/progmodes/hideif.el: * lisp/ps-bdf.el, lisp/ps-print.el, lisp/simple.el: * lisp/tar-mode.el, lisp/term/common-win.el: * lisp/term/tty-colors.el, lisp/term/xterm.el, lisp/vc/vc-git.el: * lisp/vc/vc-hg.el, lisp/x-dnd.el, test/src/data-tests.el: Prefer ash to lsh when either will do. |
||
|---|---|---|
| .. | ||
| ChangeLog.1 | ||
| ob-abc.el | ||
| ob-asymptote.el | ||
| ob-awk.el | ||
| ob-C.el | ||
| ob-calc.el | ||
| ob-clojure.el | ||
| ob-comint.el | ||
| ob-coq.el | ||
| ob-core.el | ||
| ob-css.el | ||
| ob-ditaa.el | ||
| ob-dot.el | ||
| ob-ebnf.el | ||
| ob-emacs-lisp.el | ||
| ob-eval.el | ||
| ob-exp.el | ||
| ob-forth.el | ||
| ob-fortran.el | ||
| ob-gnuplot.el | ||
| ob-groovy.el | ||
| ob-haskell.el | ||
| ob-hledger.el | ||
| ob-io.el | ||
| ob-J.el | ||
| ob-java.el | ||
| ob-js.el | ||
| ob-keys.el | ||
| ob-latex.el | ||
| ob-ledger.el | ||
| ob-lilypond.el | ||
| ob-lisp.el | ||
| ob-lob.el | ||
| ob-lua.el | ||
| ob-makefile.el | ||
| ob-matlab.el | ||
| ob-maxima.el | ||
| ob-mscgen.el | ||
| ob-ocaml.el | ||
| ob-octave.el | ||
| ob-org.el | ||
| ob-perl.el | ||
| ob-picolisp.el | ||
| ob-plantuml.el | ||
| ob-processing.el | ||
| ob-python.el | ||
| ob-R.el | ||
| ob-ref.el | ||
| ob-ruby.el | ||
| ob-sass.el | ||
| ob-scheme.el | ||
| ob-screen.el | ||
| ob-sed.el | ||
| ob-shell.el | ||
| ob-shen.el | ||
| ob-sql.el | ||
| ob-sqlite.el | ||
| ob-stan.el | ||
| ob-table.el | ||
| ob-tangle.el | ||
| ob-vala.el | ||
| ob.el | ||
| org-agenda.el | ||
| org-archive.el | ||
| org-attach.el | ||
| org-bbdb.el | ||
| org-bibtex.el | ||
| org-capture.el | ||
| org-clock.el | ||
| org-colview.el | ||
| org-compat.el | ||
| org-crypt.el | ||
| org-ctags.el | ||
| org-datetree.el | ||
| org-docview.el | ||
| org-duration.el | ||
| org-element.el | ||
| org-entities.el | ||
| org-eshell.el | ||
| org-eww.el | ||
| org-faces.el | ||
| org-feed.el | ||
| org-footnote.el | ||
| org-gnus.el | ||
| org-habit.el | ||
| org-id.el | ||
| org-indent.el | ||
| org-info.el | ||
| org-inlinetask.el | ||
| org-install.el | ||
| org-irc.el | ||
| org-lint.el | ||
| org-list.el | ||
| org-macro.el | ||
| org-macs.el | ||
| org-mhe.el | ||
| org-mobile.el | ||
| org-mouse.el | ||
| org-pcomplete.el | ||
| org-plot.el | ||
| org-protocol.el | ||
| org-rmail.el | ||
| org-src.el | ||
| org-table.el | ||
| org-timer.el | ||
| org-version.el | ||
| org-w3m.el | ||
| org.el | ||
| ox-ascii.el | ||
| ox-beamer.el | ||
| ox-html.el | ||
| ox-icalendar.el | ||
| ox-latex.el | ||
| ox-man.el | ||
| ox-md.el | ||
| ox-odt.el | ||
| ox-org.el | ||
| ox-publish.el | ||
| ox-texinfo.el | ||
| ox.el | ||