aaron.ballman added inline comments.
================ Comment at: lib/Sema/SemaChecking.cpp:925 + case Builtin::BI__builtin_signbitl: if (SemaBuiltinFPClassification(TheCall, 1)) return ExprError(); ---------------- lebedev.ri wrote: > The name of the function is unfortunate given that you call it for > `__builtin_signbit(int)`. signbit() is an FP classification macro (see C17 7.12.3 "Classification macros"), so I don't think the name is unfortunate. ================ Comment at: test/Sema/builtins.c:260 + (void)__builtin_signbit(1.0, 2.0, 3.0); // expected-error{{too many arguments to function call, expected 1, have 3}} + (void)__builtin_signbit(1); // expected-error {{floating point classification requires argument of floating point type (passed in 'int')}} + ---------------- lebedev.ri wrote: > lebedev.ri wrote: > > What about > > ``` > > (void)__builtin_signbit(1.0); > > ``` > Hm, is `__builtin_signbit()` taking an integer, or float? > If integer, the comment about `floating point classification` is slightly > misleading. > It accepts a floating-point type. ================ Comment at: test/Sema/builtins.c:268 + (void)__builtin_signbitl(1.0, 2.0, 3.0); // expected-error{{too many arguments to function call, expected 1, have 3}} + (void)__builtin_signbitl(1); +} ---------------- lebedev.ri wrote: > Same, would be good to see `__builtin_signbitf(1.0);`, > `__builtin_signbitf(1.0L);`. It turns out that double and long double were fine, but the promotion from float for this case was a problem. I fixed that as well. https://reviews.llvm.org/D47435 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits