[PATCH 7/9] math.h: add wrappers for the missing finite() functions

Bernhard Reutner-Fischer rep.dot.nop at gmail.com
Fri Mar 29 12:48:14 UTC 2013


On Fri, Sep 21, 2012 at 05:29:17PM +0200, Florian Fainelli wrote:
> From: Felix Fietkau <nbd at openwrt.org>
> 
> Signed-off-by: Felix Fietkau <nbd at openwrt.org>
> ---
>  include/math.h |    7 ++++++-
>  1 file changed, 6 insertions(+), 1 deletion(-)
> 
> diff --git a/include/math.h b/include/math.h
> index d3f86f9..4995b55 100644
> --- a/include/math.h
> +++ b/include/math.h
> @@ -195,7 +195,7 @@ extern int signgam;
>  
>  
>  /* ISO C99 defines some generic macros which work on any data type.  */
> -#ifdef __USE_ISOC99
> +#if defined(__USE_ISOC99) || defined(__USE_BSD)
>  
>  /* Get the architecture specific values describing the floating-point
>     evaluation.  The following symbols will get defined:
> @@ -315,6 +315,11 @@ enum
>  
>  #endif /* Use ISO C99.  */
>  
> +/* BSD compat */

Does that work proper for __NO_LONG_DOUBLE_MATH ?
Missing __USE_BSD guard?
Can't you just define them to isfinite?

thanks,
> +#define finite(x) __finite(x)
> +#define finitef(x) __finitef(x)
> +#define finitel(x) __finitel(x)
> +
>  #ifdef	__USE_MISC
>  /* Support for various different standard error handling behaviors.  */
>  typedef enum


More information about the uClibc mailing list