Keil Logo

Code analysis tools

Learning Platform

Arm Compiler  can detect basic syntax problems in the code but for deeper code inspection it is recommended to use static code analysis tools. Such tools automatically examine your source code without executing the program itself. They report vulnerabilities in the code that can lead to potential issues. This includes bugs, glitches, inconsistencies, non-portable constructs, redundant code, and other weaknesses.

Integrating static code analysis in the development flow brings multiple benefits such as:

  • Better maintainable code conforming to specified code-style
  • Reduced error-rate, more reliable and secure software
  • Fulfilling requirements of safety standards


Multiple Arm partners listed below offer static code analysis tools that well integrate with Keil MDK and extend its functionality. While every tool has own unique features and strengths they share many common capabilities:

  • Compliance verification against MISRA C and MISRA C++ (Motor Industry Software Reliability Association) coding rules standards
  • Verification against ANSI C, and ANSI/ISO C++ standards
  • Automated execution and reporting 
  • User-defined rules can be added to cover project-specific requirements

Gimpel PC-lint


PC-lint by Gimpel Software is a powerful static analysis tool that will check your C/C++ source code. Each of the Keil development tools, MDK, C51,C251, and C166, support PC-lint. 



This webinar demonstrates how you can configure and use PC-lint easily in µVision to get better code using MISRA and static code analysis. Real-world demos show the seamless integration of PC-lint for fast turn-around times when inspecting your source code.


LDRA  tool suite


The LDRA tool suite provides static analysis, unit testing and dynamic analysis capabilities for functional safety. Specifically LDRArules can be used to enforce compliance with industry- or user-defined coding standards and provides clear visibility of software flaws that might typically pass through the build and test process and become latent problems.


Parasoft C/C++ test


Parasoft C/C++test provides a complete quality testing solution which improves software development team productivity and software quality for C and C++ applications. C/C++test uses the high-speed streaming trace capabilities of the ULINKpro adapter to capture performance and code coverage information which can then be analyzed using the Keil MDK development kit. C/C++test provides in-built wizards which enable you to quickly begin working with µVision projects.



PVS-Studio is a tool for detecting bugs and security weaknesses in the source code of programs, written in C, C++, C# and Java. Read more about PVS-Studio for embedded development.


Vector Group Logo

The VectorCAST embedded software testing platform is a family of products that automates testing activities across the software development lifecycle. 

VectorCAST/C++ significantly reduces the time, effort, and cost associated with testing C/C++ software components necessary for validating safety and mission-critical embedded systems.


  Arm logo
Important information

This site uses cookies to store information on your computer. By continuing to use our site, you consent to our cookies.

Change Settings

Privacy Policy Update

Arm’s Privacy Policy has been updated. By continuing to use our site, you consent to Arm’s Privacy Policy. Please review our Privacy Policy to learn more about our collection, use and transfers
of your data.