summaryrefslogtreecommitdiff
path: root/doc
diff options
context:
space:
mode:
authorDmitry Gutov <dmitry@gutov.dev>2023-05-06 03:41:54 +0300
committerDmitry Gutov <dmitry@gutov.dev>2023-05-06 03:41:54 +0300
commit0c6311386a12560c6578ffe50996c1f2c841ddfe (patch)
tree9d607340c827e809c61c194cfd65cbc89778dd55 /doc
parent3baab6c432b7763f5435a0f4ffb055d2e33fab69 (diff)
parent79a886ba36837c0e13d83172ab33c1c2680c6e62 (diff)
downloademacs-0c6311386a12560c6578ffe50996c1f2c841ddfe.tar.gz
Merge from origin/emacs-29
79a886ba368 (package-upgrade): Don't remove the package from 'package... c0ab4e9ca93 Eglot: re-rename eglot-upgrade to eglot-upgrade-eglot b4e90070f96 Fix arguments of xml.c functions as displayed in Help buf... b1bda8228e5 More fixes for NetBSD/vax a2d4cd06f45 Improve VHDL mode highlighting 2f3a514b6db Clarify documentation wrt floating point division by zero... 94e984e6700 Make loaddefs-generate slightly more tolerant aba41d2c4bb ; Minor doc cleanups in go-ts-mode.el b42ccb2e5c1 ; Minor grammar fix in treesit manual. ab44c8a6f9d Fix order of rcirc-connect arguments 8eb6e33691d Fix rcirc messages printing in the wrong place 2901a3443c7 Prevent unnecessary modifications of 'package-vc-selected... eaad302bd6f Rename eglot-update to eglot-upgrade eaf25b9c6ae go-ts-mode: Use iota query only if supported (Bug#63086) cc090294d77 (rng-complete-tag): Add the (ignored) argument to the :co... 21ec6c1d5cc Update to Transient v0.3.7-219-g3ded15b 8d5aa8df4ad Fix inserting selection data into Mozilla programs 57562c3fd0a Recognize defstruct slot names in various eieio functions b93eb68cc30 Use 'calendar-buffer' instead of fixed string # Conflicts: # etc/EGLOT-NEWS
Diffstat (limited to 'doc')
-rw-r--r--doc/lispref/modes.texi2
-rw-r--r--doc/lispref/numbers.texi39
-rw-r--r--doc/misc/eglot.texi4
3 files changed, 29 insertions, 16 deletions
diff --git a/doc/lispref/modes.texi b/doc/lispref/modes.texi
index fd497d14f63..f1d0c41dfe4 100644
--- a/doc/lispref/modes.texi
+++ b/doc/lispref/modes.texi
@@ -4155,7 +4155,7 @@ Other keywords are optional:
@end multitable
Lisp programs mark patterns in @var{query} with capture names (names
-that starts with @code{@@}), and tree-sitter will return matched nodes
+that start with @code{@@}), and tree-sitter will return matched nodes
tagged with those same capture names. For the purpose of
fontification, capture names in @var{query} should be face names like
@code{font-lock-keyword-face}. The captured node will be fontified
diff --git a/doc/lispref/numbers.texi b/doc/lispref/numbers.texi
index 9bfb771fc07..3e45aa90fda 100644
--- a/doc/lispref/numbers.texi
+++ b/doc/lispref/numbers.texi
@@ -219,17 +219,25 @@ creates huge integers.
@cindex @acronym{IEEE} floating point
Floating-point numbers are useful for representing numbers that are
-not integral. The range of floating-point numbers is
-the same as the range of the C data type @code{double} on the machine
-you are using. On all computers supported by Emacs, this is
-@acronym{IEEE} binary64 floating point format, which is standardized by
-@url{https://standards.ieee.org/standard/754-2019.html,,IEEE Std 754-2019}
-and is discussed further in David Goldberg's paper
+not integral. The range of floating-point numbers is the same as the
+range of the C data type @code{double} on the machine you are using.
+On almost all computers supported by Emacs, this is @acronym{IEEE}
+binary64 floating point format, which is standardized by
+@url{https://standards.ieee.org/standard/754-2019.html,,IEEE Std
+754-2019} and is discussed further in David Goldberg's paper
``@url{https://docs.oracle.com/cd/E19957-01/806-3568/ncg_goldberg.html,
-What Every Computer Scientist Should Know About Floating-Point Arithmetic}''.
-On modern platforms, floating-point operations follow the IEEE-754
-standard closely; however, results are not always rounded correctly on
-some obsolescent platforms, notably 32-bit x86.
+What Every Computer Scientist Should Know About Floating-Point
+Arithmetic}''. On modern platforms, floating-point operations follow
+the IEEE-754 standard closely; however, results are not always rounded
+correctly on some systems, notably 32-bit x86.
+
+ On some old computer systems, Emacs may not use IEEE floating-point.
+We know of one such system on which Emacs runs correctly, but does not
+follow IEEE-754: the VAX running NetBSD using GCC 10.4.0, where the
+VAX @samp{D_Floating} format is used instead. IBM System/370-derived
+mainframes and their XL/C compiler are also capable of utilizing a
+hexadecimal floating point format, but Emacs has not yet been built in
+such a configuration.
The read syntax for floating-point numbers requires either a decimal
point, an exponent, or both. Optional signs (@samp{+} or @samp{-})
@@ -262,6 +270,10 @@ two NaNs as equal when their
signs and significands agree. Significands of NaNs are
machine-dependent, as are the digits in their string representation.
+ NaNs are not available on systems which do not use IEEE
+floating-point arithmetic; if the read syntax for a NaN is used on a
+VAX, for example, the reader signals an error.
+
When NaNs and signed zeros are involved, non-numeric functions like
@code{eql}, @code{equal}, @code{sxhash-eql}, @code{sxhash-equal} and
@code{gethash} determine whether values are indistinguishable, not
@@ -742,9 +754,10 @@ by rounding the quotient towards zero after each division.
@cindex @code{arith-error} in division
If you divide an integer by the integer 0, Emacs signals an
-@code{arith-error} error (@pxref{Errors}). Floating-point division of
-a nonzero number by zero yields either positive or negative infinity
-(@pxref{Float Basics}).
+@code{arith-error} error (@pxref{Errors}). On systems using IEEE-754
+floating-point, floating-point division of a nonzero number by zero
+yields either positive or negative infinity (@pxref{Float Basics});
+otherwise, an @code{arith-error} is signaled as usual.
@end defun
@defun % dividend divisor
diff --git a/doc/misc/eglot.texi b/doc/misc/eglot.texi
index 542a4259d66..962e6c914ce 100644
--- a/doc/misc/eglot.texi
+++ b/doc/misc/eglot.texi
@@ -1307,8 +1307,8 @@ Eglot, use @kbd{M-x package-install}.
Often, a newer Eglot version exists that has fixed a longstanding bug,
has more LSP features, or just better supports a particular language
server. Recent Eglot versions can self-update via the command
-@kbd{M-x eglot-update}. This will replace any currently installed
-version with the newest one available from the ELPA archives
+@kbd{M-x eglot-upgrade-eglot}. This will replace any currently
+installed version with the newest one available from the ELPA archives
configured in @code{package-archives}.
You can also update Eglot through other methods, such as