rnkovacs added a comment.

I run the check on LLVM-Clang, and got this one hit:

  
/home/reka/codechecker_dev_env/llvm/lib/CodeGen/SelectionDAG/LegalizeVectorOps.cpp:1000:43:
 warning: integer division; possible precision loss [bugprone-integer-division]
    SDValue TWOHW = DAG.getConstantFP(1 << (BW / 2), DL, Op.getValueType());
                                            ^

It warns because `getConstantFP()` expects a floating-point value as its first 
argument. Still seems to be a false positive. I might want to add an exception 
for bitshift operators.



================
Comment at: docs/clang-tidy/checks/bugprone-integer-division.rst:21-24
+  // Do not warn, there are signs of deliberateness.
+  sin(abs(3) / 5);
+  sin(1 + abs(1 + 7 / 2));
+  1 << 2 / 3;
----------------
alexfh wrote:
> I'd argue that the presence of `abs` here doesn't add any signal, since the 
> function has overloads both for integer and floating point types.
Well, I meant specifically the above declared function, but you're right, the 
naming was misleading, so I changed that.

To be honest, this check doesn't work for most of the std math functions 
involving template magic. Custom user-defined functions could be mainly 
targeted.


https://reviews.llvm.org/D35932



_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to