Contributor
Yannan

Expanding Clang-Tidy to include AUTOSAR compliance


Mentors
Tamas Lengyel, Rian Quinn
Organization
The Honeynet Project

Clang-tidy is one of the best linters for C++. It currently provides static analysis for several groups of checks, including Google and Android coding conventions and major coding standards like CERT C++, High Integrity C++, and the C++ Core Guidelines. AUTOSAR Coding Guidelines are a relatively newly developed set of coding standards made by and for the automotive industry to standardize automotive software. MISRA, the former leading C++ coding standard in the automotive industry, has recently adopted the AUTOSAR Standard because AUTOSAR addresses many advancements in C++ and its tools that did not exist when MISRA was created in 2008. The goal of this project is to get the ball rolling for the open-source effort tackling AUTOSAR compliance. In the Bareflank fork of LLVM, this project will create a new group of checks associated with AUTOSAR under clang-tools-extra. Parts of AUTOSAR are based on existing C++ coding standards, but many new additional checks in C++ will need to be written. The checks will be aggregated in a new TidyModule, which will then be made available as a new AUTOSAR flag for clang-tidy.