Static source code analysis tools for C, C++ and C# languages
Start of project – 2001. Customer - Klocwork a Rogue Wave Company.
A joint project between the program analysis group and Klocwork, a Rogue Wave Company (previously Klocwork Inc.) focuses on the development of a tool set for static source code analysis for extensive (over 1 million SLOC) C, C++ and C# projects.
ISP RAS major contributions within the project include the following:
- C and C++ compiler front end providing support for language extensions featured in GCC, Microsoft C++ Compiler, Green Hills, CodeWarrior and other compilers;
- An extensive set of checker tools designed to perform automatic high-precision detection of critical runtime errors in target source code (including such common defects as null pointer dereference, array index overflow, buffer overflow and others);
- A set of checker tools designed to automatically identify deviations from software development guidelines (such as MISRA);
- KAST, a defect description language operating on program parse tree templates;
- C and C++ automatic refactoring framework.
Project participants are engaged in continuous research focused on automatic defect detection methods. Acquired knowledge and experience is used to enhance and extend Klocwork compiler and static source code analysis infrastructure maintaining quality standards for software development and allowing Klocwork products to successfully compete with state-of-the-art software programming tools.