delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp-workers/2003/09/30/10:31:05

X-Authentication-Warning: delorie.com: mail set sender to djgpp-workers-bounces using -f
From: Kbwms AT aol DOT com
Message-ID: <1e4.10a8dd0f.2caaed7f@aol.com>
Date: Tue, 30 Sep 2003 10:30:23 EDT
Subject: Re: K. B. Williams's comparison macros [PATCH]
To: djgpp-workers AT delorie DOT com
MIME-Version: 1.0
X-Mailer: 8.0 for Windows sub 6015
Reply-To: djgpp-workers AT delorie DOT com

--part1_1e4.10a8dd0f.2caaed7f_boundary
Content-Type: text/plain; charset="US-ASCII"
Content-Transfer-Encoding: 7bit

In a message dated 9/30/2003 9:00:40 AM Eastern Standard Time, 
Martin DOT Stromberg AT epl DOT ericsson DOT se writes:

> >+#define   isgreater(x,y)     __builtin_isgreater(x,y)
> >+#define   isgreaterequal(x,y)   __builtin_isgreaterequal(x,y)
> ...
> 
> I'm not sure but this doesn't look to me like an implementation but a
> definite not implemented here.
> 

These macros satisfy requirements of C99 and are described in the info file 
for GCC as follows:

   GCC provides built-in versions of the ISO C99 floating point
comparison macros that avoid raising exceptions for unordered operands.
They have the same names as the standard macros ( `isgreater',
`isgreaterequal', `isless', `islessequal', `islessgreater', and
`isunordered') , with `__builtin_' prefixed.  We intend for a library
implementor to be able to simply `#define' each standard macro to its
built-in equivalent.


KB Williams

--part1_1e4.10a8dd0f.2caaed7f_boundary
Content-Type: text/html; charset="US-ASCII"
Content-Transfer-Encoding: quoted-printable

<HTML><FONT FACE=3Darial,helvetica><FONT  SIZE=3D3 FAMILY=3D"SERIF" FACE=3D"=
Georgia" LANG=3D"0">In a message dated 9/30/2003 9:00:40 AM Eastern Standard=
 Time, Martin DOT Stromberg AT epl DOT ericsson DOT se writes:<BR>
<BR>
<BLOCKQUOTE TYPE=3DCITE style=3D"BORDER-LEFT: #0000ff 2px solid; MARGIN-LEFT=
: 5px; MARGIN-RIGHT: 0px; PADDING-LEFT: 5px"></FONT><FONT  COLOR=3D"#000000"=
 style=3D"BACKGROUND-COLOR: #ffffff" SIZE=3D2 FAMILY=3D"SANSSERIF" FACE=3D"A=
rial" LANG=3D"0">&gt;+#define&nbsp;&nbsp; isgreater(x,y)&nbsp;&nbsp;&nbsp;&n=
bsp; __builtin_isgreater(x,y)<BR>
&gt;+#define&nbsp;&nbsp; isgreaterequal(x,y)&nbsp;&nbsp; __builtin_isgreater=
equal(x,y)<BR>
...<BR>
<BR>
I'm not sure but this doesn't look to me like an implementation but a<BR>
definite not implemented here.<BR>
</BLOCKQUOTE><BR>
</FONT><FONT  COLOR=3D"#000000" style=3D"BACKGROUND-COLOR: #ffffff" SIZE=3D3=
 FAMILY=3D"SERIF" FACE=3D"Georgia" LANG=3D"0"><BR>
These macros satisfy requirements of C99 and are described in the info file=20=
for GCC as follows:<BR>
<BR>
&nbsp;&nbsp; GCC provides built-in versions of the ISO C99 floating point<BR=
>
comparison macros that avoid raising exceptions for unordered operands.<BR>
They have the same names as the standard macros ( `isgreater',<BR>
`isgreaterequal', `isless', `islessequal', `islessgreater', and<BR>
`isunordered') , with `__builtin_' prefixed.&nbsp; We intend for a library<B=
R>
implementor to be able to simply `#define' each standard macro to its<BR>
built-in equivalent.<BR>
<BR>
<BR>
KB Williams</FONT></HTML>

--part1_1e4.10a8dd0f.2caaed7f_boundary--

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019