Coderrect Release Notes
- bcPaths will search all sub-directories for BC files.
- -e switch will avoid to create BC files for executables not in the list. This can speed up the build process and save disk space for projects with hundreds of tests.
- The Coderrect team announces a new version of Coderrect, a super fast, precise and scalable static race detector. Coderrect software can be downloaded from the download page.
- Coderrect software is under an evaluation license.
- For more information about Coderrect, start with the product page. If you have questions or comments, please send us an email.
- Release 0.9.1 includes some small refinements to improve race detection accuracy
What’s New in V0.9.0
- Better Fortran module support and syntax compatibility.
- Incremental race comparison.
- Configuration can include other configuration files using the keyword ‘include’.
- Configuration supports ‘@’ to merge values of the same key from multiple configuration files.
- Function-oriented thread API profile (tutorial).
- Upgrade to clang/llvm-10.
- More complete call stack for inlined functions
- Improved detection accuracy on C++ vector operations
- Reentrant deadlock detection
Minimum System Requirements
- Ubuntu 14+
- CentOS 7+
- Debian 8+
4GB+ RAM (recommended)
Previous Release Notes
The latest 0.8.1 release allows the Coderrect Scanner to handle a wider variety of build environments.
Although the Coderrect Scanner uses clang internally, release 0.8.1 introduces preliminary support for analyzing projects that are built by other compilers, like icc or icpc, that use flags not recognized by clang.
- Support Fortran (90, 95, and 2003), see tutorial.
- Support more OpenMP (4.5 and 5) features including sections, tasks and taskgroup.
- Support static array bound verification.
- Optimize detection performance and accuracy for both Pthreads and OpenMP races.
- Allow the user to register open-source projects in our OpenScan page.
- Detect multithreaded TOCTOU issues (see tutorial).
- Better OpenMP array indirect analysis.
- Allow the user to configure customized lock-unlock functions (see the tutorial)
- Allow the user to configure non-parallel functions (see the tutorial).
- Cleanup configurations (see the complete configuration manual).
- Allow Coderrect to continue analysis even when it encounters build errors.
- Optimize detection performance.
- Support C++11 std::thread APIs.
- Support C++ standard container APIs.
- Add Exhaust mode (option “-mode=exhaust”) to exhaustively detect all possible races aiming for full coverage (checkout the tutorial).
- Add Fast mode (option “-mode=fast”) to detect races as fast as possible aiming for faster detection speed (checkout the tutorial).
- Support Ubuntu 20.04 and other Linux distributions shipped with libtinfo.6. (for older versions the libtinfo issue has been resolved)
- Support Github CI/CD integration (experimental, checkout the tutorial).
- Support Jenkins CI/CD integration (experimental, checkout the tutorial).
- The race report shows the data structure field involved in a data race.
- The race report records the configuration settings.
- Support user specified lock/unlock APIs (checkout the tutorial)
- Support analyzing multiple binaries generated by a project (checkout the tutorial).