Add a workaround to recognise I/_Complex_I as complex arguments. Although
the GCC manual claims that the expression 1.0fi has type float _Complex, __builtin_types_compatible_p(float _Complex, __typeof__(1.0fi))) yields 0.
This commit is contained in:
parent
a551dea2a8
commit
6549b8a280
Notes:
svn2git
2020-12-20 02:59:44 +00:00
svn path=/head/; revision=134736
@ -64,7 +64,8 @@
|
|||||||
#define __tg_is_complex(e1, e2, e3) \
|
#define __tg_is_complex(e1, e2, e3) \
|
||||||
(__tg_type3(e1, e2, e3, float _Complex) || \
|
(__tg_type3(e1, e2, e3, float _Complex) || \
|
||||||
__tg_type3(e1, e2, e3, double _Complex) || \
|
__tg_type3(e1, e2, e3, double _Complex) || \
|
||||||
__tg_type3(e1, e2, e3, long double _Complex))
|
__tg_type3(e1, e2, e3, long double _Complex)) || \
|
||||||
|
__tg_type3(e1, e2, e3, __typeof__(_Complex_I))
|
||||||
|
|
||||||
#define __tg_impl_simple(x, y, z, fn, fnf, fnl, ...) \
|
#define __tg_impl_simple(x, y, z, fn, fnf, fnl, ...) \
|
||||||
__builtin_choose_expr(__tg_type_corr(x, y, z, long double), \
|
__builtin_choose_expr(__tg_type_corr(x, y, z, long double), \
|
||||||
|
Loading…
Reference in New Issue
Block a user