download

Coderrect Scanner Download

Your Multithreading Peace of Mind


For Linux, Version 1.0.0, 3/3/2021

Alternative Text

Fast and Detailed Race Detection


Coderrect makes sure that your projects are given detailed reports detailing race errors in your code. The process of going from bug infested code to code barren of data races is easy with Coderrect!

Learn more >





Interation with Github Actions


Developers can now easily run Coderrect on their GitHub projects using GitHub actions. You can search for Coderrect Scanner in the GitHub marketplace to easily scan your code.

Coderrect Github Action >

Alternative Text




Alternative Text

Ranked #1 on Dataracebench


Coderrect was able to rank #1 on DataRaceBench while being a static tool. DRB is built of microbenchmarks whith one code path which gives an advantage to dynamic tools. However, Coderrect Scanner still outperforms them.

Check out DataRaceBench >

Subscribe to our Newsletter?

FAQ

Frequently Asked Questions


Got a question? We've got answers. If you have some other questions, please contact us.

What are pre-requisites to run Coderrect successfully on my project?

Coderrect requires Linux-based OS, such as Ubuntu 14+, and CentOS 7+.  

To run Coderrect, you will need to compile your code successfully without Coderrect. For example, running make/cmake/Ninja/Bazel will build your project without errors.

How does Coderrect work internally?

Coderrect generates an intermediate representation of your source code in the form of LLVM bitcode (BC) files and then performs sophisticated static analyses based on them to find potential race conditions. 

Coderrect produces a single BC file for each build binary (an executable, a static library, or a shared library).

Does Coderrect change my build binaries?

No. Coderrect intercepts your build commands but will not change your build targets. Running Coderrect will generate exactly the same build binaries as w/o Coderrect.

What source languages are supported?

Coderrect has full support for C and C++ source code through GCC/Clang/ICC, and Fortran source code through Flang/GFortran/IFORT.

What compilers are supported?

Coderrect supports most common C/C++ compilers (GCC/Clang/ICC). However, internally Coderrect will use clang to generate LLVM bitcode. So, it may not work if your code does not compile with clang, here is an example showing the difference between clang and gcc.

Coderrect also supports Fortran compilers including Flang/GFortran/IFORT.

Where can I find the output of the code scan results?

Besides the console output, there is an HTML file named index.html generated under ./report directory by default. You can specify the location of the report through “-o <directory>” option on the command line.

What license is Coderrect under?

Coderrect is currently under an Evaluation License, and is subject to change in the future.

I think that I have found a bug, what should I do?

Please contact us (contact@coderrect.com).

What does “Coderrect” mean, and how do you pronounce it?

Coderrect is a created word by combining “Code” and “Correct”.  It simply means code-correct. Coderrect is pronounced code-rect.

What’s Coderrect?

Coderrect is a fast and scalable tool that finds race conditions in complex software.