Those who are interested in the code analysis technology most likely have heard about our library VivaCore. It is this library our static analyzer PVS-Studio is based on. Earlier one could download the library from our site, but we have removed it recently and do not distribute it any more.
If you want to try this library or deal with building C/C++/C++11 code analysis systems in general, you can write to us. We are ready to develop a solution in the sphere of code analysis based on the library to order. Such solutions are rather complex and one need to have experience in handling such libraries. We can provide you with this experience in the form of our team on contract terms. You cannot simply download and use this library, since it is impossible without our support, while we cannot afford supporting an open source library without being paid for it.
VivaCore. The library of code parsing, analysis and transformation developed by OOO "Program Verification Systems". VivaCore is an open library and supports C/C++/C++11. The library is written in C++ and implemented as a project for Visual Studio 2012. VivaCore is built on the basis of OpenC++ (OpenCxx) which is currently not developed. VivaCore can do everything what OpenCxx can and has some more features:
- Classical C is supported.
- We have implemented the support for the standard C++11 at the level it was done in Visual Studio 2012. Now it supports lambda expressions, auto, decltype, static_assert, nullptr, etc.
- Support of specific C++ syntax used while developing in Visual Studio 2005/2008/2010/2012 environment is provided.
- Support of specific C++ syntax used while developing in Embarcadero RAD Studio 2009/2010/XE/XE2/XE3 environment is provided.
- Some new key words and other constructions present in the new language standards are supported.
- Calculating values of literal constants is implemented.
- The library is adapted and optimized for 64-bit systems.
- A lot of errors and defects are corrected.
- A mechanism of initial preprocessing of the source text, allowing you to implement some specific code modifications, is created.
- Coding of complex types taking more than 127 symbols in coded form is supported.
- A simple project (for Visual Studio 2010) demonstrating the main principles of VivaCore library's usage is created.
- #pragma directives are supported
- And so on.
It is on the basis of VivaCore Library that PVS-Studio analyzer is implemented. Besides, OOO "Program Verification Systems" suggests creating specialized solutions in the sphere of source code analysis and processing on the basis of VivaCore library for third-party clients.
The product's page: http://www.viva64.com/en/vivacore-library/.
- Andrey Karpov, Evgeniy Ryzhkov. The essence of the code analysis library VivaCore.
- VivaCore. FAQ.
- Andrey Karpov. How VivaCore library appeared.