public inbox for libc-alpha@sourceware.org
 help / color / mirror / Atom feed
From: "Gabriel F. T. Gomes" <gftg@linux.vnet.ibm.com>
To: libc-alpha@sourceware.org
Subject: [PATCH 4/8] Add support for testing __STDC_WANT_IEC_60559_TYPES_EXT__
Date: Wed, 09 Nov 2016 18:41:00 -0000	[thread overview]
Message-ID: <1478716859-3246-5-git-send-email-gftg@linux.vnet.ibm.com> (raw)
In-Reply-To: <1478716859-3246-1-git-send-email-gftg@linux.vnet.ibm.com>

From: "Paul E. Murphy" <murphyp@linux.vnet.ibm.com>

This is defined by TS 18661-3 for supporting the _FloatN
and _FloatNx types.

This will also implicitly enforce a minimum GCC 4.9.  Given
the standard is a C11 derivative, it would seem reasonable
to assume a C11 compiler with _Generic support.  This allows
for much simpler type classification macros which in theory
should be supported on any C11 compiler.

	* bits/libc-header-start.h:
	(__GLIBC_USR_IEC_60559_TYPES_EXT): New macro.
---
 bits/libc-header-start.h | 15 +++++++++++++++
 1 file changed, 15 insertions(+)

diff --git a/bits/libc-header-start.h b/bits/libc-header-start.h
index ee6a876..251ff05 100644
--- a/bits/libc-header-start.h
+++ b/bits/libc-header-start.h
@@ -59,3 +59,18 @@
 #else
 # define __GLIBC_USE_IEC_60559_FUNCS_EXT 0
 #endif
+
+/* ISO/IEC TS 18661-3:2014 defines the
+   __STDC_WANT_IEC_60559_TYPES_EXT__ macro.
+
+   Note, as a tradeoff for keeping the headers simple, this will
+   require C11 Generic support.  Thus, GCC 4.9 is mandated when
+   requesting this support and using GCC.  */
+#undef __GLIBC_USE_IEC_60559_TYPES_EXT
+#if (defined __STDC_WANT_IEC_60559_TYPES_EXT__ || defined __USE_GNU)	   \
+   && defined __USE_ISOC11						   \
+   && ((defined __GNUC__ && __GNUC_PREREQ (4, 9)) || !defined __GNUC__)
+# define __GLIBC_USE_IEC_60559_TYPES_EXT 1
+#else
+# define __GLIBC_USE_IEC_60559_TYPES_EXT 0
+#endif
-- 
2.4.11

  parent reply	other threads:[~2016-11-09 18:41 UTC|newest]

Thread overview: 33+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-11-09 18:41 [PATCH 0/8] More float128 declarations Gabriel F. T. Gomes
2016-11-09 18:41 ` [PATCH 7/8] float128: Add private _Float128 declarations for libm Gabriel F. T. Gomes
2016-11-09 22:08   ` Joseph Myers
2016-11-10 22:13   ` Joseph Myers
2016-11-09 18:41 ` [PATCH 2/8] float128: Add _Float128 make bits to libm Gabriel F. T. Gomes
2016-12-09 21:23   ` Tulio Magno Quites Machado Filho
2016-12-12 22:49     ` Joseph Myers
2016-11-09 18:41 ` [PATCH 8/8] float128: Add wrappers to override ldbl-128 as float128 Gabriel F. T. Gomes
2016-11-09 22:13   ` Joseph Myers
2016-11-09 18:41 ` [PATCH 5/8] float128: Add public _Float128 declarations to libm Gabriel F. T. Gomes
2016-11-09 22:04   ` Joseph Myers
2016-11-09 18:41 ` Gabriel F. T. Gomes [this message]
2016-11-09 21:42   ` [PATCH 4/8] Add support for testing __STDC_WANT_IEC_60559_TYPES_EXT__ Joseph Myers
2016-11-09 18:41 ` [PATCH 6/8] float128: Expose _Float128 finite math functions Gabriel F. T. Gomes
2016-11-09 22:06   ` Joseph Myers
2017-03-03 20:17     ` Gabriel F. T. Gomes
2017-03-03 20:50       ` Joseph Myers
2016-11-09 18:41 ` [PATCH 3/8] float128: Add wrappers for IEEE functions Gabriel F. T. Gomes
2016-11-09 21:38   ` Joseph Myers
2016-12-05 16:48     ` Gabriel F. T. Gomes
2016-12-05 18:51       ` Joseph Myers
2016-12-05 22:52         ` Steven Munroe
2016-12-06  0:31           ` Joseph Myers
2016-12-06  2:39             ` Steven Munroe
2016-12-07 19:36         ` Gabriel F. T. Gomes
2016-12-07 21:47           ` Joseph Myers
2016-12-09 21:24             ` Gabriel F. T. Gomes
2016-12-14  0:47               ` Joseph Myers
2016-12-14 13:36                 ` Gabriel F. T. Gomes
2016-12-14 14:33                   ` Joseph Myers
2016-11-09 18:41 ` [PATCH 1/8] ldbl-128: Use mathx_hidden_def inplace of hidden_def Gabriel F. T. Gomes
2016-11-09 21:31 ` [PATCH 0/8] More float128 declarations Joseph Myers
2016-11-09 23:52   ` Joseph Myers

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1478716859-3246-5-git-send-email-gftg@linux.vnet.ibm.com \
    --to=gftg@linux.vnet.ibm.com \
    --cc=libc-alpha@sourceware.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).