<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body style="word-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;" class="">
Hi Carlos,
<div class=""><br class="">
</div>
<div class="">I am not able to comment on the legal position with respect to Autosar. The request you have sent to their admin email address is the best way to get an answer on that.</div>
<div class=""><br class="">
</div>
<div class="">From the MISRA perspective, I can put you in touch (off list) with the relevant contact so you can discuss how to do this. From memory, I think it is ok to add the checks (and quote the guideline numbers), but a license would be needed if the
 MISRA headline text (“Don’t do this…”) is used.</div>
<div class=""><br class="">
</div>
<div class="">I am happy for technical questions to be sent directly to me, but it is better for the MISRA user community if they are posted on the forum. New questions (in the MISRA C++ section) currently get reviewed every week or so at the moment, but feel
 free to send me an email as well so I can make sure any you add are actioned as soon as possible. I’ve located the one you posted re Autosar and will post a reply.<br class="">
<div class=""><br class="">
</div>
<div class="">Chris</div>
<div class=""><br class="">
<div class="">
<div dir="auto" style="font-family: "Helvetica Neue"; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; text-decoration: none; caret-color: rgb(0, 0, 0); color: rgb(0, 0, 0); word-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;" class="">
<div dir="auto" style="text-align: start; text-indent: 0px; word-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;" class="">
<div dir="auto" style="text-align: start; text-indent: 0px; word-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;" class="">
<div dir="auto" style="text-align: start; text-indent: 0px; word-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;" class="">
<div dir="auto" style="text-align: start; text-indent: 0px; word-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;" class="">
<div style="caret-color: rgb(0, 0, 0); color: rgb(0, 0, 0); letter-spacing: normal; text-transform: none; white-space: normal; word-spacing: 0px; text-decoration: none; -webkit-text-stroke-width: 0px;">
<table cellspacing="0" cellpadding="0" style="border-collapse: collapse;" class="">
<tbody class="">
<tr class="">
<td valign="baseline" style="width: 32px; padding: 0px 5px;" class="">
<div style="margin: 0px; font-stretch: normal; font-size: 12px; line-height: normal;" class="">
<span style="-webkit-font-kerning: none;" class=""></span></div>
</td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
</div>
</div>
</div>
<span style="font-family: "Helvetica Neue"; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; text-decoration: none; caret-color: rgb(0, 0, 0); color: rgb(0, 0, 0);">—</span>
<div style="font-family: "Helvetica Neue"; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; text-decoration: none; caret-color: rgb(0, 0, 0); color: rgb(0, 0, 0);" class="">
<table cellspacing="0" cellpadding="0" style="border-collapse: collapse;" class="">
<tbody class="">
<tr class="">
<td valign="baseline" style="width: 32px; padding: 0px 5px;" class="">
<div style="margin: 0px; font-stretch: normal; font-size: 12px; line-height: normal;" class="">
<span style="-webkit-font-kerning: none;" class=""></span></div>
</td>
</tr>
</tbody>
</table>
</div>
<span><img apple-inline="yes" id="C7C301BE-6116-4A27-928D-CDC2EFBE631F" src="cid:D79607F2-F77F-446E-8AC0-9669B2D7A122@durham.keylevel.com" class=""></span>
<div style="caret-color: rgb(0, 0, 0); color: rgb(0, 0, 0); font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; text-decoration: none; margin: 0px; font-stretch: normal; font-size: 12px; line-height: normal; font-family: "Open Sans Light";" class="">
<span style="-webkit-font-kerning: none;" class=""><br class="Apple-interchange-newline">
Chris Tapp, MISRA C++ Chair</span></div>
<div style="caret-color: rgb(0, 0, 0); color: rgb(0, 0, 0); font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; text-decoration: none; margin: 0px; font-stretch: normal; font-size: 12px; line-height: normal; font-family: "Open Sans Light"; min-height: 17px;" class="">
<br class="">
<span style="-webkit-font-kerning: none;" class=""></span></div>
</div>
<div>
<blockquote type="cite" class="">
<div class="">On 1 Nov 2021, at 12:20, Carlos Galvez <<a href="mailto:carlosgalvezp@gmail.com" class="">carlosgalvezp@gmail.com</a>> wrote:</div>
<br class="Apple-interchange-newline">
<div class="">
<div dir="ltr" class="">Chris,
<div class=""><br class="">
</div>
<div class="">Thanks a lot for the reply, it's really great to have a feedback loop with MISRA. As a starting point we are trying to understand if it's OK to implement open-source clang-tidy checks based on the Autosar C++14 guidelines, from a legal/license
 point of view. I've sent a mail about this to <a href="mailto:admin@autosar.org" class="">
