<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
<meta name="Generator" content="Microsoft Word 14 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
        {font-family:Wingdings;
        panose-1:5 0 0 0 0 0 0 0 0 0;}
@font-face
        {font-family:Wingdings;
        panose-1:5 0 0 0 0 0 0 0 0 0;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0cm;
        margin-bottom:.0001pt;
        font-size:11.0pt;
        font-family:"Calibri","sans-serif";
        mso-fareast-language:EN-US;}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:purple;
        text-decoration:underline;}
p.MsoListParagraph, li.MsoListParagraph, div.MsoListParagraph
        {mso-style-priority:34;
        margin-top:0cm;
        margin-right:0cm;
        margin-bottom:0cm;
        margin-left:36.0pt;
        margin-bottom:.0001pt;
        font-size:11.0pt;
        font-family:"Calibri","sans-serif";
        mso-fareast-language:EN-US;}
span.EmailStyle18
        {mso-style-type:personal;
        font-family:"Calibri","sans-serif";
        color:windowtext;}
span.EmailStyle19
        {mso-style-type:personal-reply;
        font-family:"Calibri","sans-serif";
        color:#1F497D;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-size:10.0pt;}
@page WordSection1
        {size:612.0pt 792.0pt;
        margin:72.0pt 72.0pt 72.0pt 72.0pt;}
div.WordSection1
        {page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang="EN-GB" link="blue" vlink="purple">
<div class="WordSection1">
<p class="MsoNormal">Hi,<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">First time poster here, Please advise…<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Can I contribute these patches for clang-tidy modernize-use-override addressing two problems:<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">1: missing spaces on pure function decls<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Orig:<o:p></o:p></p>
<p class="MsoNormal" style="margin-left:36.0pt">void pure() const=0<o:p></o:p></p>
<p class="MsoNormal">Problem:<o:p></o:p></p>
<p class="MsoNormal" style="margin-left:36.0pt">void pure() constoverride =0<o:p></o:p></p>
<p class="MsoNormal">Fixed:<o:p></o:p></p>
<p class="MsoNormal" style="text-indent:36.0pt">void pure() const override =0<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">2: This is ms-extension specific, but possibly applies to other attribute types as I see incorrect placement of override for Inherited Attributes and atts located before the method
<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Orig:<o:p></o:p></p>
<p class="MsoNormal">class __declspec(dllexport) X : public Y<o:p></o:p></p>
<p class="MsoNormal">  {<o:p></o:p></p>
<p class="MsoNormal">void p(); //inherits decl att<o:p></o:p></p>
<p class="MsoNormal">  };<o:p></o:p></p>
<p class="MsoNormal">Problem:<o:p></o:p></p>
<p class="MsoNormal">class override __declspec(dllexport) class X : public Y<o:p></o:p></p>
<p class="MsoNormal">  {<o:p></o:p></p>
<p class="MsoNormal">  void p();<o:p></o:p></p>
<p class="MsoNormal">  };<o:p></o:p></p>
<p class="MsoNormal">Fixed:<o:p></o:p></p>
<p class="MsoNormal">class __declspec(dllexport) class X : public Y<o:p></o:p></p>
<p class="MsoNormal">  {<o:p></o:p></p>
<p class="MsoNormal">  void p() override;<o:p></o:p></p>
<p class="MsoNormal">  };<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">I added test/clang-tidy/modernize-use-override-ms.cpp and modified modernize-use-override.cpp to test these fixes.<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">I’ve also added a –quiet option to clang-tidy/tool/run-clang-tidy.py  and a progress countdown which I personally find useful
<span style="font-family:Wingdings">J</span><o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Thanks,<o:p></o:p></p>
<p class="MsoNormal">Rob.<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<br>
<hr>
<font face="Arial" color="Gray" size="1"><br>
Autodesk Limited<br>
Registered Office: One Discovery Place, Columbus Drive, Farnborough, Hampshire GU14 0NZ<br>
Registered in England and Wales, No. 1839239<br>
</font>
</body>
</html>