* [Emacs-diffs] master 1d2df2f: Improve bignum comparison
@ 2018-08-22 14:48 Eli Zaretskii
2018-08-22 15:06 ` Paul Eggert
0 siblings, 1 reply; 4+ messages in thread
From: Eli Zaretskii @ 2018-08-22 14:48 UTC (permalink / raw)
To: Paul Eggert; +Cc: emacs-devel
This commit does this:
* src/data.c (isnan): Remove, as we can assume C99.
We indeed assume a C99 compliant compiler, but not necessarily a C99
compliant library. Does the above assumption still valid if the
library is not C99-compliant?
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [Emacs-diffs] master 1d2df2f: Improve bignum comparison
2018-08-22 14:48 [Emacs-diffs] master 1d2df2f: Improve bignum comparison Eli Zaretskii
@ 2018-08-22 15:06 ` Paul Eggert
2018-08-22 15:51 ` Eli Zaretskii
0 siblings, 1 reply; 4+ messages in thread
From: Paul Eggert @ 2018-08-22 15:06 UTC (permalink / raw)
To: Eli Zaretskii; +Cc: emacs-devel
Eli Zaretskii wrote:
> This commit does this:
>
> * src/data.c (isnan): Remove, as we can assume C99.
>
> We indeed assume a C99 compliant compiler, but not necessarily a C99
> compliant library. Does the above assumption still valid if the
> library is not C99-compliant?
Other parts of Emacs have been assuming isnan since July, so this should be safe
here.
In practice isnan support is universal nowadays in the non-Microsoft world, and
even MSVC has it, as I understand it. If there are problems (when compiling for
MS-Windows 95, say?) we can fix them by doing something like adding "#define
isnan _isnan" in src/w32.h. It's better to isolate portability hacks to
platform-specific code, when the problem is platform-specific.
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [Emacs-diffs] master 1d2df2f: Improve bignum comparison
2018-08-22 15:06 ` Paul Eggert
@ 2018-08-22 15:51 ` Eli Zaretskii
2018-08-22 16:47 ` Paul Eggert
0 siblings, 1 reply; 4+ messages in thread
From: Eli Zaretskii @ 2018-08-22 15:51 UTC (permalink / raw)
To: Paul Eggert; +Cc: emacs-devel
> Cc: emacs-devel@gnu.org
> From: Paul Eggert <eggert@cs.ucla.edu>
> Date: Wed, 22 Aug 2018 08:06:34 -0700
>
> In practice isnan support is universal nowadays in the non-Microsoft world, and
> even MSVC has it, as I understand it. If there are problems (when compiling for
> MS-Windows 95, say?) we can fix them by doing something like adding "#define
> isnan _isnan" in src/w32.h. It's better to isolate portability hacks to
> platform-specific code, when the problem is platform-specific.
I wasn't worried about MSVC or Windows (there are no problems there),
I was worried about a more general assumption of a C99 library. I
didn't think we assume that yet.
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [Emacs-diffs] master 1d2df2f: Improve bignum comparison
2018-08-22 15:51 ` Eli Zaretskii
@ 2018-08-22 16:47 ` Paul Eggert
0 siblings, 0 replies; 4+ messages in thread
From: Paul Eggert @ 2018-08-22 16:47 UTC (permalink / raw)
To: Eli Zaretskii; +Cc: emacs-devel
Eli Zaretskii wrote:
> I wasn't worried about MSVC or Windows (there are no problems there),
Good to know.
> I was worried about a more general assumption of a C99 library. I
> didn't think we assume that yet.
Although we don't assume full C99 support in library functions, we do assume
some level of C99 compatibility and isnan should be in the safe camp.
The same is true for the language proper. We don't assume full support for C99
varying-length arrays, for example, and this is independent of the library.
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2018-08-22 16:47 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-08-22 14:48 [Emacs-diffs] master 1d2df2f: Improve bignum comparison Eli Zaretskii
2018-08-22 15:06 ` Paul Eggert
2018-08-22 15:51 ` Eli Zaretskii
2018-08-22 16:47 ` Paul Eggert
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/emacs.git
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.