PVS-Studio static analyzer: advanced features

Slides:



Advertisements
Similar presentations
what is VA? advantages tools a b c what is VA? advantages tools fully integrated architectural plug-in for Rhino 4 powerful feature-based editor to create.
Advertisements

Introduction To Java Objectives For Today â Introduction To Java â The Java Platform & The (JVM) Java Virtual Machine â Core Java (API) Application Programming.
Installing geant4 v9.5 using Windows Daniel Brandt, 06 April 2012 Installing Geant4 v9.5 for Windows A step-by-step guide for Windows XP/Vista/7 using.
SANKHYA ® Varadhi The Digital Bridge TM. (c) Sankhya Technologies Private Limited. All Rights Reserved.2 Varadhi at a glance Object middleware.
ANT: Another Nice Tool Ali Beyad October 1, 2003.
ANT: Another Nice Tool Ali Beyad October 1, 2003.
CompuNet Grid Computing Milena Natanov Keren Kotlovsky Project Supervisor: Zvika Berkovich Lab Chief Engineer: Dr. Ilana David Spring, /
Presented by IBM developer Works ibm.com/developerworks/ 2006 January – April © 2006 IBM Corporation. Making the most of Creating Eclipse plug-ins.
Slide 1 of 9 Presenting 24x7 Scheduler The art of computer automation Press PageDown key or click to advance.
An ide for teaching and learning prolog
Other Features Index and table of contents Macros and VBA.
Building with MPC Charles Calkins Principal Software Engineer Object Computing, Inc.
1 Introduction to Tool chains. 2 Tool chain for the Sitara Family (but it is true for other ARM based devices as well) A tool chain is a collection of.
Chapter 10 EJB Concepts of EJB Three Components in Creating an EJB Starting/Stopping J2EE Server and Deployment Tool Installation and Configuration of.
Submitted by: Madeeha Khalid Sana Nisar Ambreen Tabassum.
Windows CE 시스템 개발 개요. 임베디드시스템소프트웨어 -Windows CE 2 Overview  Selecting a Windows Embedded Operating System  The Windows CE Platform Development Cycle.
Gator Engineering 1 Chapter 2 C Fundamentals Copyright © 2008 W. W. Norton & Company. All rights reserved.
Software Framework for Teleoperated Vehicles Team Eye-Create ECE 4007 L01 Karishma Jiva Ali Benquassmi Safayet Ahmed Armaghan Mahmud Khin Lay Nwe.
ANDROID Presented By Mastan Vali.SK. © artesis 2008 | 2 1. Introduction 2. Platform 3. Software development 4. Advantages Main topics.
Indispensable tools for research at its best Introducing the New Write-N-Cite.
Scalable Game Development William Roberts Senior Game Engineer
Java Introduction to JNI Prepared by Humaira Siddiqui.
Programming in C#. I. Introduction C# (or C-Sharp) is a programming language. C# is used to write software that runs on the.NET Framework. Although C#
Esri UC2013. Technical Workshop. Technical Workshop 2013 Esri International User Conference July 8–12, 2013 | San Diego, California Developing.NET Applications.
Windows CE 시스템 개발 개요. 모바일운영체제 - Windows CE 2 Overview  Selecting a Windows Embedded Operating System  The Windows CE Platform Development Cycle  The.
Technical Overview The Fastest Way to Create Architecture!
XML and Web Services (II/2546)
Presentation Name / 1 Visual C++ Builds and External Dependencies NAME.
August 2003 At A Glance The IRC is a platform independent, extensible, and adaptive framework that provides robust, interactive, and distributed control.
Customer and Partner Connections Design and Develop Assess and Certify.
Top 5 IDE that Simplifies PHP Development Biztech IT Consultancy Pvt. Ltd. | |
Visual Programming Borland Delphi. Developing Applications Borland Delphi is an object-oriented, visual programming environment to develop 32-bit applications.
CMake: Experience in ALICE P. Hristov 19/06/12. History I Recursive makefiles (F.Carminati): – Problems in dependencies – Slow "Recursive Makefiles.
1 RIC 2009 Symbolic Nuclear Analysis Package - SNAP version 1.0: Features and Applications Chester Gingrich RES/DSA/CDB 3/12/09.
Towards a High Performance Extensible Grid Architecture Klaus Krauter Muthucumaru Maheswaran {krauter,
PVS-Studio, a static analyzer detecting errors in the source code of C/C++/C++11 applications.
Arklio Studija 2007 File: / / Page 1 Automated web application testing using Selenium
Getting Started NX Journaling Jeff Roark Yanfeng Automotive Interiors.
TIZEN STUDIO INSTALLATION & ENVIRONMENT SETUP FOR DEVLAB
Fundamental of Databases
Introduction to Visual Basic. NET,. NET Framework and Visual Studio
12/29/2017 2:33 PM © Microsoft Corporation. All rights reserved. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN.
ASP.NET Programming with C# and SQL Server First Edition
Build and Test system for FairRoot
Current Generation Hypervisor Type 1 Type 2.
STEC Solutions for NetApp Environments
INTRODUCING Adams/CHASSIS
A technical look at new capabilities and features
CE-105 Spring 2007 Engr. Faisal ur Rehman
Deploying and Configuring SSIS Packages
Lecture 13 RPM and its advantages.
Chapter 2 Setup.
Design and Consume DataWindows in Visual Studio 2005
Mobile Application Development with MeeGo™ - Programming with SDK
William Roberts Ryan Hipple
Using Visual Studio and VS Code for Embedded C/C++ Development
Tivoli Common Reporting v1.2 Overview
Scrapy Web Cralwer Instructor: Bei Kang.
REAL-TIME, INTERACTIVE DOCUMENT AUTOMATION
Overview Unit testing Building Version control.
Introduction to Web Services
By Rajanikanth B Eclipse IDE Overview By Rajanikanth B
C++ Testing and Classes
Implementing FOP Framework
Working with Libraries
Azure DevTest Labs Overview
Java Code Review with CheckStyle
Overview of System Development for Windows CE.NET
Outcome of the Lecture Upon completion of this lecture you will be able to understand Fundamentals and Characteristics of Java Language Basic Terminology.
STATEL an easy way to transfer data
Presentation transcript:

PVS-Studio static analyzer: advanced features OOO “Program Verification Systems” (Co Ltd) www.viva64.com

Overview of PVS-studio analyzer advanced features: These advanced features can make your life easier when working on a large-scale project or a project with a non-standard build system: Standalone tool Pre-generated preprocessed files Compiler Monitoring Message Suppression MSBuild integration

PVS-Studio Standalone: next step in the evolution of static analyzer tools PVS-Studio Standalone is an IDE/compiler independent tool which allows you to analyze your code and review analysis results. Open and navigate PVS-Studio XML log files (plog) Analyze pre-generated preprocessed files Trace compiler invocations during build process and analyze the code that is being built Completely IDE-independent

Analysis of pre-generated preprocessed files With PVS-Studio Standalone you can analyze C++ preprocessed (intermediate) files regardless of how or where they were generated. Completely build-system independent Preprocessed files can be generated either on Windows or on any other OS Supported preprocessors: Visual C++, GCC, Clang, Borland C++. Specify a common system includes path to exclude system libraries from analysis

Unicorn meets the Tux With PVS-Studio Standalone you can analyze preprocessed files that were generated even on Linux systems!

Compiler Monitoring: tracing of compiler invocations Trace your build process by PVS-Studio Compiler Monitor. You can analyze source files that were built after the compilation process is finished. Seamless Build System integration: monitoring will “catch” compiler processed regardless of how and where they were started No configuration required: monitoring will automatically determine your compiler and target platform. Supported compilers are: Visual C++, GCC, Clang, Borland C++ Can either be used from Standalone GUI or directly integrated into your build system through a command line tool. Analyzer reports can be reviewed from either Standalone tool or Visual Studio IDE (to take advantage of IntelliSence system)

Compiler Monitoring: analyze anything! As long as it uses one of the supported compilers (Visual C++, GCC, Clang, Borland C++), you can literally analyze anything with PVS-Studio.

Suppression of messages on the existing code base When you have a large code base and want to concentrate on verifying only newly written\modified code, you can “throw out” all of the thousands of messages generated for your existing code base. You will see analyzer warnings only on those chunks of code that you will insert after that moment. And if someday you wish to return to the “suppressed” parts, you can easily review those messages or delete suppression bases altogether. No source file modification required Independent on the source file location – can be used across different systems Simple XML format of suppression message base files Can be easily integrated into revision control system

Feel the difference: mass message suppression – before and after Notice the total number of messages. Work only with your newly written or modified code

Build and Analyze - direct integration of PVS-Studio analyzer into MSBuild Integrate PVS-Studio analysis directly into your Visual Studio project (vcxproj) files in just one click! Analysis will be started after build process is complete Out-of-the-box incremental analysis – only the files that are build are analyzed Completely native to MSBuild – no COM based IDE APIs are utilized to get the compilation parameters to the analyzer. Build and Analyze your projects from either a Visual Studio IDE or by directly invoking MSBuild engine through the command line Use PVS-Studio Standalone or IDE plug-ins to view the analysis report

No Visual Studio is needed! Utilizing PVS-Studio Standalone with Compiler Monitoring and MSBuild Integration you use PVS-Studio analysis even without Visual Studio or with Visual Studio Express edition (unsupported by PVS-Studio IDE plug-ins).

PVS-Studio Advantages Easy-to-download! You can download PVS-Studio distribution package without registering and filling in any forms: http://www.viva64.com/en/pvs-studio-download/ Easy-to-try! The PVS-Studio program is implemented as a plug-in for Visual Studio. Easy-to-buy! Unlike other code analyzers, we have simple pricing and licensing policy: http://www.viva64.com/en/order/ Easy-to-support! It is the analyzer's developers who directly communicate with users, which enables you to quickly get answers to even complicated questions related to programming.