admin@autosar.org</a> - is that correct or should I direct my questions to MISRA directly?</div>
<div class=""><br class="">
</div>
<div class="">Regarding technical questions, should we direct them to your email directly, via this mailing list or by some other means? There's also the
<a href="https://forum.misra.org.uk/" class="">MISRA forums</a> which I think work pretty well, even though the feedback time is rather high. I have
<a href="https://forum.misra.org.uk/thread-1586.html" class="">asked</a> there whether it makes sense to post Autosar-related questions or not. </div>
<div class=""><br class="">
</div>
<div class="">Best regards,</div>
<div class="">Carlos</div>
</div>
<br class="">
<div class="gmail_quote">
<div dir="ltr" class="gmail_attr">On Mon, Nov 1, 2021 at 11:56 AM Chris Tapp (MISRA CPP Chair) <<a href="mailto:chair.cpp@misra.org.uk" class="">chair.cpp@misra.org.uk</a>> wrote:<br class="">
</div>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<div style="overflow-wrap: break-word;" class="">Hi All,
<div class=""><br class="">
</div>
<div class="">I am the current chair of the MISRA C++ Working Group.</div>
<div class=""><br class="">
</div>
<div class="">As a bit of background, the Autosar guidelines are currently being merged into an updated MISRA C++ document (support for C++17, with C++20 and later planned). Autosar C++ will be retired when this work is complete, with Autosar moving to the
 updated MISRA guidelines. There will be significant differences between the MISRA and Autosar documents - for example, MISRA will not be including any guidelines that are related to (software development) process, coding style nor most of those related to
 software design.</div>
<div class=""><br class="">
</div>
<div class="">As part of this ongoing work, a number of the Autosar team have joined the MISRA group. I therefore have good contacts with Autosar and the people who developed Autosar C++14. I would be more than happy to answer any questions that you may have
 related to Autosar or MISRA.</div>
