From a9c2294eef0b4d7e7bcf6155ecb46b25703a80eb Mon Sep 17 00:00:00 2001 From: Rich Felker Date: Wed, 17 Dec 2014 16:47:34 -0500 Subject: [PATCH] make the definition of _Complex_I explicitly complex it's unclear whether compilers which provide pure imaginary types might produce a pure imaginary expression for 1.0fi. using 0.0f+1.0fi ensures that the result is explicitly complex and makes this obvious to human readers too. --- include/complex.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/include/complex.h b/include/complex.h index bdddf87b..4d21728e 100644 --- a/include/complex.h +++ b/include/complex.h @@ -7,9 +7,9 @@ extern "C" { #define complex _Complex #ifdef __GNUC__ -#define _Complex_I (__extension__ 1.0fi) +#define _Complex_I (__extension__ (0.0f+1.0fi)) #else -#define _Complex_I 1.0fi +#define _Complex_I (0.0f+1.0fi) #endif #define I _Complex_I -- 2.25.1