BIF fpclassify has the wrong number of integer parameters specified in Builtins.def. There should be 5 int parameters (each representing the values FP_NAN, FP_INFINITE, FP_NORMAL, FP_SUBNORMAL and FP_ZERO) but Builtins.def previously specified 4.
Details
Details
Diff Detail
Diff Detail
Event Timeline
Comment Actions
__builtin_fpclassify takes five int arguments followed by one last argument that is of floating point type. Do you know if there is a way to specify the last one argument is a floating point rather than using '.'?
Comment Actions
There is already code in clang/lib/Sema/SemaChecking.cpp to generate diag::err_typecheck_call_invalid_unary_fp.
Comment Actions
Added test to test/Sema/builtin-unary-fp.c that will fail without the proposed change (without the change, the test will -not- attempt to implicitly cast the 5th parameter to int).