<div class=""><br class="">
</div>
<div class="">Note - it may also be worth looking at MISRA Compliance:2020 (<a href="https://www.misra.org.uk/app/uploads/2021/06/MISRA-Compliance-2020.pdf" target="_blank" class="">https://www.misra.org.uk/app/uploads/2021/06/MISRA-Compliance-2020.pdf</a>),
 as this defines what is required to make a claim of "MISRA compliance”.</div>
<div class=""><br class="">
</div>
<div class="">Chris</div>
<div class="">
<div dir="auto" style="font-family: "Helvetica Neue"; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; text-decoration: none;" class="">
<div dir="auto" style="text-align:start;text-indent:0px" class="">
<div dir="auto" style="text-align:start;text-indent:0px" class="">
<div dir="auto" style="text-align:start;text-indent:0px" class="">
<div dir="auto" style="text-align:start;text-indent:0px" class="">
<div style="letter-spacing: normal; text-transform: none; white-space: normal; word-spacing: 0px; text-decoration: none;" class="">
<table cellspacing="0" cellpadding="0" style="border-collapse:collapse" class="">
<tbody class="">
<tr class="">
<td valign="baseline" style="width:32px;padding:0px 5px" class="">
<div style="margin:0px;font-stretch:normal;font-size:12px;line-height:normal" class="">
<span class=""></span></div>
</td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
</div>
</div>
</div>
<span style="font-family: "Helvetica Neue"; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; text-decoration: none;" class="">—</span>
<div style="font-family: "Helvetica Neue"; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; text-decoration: none;" class="">
<table cellspacing="0" cellpadding="0" style="border-collapse:collapse" class="">
<tbody class="">
<tr class="">
<td valign="baseline" style="width:32px;padding:0px 5px" class="">
<div style="margin:0px;font-stretch:normal;font-size:12px;line-height:normal" class="">
<span class=""></span></div>
</td>
</tr>
</tbody>
</table>
</div>
<span class=""><span id="cid:17cdb654ed9f50314371"><MISRA_LOGO x.png></span></span>
<div style="font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; text-decoration: none; margin: 0px; font-stretch: normal; font-size: 12px; line-height: normal; font-family: "Open Sans Light";" class="">
<span class=""><br class="">
Chris Tapp, MISRA C++ Chair</span></div>
<div style="font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; text-decoration: none; margin: 0px; font-stretch: normal; font-size: 12px; line-height: normal; font-family: "Open Sans Light"; min-height: 17px;" class="">
<br class="">
<span class=""></span></div>
</div>
<div class="">
<blockquote type="cite" class="">
<div class="">On 28 Oct 2021, at 13:55, Aaron Ballman via cfe-dev <<a href="mailto:cfe-dev@lists.llvm.org" target="_blank" class="">cfe-dev@lists.llvm.org</a>> wrote:</div>
<br class="">
<div class="">
<div class="">On Wed, Oct 27, 2021 at 5:12 PM Carlos Galvez <<a href="mailto:carlosgalvezp@gmail.com" target="_blank" class="">carlosgalvezp@gmail.com</a>> wrote:<br class="">
<blockquote type="cite" class=""><br class="">
That's great to hear, thanks! Will give it a kickstart one of these days :)<br class="">
</blockquote>
<br class="">
Excellent, thank you!<br class="">
<br class="">
<blockquote type="cite" class="">You have a very valid point about the feedback loop, and that's one of the pain points of Autosar. Therefore some rules might need to be left out or enforced in a "best effort" way. Or made configurable so that if they are ambiguous
 they can be enforced following a handful of interpretations. At least Autosar makes it clear which rules are meant to be "automatically enforceable" and which ones aren't. Some rules are also impractical to follow strictly so I can foresee the need for partial
 deviations via configuration. Autosar also inherits some MISRA rules, for which one can actually ask questions in the MISRA forums directly, so that's good.<br class="">
<br class="">
Would be interesting to have several companies contributing to it and openly discuss those rules that are more ambiguous or poorly written. Who knows, maybe the Autosar authors come across these checks and help clarifying!<br class="">
<br class="">
All in all, Autosar is not perfect but it's an important enabler for e.g. the automotive industry to finally leave MISRA C++08 and move to modern C++14. There's plans for new MISRA guidelines covering C++17 but it's unclear when they'll be published, so we
 need to live with Autosar for a little more.<br class="">
</blockquote>
<br class="">
Agreed, and to be clear, we don't have a requirement that there is a<br class="">
feedback loop with the proposal authors before adding a new module to<br class="">
clang-tidy. I mostly brought it up as an existing source of pain with<br class="">
the C++ Core Guideline checks. I'd like to avoid similar issues with<br class="">
new modules because lacking a feedback loop makes the code review<br class="">
process significantly harder when the rule is unclear (which<br class="">
negatively impacts reviewers, patch authors, and clang-tidy users).<br class="">
<br class="">
~Aaron<br class="">
<br class="">
<blockquote type="cite" class=""><br class="">
<br class="">
On Wed, Oct 27, 2021 at 7:47 PM Aaron Ballman <<a href="mailto:aaron@aaronballman.com" target="_blank" class="">aaron@aaronballman.com</a>> wrote:<br class="">
<blockquote type="cite" class=""><br class="">
On Wed, Oct 27, 2021 at 11:29 AM Carlos Galvez via cfe-dev<br class="">
<<a href="mailto:cfe-dev@lists.llvm.org" target="_blank" class="">cfe-dev@lists.llvm.org</a>> wrote:<br class="">
<blockquote type="cite" class=""><br class="">
Hi!<br class="">
<br class="">
We are following the Autosar C++14 guidelines and were thinking to add a clang-tidy module for it and start implementing checks. There's a couple local forks with some checks here and there but never made it upstream. I believe quite a lot of them are already
 covered by the existing checks (e.g. cppcoreguidelines) so most of the work would be about creating aliases and adding some extra configuration.<br class="">
<br class="">
What do you think, would that be ok? Both about adding the Autosar module itself, but also making aliases from one coding guideline (e.g. cppcoreguidelines) to another coding guideline (autosar). Typically the alias is from a non-coding guideline (e.g. bugprone)
 to a coding guideline (cppcoreguidelines).<br class="">
<br class="">
We can of course have our own local fork but it's nice to be able to contribute upstream so everyone can benefit. Autosar would fit well together with the existing guidelines (CppCoreGuidlines, CERT, HiCPP, etc).<br class="">
</blockquote>
<br class="">
Personally, I'm okay with adding a module for AUTOSAR checks. It's an<br class="">
industry standard set of coding conventions like many of the other<br class="">
modules we have. However, one issue we've run into with things like<br class="">
the C++ Core Guidelines is a lack of a useful feedback loop when there<br class="">
are enforcement questions. Do you have contacts with anyone<br class="">
maintaining AUTOSAR so that if we run into questions we'll have some<br class="">
guidance on how to resolve them?<br class="">
<br class="">
As for aliases from one coding guideline to another; I think that's<br class="">
fine. We already have the issue where changing the primary check may<br class="">
cause the alias to no longer be valid, so I don't think this would<br class="">
introduce any new problems we don't already have to watch out for. One<br class="">
thing that could get a bit weird is with documentation (aliases<br class="">
typically automatically redirect back to their primary check, so it<br class="">
might be weird to go to the docs for an AUTOSAR check and wind up in<br class="">
CERT C++ or something. But if that causes problems in practice, I<br class="">
think they can be handled as they come up.<br class="">
<br class="">
~Aaron<br class="">
<br class="">
<blockquote type="cite" class=""><br class="">
Best regards,<br class="">
Carlos<br class="">
_______________________________________________<br class="">
cfe-dev mailing list<br class="">
<a href="mailto:cfe-dev@lists.llvm.org" target="_blank" class="">cfe-dev@lists.llvm.org</a><br class="">
<a href="https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-dev" target="_blank" class="">https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-dev</a><br class="">
</blockquote>
</blockquote>
</blockquote>
_______________________________________________<br class="">
cfe-dev mailing list<br class="">
<a href="mailto:cfe-dev@lists.llvm.org" target="_blank" class="">cfe-dev@lists.llvm.org</a><br class="">
<a href="https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-dev" target="_blank" class="">https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-dev</a><br class="">
</div>
</div>
</blockquote>
</div>
<br class="">
<br class="">
The MISRA Consortium is a limited company registered in England and Wales<br class="">
Registered number: 13152596<br class="">
Registered office: 1 St James Court Whitefriars, Norwich, Norfolk, England, NR3 1RU<br class="">
VAT number GB 377 2093 78 </div>
</blockquote>
</div>
</div>
</blockquote>
</div>
<br class="">
</div>
</div>
<br>
The MISRA Consortium is a limited company registered in England and Wales<br>
Registered number: 13152596<br>
Registered office: 1 St James Court Whitefriars, Norwich, Norfolk, England, NR3 1RU<br>
VAT number GB 377 2093 78
</body>
</html>