On 2020-05-23 14:49, Drew Parsons wrote:
On 2020-05-23 14:18, Jed Brown wrote:

I wonder if you are aware of any static analysis tools that can
flag implicit conversions of this sort:

int64_t n = ...;
for (int32_t i=0; i<n; i++) {
  ...
}

There is -fsanitize=signed-integer-overflow (which generates a runtime
error message), but that requires data to cause overflow at every
possible location.

I'll ask the Debian gcc team and the Science team if they have ideas about this.



Hi Jed, Thomas Schiex from Debian Science has replied to this question, suggesting clang-static-analyzer or lgtm:

For open source projects, a few online static analyzers are available and usable for free. This kind of integer type mismach will be caught by most of them. Possibly clang-static-analyzer will do the job. Otherwise, an easy one is lgtm for example. See https://lgtm.com/

(I have no link with them except as an open source software developer using their services for free).

There are other tools (mostly geared towards security) available for free for open source software but I just forgot their name. Any web search tool should help you here.

  Thomas

Reply via email to