bz#15007: Fix mismatch of guards for qecvt

Andreas Jaeger aj@suse.com
Fri Apr 26 17:15:00 GMT 2013


On 04/11/2013 11:16 PM, Roland McGrath wrote:
> They should not be.  I guess I was not clear.  The status quo is that
> "#ifdef __USE_MISC" appears inside that other condition.  Since __USE_SVID
> implies __USE_MISC, that is redundant.  Furthermore, in the case where
> neither __USE_XOPEN_EXTENDED nor __USE_SVID is defined but __USE_BSD (and
> thus __USE_MISC) is defined, qecvt et al should be declared.  So what I
> said to do was move the "#ifdef __USE_MISC" section outside the other
> conditional.

Like this?

Once this is fixed, I'll update stdlib-ldbl.h,

Andreas

2013-04-26  Andreas Jaeger  <aj@suse.de>

	[BZ #15007]
	* stdlib/stdlib.h: Update guards for qecvt.

diff --git a/stdlib/stdlib.h b/stdlib/stdlib.h
index 4b83944..99a830d 100644
--- a/stdlib/stdlib.h
+++ b/stdlib/stdlib.h
@@ -823,9 +823,9 @@ extern char *fcvt (double __value, int __ndigit, int 
*__restrict __decpt,
     be written to BUF.  */
  extern char *gcvt (double __value, int __ndigit, char *__buf)
       __THROW __nonnull ((3)) __wur;
+#endif

-
-# ifdef __USE_MISC
+#ifdef __USE_MISC
  /* Long double versions of above functions.  */
  extern char *qecvt (long double __value, int __ndigit,
  		    int *__restrict __decpt, int *__restrict __sign)
@@ -854,8 +854,7 @@ extern int qfcvt_r (long double __value, int __ndigit,
  		    int *__restrict __decpt, int *__restrict __sign,
  		    char *__restrict __buf, size_t __len)
       __THROW __nonnull ((3, 4, 5));
-# endif	/* misc */
-#endif	/* use MISC || use X/Open Unix */
+#endif	/* misc */


  __BEGIN_NAMESPACE_STD

-- 
  Andreas Jaeger aj@{suse.com,opensuse.org} Twitter/Identica: jaegerandi
   SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 Nürnberg, Germany
    GF: Jeff Hawn,Jennifer Guild,Felix Imendörffer,HRB16746 (AG Nürnberg)
     GPG fingerprint = 93A3 365E CE47 B889 DF7F  FED1 389A 563C C272 A126



More information about the Libc-alpha mailing list