[www-releases] r372328 - Check in 9.0.0 source and docs
Hans Wennborg via llvm-commits
llvm-commits at lists.llvm.org
Thu Sep 19 07:32:55 PDT 2019
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-explicit-conversions.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-explicit-conversions.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-explicit-conversions.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-explicit-conversions.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,76 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><meta content="5;URL=google-explicit-constructor.html" http-equiv="refresh" />
+
+ <title>clang-tidy - hicpp-explicit-conversions — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="hicpp-function-size" href="hicpp-function-size.html" />
+ <link rel="prev" title="hicpp-exception-baseclass" href="hicpp-exception-baseclass.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - hicpp-explicit-conversions</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="hicpp-exception-baseclass.html">hicpp-exception-baseclass</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="hicpp-function-size.html">hicpp-function-size</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="hicpp-explicit-conversions">
+<h1>hicpp-explicit-conversions<a class="headerlink" href="#hicpp-explicit-conversions" title="Permalink to this headline">¶</a></h1>
+<p>This check is an alias for <a class="reference external" href="google-explicit-constructor.html">google-explicit-constructor</a>.
+Used to enforce parts of <a class="reference external" href="http://www.codingstandard.com/rule/5-4-1-only-use-casting-forms-static_cast-excl-void-dynamic_cast-or-explicit-constructor-call/">rule 5.4.1</a>.
+This check will enforce that constructors and conversion operators are marked <cite>explicit</cite>.
+Other forms of casting checks are implemented in other places.
+The following checks can be used to check for more forms of casting:</p>
+<ul class="simple">
+<li><a class="reference external" href="cppcoreguidelines-pro-type-static-cast-downcast.html">cppcoreguidelines-pro-type-static-cast-downcast</a></li>
+<li><a class="reference external" href="cppcoreguidelines-pro-type-reinterpret-cast.html">cppcoreguidelines-pro-type-reinterpret-cast</a></li>
+<li><a class="reference external" href="cppcoreguidelines-pro-type-const-cast.html">cppcoreguidelines-pro-type-const-cast</a></li>
+<li><a class="reference external" href="cppcoreguidelines-pro-type-cstyle-cast.html">cppcoreguidelines-pro-type-cstyle-cast</a></li>
+</ul>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="hicpp-exception-baseclass.html">hicpp-exception-baseclass</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="hicpp-function-size.html">hicpp-function-size</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-function-size.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-function-size.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-function-size.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-function-size.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,72 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><meta content="5;URL=readability-function-size.html" http-equiv="refresh" />
+
+ <title>clang-tidy - hicpp-function-size — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="hicpp-invalid-access-moved" href="hicpp-invalid-access-moved.html" />
+ <link rel="prev" title="hicpp-explicit-conversions" href="hicpp-explicit-conversions.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - hicpp-function-size</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="hicpp-explicit-conversions.html">hicpp-explicit-conversions</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="hicpp-invalid-access-moved.html">hicpp-invalid-access-moved</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="hicpp-function-size">
+<h1>hicpp-function-size<a class="headerlink" href="#hicpp-function-size" title="Permalink to this headline">¶</a></h1>
+<p>This check is an alias for <a class="reference external" href="readability-function-size.html">readability-function-size</a>.
+Useful to enforce multiple sections on function complexity.</p>
+<ul class="simple">
+<li><a class="reference external" href="http://www.codingstandard.com/rule/8-2-2-do-not-declare-functions-with-an-excessive-number-of-parameters/">rule 8.2.2</a></li>
+<li><a class="reference external" href="http://www.codingstandard.com/rule/8-3-1-do-not-write-functions-with-an-excessive-mccabe-cyclomatic-complexity/">rule 8.3.1</a></li>
+<li><a class="reference external" href="http://www.codingstandard.com/rule/8-3-2-do-not-write-functions-with-a-high-static-program-path-count/">rule 8.3.2</a></li>
+</ul>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="hicpp-explicit-conversions.html">hicpp-explicit-conversions</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="hicpp-invalid-access-moved.html">hicpp-invalid-access-moved</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-invalid-access-moved.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-invalid-access-moved.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-invalid-access-moved.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-invalid-access-moved.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,67 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><meta content="5;URL=bugprone-use-after-move.html" http-equiv="refresh" />
+
+ <title>clang-tidy - hicpp-invalid-access-moved — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="hicpp-member-init" href="hicpp-member-init.html" />
+ <link rel="prev" title="hicpp-function-size" href="hicpp-function-size.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - hicpp-invalid-access-moved</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="hicpp-function-size.html">hicpp-function-size</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="hicpp-member-init.html">hicpp-member-init</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="hicpp-invalid-access-moved">
+<h1>hicpp-invalid-access-moved<a class="headerlink" href="#hicpp-invalid-access-moved" title="Permalink to this headline">¶</a></h1>
+<p>This check is an alias for <a class="reference external" href="bugprone-use-after-move.html">bugprone-use-after-move</a>.</p>
+<p>Implements parts of the <a class="reference external" href="http://www.codingstandard.com/rule/8-4-1-do-not-access-an-invalid-object-or-an-object-with-indeterminate-value/">rule 8.4.1</a> to check if moved-from objects are accessed.</p>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="hicpp-function-size.html">hicpp-function-size</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="hicpp-member-init.html">hicpp-member-init</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-member-init.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-member-init.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-member-init.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-member-init.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,69 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><meta content="5;URL=cppcoreguidelines-pro-type-member-init.html" http-equiv="refresh" />
+
+ <title>clang-tidy - hicpp-member-init — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="hicpp-move-const-arg" href="hicpp-move-const-arg.html" />
+ <link rel="prev" title="hicpp-invalid-access-moved" href="hicpp-invalid-access-moved.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - hicpp-member-init</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="hicpp-invalid-access-moved.html">hicpp-invalid-access-moved</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="hicpp-move-const-arg.html">hicpp-move-const-arg</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="hicpp-member-init">
+<h1>hicpp-member-init<a class="headerlink" href="#hicpp-member-init" title="Permalink to this headline">¶</a></h1>
+<p>This check is an alias for <a class="reference external" href="cppcoreguidelines-pro-type-member-init.html">cppcoreguidelines-pro-type-member-init</a>.
+Implements the check for
+<a class="reference external" href="http://www.codingstandard.com/rule/12-4-2-ensure-that-a-constructor-initializes-explicitly-all-base-classes-and-non-static-data-members/">rule 12.4.2</a>
+to initialize class members in the right order.</p>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="hicpp-invalid-access-moved.html">hicpp-invalid-access-moved</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="hicpp-move-const-arg.html">hicpp-move-const-arg</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-move-const-arg.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-move-const-arg.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-move-const-arg.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-move-const-arg.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,68 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><meta content="5;URL=performance-move-const-arg.html" http-equiv="refresh" />
+
+ <title>clang-tidy - hicpp-move-const-arg — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="hicpp-multiway-paths-covered" href="hicpp-multiway-paths-covered.html" />
+ <link rel="prev" title="hicpp-member-init" href="hicpp-member-init.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - hicpp-move-const-arg</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="hicpp-member-init.html">hicpp-member-init</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="hicpp-multiway-paths-covered.html">hicpp-multiway-paths-covered</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="hicpp-move-const-arg">
+<h1>hicpp-move-const-arg<a class="headerlink" href="#hicpp-move-const-arg" title="Permalink to this headline">¶</a></h1>
+<p>The <cite>hicpp-move-const-arg</cite> check is an alias, please see
+<a class="reference external" href="performance-move-const-arg.html">performance-move-const-arg</a> for more information.
+It enforces the <a class="reference external" href="http://www.codingstandard.com/rule/17-3-1-do-not-use-stdmove-on-objects-declared-with-const-or-const-type/">rule 17.3.1</a>.</p>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="hicpp-member-init.html">hicpp-member-init</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="hicpp-multiway-paths-covered.html">hicpp-multiway-paths-covered</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-multiway-paths-covered.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-multiway-paths-covered.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-multiway-paths-covered.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-multiway-paths-covered.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,147 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>clang-tidy - hicpp-multiway-paths-covered — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="hicpp-named-parameter" href="hicpp-named-parameter.html" />
+ <link rel="prev" title="hicpp-move-const-arg" href="hicpp-move-const-arg.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - hicpp-multiway-paths-covered</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="hicpp-move-const-arg.html">hicpp-move-const-arg</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="hicpp-named-parameter.html">hicpp-named-parameter</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="hicpp-multiway-paths-covered">
+<h1>hicpp-multiway-paths-covered<a class="headerlink" href="#hicpp-multiway-paths-covered" title="Permalink to this headline">¶</a></h1>
+<p>This check discovers situations where code paths are not fully-covered.
+It furthermore suggests using <code class="docutils literal notranslate"><span class="pre">if</span></code> instead of <code class="docutils literal notranslate"><span class="pre">switch</span></code> if the code will be more clear.
+The <a class="reference external" href="http://www.codingstandard.com/rule/6-1-2-explicitly-cover-all-paths-through-multi-way-selection-statements/">rule 6.1.2</a>
+and <a class="reference external" href="http://www.codingstandard.com/rule/6-1-4-ensure-that-a-switch-statement-has-at-least-two-case-labels-distinct-from-the-default-label/">rule 6.1.4</a>
+of the High Integrity C++ Coding Standard are enforced.</p>
+<p><code class="docutils literal notranslate"><span class="pre">if-else</span> <span class="pre">if</span></code> chains that miss a final <code class="docutils literal notranslate"><span class="pre">else</span></code> branch might lead to unexpected
+program execution and be the result of a logical error.
+If the missing <code class="docutils literal notranslate"><span class="pre">else</span></code> branch is intended you can leave it empty with a clarifying
+comment.
+This warning can be noisy on some code bases, so it is disabled by default.</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="kt">void</span> <span class="nf">f1</span><span class="p">()</span> <span class="p">{</span>
+ <span class="kt">int</span> <span class="n">i</span> <span class="o">=</span> <span class="n">determineTheNumber</span><span class="p">();</span>
+
+ <span class="k">if</span><span class="p">(</span><span class="n">i</span> <span class="o">></span> <span class="mi">0</span><span class="p">)</span> <span class="p">{</span>
+ <span class="c1">// Some Calculation</span>
+ <span class="p">}</span> <span class="k">else</span> <span class="k">if</span> <span class="p">(</span><span class="n">i</span> <span class="o"><</span> <span class="mi">0</span><span class="p">)</span> <span class="p">{</span>
+ <span class="c1">// Precondition violated or something else.</span>
+ <span class="p">}</span>
+ <span class="c1">// ...</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+<p>Similar arguments hold for <code class="docutils literal notranslate"><span class="pre">switch</span></code> statements which do not cover all possible code paths.</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="c1">// The missing default branch might be a logical error. It can be kept empty</span>
+<span class="c1">// if there is nothing to do, making it explicit.</span>
+<span class="kt">void</span> <span class="nf">f2</span><span class="p">(</span><span class="kt">int</span> <span class="n">i</span><span class="p">)</span> <span class="p">{</span>
+ <span class="k">switch</span> <span class="p">(</span><span class="n">i</span><span class="p">)</span> <span class="p">{</span>
+ <span class="k">case</span> <span class="mi">0</span><span class="o">:</span> <span class="c1">// something</span>
+ <span class="k">break</span><span class="p">;</span>
+ <span class="k">case</span> <span class="mi">1</span><span class="o">:</span> <span class="c1">// something else</span>
+ <span class="k">break</span><span class="p">;</span>
+ <span class="p">}</span>
+ <span class="c1">// All other numbers?</span>
+<span class="p">}</span>
+
+<span class="c1">// Violates this rule as well, but already emits a compiler warning (-Wswitch).</span>
+<span class="k">enum</span> <span class="n">Color</span> <span class="p">{</span> <span class="n">Red</span><span class="p">,</span> <span class="n">Green</span><span class="p">,</span> <span class="n">Blue</span><span class="p">,</span> <span class="n">Yellow</span> <span class="p">};</span>
+<span class="kt">void</span> <span class="nf">f3</span><span class="p">(</span><span class="k">enum</span> <span class="n">Color</span> <span class="n">c</span><span class="p">)</span> <span class="p">{</span>
+ <span class="k">switch</span> <span class="p">(</span><span class="n">c</span><span class="p">)</span> <span class="p">{</span>
+ <span class="k">case</span> <span class="nl">Red</span><span class="p">:</span> <span class="c1">// We can't drive for now.</span>
+ <span class="k">break</span><span class="p">;</span>
+ <span class="k">case</span> <span class="nl">Green</span><span class="p">:</span> <span class="c1">// We are allowed to drive.</span>
+ <span class="k">break</span><span class="p">;</span>
+ <span class="p">}</span>
+ <span class="c1">// Other cases missing</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+<p>The <a class="reference external" href="http://www.codingstandard.com/rule/6-1-4-ensure-that-a-switch-statement-has-at-least-two-case-labels-distinct-from-the-default-label/">rule 6.1.4</a>
+requires every <code class="docutils literal notranslate"><span class="pre">switch</span></code> statement to have at least two <code class="docutils literal notranslate"><span class="pre">case</span></code> labels other than a <cite>default</cite> label.
+Otherwise, the <code class="docutils literal notranslate"><span class="pre">switch</span></code> could be better expressed with an <code class="docutils literal notranslate"><span class="pre">if</span></code> statement.
+Degenerated <code class="docutils literal notranslate"><span class="pre">switch</span></code> statements without any labels are caught as well.</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="c1">// Degenerated switch that could be better written as `if`</span>
+<span class="kt">int</span> <span class="n">i</span> <span class="o">=</span> <span class="mi">42</span><span class="p">;</span>
+<span class="k">switch</span><span class="p">(</span><span class="n">i</span><span class="p">)</span> <span class="p">{</span>
+ <span class="k">case</span> <span class="mi">1</span><span class="o">:</span> <span class="c1">// do something here</span>
+ <span class="k">default</span><span class="o">:</span> <span class="c1">// do somethe else here</span>
+<span class="p">}</span>
+
+<span class="c1">// Should rather be the following:</span>
+<span class="k">if</span> <span class="p">(</span><span class="n">i</span> <span class="o">==</span> <span class="mi">1</span><span class="p">)</span> <span class="p">{</span>
+ <span class="c1">// do something here</span>
+<span class="p">}</span>
+<span class="k">else</span> <span class="p">{</span>
+ <span class="c1">// do something here</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="c1">// A completly degenerated switch will be diagnosed.</span>
+<span class="kt">int</span> <span class="n">i</span> <span class="o">=</span> <span class="mi">42</span><span class="p">;</span>
+<span class="k">switch</span><span class="p">(</span><span class="n">i</span><span class="p">)</span> <span class="p">{}</span>
+</pre></div>
+</div>
+<div class="section" id="options">
+<h2>Options<a class="headerlink" href="#options" title="Permalink to this headline">¶</a></h2>
+<dl class="option">
+<dt id="cmdoption-arg-warnonmissingelse">
+<code class="descname">WarnOnMissingElse</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-warnonmissingelse" title="Permalink to this definition">¶</a></dt>
+<dd><p>Boolean flag that activates a warning for missing <code class="docutils literal notranslate"><span class="pre">else</span></code> branches.
+Default is <cite>0</cite>.</p>
+</dd></dl>
+
+</div>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="hicpp-move-const-arg.html">hicpp-move-const-arg</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="hicpp-named-parameter.html">hicpp-named-parameter</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-named-parameter.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-named-parameter.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-named-parameter.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-named-parameter.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,67 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><meta content="5;URL=readability-named-parameter.html" http-equiv="refresh" />
+
+ <title>clang-tidy - hicpp-named-parameter — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="hicpp-new-delete-operators" href="hicpp-new-delete-operators.html" />
+ <link rel="prev" title="hicpp-multiway-paths-covered" href="hicpp-multiway-paths-covered.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - hicpp-named-parameter</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="hicpp-multiway-paths-covered.html">hicpp-multiway-paths-covered</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="hicpp-new-delete-operators.html">hicpp-new-delete-operators</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="hicpp-named-parameter">
+<h1>hicpp-named-parameter<a class="headerlink" href="#hicpp-named-parameter" title="Permalink to this headline">¶</a></h1>
+<p>This check is an alias for <a class="reference external" href="readability-named-parameter.html">readability-named-parameter</a>.</p>
+<p>Implements <a class="reference external" href="http://www.codingstandard.com/rule/8-2-1-make-parameter-names-absent-or-identical-in-all-declarations/">rule 8.2.1</a>.</p>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="hicpp-multiway-paths-covered.html">hicpp-multiway-paths-covered</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="hicpp-new-delete-operators.html">hicpp-new-delete-operators</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-new-delete-operators.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-new-delete-operators.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-new-delete-operators.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-new-delete-operators.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,68 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><meta content="5;URL=misc-new-delete-overloads.html" http-equiv="refresh" />
+
+ <title>clang-tidy - hicpp-new-delete-operators — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="hicpp-no-array-decay" href="hicpp-no-array-decay.html" />
+ <link rel="prev" title="hicpp-named-parameter" href="hicpp-named-parameter.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - hicpp-new-delete-operators</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="hicpp-named-parameter.html">hicpp-named-parameter</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="hicpp-no-array-decay.html">hicpp-no-array-decay</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="hicpp-new-delete-operators">
+<h1>hicpp-new-delete-operators<a class="headerlink" href="#hicpp-new-delete-operators" title="Permalink to this headline">¶</a></h1>
+<p>This check is an alias for <a class="reference external" href="misc-new-delete-overloads.html">misc-new-delete-overloads</a>.
+Implements <a class="reference external" href="http://www.codingstandard.com/section/12-3-free-store/">rule 12.3.1</a> to ensure
+the <cite>new</cite> and <cite>delete</cite> operators have the correct signature.</p>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="hicpp-named-parameter.html">hicpp-named-parameter</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="hicpp-no-array-decay.html">hicpp-no-array-decay</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-no-array-decay.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-no-array-decay.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-no-array-decay.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-no-array-decay.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,69 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><meta content="5;URL=cppcoreguidelines-pro-bounds-array-to-pointer-decay.html" http-equiv="refresh" />
+
+ <title>clang-tidy - hicpp-no-array-decay — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="hicpp-no-assembler" href="hicpp-no-assembler.html" />
+ <link rel="prev" title="hicpp-new-delete-operators" href="hicpp-new-delete-operators.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - hicpp-no-array-decay</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="hicpp-new-delete-operators.html">hicpp-new-delete-operators</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="hicpp-no-assembler.html">hicpp-no-assembler</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="hicpp-no-array-decay">
+<h1>hicpp-no-array-decay<a class="headerlink" href="#hicpp-no-array-decay" title="Permalink to this headline">¶</a></h1>
+<p>The <cite>hicpp-no-array-decay</cite> check is an alias, please see
+<a class="reference external" href="cppcoreguidelines-pro-bounds-array-to-pointer-decay.html">cppcoreguidelines-pro-bounds-array-to-pointer-decay</a>
+for more information.
+It enforces the <a class="reference external" href="http://www.codingstandard.com/section/4-1-array-to-pointer-conversion/">rule 4.1.1</a>.</p>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="hicpp-new-delete-operators.html">hicpp-new-delete-operators</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="hicpp-no-assembler.html">hicpp-no-assembler</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-no-assembler.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-no-assembler.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-no-assembler.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-no-assembler.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,67 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>clang-tidy - hicpp-no-assembler — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="hicpp-no-malloc" href="hicpp-no-malloc.html" />
+ <link rel="prev" title="hicpp-no-array-decay" href="hicpp-no-array-decay.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - hicpp-no-assembler</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="hicpp-no-array-decay.html">hicpp-no-array-decay</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="hicpp-no-malloc.html">hicpp-no-malloc</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="hicpp-no-assembler">
+<h1>hicpp-no-assembler<a class="headerlink" href="#hicpp-no-assembler" title="Permalink to this headline">¶</a></h1>
+<p>Check for assembler statements. No fix is offered.</p>
+<p>Inline assembler is forbidden by the <a class="reference external" href="http://www.codingstandard.com/section/7-5-the-asm-declaration/">High Intergrity C++ Coding Standard</a>
+as it restricts the portability of code.</p>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="hicpp-no-array-decay.html">hicpp-no-array-decay</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="hicpp-no-malloc.html">hicpp-no-malloc</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-no-malloc.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-no-malloc.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-no-malloc.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-no-malloc.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,69 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><meta content="5;URL=cppcoreguidelines-no-malloc.html" http-equiv="refresh" />
+
+ <title>clang-tidy - hicpp-no-malloc — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="hicpp-noexcept-move" href="hicpp-noexcept-move.html" />
+ <link rel="prev" title="hicpp-no-assembler" href="hicpp-no-assembler.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - hicpp-no-malloc</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="hicpp-no-assembler.html">hicpp-no-assembler</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="hicpp-noexcept-move.html">hicpp-noexcept-move</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="hicpp-no-malloc">
+<h1>hicpp-no-malloc<a class="headerlink" href="#hicpp-no-malloc" title="Permalink to this headline">¶</a></h1>
+<p>The <cite>hicpp-no-malloc</cite> check is an alias, please see
+<a class="reference external" href="cppcoreguidelines-no-malloc.html">cppcoreguidelines-no-malloc</a>
+for more information.
+It enforces the <a class="reference external" href="http://www.codingstandard.com/rule/5-3-2-allocate-memory-using-new-and-release-it-using-delete/">rule 5.3.2</a>.</p>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="hicpp-no-assembler.html">hicpp-no-assembler</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="hicpp-noexcept-move.html">hicpp-noexcept-move</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-noexcept-move.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-noexcept-move.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-noexcept-move.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-noexcept-move.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,67 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><meta content="5;URL=misc-noexcept-moveconstructor.html" http-equiv="refresh" />
+
+ <title>clang-tidy - hicpp-noexcept-move — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="hicpp-signed-bitwise" href="hicpp-signed-bitwise.html" />
+ <link rel="prev" title="hicpp-no-malloc" href="hicpp-no-malloc.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - hicpp-noexcept-move</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="hicpp-no-malloc.html">hicpp-no-malloc</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="hicpp-signed-bitwise.html">hicpp-signed-bitwise</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="hicpp-noexcept-move">
+<h1>hicpp-noexcept-move<a class="headerlink" href="#hicpp-noexcept-move" title="Permalink to this headline">¶</a></h1>
+<p>This check is an alias for <a class="reference external" href="misc-noexcept-moveconstructor.html">misc-noexcept-moveconstructor</a>.
+Checks <a class="reference external" href="http://www.codingstandard.com/rule/12-5-4-declare-noexcept-the-move-constructor-and-move-assignment-operator">rule 12.5.4</a> to mark move assignment and move construction <cite>noexcept</cite>.</p>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="hicpp-no-malloc.html">hicpp-no-malloc</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="hicpp-signed-bitwise.html">hicpp-signed-bitwise</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-signed-bitwise.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-signed-bitwise.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-signed-bitwise.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-signed-bitwise.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,67 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>clang-tidy - hicpp-signed-bitwise — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="hicpp-special-member-functions" href="hicpp-special-member-functions.html" />
+ <link rel="prev" title="hicpp-noexcept-move" href="hicpp-noexcept-move.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - hicpp-signed-bitwise</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="hicpp-noexcept-move.html">hicpp-noexcept-move</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="hicpp-special-member-functions.html">hicpp-special-member-functions</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="hicpp-signed-bitwise">
+<h1>hicpp-signed-bitwise<a class="headerlink" href="#hicpp-signed-bitwise" title="Permalink to this headline">¶</a></h1>
+<p>Finds uses of bitwise operations on signed integer types, which may lead to
+undefined or implementation defined behaviour.</p>
+<p>The according rule is defined in the <a class="reference external" href="http://www.codingstandard.com/section/5-6-shift-operators/">High Integrity C++ Standard, Section 5.6.1</a>.</p>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="hicpp-noexcept-move.html">hicpp-noexcept-move</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="hicpp-special-member-functions.html">hicpp-special-member-functions</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-special-member-functions.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-special-member-functions.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-special-member-functions.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-special-member-functions.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,67 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><meta content="5;URL=cppcoreguidelines-special-member-functions.html" http-equiv="refresh" />
+
+ <title>clang-tidy - hicpp-special-member-functions — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="hicpp-static-assert" href="hicpp-static-assert.html" />
+ <link rel="prev" title="hicpp-signed-bitwise" href="hicpp-signed-bitwise.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - hicpp-special-member-functions</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="hicpp-signed-bitwise.html">hicpp-signed-bitwise</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="hicpp-static-assert.html">hicpp-static-assert</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="hicpp-special-member-functions">
+<h1>hicpp-special-member-functions<a class="headerlink" href="#hicpp-special-member-functions" title="Permalink to this headline">¶</a></h1>
+<p>This check is an alias for <a class="reference external" href="cppcoreguidelines-special-member-functions.html">cppcoreguidelines-special-member-functions</a>.
+Checks that special member functions have the correct signature, according to <a class="reference external" href="http://www.codingstandard.com/rule/12-5-7-declare-assignment-operators-with-the-ref-qualifier/">rule 12.5.7</a>.</p>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="hicpp-signed-bitwise.html">hicpp-signed-bitwise</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="hicpp-static-assert.html">hicpp-static-assert</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-static-assert.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-static-assert.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-static-assert.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-static-assert.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,68 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><meta content="5;URL=misc-static-assert.html" http-equiv="refresh" />
+
+ <title>clang-tidy - hicpp-static-assert — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="hicpp-undelegated-constructor" href="hicpp-undelegated-constructor.html" />
+ <link rel="prev" title="hicpp-special-member-functions" href="hicpp-special-member-functions.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - hicpp-static-assert</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="hicpp-special-member-functions.html">hicpp-special-member-functions</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="hicpp-undelegated-constructor.html">hicpp-undelegated-constructor</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="hicpp-static-assert">
+<h1>hicpp-static-assert<a class="headerlink" href="#hicpp-static-assert" title="Permalink to this headline">¶</a></h1>
+<p>The <cite>hicpp-static-assert</cite> check is an alias, please see
+<a class="reference external" href="misc-static-assert.html">misc-static-assert</a> for more information.
+It enforces the <a class="reference external" href="http://www.codingstandard.com/rule/6-1-1-enclose-the-body-of-a-selection-or-an-iteration-statement-in-a-compound-statement/">rule 7.1.10</a>.</p>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="hicpp-special-member-functions.html">hicpp-special-member-functions</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="hicpp-undelegated-constructor.html">hicpp-undelegated-constructor</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-undelegated-constructor.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-undelegated-constructor.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-undelegated-constructor.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-undelegated-constructor.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,82 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><meta content="5;URL=bugprone-undelegated-constructor.html" http-equiv="refresh" />
+
+ <title>clang-tidy - hicpp-undelegated-construtor — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="hicpp-uppercase-literal-suffix" href="hicpp-uppercase-literal-suffix.html" />
+ <link rel="prev" title="hicpp-static-assert" href="hicpp-static-assert.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - hicpp-undelegated-construtor</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="hicpp-static-assert.html">hicpp-static-assert</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="hicpp-uppercase-literal-suffix.html">hicpp-uppercase-literal-suffix</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="hicpp-undelegated-constructor">
+<h1>hicpp-undelegated-constructor<a class="headerlink" href="#hicpp-undelegated-constructor" title="Permalink to this headline">¶</a></h1>
+<p>This check is an alias for <a class="reference external" href="bugprone-undelegated-constructor.html">bugprone-undelegated-constructor</a>.
+Partially implements <a class="reference external" href="http://www.codingstandard.com/rule/12-4-5-use-delegating-constructors-to-reduce-code-duplication/">rule 12.4.5</a>
+to find misplaced constructor calls inside a constructor.</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">struct</span> <span class="n">Ctor</span> <span class="p">{</span>
+ <span class="n">Ctor</span><span class="p">();</span>
+ <span class="n">Ctor</span><span class="p">(</span><span class="kt">int</span><span class="p">);</span>
+ <span class="n">Ctor</span><span class="p">(</span><span class="kt">int</span><span class="p">,</span> <span class="kt">int</span><span class="p">);</span>
+ <span class="n">Ctor</span><span class="p">(</span><span class="n">Ctor</span> <span class="o">*</span><span class="n">i</span><span class="p">)</span> <span class="p">{</span>
+ <span class="c1">// All Ctor() calls result in a temporary object</span>
+ <span class="n">Ctor</span><span class="p">();</span> <span class="c1">// did you intend to call a delegated constructor?</span>
+ <span class="n">Ctor</span><span class="p">(</span><span class="mi">0</span><span class="p">);</span> <span class="c1">// did you intend to call a delegated constructor?</span>
+ <span class="n">Ctor</span><span class="p">(</span><span class="mi">1</span><span class="p">,</span> <span class="mi">2</span><span class="p">);</span> <span class="c1">// did you intend to call a delegated constructor?</span>
+ <span class="n">foo</span><span class="p">();</span>
+ <span class="p">}</span>
+<span class="p">};</span>
+</pre></div>
+</div>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="hicpp-static-assert.html">hicpp-static-assert</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="hicpp-uppercase-literal-suffix.html">hicpp-uppercase-literal-suffix</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-uppercase-literal-suffix.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-uppercase-literal-suffix.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-uppercase-literal-suffix.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-uppercase-literal-suffix.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,67 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><meta content="5;URL=readability-uppercase-literal-suffix.html" http-equiv="refresh" />
+
+ <title>clang-tidy - hicpp-uppercase-literal-suffix — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="hicpp-use-auto" href="hicpp-use-auto.html" />
+ <link rel="prev" title="hicpp-undelegated-constructor" href="hicpp-undelegated-constructor.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - hicpp-uppercase-literal-suffix</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="hicpp-undelegated-constructor.html">hicpp-undelegated-constructor</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="hicpp-use-auto.html">hicpp-use-auto</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="hicpp-uppercase-literal-suffix">
+<h1>hicpp-uppercase-literal-suffix<a class="headerlink" href="#hicpp-uppercase-literal-suffix" title="Permalink to this headline">¶</a></h1>
+<p>The hicpp-uppercase-literal-suffix check is an alias, please see
+<a class="reference external" href="readability-uppercase-literal-suffix.html">readability-uppercase-literal-suffix</a> for more information.</p>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="hicpp-undelegated-constructor.html">hicpp-undelegated-constructor</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="hicpp-use-auto.html">hicpp-use-auto</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-use-auto.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-use-auto.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-use-auto.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-use-auto.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,68 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><meta content="5;URL=modernize-use-auto.html" http-equiv="refresh" />
+
+ <title>clang-tidy - hicpp-use-auto — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="hicpp-use-emplace" href="hicpp-use-emplace.html" />
+ <link rel="prev" title="hicpp-uppercase-literal-suffix" href="hicpp-uppercase-literal-suffix.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - hicpp-use-auto</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="hicpp-uppercase-literal-suffix.html">hicpp-uppercase-literal-suffix</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="hicpp-use-emplace.html">hicpp-use-emplace</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="hicpp-use-auto">
+<h1>hicpp-use-auto<a class="headerlink" href="#hicpp-use-auto" title="Permalink to this headline">¶</a></h1>
+<p>The <cite>hicpp-use-auto</cite> check is an alias, please see
+<a class="reference external" href="modernize-use-auto.html">modernize-use-auto</a> for more information.
+It enforces the <a class="reference external" href="http://www.codingstandard.com/rule/7-1-8-use-auto-id-expr-when-declaring-a-variable-to-have-the-same-type-as-its-initializer-function-call/">rule 7.1.8</a>.</p>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="hicpp-uppercase-literal-suffix.html">hicpp-uppercase-literal-suffix</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="hicpp-use-emplace.html">hicpp-use-emplace</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-use-emplace.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-use-emplace.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-use-emplace.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-use-emplace.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,68 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><meta content="5;URL=modernize-use-emplace.html" http-equiv="refresh" />
+
+ <title>clang-tidy - hicpp-use-emplace — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="hicpp-use-equals-default" href="hicpp-use-equals-default.html" />
+ <link rel="prev" title="hicpp-use-auto" href="hicpp-use-auto.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - hicpp-use-emplace</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="hicpp-use-auto.html">hicpp-use-auto</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="hicpp-use-equals-default.html">hicpp-use-equals-default</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="hicpp-use-emplace">
+<h1>hicpp-use-emplace<a class="headerlink" href="#hicpp-use-emplace" title="Permalink to this headline">¶</a></h1>
+<p>The <cite>hicpp-use-emplace</cite> check is an alias, please see
+<a class="reference external" href="modernize-use-emplace.html">modernize-use-emplace</a> for more information.
+It enforces the <a class="reference external" href="http://www.codingstandard.com/rule/17-4-2-use-api-calls-that-construct-objects-in-place/">rule 17.4.2</a>.</p>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="hicpp-use-auto.html">hicpp-use-auto</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="hicpp-use-equals-default.html">hicpp-use-equals-default</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-use-equals-default.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-use-equals-default.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-use-equals-default.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-use-equals-default.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,67 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><meta content="5;URL=modernize-use-equals-default.html" http-equiv="refresh" />
+
+ <title>clang-tidy - hicpp-use-equals-defaults — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="hicpp-use-equals-delete" href="hicpp-use-equals-delete.html" />
+ <link rel="prev" title="hicpp-use-emplace" href="hicpp-use-emplace.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - hicpp-use-equals-defaults</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="hicpp-use-emplace.html">hicpp-use-emplace</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="hicpp-use-equals-delete.html">hicpp-use-equals-delete</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="hicpp-use-equals-default">
+<h1>hicpp-use-equals-default<a class="headerlink" href="#hicpp-use-equals-default" title="Permalink to this headline">¶</a></h1>
+<p>This check is an alias for <a class="reference external" href="modernize-use-equals-default.html">modernize-use-equals-default</a>.
+Implements <a class="reference external" href="http://www.codingstandard.com/rule/12-5-1-define-explicitly-default-or-delete-implicit-special-member-functions-of-concrete-classes/">rule 12.5.1</a> to explicitly default special member functions.</p>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="hicpp-use-emplace.html">hicpp-use-emplace</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="hicpp-use-equals-delete.html">hicpp-use-equals-delete</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-use-equals-delete.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-use-equals-delete.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-use-equals-delete.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-use-equals-delete.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,68 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><meta content="5;URL=modernize-use-equals-delete.html" http-equiv="refresh" />
+
+ <title>clang-tidy - hicpp-use-equals-delete — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="hicpp-use-noexcept" href="hicpp-use-noexcept.html" />
+ <link rel="prev" title="hicpp-use-equals-default" href="hicpp-use-equals-default.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - hicpp-use-equals-delete</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="hicpp-use-equals-default.html">hicpp-use-equals-default</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="hicpp-use-noexcept.html">hicpp-use-noexcept</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="hicpp-use-equals-delete">
+<h1>hicpp-use-equals-delete<a class="headerlink" href="#hicpp-use-equals-delete" title="Permalink to this headline">¶</a></h1>
+<p>This check is an alias for <a class="reference external" href="modernize-use-equals-delete.html">modernize-use-equals-delete</a>.
+Implements <a class="reference external" href="http://www.codingstandard.com/rule/12-5-1-define-explicitly-default-or-delete-implicit-special-member-functions-of-concrete-classes/">rule 12.5.1</a>
+to explicitly default or delete special member functions.</p>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="hicpp-use-equals-default.html">hicpp-use-equals-default</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="hicpp-use-noexcept.html">hicpp-use-noexcept</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-use-noexcept.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-use-noexcept.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-use-noexcept.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-use-noexcept.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,68 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><meta content="5;URL=modernize-use-noexcept.html" http-equiv="refresh" />
+
+ <title>clang-tidy - hicpp-use-noexcept — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="hicpp-use-nullptr" href="hicpp-use-nullptr.html" />
+ <link rel="prev" title="hicpp-use-equals-delete" href="hicpp-use-equals-delete.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - hicpp-use-noexcept</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="hicpp-use-equals-delete.html">hicpp-use-equals-delete</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="hicpp-use-nullptr.html">hicpp-use-nullptr</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="hicpp-use-noexcept">
+<h1>hicpp-use-noexcept<a class="headerlink" href="#hicpp-use-noexcept" title="Permalink to this headline">¶</a></h1>
+<p>The <cite>hicpp-use-noexcept</cite> check is an alias, please see
+<a class="reference external" href="modernize-use-noexcept.html">modernize-use-noexcept</a> for more information.
+It enforces the <a class="reference external" href="http://www.codingstandard.com/rule/1-3-5-do-not-use-throw-exception-specifications/">rule 1.3.5</a>.</p>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="hicpp-use-equals-delete.html">hicpp-use-equals-delete</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="hicpp-use-nullptr.html">hicpp-use-nullptr</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-use-nullptr.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-use-nullptr.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-use-nullptr.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-use-nullptr.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,68 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><meta content="5;URL=modernize-use-nullptr.html" http-equiv="refresh" />
+
+ <title>clang-tidy - hicpp-use-nullptr — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="hicpp-use-override" href="hicpp-use-override.html" />
+ <link rel="prev" title="hicpp-use-noexcept" href="hicpp-use-noexcept.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - hicpp-use-nullptr</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="hicpp-use-noexcept.html">hicpp-use-noexcept</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="hicpp-use-override.html">hicpp-use-override</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="hicpp-use-nullptr">
+<h1>hicpp-use-nullptr<a class="headerlink" href="#hicpp-use-nullptr" title="Permalink to this headline">¶</a></h1>
+<p>The <cite>hicpp-use-nullptr</cite> check is an alias, please see
+<a class="reference external" href="modernize-use-nullptr.html">modernize-use-nullptr</a> for more information.
+It enforces the <a class="reference external" href="http://www.codingstandard.com/rule/2-5-3-use-nullptr-for-the-null-pointer-constant/">rule 2.5.3</a>.</p>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="hicpp-use-noexcept.html">hicpp-use-noexcept</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="hicpp-use-override.html">hicpp-use-override</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-use-override.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-use-override.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-use-override.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-use-override.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,68 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><meta content="5;URL=modernize-use-override.html" http-equiv="refresh" />
+
+ <title>clang-tidy - hicpp-use-override — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="hicpp-vararg" href="hicpp-vararg.html" />
+ <link rel="prev" title="hicpp-use-nullptr" href="hicpp-use-nullptr.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - hicpp-use-override</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="hicpp-use-nullptr.html">hicpp-use-nullptr</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="hicpp-vararg.html">hicpp-vararg</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="hicpp-use-override">
+<h1>hicpp-use-override<a class="headerlink" href="#hicpp-use-override" title="Permalink to this headline">¶</a></h1>
+<p>This check is an alias for <a class="reference external" href="modernize-use-override.html">modernize-use-override</a>.
+Implements <a class="reference external" href="http://www.codingstandard.com/section/10-2-virtual-functions/">rule 10.2.1</a> to
+declare a virtual function <cite>override</cite> when overriding.</p>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="hicpp-use-nullptr.html">hicpp-use-nullptr</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="hicpp-vararg.html">hicpp-vararg</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-vararg.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-vararg.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-vararg.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-vararg.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,69 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><meta content="5;URL=cppcoreguidelines-pro-type-vararg.html" http-equiv="refresh" />
+
+ <title>clang-tidy - hicpp-vararg — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="llvm-header-guard" href="llvm-header-guard.html" />
+ <link rel="prev" title="hicpp-use-override" href="hicpp-use-override.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - hicpp-vararg</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="hicpp-use-override.html">hicpp-use-override</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="llvm-header-guard.html">llvm-header-guard</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="hicpp-vararg">
+<h1>hicpp-vararg<a class="headerlink" href="#hicpp-vararg" title="Permalink to this headline">¶</a></h1>
+<p>The <cite>hicpp-vararg</cite> check is an alias, please see
+<a class="reference external" href="cppcoreguidelines-pro-type-vararg.html">cppcoreguidelines-pro-type-vararg</a>
+for more information.
+It enforces the <a class="reference external" href="http://www.codingstandard.com/section/14-1-template-declarations/">rule 14.1.1</a>.</p>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="hicpp-use-override.html">hicpp-use-override</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="llvm-header-guard.html">llvm-header-guard</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/list.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/list.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/list.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/list.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,642 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>clang-tidy - Clang-Tidy Checks — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="abseil-duration-addition" href="abseil-duration-addition.html" />
+ <link rel="prev" title="Clang-Tidy" href="../index.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - Clang-Tidy Checks</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="../index.html">Clang-Tidy</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="abseil-duration-addition.html">abseil-duration-addition</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="clang-tidy-checks">
+<h1>Clang-Tidy Checks<a class="headerlink" href="#clang-tidy-checks" title="Permalink to this headline">¶</a></h1>
+<div class="toctree-wrapper compound">
+<ul>
+<li class="toctree-l1"><a class="reference internal" href="abseil-duration-addition.html">abseil-duration-addition</a></li>
+<li class="toctree-l1"><a class="reference internal" href="abseil-duration-comparison.html">abseil-duration-comparison</a></li>
+<li class="toctree-l1"><a class="reference internal" href="abseil-duration-conversion-cast.html">abseil-duration-conversion-cast</a></li>
+<li class="toctree-l1"><a class="reference internal" href="abseil-duration-division.html">abseil-duration-division</a></li>
+<li class="toctree-l1"><a class="reference internal" href="abseil-duration-factory-float.html">abseil-duration-factory-float</a></li>
+<li class="toctree-l1"><a class="reference internal" href="abseil-duration-factory-scale.html">abseil-duration-factory-scale</a></li>
+<li class="toctree-l1"><a class="reference internal" href="abseil-duration-subtraction.html">abseil-duration-subtraction</a></li>
+<li class="toctree-l1"><a class="reference internal" href="abseil-duration-unnecessary-conversion.html">abseil-duration-unnecessary-conversion</a></li>
+<li class="toctree-l1"><a class="reference internal" href="abseil-faster-strsplit-delimiter.html">abseil-faster-strsplit-delimiter</a></li>
+<li class="toctree-l1"><a class="reference internal" href="abseil-no-internal-dependencies.html">abseil-no-internal-dependencies</a></li>
+<li class="toctree-l1"><a class="reference internal" href="abseil-no-namespace.html">abseil-no-namespace</a></li>
+<li class="toctree-l1"><a class="reference internal" href="abseil-redundant-strcat-calls.html">abseil-redundant-strcat-calls</a></li>
+<li class="toctree-l1"><a class="reference internal" href="abseil-str-cat-append.html">abseil-str-cat-append</a></li>
+<li class="toctree-l1"><a class="reference internal" href="abseil-string-find-startswith.html">abseil-string-find-startswith</a><ul>
+<li class="toctree-l2"><a class="reference internal" href="abseil-string-find-startswith.html#options">Options</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="abseil-time-comparison.html">abseil-time-comparison</a></li>
+<li class="toctree-l1"><a class="reference internal" href="abseil-time-subtraction.html">abseil-time-subtraction</a></li>
+<li class="toctree-l1"><a class="reference internal" href="abseil-upgrade-duration-conversions.html">abseil-upgrade-duration-conversions</a></li>
+<li class="toctree-l1"><a class="reference internal" href="android-cloexec-accept.html">android-cloexec-accept</a></li>
+<li class="toctree-l1"><a class="reference internal" href="android-cloexec-accept4.html">android-cloexec-accept4</a></li>
+<li class="toctree-l1"><a class="reference internal" href="android-cloexec-creat.html">android-cloexec-creat</a></li>
+<li class="toctree-l1"><a class="reference internal" href="android-cloexec-dup.html">android-cloexec-dup</a></li>
+<li class="toctree-l1"><a class="reference internal" href="android-cloexec-epoll-create.html">android-cloexec-epoll-create</a></li>
+<li class="toctree-l1"><a class="reference internal" href="android-cloexec-epoll-create1.html">android-cloexec-epoll-create1</a></li>
+<li class="toctree-l1"><a class="reference internal" href="android-cloexec-fopen.html">android-cloexec-fopen</a></li>
+<li class="toctree-l1"><a class="reference internal" href="android-cloexec-inotify-init.html">android-cloexec-inotify-init</a></li>
+<li class="toctree-l1"><a class="reference internal" href="android-cloexec-inotify-init1.html">android-cloexec-inotify-init1</a></li>
+<li class="toctree-l1"><a class="reference internal" href="android-cloexec-memfd-create.html">android-cloexec-memfd-create</a></li>
+<li class="toctree-l1"><a class="reference internal" href="android-cloexec-open.html">android-cloexec-open</a></li>
+<li class="toctree-l1"><a class="reference internal" href="android-cloexec-pipe.html">android-cloexec-pipe</a></li>
+<li class="toctree-l1"><a class="reference internal" href="android-cloexec-pipe2.html">android-cloexec-pipe2</a></li>
+<li class="toctree-l1"><a class="reference internal" href="android-cloexec-socket.html">android-cloexec-socket</a></li>
+<li class="toctree-l1"><a class="reference internal" href="android-comparison-in-temp-failure-retry.html">android-comparison-in-temp-failure-retry</a></li>
+<li class="toctree-l1"><a class="reference internal" href="boost-use-to-string.html">boost-use-to-string</a></li>
+<li class="toctree-l1"><a class="reference internal" href="bugprone-argument-comment.html">bugprone-argument-comment</a><ul>
+<li class="toctree-l2"><a class="reference internal" href="bugprone-argument-comment.html#options">Options</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="bugprone-assert-side-effect.html">bugprone-assert-side-effect</a><ul>
+<li class="toctree-l2"><a class="reference internal" href="bugprone-assert-side-effect.html#options">Options</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="bugprone-bool-pointer-implicit-conversion.html">bugprone-bool-pointer-implicit-conversion</a></li>
+<li class="toctree-l1"><a class="reference internal" href="bugprone-branch-clone.html">bugprone-branch-clone</a></li>
+<li class="toctree-l1"><a class="reference internal" href="bugprone-copy-constructor-init.html">bugprone-copy-constructor-init</a></li>
+<li class="toctree-l1"><a class="reference internal" href="bugprone-dangling-handle.html">bugprone-dangling-handle</a><ul>
+<li class="toctree-l2"><a class="reference internal" href="bugprone-dangling-handle.html#options">Options</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="bugprone-exception-escape.html">bugprone-exception-escape</a><ul>
+<li class="toctree-l2"><a class="reference internal" href="bugprone-exception-escape.html#options">Options</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="bugprone-fold-init-type.html">bugprone-fold-init-type</a></li>
+<li class="toctree-l1"><a class="reference internal" href="bugprone-forward-declaration-namespace.html">bugprone-forward-declaration-namespace</a></li>
+<li class="toctree-l1"><a class="reference internal" href="bugprone-forwarding-reference-overload.html">bugprone-forwarding-reference-overload</a><ul>
+<li class="toctree-l2"><a class="reference internal" href="bugprone-forwarding-reference-overload.html#background">Background</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="bugprone-inaccurate-erase.html">bugprone-inaccurate-erase</a></li>
+<li class="toctree-l1"><a class="reference internal" href="bugprone-incorrect-roundings.html">bugprone-incorrect-roundings</a></li>
+<li class="toctree-l1"><a class="reference internal" href="bugprone-integer-division.html">bugprone-integer-division</a></li>
+<li class="toctree-l1"><a class="reference internal" href="bugprone-lambda-function-name.html">bugprone-lambda-function-name</a></li>
+<li class="toctree-l1"><a class="reference internal" href="bugprone-macro-parentheses.html">bugprone-macro-parentheses</a></li>
+<li class="toctree-l1"><a class="reference internal" href="bugprone-macro-repeated-side-effects.html">bugprone-macro-repeated-side-effects</a></li>
+<li class="toctree-l1"><a class="reference internal" href="bugprone-misplaced-operator-in-strlen-in-alloc.html">bugprone-misplaced-operator-in-strlen-in-alloc</a></li>
+<li class="toctree-l1"><a class="reference internal" href="bugprone-misplaced-widening-cast.html">bugprone-misplaced-widening-cast</a><ul>
+<li class="toctree-l2"><a class="reference internal" href="bugprone-misplaced-widening-cast.html#implicit-casts">Implicit casts</a></li>
+<li class="toctree-l2"><a class="reference internal" href="bugprone-misplaced-widening-cast.html#floating-point">Floating point</a></li>
+<li class="toctree-l2"><a class="reference internal" href="bugprone-misplaced-widening-cast.html#options">Options</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="bugprone-move-forwarding-reference.html">bugprone-move-forwarding-reference</a><ul>
+<li class="toctree-l2"><a class="reference internal" href="bugprone-move-forwarding-reference.html#background">Background</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="bugprone-multiple-statement-macro.html">bugprone-multiple-statement-macro</a></li>
+<li class="toctree-l1"><a class="reference internal" href="bugprone-parent-virtual-call.html">bugprone-parent-virtual-call</a></li>
+<li class="toctree-l1"><a class="reference internal" href="bugprone-posix-return.html">bugprone-posix-return</a></li>
+<li class="toctree-l1"><a class="reference internal" href="bugprone-sizeof-container.html">bugprone-sizeof-container</a></li>
+<li class="toctree-l1"><a class="reference internal" href="bugprone-sizeof-expression.html">bugprone-sizeof-expression</a><ul>
+<li class="toctree-l2"><a class="reference internal" href="bugprone-sizeof-expression.html#suspicious-usage-of-sizeof-k">Suspicious usage of âsizeof(K)â</a></li>
+<li class="toctree-l2"><a class="reference internal" href="bugprone-sizeof-expression.html#suspicious-usage-of-sizeof-expr">Suspicious usage of âsizeof(expr)â</a></li>
+<li class="toctree-l2"><a class="reference internal" href="bugprone-sizeof-expression.html#suspicious-usage-of-sizeof-this">Suspicious usage of âsizeof(this)â</a></li>
+<li class="toctree-l2"><a class="reference internal" href="bugprone-sizeof-expression.html#suspicious-usage-of-sizeof-char">Suspicious usage of âsizeof(char*)â</a></li>
+<li class="toctree-l2"><a class="reference internal" href="bugprone-sizeof-expression.html#suspicious-usage-of-sizeof-a">Suspicious usage of âsizeof(A*)â</a></li>
+<li class="toctree-l2"><a class="reference internal" href="bugprone-sizeof-expression.html#suspicious-usage-of-sizeof-sizeof">Suspicious usage of âsizeof(â¦)/sizeof(â¦)â</a></li>
+<li class="toctree-l2"><a class="reference internal" href="bugprone-sizeof-expression.html#suspicious-sizeof-by-sizeof-expression">Suspicious âsizeofâ by âsizeofâ expression</a></li>
+<li class="toctree-l2"><a class="reference internal" href="bugprone-sizeof-expression.html#id1">Suspicious usage of âsizeof(sizeof(â¦))â</a></li>
+<li class="toctree-l2"><a class="reference internal" href="bugprone-sizeof-expression.html#options">Options</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="bugprone-string-constructor.html">bugprone-string-constructor</a><ul>
+<li class="toctree-l2"><a class="reference internal" href="bugprone-string-constructor.html#options">Options</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="bugprone-string-integer-assignment.html">bugprone-string-integer-assignment</a></li>
+<li class="toctree-l1"><a class="reference internal" href="bugprone-string-literal-with-embedded-nul.html">bugprone-string-literal-with-embedded-nul</a><ul>
+<li class="toctree-l2"><a class="reference internal" href="bugprone-string-literal-with-embedded-nul.html#invalid-escaping">Invalid escaping</a></li>
+<li class="toctree-l2"><a class="reference internal" href="bugprone-string-literal-with-embedded-nul.html#truncated-literal">Truncated literal</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="bugprone-suspicious-enum-usage.html">bugprone-suspicious-enum-usage</a><ul>
+<li class="toctree-l2"><a class="reference internal" href="bugprone-suspicious-enum-usage.html#options">Options</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="bugprone-suspicious-memset-usage.html">bugprone-suspicious-memset-usage</a></li>
+<li class="toctree-l1"><a class="reference internal" href="bugprone-suspicious-missing-comma.html">bugprone-suspicious-missing-comma</a><ul>
+<li class="toctree-l2"><a class="reference internal" href="bugprone-suspicious-missing-comma.html#options">Options</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="bugprone-suspicious-semicolon.html">bugprone-suspicious-semicolon</a></li>
+<li class="toctree-l1"><a class="reference internal" href="bugprone-suspicious-string-compare.html">bugprone-suspicious-string-compare</a><ul>
+<li class="toctree-l2"><a class="reference internal" href="bugprone-suspicious-string-compare.html#options">Options</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="bugprone-swapped-arguments.html">bugprone-swapped-arguments</a></li>
+<li class="toctree-l1"><a class="reference internal" href="bugprone-terminating-continue.html">bugprone-terminating-continue</a></li>
+<li class="toctree-l1"><a class="reference internal" href="bugprone-throw-keyword-missing.html">bugprone-throw-keyword-missing</a></li>
+<li class="toctree-l1"><a class="reference internal" href="bugprone-too-small-loop-variable.html">bugprone-too-small-loop-variable</a></li>
+<li class="toctree-l1"><a class="reference internal" href="bugprone-undefined-memory-manipulation.html">bugprone-undefined-memory-manipulation</a></li>
+<li class="toctree-l1"><a class="reference internal" href="bugprone-undelegated-constructor.html">bugprone-undelegated-constructor</a></li>
+<li class="toctree-l1"><a class="reference internal" href="bugprone-unhandled-self-assignment.html">bugprone-unhandled-self-assignment</a></li>
+<li class="toctree-l1"><a class="reference internal" href="bugprone-unused-raii.html">bugprone-unused-raii</a></li>
+<li class="toctree-l1"><a class="reference internal" href="bugprone-unused-return-value.html">bugprone-unused-return-value</a><ul>
+<li class="toctree-l2"><a class="reference internal" href="bugprone-unused-return-value.html#options">Options</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="bugprone-use-after-move.html">bugprone-use-after-move</a><ul>
+<li class="toctree-l2"><a class="reference internal" href="bugprone-use-after-move.html#unsequenced-moves-uses-and-reinitializations">Unsequenced moves, uses, and reinitializations</a></li>
+<li class="toctree-l2"><a class="reference internal" href="bugprone-use-after-move.html#move">Move</a></li>
+<li class="toctree-l2"><a class="reference internal" href="bugprone-use-after-move.html#use">Use</a></li>
+<li class="toctree-l2"><a class="reference internal" href="bugprone-use-after-move.html#reinitialization">Reinitialization</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="bugprone-virtual-near-miss.html">bugprone-virtual-near-miss</a></li>
+<li class="toctree-l1"><a class="reference internal" href="cert-dcl03-c.html">cert-dcl03-c (redirects to misc-static-assert)</a></li>
+<li class="toctree-l1"><a class="reference internal" href="cert-dcl16-c.html">cert-dcl16-c (redirects to readability-uppercase-literal-suffix)</a></li>
+<li class="toctree-l1"><a class="reference internal" href="cert-dcl21-cpp.html">cert-dcl21-cpp</a></li>
+<li class="toctree-l1"><a class="reference internal" href="cert-dcl50-cpp.html">cert-dcl50-cpp</a></li>
+<li class="toctree-l1"><a class="reference internal" href="cert-dcl54-cpp.html">cert-dcl54-cpp (redirects to misc-new-delete-overloads)</a></li>
+<li class="toctree-l1"><a class="reference internal" href="cert-dcl58-cpp.html">cert-dcl58-cpp</a></li>
+<li class="toctree-l1"><a class="reference internal" href="cert-dcl59-cpp.html">cert-dcl59-cpp (redirects to google-build-namespaces)</a></li>
+<li class="toctree-l1"><a class="reference internal" href="cert-env33-c.html">cert-env33-c</a></li>
+<li class="toctree-l1"><a class="reference internal" href="cert-err09-cpp.html">cert-err09-cpp (redirects to misc-throw-by-value-catch-by-reference)</a></li>
+<li class="toctree-l1"><a class="reference internal" href="cert-err34-c.html">cert-err34-c</a></li>
+<li class="toctree-l1"><a class="reference internal" href="cert-err52-cpp.html">cert-err52-cpp</a></li>
+<li class="toctree-l1"><a class="reference internal" href="cert-err58-cpp.html">cert-err58-cpp</a></li>
+<li class="toctree-l1"><a class="reference internal" href="cert-err60-cpp.html">cert-err60-cpp</a></li>
+<li class="toctree-l1"><a class="reference internal" href="cert-err61-cpp.html">cert-err61-cpp (redirects to misc-throw-by-value-catch-by-reference)</a></li>
+<li class="toctree-l1"><a class="reference internal" href="cert-fio38-c.html">cert-fio38-c (redirects to misc-non-copyable-objects)</a></li>
+<li class="toctree-l1"><a class="reference internal" href="cert-flp30-c.html">cert-flp30-c</a></li>
+<li class="toctree-l1"><a class="reference internal" href="cert-msc30-c.html">cert-msc30-c (redirects to cert-msc50-cpp)</a></li>
+<li class="toctree-l1"><a class="reference internal" href="cert-msc32-c.html">cert-msc32-c (redirects to cert-msc51-cpp)</a></li>
+<li class="toctree-l1"><a class="reference internal" href="cert-msc50-cpp.html">cert-msc50-cpp</a></li>
+<li class="toctree-l1"><a class="reference internal" href="cert-msc51-cpp.html">cert-msc51-cpp</a><ul>
+<li class="toctree-l2"><a class="reference internal" href="cert-msc51-cpp.html#options">Options</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="cert-oop11-cpp.html">cert-oop11-cpp (redirects to performance-move-constructor-init)</a></li>
+<li class="toctree-l1"><a class="reference internal" href="cert-oop54-cpp.html">cert-oop54-cpp (redirects to bugprone-unhandled-self-assignment)</a></li>
+<li class="toctree-l1"><a class="reference internal" href="cppcoreguidelines-avoid-c-arrays.html">cppcoreguidelines-avoid-c-arrays (redirects to modernize-avoid-c-arrays)</a></li>
+<li class="toctree-l1"><a class="reference internal" href="cppcoreguidelines-avoid-goto.html">cppcoreguidelines-avoid-goto</a></li>
+<li class="toctree-l1"><a class="reference internal" href="cppcoreguidelines-avoid-magic-numbers.html">cppcoreguidelines-avoid-magic-numbers (redirects to readability-magic-numbers)</a></li>
+<li class="toctree-l1"><a class="reference internal" href="cppcoreguidelines-c-copy-assignment-signature.html">cppcoreguidelines-c-copy-assignment-signature (redirects to misc-unconventional-assign-operator)</a></li>
+<li class="toctree-l1"><a class="reference internal" href="cppcoreguidelines-explicit-virtual-functions.html">cppcoreguidelines-explicit-virtual-functions (redirects to modernize-use-override)</a></li>
+<li class="toctree-l1"><a class="reference internal" href="cppcoreguidelines-interfaces-global-init.html">cppcoreguidelines-interfaces-global-init</a></li>
+<li class="toctree-l1"><a class="reference internal" href="cppcoreguidelines-macro-usage.html">cppcoreguidelines-macro-usage</a><ul>
+<li class="toctree-l2"><a class="reference internal" href="cppcoreguidelines-macro-usage.html#options">Options</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="cppcoreguidelines-narrowing-conversions.html">cppcoreguidelines-narrowing-conversions</a><ul>
+<li class="toctree-l2"><a class="reference internal" href="cppcoreguidelines-narrowing-conversions.html#options">Options</a></li>
+<li class="toctree-l2"><a class="reference internal" href="cppcoreguidelines-narrowing-conversions.html#faq">FAQ</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="cppcoreguidelines-no-malloc.html">cppcoreguidelines-no-malloc</a><ul>
+<li class="toctree-l2"><a class="reference internal" href="cppcoreguidelines-no-malloc.html#options">Options</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="cppcoreguidelines-non-private-member-variables-in-classes.html">cppcoreguidelines-non-private-member-variables-in-classes (redirects to misc-non-private-member-variables-in-classes)</a></li>
+<li class="toctree-l1"><a class="reference internal" href="cppcoreguidelines-owning-memory.html">cppcoreguidelines-owning-memory</a><ul>
+<li class="toctree-l2"><a class="reference internal" href="cppcoreguidelines-owning-memory.html#options">Options</a></li>
+<li class="toctree-l2"><a class="reference internal" href="cppcoreguidelines-owning-memory.html#limitations">Limitations</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="cppcoreguidelines-pro-bounds-array-to-pointer-decay.html">cppcoreguidelines-pro-bounds-array-to-pointer-decay</a></li>
+<li class="toctree-l1"><a class="reference internal" href="cppcoreguidelines-pro-bounds-constant-array-index.html">cppcoreguidelines-pro-bounds-constant-array-index</a><ul>
+<li class="toctree-l2"><a class="reference internal" href="cppcoreguidelines-pro-bounds-constant-array-index.html#options">Options</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="cppcoreguidelines-pro-bounds-pointer-arithmetic.html">cppcoreguidelines-pro-bounds-pointer-arithmetic</a></li>
+<li class="toctree-l1"><a class="reference internal" href="cppcoreguidelines-pro-type-const-cast.html">cppcoreguidelines-pro-type-const-cast</a></li>
+<li class="toctree-l1"><a class="reference internal" href="cppcoreguidelines-pro-type-cstyle-cast.html">cppcoreguidelines-pro-type-cstyle-cast</a></li>
+<li class="toctree-l1"><a class="reference internal" href="cppcoreguidelines-pro-type-member-init.html">cppcoreguidelines-pro-type-member-init</a><ul>
+<li class="toctree-l2"><a class="reference internal" href="cppcoreguidelines-pro-type-member-init.html#options">Options</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="cppcoreguidelines-pro-type-reinterpret-cast.html">cppcoreguidelines-pro-type-reinterpret-cast</a></li>
+<li class="toctree-l1"><a class="reference internal" href="cppcoreguidelines-pro-type-static-cast-downcast.html">cppcoreguidelines-pro-type-static-cast-downcast</a></li>
+<li class="toctree-l1"><a class="reference internal" href="cppcoreguidelines-pro-type-union-access.html">cppcoreguidelines-pro-type-union-access</a></li>
+<li class="toctree-l1"><a class="reference internal" href="cppcoreguidelines-pro-type-vararg.html">cppcoreguidelines-pro-type-vararg</a></li>
+<li class="toctree-l1"><a class="reference internal" href="cppcoreguidelines-slicing.html">cppcoreguidelines-slicing</a></li>
+<li class="toctree-l1"><a class="reference internal" href="cppcoreguidelines-special-member-functions.html">cppcoreguidelines-special-member-functions</a><ul>
+<li class="toctree-l2"><a class="reference internal" href="cppcoreguidelines-special-member-functions.html#options">Options</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="fuchsia-default-arguments-calls.html">fuchsia-default-arguments-calls</a></li>
+<li class="toctree-l1"><a class="reference internal" href="fuchsia-default-arguments-declarations.html">fuchsia-default-arguments-declarations</a></li>
+<li class="toctree-l1"><a class="reference internal" href="fuchsia-header-anon-namespaces.html">fuchsia-header-anon-namespaces (redirects to google-build-namespaces)</a></li>
+<li class="toctree-l1"><a class="reference internal" href="fuchsia-multiple-inheritance.html">fuchsia-multiple-inheritance</a></li>
+<li class="toctree-l1"><a class="reference internal" href="fuchsia-overloaded-operator.html">fuchsia-overloaded-operator</a></li>
+<li class="toctree-l1"><a class="reference internal" href="fuchsia-restrict-system-includes.html">fuchsia-restrict-system-includes</a><ul>
+<li class="toctree-l2"><a class="reference internal" href="fuchsia-restrict-system-includes.html#options">Options</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="fuchsia-statically-constructed-objects.html">fuchsia-statically-constructed-objects</a></li>
+<li class="toctree-l1"><a class="reference internal" href="fuchsia-trailing-return.html">fuchsia-trailing-return</a></li>
+<li class="toctree-l1"><a class="reference internal" href="fuchsia-virtual-inheritance.html">fuchsia-virtual-inheritance</a></li>
+<li class="toctree-l1"><a class="reference internal" href="google-build-explicit-make-pair.html">google-build-explicit-make-pair</a></li>
+<li class="toctree-l1"><a class="reference internal" href="google-build-namespaces.html">google-build-namespaces</a><ul>
+<li class="toctree-l2"><a class="reference internal" href="google-build-namespaces.html#options">Options</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="google-build-using-namespace.html">google-build-using-namespace</a></li>
+<li class="toctree-l1"><a class="reference internal" href="google-default-arguments.html">google-default-arguments</a></li>
+<li class="toctree-l1"><a class="reference internal" href="google-explicit-constructor.html">google-explicit-constructor</a></li>
+<li class="toctree-l1"><a class="reference internal" href="google-global-names-in-headers.html">google-global-names-in-headers</a><ul>
+<li class="toctree-l2"><a class="reference internal" href="google-global-names-in-headers.html#options">Options</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="google-objc-avoid-nsobject-new.html">google-objc-avoid-nsobject-new</a></li>
+<li class="toctree-l1"><a class="reference internal" href="google-objc-avoid-throwing-exception.html">google-objc-avoid-throwing-exception</a></li>
+<li class="toctree-l1"><a class="reference internal" href="google-objc-function-naming.html">google-objc-function-naming</a></li>
+<li class="toctree-l1"><a class="reference internal" href="google-objc-global-variable-declaration.html">google-objc-global-variable-declaration</a></li>
+<li class="toctree-l1"><a class="reference internal" href="google-readability-avoid-underscore-in-googletest-name.html">google-readability-avoid-underscore-in-googletest-name</a></li>
+<li class="toctree-l1"><a class="reference internal" href="google-readability-braces-around-statements.html">google-readability-braces-around-statements (redirects to readability-braces-around-statements)</a></li>
+<li class="toctree-l1"><a class="reference internal" href="google-readability-casting.html">google-readability-casting</a></li>
+<li class="toctree-l1"><a class="reference internal" href="google-readability-function-size.html">google-readability-function-size (redirects to readability-function-size)</a></li>
+<li class="toctree-l1"><a class="reference internal" href="google-readability-namespace-comments.html">google-readability-namespace-comments (redirects to llvm-namespace-comment)</a></li>
+<li class="toctree-l1"><a class="reference internal" href="google-readability-todo.html">google-readability-todo</a></li>
+<li class="toctree-l1"><a class="reference internal" href="google-runtime-int.html">google-runtime-int</a><ul>
+<li class="toctree-l2"><a class="reference internal" href="google-runtime-int.html#options">Options</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="google-runtime-operator.html">google-runtime-operator</a></li>
+<li class="toctree-l1"><a class="reference internal" href="google-runtime-references.html">google-runtime-references</a><ul>
+<li class="toctree-l2"><a class="reference internal" href="google-runtime-references.html#options">Options</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="hicpp-avoid-c-arrays.html">hicpp-avoid-c-arrays (redirects to modernize-avoid-c-arrays)</a></li>
+<li class="toctree-l1"><a class="reference internal" href="hicpp-avoid-goto.html">hicpp-avoid-goto</a></li>
+<li class="toctree-l1"><a class="reference internal" href="hicpp-braces-around-statements.html">hicpp-braces-around-statements (redirects to readability-braces-around-statements)</a></li>
+<li class="toctree-l1"><a class="reference internal" href="hicpp-deprecated-headers.html">hicpp-deprecated-headers (redirects to modernize-deprecated-headers)</a></li>
+<li class="toctree-l1"><a class="reference internal" href="hicpp-exception-baseclass.html">hicpp-exception-baseclass</a></li>
+<li class="toctree-l1"><a class="reference internal" href="hicpp-explicit-conversions.html">hicpp-explicit-conversions (redirects to google-explicit-constructor)</a></li>
+<li class="toctree-l1"><a class="reference internal" href="hicpp-function-size.html">hicpp-function-size (redirects to readability-function-size)</a></li>
+<li class="toctree-l1"><a class="reference internal" href="hicpp-invalid-access-moved.html">hicpp-invalid-access-moved (redirects to bugprone-use-after-move)</a></li>
+<li class="toctree-l1"><a class="reference internal" href="hicpp-member-init.html">hicpp-member-init (redirects to cppcoreguidelines-pro-type-member-init)</a></li>
+<li class="toctree-l1"><a class="reference internal" href="hicpp-move-const-arg.html">hicpp-move-const-arg (redirects to performance-move-const-arg)</a></li>
+<li class="toctree-l1"><a class="reference internal" href="hicpp-multiway-paths-covered.html">hicpp-multiway-paths-covered</a><ul>
+<li class="toctree-l2"><a class="reference internal" href="hicpp-multiway-paths-covered.html#options">Options</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="hicpp-named-parameter.html">hicpp-named-parameter (redirects to readability-named-parameter)</a></li>
+<li class="toctree-l1"><a class="reference internal" href="hicpp-new-delete-operators.html">hicpp-new-delete-operators (redirects to misc-new-delete-overloads)</a></li>
+<li class="toctree-l1"><a class="reference internal" href="hicpp-no-array-decay.html">hicpp-no-array-decay (redirects to cppcoreguidelines-pro-bounds-array-to-pointer-decay)</a></li>
+<li class="toctree-l1"><a class="reference internal" href="hicpp-no-assembler.html">hicpp-no-assembler</a></li>
+<li class="toctree-l1"><a class="reference internal" href="hicpp-no-malloc.html">hicpp-no-malloc (redirects to cppcoreguidelines-no-malloc)</a></li>
+<li class="toctree-l1"><a class="reference internal" href="hicpp-noexcept-move.html">hicpp-noexcept-move (redirects to misc-noexcept-moveconstructor)</a></li>
+<li class="toctree-l1"><a class="reference internal" href="hicpp-signed-bitwise.html">hicpp-signed-bitwise</a></li>
+<li class="toctree-l1"><a class="reference internal" href="hicpp-special-member-functions.html">hicpp-special-member-functions (redirects to cppcoreguidelines-special-member-functions)</a></li>
+<li class="toctree-l1"><a class="reference internal" href="hicpp-static-assert.html">hicpp-static-assert (redirects to misc-static-assert)</a></li>
+<li class="toctree-l1"><a class="reference internal" href="hicpp-undelegated-constructor.html">hicpp-undelegated-constructor (redirects to bugprone-undelegated-constructor)</a></li>
+<li class="toctree-l1"><a class="reference internal" href="hicpp-uppercase-literal-suffix.html">hicpp-uppercase-literal-suffix (redirects to readability-uppercase-literal-suffix)</a></li>
+<li class="toctree-l1"><a class="reference internal" href="hicpp-use-auto.html">hicpp-use-auto (redirects to modernize-use-auto)</a></li>
+<li class="toctree-l1"><a class="reference internal" href="hicpp-use-emplace.html">hicpp-use-emplace (redirects to modernize-use-emplace)</a></li>
+<li class="toctree-l1"><a class="reference internal" href="hicpp-use-equals-default.html">hicpp-use-equals-default (redirects to modernize-use-equals-default)</a></li>
+<li class="toctree-l1"><a class="reference internal" href="hicpp-use-equals-delete.html">hicpp-use-equals-delete (redirects to modernize-use-equals-delete)</a></li>
+<li class="toctree-l1"><a class="reference internal" href="hicpp-use-noexcept.html">hicpp-use-noexcept (redirects to modernize-use-noexcept)</a></li>
+<li class="toctree-l1"><a class="reference internal" href="hicpp-use-nullptr.html">hicpp-use-nullptr (redirects to modernize-use-nullptr)</a></li>
+<li class="toctree-l1"><a class="reference internal" href="hicpp-use-override.html">hicpp-use-override (redirects to modernize-use-override)</a></li>
+<li class="toctree-l1"><a class="reference internal" href="hicpp-vararg.html">hicpp-vararg (redirects to cppcoreguidelines-pro-type-vararg)</a></li>
+<li class="toctree-l1"><a class="reference internal" href="llvm-header-guard.html">llvm-header-guard</a><ul>
+<li class="toctree-l2"><a class="reference internal" href="llvm-header-guard.html#options">Options</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="llvm-include-order.html">llvm-include-order</a></li>
+<li class="toctree-l1"><a class="reference internal" href="llvm-namespace-comment.html">llvm-namespace-comment</a><ul>
+<li class="toctree-l2"><a class="reference internal" href="llvm-namespace-comment.html#options">Options</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="llvm-prefer-isa-or-dyn-cast-in-conditionals.html">llvm-prefer-isa-or-dyn-cast-in-conditionals</a></li>
+<li class="toctree-l1"><a class="reference internal" href="llvm-twine-local.html">llvm-twine-local</a></li>
+<li class="toctree-l1"><a class="reference internal" href="misc-definitions-in-headers.html">misc-definitions-in-headers</a><ul>
+<li class="toctree-l2"><a class="reference internal" href="misc-definitions-in-headers.html#options">Options</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="misc-misplaced-const.html">misc-misplaced-const</a></li>
+<li class="toctree-l1"><a class="reference internal" href="misc-new-delete-overloads.html">misc-new-delete-overloads</a></li>
+<li class="toctree-l1"><a class="reference internal" href="misc-non-copyable-objects.html">misc-non-copyable-objects</a></li>
+<li class="toctree-l1"><a class="reference internal" href="misc-non-private-member-variables-in-classes.html">misc-non-private-member-variables-in-classes</a><ul>
+<li class="toctree-l2"><a class="reference internal" href="misc-non-private-member-variables-in-classes.html#options">Options</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="misc-redundant-expression.html">misc-redundant-expression</a></li>
+<li class="toctree-l1"><a class="reference internal" href="misc-static-assert.html">misc-static-assert</a></li>
+<li class="toctree-l1"><a class="reference internal" href="misc-throw-by-value-catch-by-reference.html">misc-throw-by-value-catch-by-reference</a><ul>
+<li class="toctree-l2"><a class="reference internal" href="misc-throw-by-value-catch-by-reference.html#options">Options</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="misc-unconventional-assign-operator.html">misc-unconventional-assign-operator</a></li>
+<li class="toctree-l1"><a class="reference internal" href="misc-uniqueptr-reset-release.html">misc-uniqueptr-reset-release</a></li>
+<li class="toctree-l1"><a class="reference internal" href="misc-unused-alias-decls.html">misc-unused-alias-decls</a></li>
+<li class="toctree-l1"><a class="reference internal" href="misc-unused-parameters.html">misc-unused-parameters</a><ul>
+<li class="toctree-l2"><a class="reference internal" href="misc-unused-parameters.html#options">Options</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="misc-unused-using-decls.html">misc-unused-using-decls</a></li>
+<li class="toctree-l1"><a class="reference internal" href="modernize-avoid-bind.html">modernize-avoid-bind</a></li>
+<li class="toctree-l1"><a class="reference internal" href="modernize-avoid-c-arrays.html">modernize-avoid-c-arrays</a></li>
+<li class="toctree-l1"><a class="reference internal" href="modernize-concat-nested-namespaces.html">modernize-concat-nested-namespaces</a></li>
+<li class="toctree-l1"><a class="reference internal" href="modernize-deprecated-headers.html">modernize-deprecated-headers</a></li>
+<li class="toctree-l1"><a class="reference internal" href="modernize-deprecated-ios-base-aliases.html">modernize-deprecated-ios-base-aliases</a></li>
+<li class="toctree-l1"><a class="reference internal" href="modernize-loop-convert.html">modernize-loop-convert</a><ul>
+<li class="toctree-l2"><a class="reference internal" href="modernize-loop-convert.html#minconfidence-option">MinConfidence option</a><ul>
+<li class="toctree-l3"><a class="reference internal" href="modernize-loop-convert.html#risky">risky</a></li>
+<li class="toctree-l3"><a class="reference internal" href="modernize-loop-convert.html#reasonable-default">reasonable (Default)</a></li>
+<li class="toctree-l3"><a class="reference internal" href="modernize-loop-convert.html#safe">safe</a></li>
+</ul>
+</li>
+<li class="toctree-l2"><a class="reference internal" href="modernize-loop-convert.html#example">Example</a></li>
+<li class="toctree-l2"><a class="reference internal" href="modernize-loop-convert.html#limitations">Limitations</a><ul>
+<li class="toctree-l3"><a class="reference internal" href="modernize-loop-convert.html#comments-inside-loop-headers">Comments inside loop headers</a></li>
+<li class="toctree-l3"><a class="reference internal" href="modernize-loop-convert.html#range-based-loops-evaluate-end-only-once">Range-based loops evaluate end() only once</a></li>
+<li class="toctree-l3"><a class="reference internal" href="modernize-loop-convert.html#overloaded-operator-with-side-effects">Overloaded operator->() with side effects</a></li>
+<li class="toctree-l3"><a class="reference internal" href="modernize-loop-convert.html#pointers-and-references-to-containers">Pointers and references to containers</a></li>
+<li class="toctree-l3"><a class="reference internal" href="modernize-loop-convert.html#openmp">OpenMP</a></li>
+</ul>
+</li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="modernize-make-shared.html">modernize-make-shared</a><ul>
+<li class="toctree-l2"><a class="reference internal" href="modernize-make-shared.html#options">Options</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="modernize-make-unique.html">modernize-make-unique</a><ul>
+<li class="toctree-l2"><a class="reference internal" href="modernize-make-unique.html#options">Options</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="modernize-pass-by-value.html">modernize-pass-by-value</a><ul>
+<li class="toctree-l2"><a class="reference internal" href="modernize-pass-by-value.html#pass-by-value-in-constructors">Pass-by-value in constructors</a><ul>
+<li class="toctree-l3"><a class="reference internal" href="modernize-pass-by-value.html#known-limitations">Known limitations</a></li>
+<li class="toctree-l3"><a class="reference internal" href="modernize-pass-by-value.html#note-about-delayed-template-parsing">Note about delayed template parsing</a></li>
+</ul>
+</li>
+<li class="toctree-l2"><a class="reference internal" href="modernize-pass-by-value.html#options">Options</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="modernize-raw-string-literal.html">modernize-raw-string-literal</a></li>
+<li class="toctree-l1"><a class="reference internal" href="modernize-redundant-void-arg.html">modernize-redundant-void-arg</a></li>
+<li class="toctree-l1"><a class="reference internal" href="modernize-replace-auto-ptr.html">modernize-replace-auto-ptr</a><ul>
+<li class="toctree-l2"><a class="reference internal" href="modernize-replace-auto-ptr.html#known-limitations">Known Limitations</a></li>
+<li class="toctree-l2"><a class="reference internal" href="modernize-replace-auto-ptr.html#options">Options</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="modernize-replace-random-shuffle.html">modernize-replace-random-shuffle</a></li>
+<li class="toctree-l1"><a class="reference internal" href="modernize-return-braced-init-list.html">modernize-return-braced-init-list</a></li>
+<li class="toctree-l1"><a class="reference internal" href="modernize-shrink-to-fit.html">modernize-shrink-to-fit</a></li>
+<li class="toctree-l1"><a class="reference internal" href="modernize-unary-static-assert.html">modernize-unary-static-assert</a></li>
+<li class="toctree-l1"><a class="reference internal" href="modernize-use-auto.html">modernize-use-auto</a><ul>
+<li class="toctree-l2"><a class="reference internal" href="modernize-use-auto.html#iterators">Iterators</a></li>
+<li class="toctree-l2"><a class="reference internal" href="modernize-use-auto.html#new-expressions">New expressions</a></li>
+<li class="toctree-l2"><a class="reference internal" href="modernize-use-auto.html#cast-expressions">Cast expressions</a></li>
+<li class="toctree-l2"><a class="reference internal" href="modernize-use-auto.html#known-limitations">Known Limitations</a></li>
+<li class="toctree-l2"><a class="reference internal" href="modernize-use-auto.html#options">Options</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="modernize-use-bool-literals.html">modernize-use-bool-literals</a><ul>
+<li class="toctree-l2"><a class="reference internal" href="modernize-use-bool-literals.html#options">Options</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="modernize-use-default-member-init.html">modernize-use-default-member-init</a><ul>
+<li class="toctree-l2"><a class="reference internal" href="modernize-use-default-member-init.html#options">Options</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="modernize-use-emplace.html">modernize-use-emplace</a><ul>
+<li class="toctree-l2"><a class="reference internal" href="modernize-use-emplace.html#options">Options</a><ul>
+<li class="toctree-l3"><a class="reference internal" href="modernize-use-emplace.html#example">Example</a></li>
+</ul>
+</li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="modernize-use-equals-default.html">modernize-use-equals-default</a><ul>
+<li class="toctree-l2"><a class="reference internal" href="modernize-use-equals-default.html#options">Options</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="modernize-use-equals-delete.html">modernize-use-equals-delete</a></li>
+<li class="toctree-l1"><a class="reference internal" href="modernize-use-nodiscard.html">modernize-use-nodiscard</a><ul>
+<li class="toctree-l2"><a class="reference internal" href="modernize-use-nodiscard.html#example">Example</a></li>
+<li class="toctree-l2"><a class="reference internal" href="modernize-use-nodiscard.html#options">Options</a><ul>
+<li class="toctree-l3"><a class="reference internal" href="modernize-use-nodiscard.html#id1">Example</a></li>
+</ul>
+</li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="modernize-use-noexcept.html">modernize-use-noexcept</a><ul>
+<li class="toctree-l2"><a class="reference internal" href="modernize-use-noexcept.html#example">Example</a></li>
+<li class="toctree-l2"><a class="reference internal" href="modernize-use-noexcept.html#options">Options</a><ul>
+<li class="toctree-l3"><a class="reference internal" href="modernize-use-noexcept.html#id1">Example</a></li>
+<li class="toctree-l3"><a class="reference internal" href="modernize-use-noexcept.html#id2">Example</a></li>
+</ul>
+</li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="modernize-use-nullptr.html">modernize-use-nullptr</a><ul>
+<li class="toctree-l2"><a class="reference internal" href="modernize-use-nullptr.html#example">Example</a></li>
+<li class="toctree-l2"><a class="reference internal" href="modernize-use-nullptr.html#options">Options</a><ul>
+<li class="toctree-l3"><a class="reference internal" href="modernize-use-nullptr.html#id1">Example</a></li>
+</ul>
+</li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="modernize-use-override.html">modernize-use-override</a><ul>
+<li class="toctree-l2"><a class="reference internal" href="modernize-use-override.html#options">Options</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="modernize-use-trailing-return-type.html">modernize-use-trailing-return-type</a><ul>
+<li class="toctree-l2"><a class="reference internal" href="modernize-use-trailing-return-type.html#example">Example</a></li>
+<li class="toctree-l2"><a class="reference internal" href="modernize-use-trailing-return-type.html#known-limitations">Known Limitations</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="modernize-use-transparent-functors.html">modernize-use-transparent-functors</a><ul>
+<li class="toctree-l2"><a class="reference internal" href="modernize-use-transparent-functors.html#options">Options</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="modernize-use-uncaught-exceptions.html">modernize-use-uncaught-exceptions</a></li>
+<li class="toctree-l1"><a class="reference internal" href="modernize-use-using.html">modernize-use-using</a><ul>
+<li class="toctree-l2"><a class="reference internal" href="modernize-use-using.html#options">Options</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="mpi-buffer-deref.html">mpi-buffer-deref</a></li>
+<li class="toctree-l1"><a class="reference internal" href="mpi-type-mismatch.html">mpi-type-mismatch</a></li>
+<li class="toctree-l1"><a class="reference internal" href="objc-avoid-nserror-init.html">objc-avoid-nserror-init</a></li>
+<li class="toctree-l1"><a class="reference internal" href="objc-avoid-spinlock.html">objc-avoid-spinlock</a></li>
+<li class="toctree-l1"><a class="reference internal" href="objc-forbidden-subclassing.html">objc-forbidden-subclassing</a><ul>
+<li class="toctree-l2"><a class="reference internal" href="objc-forbidden-subclassing.html#options">Options</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="objc-property-declaration.html">objc-property-declaration</a></li>
+<li class="toctree-l1"><a class="reference internal" href="objc-super-self.html">objc-super-self</a></li>
+<li class="toctree-l1"><a class="reference internal" href="openmp-exception-escape.html">openmp-exception-escape</a><ul>
+<li class="toctree-l2"><a class="reference internal" href="openmp-exception-escape.html#options">Options</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="openmp-use-default-none.html">openmp-use-default-none</a><ul>
+<li class="toctree-l2"><a class="reference internal" href="openmp-use-default-none.html#example">Example</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="performance-faster-string-find.html">performance-faster-string-find</a><ul>
+<li class="toctree-l2"><a class="reference internal" href="performance-faster-string-find.html#options">Options</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="performance-for-range-copy.html">performance-for-range-copy</a><ul>
+<li class="toctree-l2"><a class="reference internal" href="performance-for-range-copy.html#options">Options</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="performance-implicit-conversion-in-loop.html">performance-implicit-conversion-in-loop</a></li>
+<li class="toctree-l1"><a class="reference internal" href="performance-inefficient-algorithm.html">performance-inefficient-algorithm</a></li>
+<li class="toctree-l1"><a class="reference internal" href="performance-inefficient-string-concatenation.html">performance-inefficient-string-concatenation</a><ul>
+<li class="toctree-l2"><a class="reference internal" href="performance-inefficient-string-concatenation.html#options">Options</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="performance-inefficient-vector-operation.html">performance-inefficient-vector-operation</a><ul>
+<li class="toctree-l2"><a class="reference internal" href="performance-inefficient-vector-operation.html#options">Options</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="performance-move-const-arg.html">performance-move-const-arg</a><ul>
+<li class="toctree-l2"><a class="reference internal" href="performance-move-const-arg.html#options">Options</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="performance-move-constructor-init.html">performance-move-constructor-init</a><ul>
+<li class="toctree-l2"><a class="reference internal" href="performance-move-constructor-init.html#options">Options</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="performance-noexcept-move-constructor.html">performance-noexcept-move-constructor</a></li>
+<li class="toctree-l1"><a class="reference internal" href="performance-type-promotion-in-math-fn.html">performance-type-promotion-in-math-fn</a></li>
+<li class="toctree-l1"><a class="reference internal" href="performance-unnecessary-copy-initialization.html">performance-unnecessary-copy-initialization</a><ul>
+<li class="toctree-l2"><a class="reference internal" href="performance-unnecessary-copy-initialization.html#options">Options</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="performance-unnecessary-value-param.html">performance-unnecessary-value-param</a><ul>
+<li class="toctree-l2"><a class="reference internal" href="performance-unnecessary-value-param.html#options">Options</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="portability-simd-intrinsics.html">portability-simd-intrinsics</a><ul>
+<li class="toctree-l2"><a class="reference internal" href="portability-simd-intrinsics.html#options">Options</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="readability-avoid-const-params-in-decls.html">readability-avoid-const-params-in-decls</a></li>
+<li class="toctree-l1"><a class="reference internal" href="readability-braces-around-statements.html">readability-braces-around-statements</a><ul>
+<li class="toctree-l2"><a class="reference internal" href="readability-braces-around-statements.html#options">Options</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="readability-const-return-type.html">readability-const-return-type</a></li>
+<li class="toctree-l1"><a class="reference internal" href="readability-container-size-empty.html">readability-container-size-empty</a></li>
+<li class="toctree-l1"><a class="reference internal" href="readability-convert-member-functions-to-static.html">readability-convert-member-functions-to-static</a></li>
+<li class="toctree-l1"><a class="reference internal" href="readability-delete-null-pointer.html">readability-delete-null-pointer</a></li>
+<li class="toctree-l1"><a class="reference internal" href="readability-deleted-default.html">readability-deleted-default</a></li>
+<li class="toctree-l1"><a class="reference internal" href="readability-else-after-return.html">readability-else-after-return</a></li>
+<li class="toctree-l1"><a class="reference internal" href="readability-function-size.html">readability-function-size</a><ul>
+<li class="toctree-l2"><a class="reference internal" href="readability-function-size.html#options">Options</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="readability-identifier-naming.html">readability-identifier-naming</a><ul>
+<li class="toctree-l2"><a class="reference internal" href="readability-identifier-naming.html#options">Options</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="readability-implicit-bool-conversion.html">readability-implicit-bool-conversion</a><ul>
+<li class="toctree-l2"><a class="reference internal" href="readability-implicit-bool-conversion.html#options">Options</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="readability-inconsistent-declaration-parameter-name.html">readability-inconsistent-declaration-parameter-name</a></li>
+<li class="toctree-l1"><a class="reference internal" href="readability-isolate-declaration.html">readability-isolate-declaration</a><ul>
+<li class="toctree-l2"><a class="reference internal" href="readability-isolate-declaration.html#limitations">Limitations</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="readability-magic-numbers.html">readability-magic-numbers</a><ul>
+<li class="toctree-l2"><a class="reference internal" href="readability-magic-numbers.html#options">Options</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="readability-misleading-indentation.html">readability-misleading-indentation</a><ul>
+<li class="toctree-l2"><a class="reference internal" href="readability-misleading-indentation.html#limitations">Limitations</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="readability-misplaced-array-index.html">readability-misplaced-array-index</a></li>
+<li class="toctree-l1"><a class="reference internal" href="readability-named-parameter.html">readability-named-parameter</a></li>
+<li class="toctree-l1"><a class="reference internal" href="readability-non-const-parameter.html">readability-non-const-parameter</a></li>
+<li class="toctree-l1"><a class="reference internal" href="readability-redundant-control-flow.html">readability-redundant-control-flow</a></li>
+<li class="toctree-l1"><a class="reference internal" href="readability-redundant-declaration.html">readability-redundant-declaration</a><ul>
+<li class="toctree-l2"><a class="reference internal" href="readability-redundant-declaration.html#options">Options</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="readability-redundant-function-ptr-dereference.html">readability-redundant-function-ptr-dereference</a></li>
+<li class="toctree-l1"><a class="reference internal" href="readability-redundant-member-init.html">readability-redundant-member-init</a></li>
+<li class="toctree-l1"><a class="reference internal" href="readability-redundant-preprocessor.html">readability-redundant-preprocessor</a></li>
+<li class="toctree-l1"><a class="reference internal" href="readability-redundant-smartptr-get.html">readability-redundant-smartptr-get</a></li>
+<li class="toctree-l1"><a class="reference internal" href="readability-redundant-string-cstr.html">readability-redundant-string-cstr</a></li>
+<li class="toctree-l1"><a class="reference internal" href="readability-redundant-string-init.html">readability-redundant-string-init</a></li>
+<li class="toctree-l1"><a class="reference internal" href="readability-simplify-boolean-expr.html">readability-simplify-boolean-expr</a><ul>
+<li class="toctree-l2"><a class="reference internal" href="readability-simplify-boolean-expr.html#options">Options</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="readability-simplify-subscript-expr.html">readability-simplify-subscript-expr</a><ul>
+<li class="toctree-l2"><a class="reference internal" href="readability-simplify-subscript-expr.html#options">Options</a></li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="readability-static-accessed-through-instance.html">readability-static-accessed-through-instance</a></li>
+<li class="toctree-l1"><a class="reference internal" href="readability-static-definition-in-anonymous-namespace.html">readability-static-definition-in-anonymous-namespace</a></li>
+<li class="toctree-l1"><a class="reference internal" href="readability-string-compare.html">readability-string-compare</a></li>
+<li class="toctree-l1"><a class="reference internal" href="readability-uniqueptr-delete-release.html">readability-uniqueptr-delete-release</a></li>
+<li class="toctree-l1"><a class="reference internal" href="readability-uppercase-literal-suffix.html">readability-uppercase-literal-suffix</a><ul>
+<li class="toctree-l2"><a class="reference internal" href="readability-uppercase-literal-suffix.html#options">Options</a><ul>
+<li class="toctree-l3"><a class="reference internal" href="readability-uppercase-literal-suffix.html#example">Example</a></li>
+</ul>
+</li>
+</ul>
+</li>
+<li class="toctree-l1"><a class="reference internal" href="zircon-temporary-objects.html">zircon-temporary-objects</a><ul>
+<li class="toctree-l2"><a class="reference internal" href="zircon-temporary-objects.html#options">Options</a></li>
+</ul>
+</li>
+</ul>
+</div>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="../index.html">Clang-Tidy</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="abseil-duration-addition.html">abseil-duration-addition</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/llvm-header-guard.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/llvm-header-guard.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/llvm-header-guard.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/llvm-header-guard.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,78 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>clang-tidy - llvm-header-guard — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="llvm-include-order" href="llvm-include-order.html" />
+ <link rel="prev" title="hicpp-vararg" href="hicpp-vararg.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - llvm-header-guard</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="hicpp-vararg.html">hicpp-vararg</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="llvm-include-order.html">llvm-include-order</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="llvm-header-guard">
+<h1>llvm-header-guard<a class="headerlink" href="#llvm-header-guard" title="Permalink to this headline">¶</a></h1>
+<p>Finds and fixes header guards that do not adhere to LLVM style.</p>
+<div class="section" id="options">
+<h2>Options<a class="headerlink" href="#options" title="Permalink to this headline">¶</a></h2>
+<dl class="option">
+<dt id="cmdoption-arg-headerfileextensions">
+<code class="descname">HeaderFileExtensions</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-headerfileextensions" title="Permalink to this definition">¶</a></dt>
+<dd><p>A comma-separated list of filename extensions of header files (the filename
+extensions should not include â.â prefix). Default is âh,hh,hpp,hxxâ.
+For header files without an extension, use an empty string (if there are no
+other desired extensions) or leave an empty element in the list. e.g.,
+âh,hh,hpp,hxx,â (note the trailing comma).</p>
+</dd></dl>
+
+</div>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="hicpp-vararg.html">hicpp-vararg</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="llvm-include-order.html">llvm-include-order</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/llvm-include-order.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/llvm-include-order.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/llvm-include-order.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/llvm-include-order.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,66 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>clang-tidy - llvm-include-order — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="llvm-namespace-comment" href="llvm-namespace-comment.html" />
+ <link rel="prev" title="llvm-header-guard" href="llvm-header-guard.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - llvm-include-order</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="llvm-header-guard.html">llvm-header-guard</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="llvm-namespace-comment.html">llvm-namespace-comment</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="llvm-include-order">
+<h1>llvm-include-order<a class="headerlink" href="#llvm-include-order" title="Permalink to this headline">¶</a></h1>
+<p>Checks the correct order of <code class="docutils literal notranslate"><span class="pre">#includes</span></code>.</p>
+<p>See <a class="reference external" href="https://llvm.org/docs/CodingStandards.html#include-style">https://llvm.org/docs/CodingStandards.html#include-style</a></p>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="llvm-header-guard.html">llvm-header-guard</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="llvm-namespace-comment.html">llvm-namespace-comment</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/llvm-namespace-comment.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/llvm-namespace-comment.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/llvm-namespace-comment.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/llvm-namespace-comment.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,99 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>clang-tidy - llvm-namespace-comment — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="llvm-prefer-isa-or-dyn-cast-in-conditionals" href="llvm-prefer-isa-or-dyn-cast-in-conditionals.html" />
+ <link rel="prev" title="llvm-include-order" href="llvm-include-order.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - llvm-namespace-comment</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="llvm-include-order.html">llvm-include-order</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="llvm-prefer-isa-or-dyn-cast-in-conditionals.html">llvm-prefer-isa-or-dyn-cast-in-conditionals</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="llvm-namespace-comment">
+<h1>llvm-namespace-comment<a class="headerlink" href="#llvm-namespace-comment" title="Permalink to this headline">¶</a></h1>
+<p><cite>google-readability-namespace-comments</cite> redirects here as an alias for this
+check.</p>
+<p>Checks that long namespaces have a closing comment.</p>
+<p><a class="reference external" href="https://llvm.org/docs/CodingStandards.html#namespace-indentation">https://llvm.org/docs/CodingStandards.html#namespace-indentation</a></p>
+<p><a class="reference external" href="https://google.github.io/styleguide/cppguide.html#Namespaces">https://google.github.io/styleguide/cppguide.html#Namespaces</a></p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">namespace</span> <span class="n">n1</span> <span class="p">{</span>
+<span class="kt">void</span> <span class="n">f</span><span class="p">();</span>
+<span class="p">}</span>
+
+<span class="c1">// becomes</span>
+
+<span class="k">namespace</span> <span class="n">n1</span> <span class="p">{</span>
+<span class="kt">void</span> <span class="n">f</span><span class="p">();</span>
+<span class="p">}</span> <span class="c1">// namespace n1</span>
+</pre></div>
+</div>
+<div class="section" id="options">
+<h2>Options<a class="headerlink" href="#options" title="Permalink to this headline">¶</a></h2>
+<dl class="option">
+<dt id="cmdoption-arg-shortnamespacelines">
+<code class="descname">ShortNamespaceLines</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-shortnamespacelines" title="Permalink to this definition">¶</a></dt>
+<dd><p>Requires the closing brace of the namespace definition to be followed by a
+closing comment if the body of the namespace has more than
+<cite>ShortNamespaceLines</cite> lines of code. The value is an unsigned integer that
+defaults to <cite>1U</cite>.</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-spacesbeforecomments">
+<code class="descname">SpacesBeforeComments</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-spacesbeforecomments" title="Permalink to this definition">¶</a></dt>
+<dd><p>An unsigned integer specifying the number of spaces before the comment
+closing a namespace definition. Default is <cite>1U</cite>.</p>
+</dd></dl>
+
+</div>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="llvm-include-order.html">llvm-include-order</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="llvm-prefer-isa-or-dyn-cast-in-conditionals.html">llvm-prefer-isa-or-dyn-cast-in-conditionals</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/llvm-prefer-isa-or-dyn-cast-in-conditionals.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/llvm-prefer-isa-or-dyn-cast-in-conditionals.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/llvm-prefer-isa-or-dyn-cast-in-conditionals.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/llvm-prefer-isa-or-dyn-cast-in-conditionals.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,92 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>clang-tidy - llvm-prefer-isa-or-dyn-cast-in-conditionals — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="llvm-twine-local" href="llvm-twine-local.html" />
+ <link rel="prev" title="llvm-namespace-comment" href="llvm-namespace-comment.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - llvm-prefer-isa-or-dyn-cast-in-conditionals</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="llvm-namespace-comment.html">llvm-namespace-comment</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="llvm-twine-local.html">llvm-twine-local</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="llvm-prefer-isa-or-dyn-cast-in-conditionals">
+<h1>llvm-prefer-isa-or-dyn-cast-in-conditionals<a class="headerlink" href="#llvm-prefer-isa-or-dyn-cast-in-conditionals" title="Permalink to this headline">¶</a></h1>
+<p>Looks at conditionals and finds and replaces cases of <code class="docutils literal notranslate"><span class="pre">cast<></span></code>,
+which will assert rather than return a null pointer, and
+<code class="docutils literal notranslate"><span class="pre">dyn_cast<></span></code> where the return value is not captured. Additionally,
+finds and replaces cases that match the pattern <code class="docutils literal notranslate"><span class="pre">var</span> <span class="pre">&&</span>
+<span class="pre">isa<X>(var)</span></code>, where <code class="docutils literal notranslate"><span class="pre">var</span></code> is evaluated twice.</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="c1">// Finds these:</span>
+<span class="k">if</span> <span class="p">(</span><span class="k">auto</span> <span class="n">x</span> <span class="o">=</span> <span class="n">cast</span><span class="o"><</span><span class="n">X</span><span class="o">></span><span class="p">(</span><span class="n">y</span><span class="p">))</span> <span class="p">{}</span>
+<span class="c1">// is replaced by:</span>
+<span class="k">if</span> <span class="p">(</span><span class="k">auto</span> <span class="n">x</span> <span class="o">=</span> <span class="n">dyn_cast</span><span class="o"><</span><span class="n">X</span><span class="o">></span><span class="p">(</span><span class="n">y</span><span class="p">))</span> <span class="p">{}</span>
+
+<span class="k">if</span> <span class="p">(</span><span class="n">cast</span><span class="o"><</span><span class="n">X</span><span class="o">></span><span class="p">(</span><span class="n">y</span><span class="p">))</span> <span class="p">{}</span>
+<span class="c1">// is replaced by:</span>
+<span class="k">if</span> <span class="p">(</span><span class="n">isa</span><span class="o"><</span><span class="n">X</span><span class="o">></span><span class="p">(</span><span class="n">y</span><span class="p">))</span> <span class="p">{}</span>
+
+<span class="k">if</span> <span class="p">(</span><span class="n">dyn_cast</span><span class="o"><</span><span class="n">X</span><span class="o">></span><span class="p">(</span><span class="n">y</span><span class="p">))</span> <span class="p">{}</span>
+<span class="c1">// is replaced by:</span>
+<span class="k">if</span> <span class="p">(</span><span class="n">isa</span><span class="o"><</span><span class="n">X</span><span class="o">></span><span class="p">(</span><span class="n">y</span><span class="p">))</span> <span class="p">{}</span>
+
+<span class="k">if</span> <span class="p">(</span><span class="n">var</span> <span class="o">&&</span> <span class="n">isa</span><span class="o"><</span><span class="n">T</span><span class="o">></span><span class="p">(</span><span class="n">var</span><span class="p">))</span> <span class="p">{}</span>
+<span class="c1">// is replaced by:</span>
+<span class="k">if</span> <span class="p">(</span><span class="n">isa_and_nonnull</span><span class="o"><</span><span class="n">T</span><span class="o">></span><span class="p">(</span><span class="n">var</span><span class="p">.</span><span class="n">foo</span><span class="p">()))</span> <span class="p">{}</span>
+
+<span class="c1">// Other cases are ignored, e.g.:</span>
+<span class="k">if</span> <span class="p">(</span><span class="k">auto</span> <span class="n">f</span> <span class="o">=</span> <span class="n">cast</span><span class="o"><</span><span class="n">Z</span><span class="o">></span><span class="p">(</span><span class="n">y</span><span class="p">)</span><span class="o">-></span><span class="n">foo</span><span class="p">())</span> <span class="p">{}</span>
+<span class="k">if</span> <span class="p">(</span><span class="n">cast</span><span class="o"><</span><span class="n">Z</span><span class="o">></span><span class="p">(</span><span class="n">y</span><span class="p">)</span><span class="o">-></span><span class="n">foo</span><span class="p">())</span> <span class="p">{}</span>
+<span class="k">if</span> <span class="p">(</span><span class="n">X</span><span class="p">.</span><span class="n">cast</span><span class="p">(</span><span class="n">y</span><span class="p">))</span> <span class="p">{}</span>
+</pre></div>
+</div>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="llvm-namespace-comment.html">llvm-namespace-comment</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="llvm-twine-local.html">llvm-twine-local</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/llvm-twine-local.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/llvm-twine-local.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/llvm-twine-local.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/llvm-twine-local.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,73 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>clang-tidy - llvm-twine-local — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="misc-definitions-in-headers" href="misc-definitions-in-headers.html" />
+ <link rel="prev" title="llvm-prefer-isa-or-dyn-cast-in-conditionals" href="llvm-prefer-isa-or-dyn-cast-in-conditionals.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - llvm-twine-local</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="llvm-prefer-isa-or-dyn-cast-in-conditionals.html">llvm-prefer-isa-or-dyn-cast-in-conditionals</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="misc-definitions-in-headers.html">misc-definitions-in-headers</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="llvm-twine-local">
+<h1>llvm-twine-local<a class="headerlink" href="#llvm-twine-local" title="Permalink to this headline">¶</a></h1>
+<p>Looks for local <code class="docutils literal notranslate"><span class="pre">Twine</span></code> variables which are prone to use after frees and
+should be generally avoided.</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">static</span> <span class="n">Twine</span> <span class="n">Moo</span> <span class="o">=</span> <span class="n">Twine</span><span class="p">(</span><span class="s">"bark"</span><span class="p">)</span> <span class="o">+</span> <span class="s">"bah"</span><span class="p">;</span>
+
+<span class="c1">// becomes</span>
+
+<span class="k">static</span> <span class="n">std</span><span class="o">::</span><span class="n">string</span> <span class="n">Moo</span> <span class="o">=</span> <span class="p">(</span><span class="n">Twine</span><span class="p">(</span><span class="s">"bark"</span><span class="p">)</span> <span class="o">+</span> <span class="s">"bah"</span><span class="p">).</span><span class="n">str</span><span class="p">();</span>
+</pre></div>
+</div>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="llvm-prefer-isa-or-dyn-cast-in-conditionals.html">llvm-prefer-isa-or-dyn-cast-in-conditionals</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="misc-definitions-in-headers.html">misc-definitions-in-headers</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/misc-definitions-in-headers.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/misc-definitions-in-headers.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/misc-definitions-in-headers.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/misc-definitions-in-headers.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,162 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>clang-tidy - misc-definitions-in-headers — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="misc-misplaced-const" href="misc-misplaced-const.html" />
+ <link rel="prev" title="llvm-twine-local" href="llvm-twine-local.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - misc-definitions-in-headers</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="llvm-twine-local.html">llvm-twine-local</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="misc-misplaced-const.html">misc-misplaced-const</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="misc-definitions-in-headers">
+<h1>misc-definitions-in-headers<a class="headerlink" href="#misc-definitions-in-headers" title="Permalink to this headline">¶</a></h1>
+<p>Finds non-extern non-inline function and variable definitions in header files,
+which can lead to potential ODR violations in case these headers are included
+from multiple translation units.</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="c1">// Foo.h</span>
+<span class="kt">int</span> <span class="n">a</span> <span class="o">=</span> <span class="mi">1</span><span class="p">;</span> <span class="c1">// Warning: variable definition.</span>
+<span class="k">extern</span> <span class="kt">int</span> <span class="n">d</span><span class="p">;</span> <span class="c1">// OK: extern variable.</span>
+
+<span class="k">namespace</span> <span class="n">N</span> <span class="p">{</span>
+ <span class="kt">int</span> <span class="n">e</span> <span class="o">=</span> <span class="mi">2</span><span class="p">;</span> <span class="c1">// Warning: variable definition.</span>
+<span class="p">}</span>
+
+<span class="c1">// Warning: variable definition.</span>
+<span class="k">const</span> <span class="kt">char</span><span class="o">*</span> <span class="n">str</span> <span class="o">=</span> <span class="s">"foo"</span><span class="p">;</span>
+
+<span class="c1">// OK: internal linkage variable definitions are ignored for now.</span>
+<span class="c1">// Although these might also cause ODR violations, we can be less certain and</span>
+<span class="c1">// should try to keep the false-positive rate down.</span>
+<span class="k">static</span> <span class="kt">int</span> <span class="n">b</span> <span class="o">=</span> <span class="mi">1</span><span class="p">;</span>
+<span class="k">const</span> <span class="kt">int</span> <span class="n">c</span> <span class="o">=</span> <span class="mi">1</span><span class="p">;</span>
+<span class="k">const</span> <span class="kt">char</span><span class="o">*</span> <span class="k">const</span> <span class="n">str2</span> <span class="o">=</span> <span class="s">"foo"</span><span class="p">;</span>
+<span class="k">constexpr</span> <span class="kt">int</span> <span class="n">k</span> <span class="o">=</span> <span class="mi">1</span><span class="p">;</span>
+
+<span class="c1">// Warning: function definition.</span>
+<span class="kt">int</span> <span class="nf">g</span><span class="p">()</span> <span class="p">{</span>
+ <span class="k">return</span> <span class="mi">1</span><span class="p">;</span>
+<span class="p">}</span>
+
+<span class="c1">// OK: inline function definition is allowed to be defined multiple times.</span>
+<span class="kr">inline</span> <span class="kt">int</span> <span class="nf">e</span><span class="p">()</span> <span class="p">{</span>
+ <span class="k">return</span> <span class="mi">1</span><span class="p">;</span>
+<span class="p">}</span>
+
+<span class="k">class</span> <span class="nc">A</span> <span class="p">{</span>
+<span class="k">public</span><span class="o">:</span>
+ <span class="kt">int</span> <span class="n">f1</span><span class="p">()</span> <span class="p">{</span> <span class="k">return</span> <span class="mi">1</span><span class="p">;</span> <span class="p">}</span> <span class="c1">// OK: implicitly inline member function definition is allowed.</span>
+ <span class="kt">int</span> <span class="n">f2</span><span class="p">();</span>
+
+ <span class="k">static</span> <span class="kt">int</span> <span class="n">d</span><span class="p">;</span>
+<span class="p">};</span>
+
+<span class="c1">// Warning: not an inline member function definition.</span>
+<span class="kt">int</span> <span class="n">A</span><span class="o">::</span><span class="n">f2</span><span class="p">()</span> <span class="p">{</span> <span class="k">return</span> <span class="mi">1</span><span class="p">;</span> <span class="p">}</span>
+
+<span class="c1">// OK: class static data member declaration is allowed.</span>
+<span class="kt">int</span> <span class="n">A</span><span class="o">::</span><span class="n">d</span> <span class="o">=</span> <span class="mi">1</span><span class="p">;</span>
+
+<span class="c1">// OK: function template is allowed.</span>
+<span class="k">template</span><span class="o"><</span><span class="k">typename</span> <span class="n">T</span><span class="o">></span>
+<span class="n">T</span> <span class="n">f3</span><span class="p">()</span> <span class="p">{</span>
+ <span class="n">T</span> <span class="n">a</span> <span class="o">=</span> <span class="mi">1</span><span class="p">;</span>
+ <span class="k">return</span> <span class="n">a</span><span class="p">;</span>
+<span class="p">}</span>
+
+<span class="c1">// Warning: full specialization of a function template is not allowed.</span>
+<span class="k">template</span> <span class="o"><></span>
+<span class="kt">int</span> <span class="n">f3</span><span class="p">()</span> <span class="p">{</span>
+ <span class="kt">int</span> <span class="n">a</span> <span class="o">=</span> <span class="mi">1</span><span class="p">;</span>
+ <span class="k">return</span> <span class="n">a</span><span class="p">;</span>
+<span class="p">}</span>
+
+<span class="k">template</span> <span class="o"><</span><span class="k">typename</span> <span class="n">T</span><span class="o">></span>
+<span class="k">struct</span> <span class="n">B</span> <span class="p">{</span>
+ <span class="kt">void</span> <span class="n">f1</span><span class="p">();</span>
+<span class="p">};</span>
+
+<span class="c1">// OK: member function definition of a class template is allowed.</span>
+<span class="k">template</span> <span class="o"><</span><span class="k">typename</span> <span class="n">T</span><span class="o">></span>
+<span class="kt">void</span> <span class="n">B</span><span class="o"><</span><span class="n">T</span><span class="o">>::</span><span class="n">f1</span><span class="p">()</span> <span class="p">{}</span>
+
+<span class="k">class</span> <span class="nc">CE</span> <span class="p">{</span>
+ <span class="k">constexpr</span> <span class="k">static</span> <span class="kt">int</span> <span class="n">i</span> <span class="o">=</span> <span class="mi">5</span><span class="p">;</span> <span class="c1">// OK: inline variable definition.</span>
+<span class="p">};</span>
+
+<span class="kr">inline</span> <span class="kt">int</span> <span class="n">i</span> <span class="o">=</span> <span class="mi">5</span><span class="p">;</span> <span class="c1">// OK: inline variable definition.</span>
+
+<span class="k">constexpr</span> <span class="kt">int</span> <span class="nf">f10</span><span class="p">()</span> <span class="p">{</span> <span class="k">return</span> <span class="mi">0</span><span class="p">;</span> <span class="p">}</span> <span class="c1">// OK: constexpr function implies inline.</span>
+</pre></div>
+</div>
+<div class="section" id="options">
+<h2>Options<a class="headerlink" href="#options" title="Permalink to this headline">¶</a></h2>
+<dl class="option">
+<dt id="cmdoption-arg-headerfileextensions">
+<code class="descname">HeaderFileExtensions</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-headerfileextensions" title="Permalink to this definition">¶</a></dt>
+<dd><p>A comma-separated list of filename extensions of header files (the filename
+extensions should not include â.â prefix). Default is âh,hh,hpp,hxxâ.
+For header files without an extension, use an empty string (if there are no
+other desired extensions) or leave an empty element in the list. e.g.,
+âh,hh,hpp,hxx,â (note the trailing comma).</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-useheaderfileextension">
+<code class="descname">UseHeaderFileExtension</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-useheaderfileextension" title="Permalink to this definition">¶</a></dt>
+<dd><p>When non-zero, the check will use the file extension to distinguish header
+files. Default is <cite>1</cite>.</p>
+</dd></dl>
+
+</div>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="llvm-twine-local.html">llvm-twine-local</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="misc-misplaced-const.html">misc-misplaced-const</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/misc-misplaced-const.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/misc-misplaced-const.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/misc-misplaced-const.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/misc-misplaced-const.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,78 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>clang-tidy - misc-misplaced-const — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="misc-new-delete-overloads" href="misc-new-delete-overloads.html" />
+ <link rel="prev" title="misc-definitions-in-headers" href="misc-definitions-in-headers.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - misc-misplaced-const</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="misc-definitions-in-headers.html">misc-definitions-in-headers</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="misc-new-delete-overloads.html">misc-new-delete-overloads</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="misc-misplaced-const">
+<h1>misc-misplaced-const<a class="headerlink" href="#misc-misplaced-const" title="Permalink to this headline">¶</a></h1>
+<p>This check diagnoses when a <code class="docutils literal notranslate"><span class="pre">const</span></code> qualifier is applied to a <code class="docutils literal notranslate"><span class="pre">typedef</span></code> to a
+pointer type rather than to the pointee, because such constructs are often
+misleading to developers because the <code class="docutils literal notranslate"><span class="pre">const</span></code> applies to the pointer rather
+than the pointee.</p>
+<p>For instance, in the following code, the resulting type is <code class="docutils literal notranslate"><span class="pre">int</span> <span class="pre">*</span></code> <code class="docutils literal notranslate"><span class="pre">const</span></code>
+rather than <code class="docutils literal notranslate"><span class="pre">const</span> <span class="pre">int</span> <span class="pre">*</span></code>:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">typedef</span> <span class="kt">int</span> <span class="o">*</span><span class="n">int_ptr</span><span class="p">;</span>
+<span class="kt">void</span> <span class="nf">f</span><span class="p">(</span><span class="k">const</span> <span class="n">int_ptr</span> <span class="n">ptr</span><span class="p">);</span>
+</pre></div>
+</div>
+<p>The check does not diagnose when the underlying <code class="docutils literal notranslate"><span class="pre">typedef</span></code> type is a pointer to
+a <code class="docutils literal notranslate"><span class="pre">const</span></code> type or a function pointer type. This is because the <code class="docutils literal notranslate"><span class="pre">const</span></code>
+qualifier is less likely to be mistaken because it would be redundant (or
+disallowed) on the underlying pointee type.</p>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="misc-definitions-in-headers.html">misc-definitions-in-headers</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="misc-new-delete-overloads.html">misc-new-delete-overloads</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/misc-new-delete-overloads.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/misc-new-delete-overloads.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/misc-new-delete-overloads.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/misc-new-delete-overloads.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,74 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>clang-tidy - misc-new-delete-overloads — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="misc-non-copyable-objects" href="misc-non-copyable-objects.html" />
+ <link rel="prev" title="misc-misplaced-const" href="misc-misplaced-const.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - misc-new-delete-overloads</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="misc-misplaced-const.html">misc-misplaced-const</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="misc-non-copyable-objects.html">misc-non-copyable-objects</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="misc-new-delete-overloads">
+<h1>misc-new-delete-overloads<a class="headerlink" href="#misc-new-delete-overloads" title="Permalink to this headline">¶</a></h1>
+<p><cite>cert-dcl54-cpp</cite> redirects here as an alias for this check.</p>
+<p>The check flags overloaded operator <code class="docutils literal notranslate"><span class="pre">new()</span></code> and operator <code class="docutils literal notranslate"><span class="pre">delete()</span></code>
+functions that do not have a corresponding free store function defined within
+the same scope.
+For instance, the check will flag a class implementation of a non-placement
+operator <code class="docutils literal notranslate"><span class="pre">new()</span></code> when the class does not also define a non-placement operator
+<code class="docutils literal notranslate"><span class="pre">delete()</span></code> function as well.</p>
+<p>The check does not flag implicitly-defined operators, deleted or private
+operators, or placement operators.</p>
+<p>This check corresponds to CERT C++ Coding Standard rule <a class="reference external" href="https://www.securecoding.cert.org/confluence/display/cplusplus/DCL54-CPP.+Overload+allocation+and+deallocation+functions+as+a+pair+in+the+same+scope">DCL54-CPP. Overload allocation and deallocation functions as a pair in the same scope</a>.</p>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="misc-misplaced-const.html">misc-misplaced-const</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="misc-non-copyable-objects.html">misc-non-copyable-objects</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/misc-non-copyable-objects.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/misc-non-copyable-objects.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/misc-non-copyable-objects.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/misc-non-copyable-objects.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,69 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>clang-tidy - misc-non-copyable-objects — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="misc-non-private-member-variables-in-classes" href="misc-non-private-member-variables-in-classes.html" />
+ <link rel="prev" title="misc-new-delete-overloads" href="misc-new-delete-overloads.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - misc-non-copyable-objects</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="misc-new-delete-overloads.html">misc-new-delete-overloads</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="misc-non-private-member-variables-in-classes.html">misc-non-private-member-variables-in-classes</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="misc-non-copyable-objects">
+<h1>misc-non-copyable-objects<a class="headerlink" href="#misc-non-copyable-objects" title="Permalink to this headline">¶</a></h1>
+<p><cite>cert-fio38-c</cite> redirects here as an alias for this check.</p>
+<p>The check flags dereferences and non-pointer declarations of objects that are
+not meant to be passed by value, such as C FILE objects or POSIX
+<code class="docutils literal notranslate"><span class="pre">pthread_mutex_t</span></code> objects.</p>
+<p>This check corresponds to CERT C++ Coding Standard rule <a class="reference external" href="https://www.securecoding.cert.org/confluence/display/c/FIO38-C.+Do+not+copy+a+FILE+object">FIO38-C. Do not copy a FILE object</a>.</p>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="misc-new-delete-overloads.html">misc-new-delete-overloads</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="misc-non-private-member-variables-in-classes.html">misc-non-private-member-variables-in-classes</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/misc-non-private-member-variables-in-classes.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/misc-non-private-member-variables-in-classes.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/misc-non-private-member-variables-in-classes.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/misc-non-private-member-variables-in-classes.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,88 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>clang-tidy - misc-non-private-member-variables-in-classes — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="misc-redundant-expression" href="misc-redundant-expression.html" />
+ <link rel="prev" title="misc-non-copyable-objects" href="misc-non-copyable-objects.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - misc-non-private-member-variables-in-classes</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="misc-non-copyable-objects.html">misc-non-copyable-objects</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="misc-redundant-expression.html">misc-redundant-expression</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="misc-non-private-member-variables-in-classes">
+<h1>misc-non-private-member-variables-in-classes<a class="headerlink" href="#misc-non-private-member-variables-in-classes" title="Permalink to this headline">¶</a></h1>
+<p><cite>cppcoreguidelines-non-private-member-variables-in-classes</cite> redirects here
+as an alias for this check.</p>
+<p>Finds classes that contain non-static data members in addition to user-declared
+non-static member functions and diagnose all data members declared with a
+non-<code class="docutils literal notranslate"><span class="pre">public</span></code> access specifier. The data members should be declared as
+<code class="docutils literal notranslate"><span class="pre">private</span></code> and accessed through member functions instead of exposed to derived
+classes or class consumers.</p>
+<div class="section" id="options">
+<h2>Options<a class="headerlink" href="#options" title="Permalink to this headline">¶</a></h2>
+<dl class="option">
+<dt id="cmdoption-arg-ignoreclasseswithallmembervariablesbeingpublic">
+<code class="descname">IgnoreClassesWithAllMemberVariablesBeingPublic</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-ignoreclasseswithallmembervariablesbeingpublic" title="Permalink to this definition">¶</a></dt>
+<dd><p>Allows to completely ignore classes if <strong>all</strong> the member variables in that
+class a declared with a <code class="docutils literal notranslate"><span class="pre">public</span></code> access specifier.</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-ignorepublicmembervariables">
+<code class="descname">IgnorePublicMemberVariables</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-ignorepublicmembervariables" title="Permalink to this definition">¶</a></dt>
+<dd><p>Allows to ignore (not diagnose) <strong>all</strong> the member variables declared with
+a <code class="docutils literal notranslate"><span class="pre">public</span></code> access specifier.</p>
+</dd></dl>
+
+</div>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="misc-non-copyable-objects.html">misc-non-copyable-objects</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="misc-redundant-expression.html">misc-redundant-expression</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/misc-redundant-expression.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/misc-redundant-expression.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/misc-redundant-expression.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/misc-redundant-expression.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,79 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>clang-tidy - misc-redundant-expression — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="misc-static-assert" href="misc-static-assert.html" />
+ <link rel="prev" title="misc-non-private-member-variables-in-classes" href="misc-non-private-member-variables-in-classes.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - misc-redundant-expression</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="misc-non-private-member-variables-in-classes.html">misc-non-private-member-variables-in-classes</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="misc-static-assert.html">misc-static-assert</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="misc-redundant-expression">
+<h1>misc-redundant-expression<a class="headerlink" href="#misc-redundant-expression" title="Permalink to this headline">¶</a></h1>
+<p>Detect redundant expressions which are typically errors due to copy-paste.</p>
+<p>Depending on the operator expressions may be</p>
+<ul class="simple">
+<li>redundant,</li>
+<li>always <code class="docutils literal notranslate"><span class="pre">true</span></code>,</li>
+<li>always <code class="docutils literal notranslate"><span class="pre">false</span></code>,</li>
+<li>always a constant (zero or one).</li>
+</ul>
+<p>Examples:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="p">((</span><span class="n">x</span><span class="o">+</span><span class="mi">1</span><span class="p">)</span> <span class="o">|</span> <span class="p">(</span><span class="n">x</span><span class="o">+</span><span class="mi">1</span><span class="p">))</span> <span class="c1">// (x+1) is redundant</span>
+<span class="p">(</span><span class="n">p</span><span class="o">-></span><span class="n">x</span> <span class="o">==</span> <span class="n">p</span><span class="o">-></span><span class="n">x</span><span class="p">)</span> <span class="c1">// always true</span>
+<span class="p">(</span><span class="n">p</span><span class="o">-></span><span class="n">x</span> <span class="o"><</span> <span class="n">p</span><span class="o">-></span><span class="n">x</span><span class="p">)</span> <span class="c1">// always false</span>
+<span class="p">(</span><span class="n">speed</span> <span class="o">-</span> <span class="n">speed</span> <span class="o">+</span> <span class="mi">1</span> <span class="o">==</span> <span class="mi">12</span><span class="p">)</span> <span class="c1">// speed - speed is always zero</span>
+</pre></div>
+</div>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="misc-non-private-member-variables-in-classes.html">misc-non-private-member-variables-in-classes</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="misc-static-assert.html">misc-static-assert</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/misc-static-assert.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/misc-static-assert.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/misc-static-assert.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/misc-static-assert.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,69 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>clang-tidy - misc-static-assert — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="misc-throw-by-value-catch-by-reference" href="misc-throw-by-value-catch-by-reference.html" />
+ <link rel="prev" title="misc-redundant-expression" href="misc-redundant-expression.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - misc-static-assert</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="misc-redundant-expression.html">misc-redundant-expression</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="misc-throw-by-value-catch-by-reference.html">misc-throw-by-value-catch-by-reference</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="misc-static-assert">
+<h1>misc-static-assert<a class="headerlink" href="#misc-static-assert" title="Permalink to this headline">¶</a></h1>
+<p><cite>cert-dcl03-c</cite> redirects here as an alias for this check.</p>
+<p>Replaces <code class="docutils literal notranslate"><span class="pre">assert()</span></code> with <code class="docutils literal notranslate"><span class="pre">static_assert()</span></code> if the condition is evaluatable
+at compile time.</p>
+<p>The condition of <code class="docutils literal notranslate"><span class="pre">static_assert()</span></code> is evaluated at compile time which is
+safer and more efficient.</p>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="misc-redundant-expression.html">misc-redundant-expression</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="misc-throw-by-value-catch-by-reference.html">misc-throw-by-value-catch-by-reference</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/misc-throw-by-value-catch-by-reference.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/misc-throw-by-value-catch-by-reference.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/misc-throw-by-value-catch-by-reference.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/misc-throw-by-value-catch-by-reference.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,118 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>clang-tidy - misc-throw-by-value-catch-by-reference — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="misc-unconventional-assign-operator" href="misc-unconventional-assign-operator.html" />
+ <link rel="prev" title="misc-static-assert" href="misc-static-assert.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - misc-throw-by-value-catch-by-reference</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="misc-static-assert.html">misc-static-assert</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="misc-unconventional-assign-operator.html">misc-unconventional-assign-operator</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="misc-throw-by-value-catch-by-reference">
+<h1>misc-throw-by-value-catch-by-reference<a class="headerlink" href="#misc-throw-by-value-catch-by-reference" title="Permalink to this headline">¶</a></h1>
+<p><cite>cert-err09-cpp</cite> redirects here as an alias for this check.
+<cite>cert-err61-cpp</cite> redirects here as an alias for this check.</p>
+<p>Finds violations of the rule âThrow by value, catch by referenceâ presented for
+example in âC++ Coding Standardsâ by H. Sutter and A. Alexandrescu, as well as
+the CERT C++ Coding Standard rule <a class="reference external" href="https://wiki.sei.cmu.edu/confluence/display/cplusplus/ERR61-CPP.+Catch+exceptions+by+lvalue+reference">ERR61-CPP. Catch exceptions by lvalue reference</a>.</p>
+<dl class="docutils">
+<dt>Exceptions:</dt>
+<dd><ul class="first last simple">
+<li>Throwing string literals will not be flagged despite being a pointer. They
+are not susceptible to slicing and the usage of string literals is idomatic.</li>
+<li>Catching character pointers (<code class="docutils literal notranslate"><span class="pre">char</span></code>, <code class="docutils literal notranslate"><span class="pre">wchar_t</span></code>, unicode character types)
+will not be flagged to allow catching sting literals.</li>
+<li>Moved named values will not be flagged as not throwing an anonymous
+temporary. In this case we can be sure that the user knows that the object
+canât be accessed outside catch blocks handling the error.</li>
+<li>Throwing function parameters will not be flagged as not throwing an
+anonymous temporary. This allows helper functions for throwing.</li>
+<li>Re-throwing caught exception variables will not be flragged as not throwing
+an anonymous temporary. Although this can usually be done by just writing
+<code class="docutils literal notranslate"><span class="pre">throw;</span></code> it happens often enough in real code.</li>
+</ul>
+</dd>
+</dl>
+<div class="section" id="options">
+<h2>Options<a class="headerlink" href="#options" title="Permalink to this headline">¶</a></h2>
+<dl class="option">
+<dt id="cmdoption-arg-checkthrowtemporaries">
+<code class="descname">CheckThrowTemporaries</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-checkthrowtemporaries" title="Permalink to this definition">¶</a></dt>
+<dd><p>Triggers detection of violations of the CERT recommendation ERR09-CPP. Throw
+anonymous temporaries.
+Default is <cite>1</cite>.</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-warnonlargeobject">
+<code class="descname">WarnOnLargeObject</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-warnonlargeobject" title="Permalink to this definition">¶</a></dt>
+<dd><p>Also warns for any large, trivial object caught by value. Catching a large
+object by value is not dangerous but affects the performance negatively. The
+maximum size of an object allowed to be caught without warning can be set
+using the <cite>MaxSize</cite> option.
+Default is <cite>0</cite>.</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-maxsize">
+<code class="descname">MaxSize</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-maxsize" title="Permalink to this definition">¶</a></dt>
+<dd><p>Determines the maximum size of an object allowed to be caught without
+warning. Only applicable if <cite>WarnOnLargeObject</cite> is set to <cite>1</cite>. If option is
+set by the user to <cite>std::numeric_limits<uint64_t>::max()</cite> then it reverts to
+the default value.
+Default is the size of <cite>size_t</cite>.</p>
+</dd></dl>
+
+</div>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="misc-static-assert.html">misc-static-assert</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="misc-unconventional-assign-operator.html">misc-unconventional-assign-operator</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/misc-unconventional-assign-operator.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/misc-unconventional-assign-operator.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/misc-unconventional-assign-operator.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/misc-unconventional-assign-operator.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,74 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>clang-tidy - misc-unconventional-assign-operator — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="misc-uniqueptr-reset-release" href="misc-uniqueptr-reset-release.html" />
+ <link rel="prev" title="misc-throw-by-value-catch-by-reference" href="misc-throw-by-value-catch-by-reference.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - misc-unconventional-assign-operator</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="misc-throw-by-value-catch-by-reference.html">misc-throw-by-value-catch-by-reference</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="misc-uniqueptr-reset-release.html">misc-uniqueptr-reset-release</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="misc-unconventional-assign-operator">
+<h1>misc-unconventional-assign-operator<a class="headerlink" href="#misc-unconventional-assign-operator" title="Permalink to this headline">¶</a></h1>
+<p>Finds declarations of assign operators with the wrong return and/or argument
+types and definitions with good return type but wrong <code class="docutils literal notranslate"><span class="pre">return</span></code> statements.</p>
+<blockquote>
+<div><ul class="simple">
+<li>The return type must be <code class="docutils literal notranslate"><span class="pre">Class&</span></code>.</li>
+<li>Works with move-assign and assign by value.</li>
+<li>Private and deleted operators are ignored.</li>
+<li>The operator must always return <code class="docutils literal notranslate"><span class="pre">*this</span></code>.</li>
+</ul>
+</div></blockquote>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="misc-throw-by-value-catch-by-reference.html">misc-throw-by-value-catch-by-reference</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="misc-uniqueptr-reset-release.html">misc-uniqueptr-reset-release</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/misc-uniqueptr-reset-release.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/misc-uniqueptr-reset-release.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/misc-uniqueptr-reset-release.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/misc-uniqueptr-reset-release.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,72 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>clang-tidy - misc-uniqueptr-reset-release — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="misc-unused-alias-decls" href="misc-unused-alias-decls.html" />
+ <link rel="prev" title="misc-unconventional-assign-operator" href="misc-unconventional-assign-operator.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - misc-uniqueptr-reset-release</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="misc-unconventional-assign-operator.html">misc-unconventional-assign-operator</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="misc-unused-alias-decls.html">misc-unused-alias-decls</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="misc-uniqueptr-reset-release">
+<h1>misc-uniqueptr-reset-release<a class="headerlink" href="#misc-uniqueptr-reset-release" title="Permalink to this headline">¶</a></h1>
+<p>Find and replace <code class="docutils literal notranslate"><span class="pre">unique_ptr::reset(release())</span></code> with <code class="docutils literal notranslate"><span class="pre">std::move()</span></code>.</p>
+<p>Example:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="n">std</span><span class="o">::</span><span class="n">unique_ptr</span><span class="o"><</span><span class="n">Foo</span><span class="o">></span> <span class="n">x</span><span class="p">,</span> <span class="n">y</span><span class="p">;</span>
+<span class="n">x</span><span class="p">.</span><span class="n">reset</span><span class="p">(</span><span class="n">y</span><span class="p">.</span><span class="n">release</span><span class="p">());</span> <span class="o">-></span> <span class="n">x</span> <span class="o">=</span> <span class="n">std</span><span class="o">::</span><span class="n">move</span><span class="p">(</span><span class="n">y</span><span class="p">);</span>
+</pre></div>
+</div>
+<p>If <code class="docutils literal notranslate"><span class="pre">y</span></code> is already rvalue, <code class="docutils literal notranslate"><span class="pre">std::move()</span></code> is not added. <code class="docutils literal notranslate"><span class="pre">x</span></code> and <code class="docutils literal notranslate"><span class="pre">y</span></code> can
+also be <code class="docutils literal notranslate"><span class="pre">std::unique_ptr<Foo>*</span></code>.</p>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="misc-unconventional-assign-operator.html">misc-unconventional-assign-operator</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="misc-unused-alias-decls.html">misc-unused-alias-decls</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/misc-unused-alias-decls.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/misc-unused-alias-decls.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/misc-unused-alias-decls.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/misc-unused-alias-decls.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,65 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>clang-tidy - misc-unused-alias-decls — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="misc-unused-parameters" href="misc-unused-parameters.html" />
+ <link rel="prev" title="misc-uniqueptr-reset-release" href="misc-uniqueptr-reset-release.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - misc-unused-alias-decls</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="misc-uniqueptr-reset-release.html">misc-uniqueptr-reset-release</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="misc-unused-parameters.html">misc-unused-parameters</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="misc-unused-alias-decls">
+<h1>misc-unused-alias-decls<a class="headerlink" href="#misc-unused-alias-decls" title="Permalink to this headline">¶</a></h1>
+<p>Finds unused namespace alias declarations.</p>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="misc-uniqueptr-reset-release.html">misc-uniqueptr-reset-release</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="misc-unused-parameters.html">misc-unused-parameters</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/misc-unused-parameters.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/misc-unused-parameters.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/misc-unused-parameters.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/misc-unused-parameters.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,100 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>clang-tidy - misc-unused-parameters — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="misc-unused-using-decls" href="misc-unused-using-decls.html" />
+ <link rel="prev" title="misc-unused-alias-decls" href="misc-unused-alias-decls.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - misc-unused-parameters</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="misc-unused-alias-decls.html">misc-unused-alias-decls</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="misc-unused-using-decls.html">misc-unused-using-decls</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="misc-unused-parameters">
+<h1>misc-unused-parameters<a class="headerlink" href="#misc-unused-parameters" title="Permalink to this headline">¶</a></h1>
+<p>Finds unused function parameters. Unused parameters may signify a bug in the
+code (e.g. when a different parameter is used instead). The suggested fixes
+either comment parameter name out or remove the parameter completely, if all
+callers of the function are in the same translation unit and can be updated.</p>
+<p>The check is similar to the <cite>-Wunused-parameter</cite> compiler diagnostic and can be
+used to prepare a codebase to enabling of that diagnostic. By default the check
+is more permissive (see <a class="reference internal" href="performance-inefficient-string-concatenation.html#cmdoption-arg-strictmode"><code class="xref std std-option docutils literal notranslate"><span class="pre">StrictMode</span></code></a>).</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="kt">void</span> <span class="nf">a</span><span class="p">(</span><span class="kt">int</span> <span class="n">i</span><span class="p">)</span> <span class="p">{</span> <span class="cm">/*some code that doesn't use `i`*/</span> <span class="p">}</span>
+
+<span class="c1">// becomes</span>
+
+<span class="kt">void</span> <span class="nf">a</span><span class="p">(</span><span class="kt">int</span> <span class="cm">/*i*/</span><span class="p">)</span> <span class="p">{</span> <span class="cm">/*some code that doesn't use `i`*/</span> <span class="p">}</span>
+</pre></div>
+</div>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">static</span> <span class="kt">void</span> <span class="nf">staticFunctionA</span><span class="p">(</span><span class="kt">int</span> <span class="n">i</span><span class="p">);</span>
+<span class="k">static</span> <span class="kt">void</span> <span class="nf">staticFunctionA</span><span class="p">(</span><span class="kt">int</span> <span class="n">i</span><span class="p">)</span> <span class="p">{</span> <span class="cm">/*some code that doesn't use `i`*/</span> <span class="p">}</span>
+
+<span class="c1">// becomes</span>
+
+<span class="k">static</span> <span class="kt">void</span> <span class="nf">staticFunctionA</span><span class="p">()</span>
+<span class="k">static</span> <span class="kt">void</span> <span class="n">staticFunctionA</span><span class="p">()</span> <span class="p">{</span> <span class="cm">/*some code that doesn't use `i`*/</span> <span class="p">}</span>
+</pre></div>
+</div>
+<div class="section" id="options">
+<h2>Options<a class="headerlink" href="#options" title="Permalink to this headline">¶</a></h2>
+<dl class="option">
+<dt id="cmdoption-arg-strictmode">
+<code class="descname">StrictMode</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-strictmode" title="Permalink to this definition">¶</a></dt>
+<dd><p>When zero (default value), the check will ignore trivially unused parameters,
+i.e. when the corresponding function has an empty body (and in case of
+constructors - no constructor initializers). When the function body is empty,
+an unused parameter is unlikely to be unnoticed by a human reader, and
+thereâs basically no place for a bug to hide.</p>
+</dd></dl>
+
+</div>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="misc-unused-alias-decls.html">misc-unused-alias-decls</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="misc-unused-using-decls.html">misc-unused-using-decls</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/misc-unused-using-decls.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/misc-unused-using-decls.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/misc-unused-using-decls.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/misc-unused-using-decls.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,70 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>clang-tidy - misc-unused-using-decls — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="modernize-avoid-bind" href="modernize-avoid-bind.html" />
+ <link rel="prev" title="misc-unused-parameters" href="misc-unused-parameters.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - misc-unused-using-decls</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="misc-unused-parameters.html">misc-unused-parameters</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="modernize-avoid-bind.html">modernize-avoid-bind</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="misc-unused-using-decls">
+<h1>misc-unused-using-decls<a class="headerlink" href="#misc-unused-using-decls" title="Permalink to this headline">¶</a></h1>
+<p>Finds unused <code class="docutils literal notranslate"><span class="pre">using</span></code> declarations.</p>
+<p>Example:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">namespace</span> <span class="n">n</span> <span class="p">{</span> <span class="k">class</span> <span class="nc">C</span><span class="p">;</span> <span class="p">}</span>
+<span class="k">using</span> <span class="n">n</span><span class="o">::</span><span class="n">C</span><span class="p">;</span> <span class="c1">// Never actually used.</span>
+</pre></div>
+</div>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="misc-unused-parameters.html">misc-unused-parameters</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="modernize-avoid-bind.html">modernize-avoid-bind</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-avoid-bind.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-avoid-bind.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-avoid-bind.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-avoid-bind.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,88 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>clang-tidy - modernize-avoid-bind — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="modernize-avoid-c-arrays" href="modernize-avoid-c-arrays.html" />
+ <link rel="prev" title="misc-unused-using-decls" href="misc-unused-using-decls.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - modernize-avoid-bind</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="misc-unused-using-decls.html">misc-unused-using-decls</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="modernize-avoid-c-arrays.html">modernize-avoid-c-arrays</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="modernize-avoid-bind">
+<h1>modernize-avoid-bind<a class="headerlink" href="#modernize-avoid-bind" title="Permalink to this headline">¶</a></h1>
+<p>The check finds uses of <code class="docutils literal notranslate"><span class="pre">std::bind</span></code> and replaces simple uses with lambdas.
+Lambdas will use value-capture where required.</p>
+<p>Right now it only handles free functions, not member functions.</p>
+<p>Given:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="kt">int</span> <span class="nf">add</span><span class="p">(</span><span class="kt">int</span> <span class="n">x</span><span class="p">,</span> <span class="kt">int</span> <span class="n">y</span><span class="p">)</span> <span class="p">{</span> <span class="k">return</span> <span class="n">x</span> <span class="o">+</span> <span class="n">y</span><span class="p">;</span> <span class="p">}</span>
+</pre></div>
+</div>
+<p>Then:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="kt">void</span> <span class="nf">f</span><span class="p">()</span> <span class="p">{</span>
+ <span class="kt">int</span> <span class="n">x</span> <span class="o">=</span> <span class="mi">2</span><span class="p">;</span>
+ <span class="k">auto</span> <span class="n">clj</span> <span class="o">=</span> <span class="n">std</span><span class="o">::</span><span class="n">bind</span><span class="p">(</span><span class="n">add</span><span class="p">,</span> <span class="n">x</span><span class="p">,</span> <span class="n">_1</span><span class="p">);</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+<p>is replaced by:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="kt">void</span> <span class="nf">f</span><span class="p">()</span> <span class="p">{</span>
+ <span class="kt">int</span> <span class="n">x</span> <span class="o">=</span> <span class="mi">2</span><span class="p">;</span>
+ <span class="k">auto</span> <span class="n">clj</span> <span class="o">=</span> <span class="p">[</span><span class="o">=</span><span class="p">](</span><span class="k">auto</span> <span class="o">&&</span> <span class="n">arg1</span><span class="p">)</span> <span class="p">{</span> <span class="k">return</span> <span class="n">add</span><span class="p">(</span><span class="n">x</span><span class="p">,</span> <span class="n">arg1</span><span class="p">);</span> <span class="p">};</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+<p><code class="docutils literal notranslate"><span class="pre">std::bind</span></code> can be hard to read and can result in larger object files and
+binaries due to type information that will not be produced by equivalent
+lambdas.</p>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="misc-unused-using-decls.html">misc-unused-using-decls</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="modernize-avoid-c-arrays.html">modernize-avoid-c-arrays</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-avoid-c-arrays.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-avoid-c-arrays.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-avoid-c-arrays.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-avoid-c-arrays.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,111 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>clang-tidy - modernize-avoid-c-arrays — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="modernize-concat-nested-namespaces" href="modernize-concat-nested-namespaces.html" />
+ <link rel="prev" title="modernize-avoid-bind" href="modernize-avoid-bind.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - modernize-avoid-c-arrays</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="modernize-avoid-bind.html">modernize-avoid-bind</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="modernize-concat-nested-namespaces.html">modernize-concat-nested-namespaces</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="modernize-avoid-c-arrays">
+<h1>modernize-avoid-c-arrays<a class="headerlink" href="#modernize-avoid-c-arrays" title="Permalink to this headline">¶</a></h1>
+<p><cite>cppcoreguidelines-avoid-c-arrays</cite> redirects here as an alias for this check.</p>
+<p><cite>hicpp-avoid-c-arrays</cite> redirects here as an alias for this check.</p>
+<p>Finds C-style array types and recommend to use <code class="docutils literal notranslate"><span class="pre">std::array<></span></code> /
+<code class="docutils literal notranslate"><span class="pre">std::vector<></span></code>. All types of C arrays are diagnosed.</p>
+<p>However, fix-it are potentially dangerous in header files and are therefore not
+emitted right now.</p>
+<div class="code c++ highlight-default notranslate"><div class="highlight"><pre><span></span><span class="nb">int</span> <span class="n">a</span><span class="p">[]</span> <span class="o">=</span> <span class="p">{</span><span class="mi">1</span><span class="p">,</span> <span class="mi">2</span><span class="p">};</span> <span class="o">//</span> <span class="n">warning</span><span class="p">:</span> <span class="n">do</span> <span class="ow">not</span> <span class="n">declare</span> <span class="n">C</span><span class="o">-</span><span class="n">style</span> <span class="n">arrays</span><span class="p">,</span> <span class="n">use</span> <span class="n">std</span><span class="p">::</span><span class="n">array</span><span class="o"><></span> <span class="n">instead</span>
+
+<span class="nb">int</span> <span class="n">b</span><span class="p">[</span><span class="mi">1</span><span class="p">];</span> <span class="o">//</span> <span class="n">warning</span><span class="p">:</span> <span class="n">do</span> <span class="ow">not</span> <span class="n">declare</span> <span class="n">C</span><span class="o">-</span><span class="n">style</span> <span class="n">arrays</span><span class="p">,</span> <span class="n">use</span> <span class="n">std</span><span class="p">::</span><span class="n">array</span><span class="o"><></span> <span class="n">instead</span>
+
+<span class="n">void</span> <span class="n">foo</span><span class="p">()</span> <span class="p">{</span>
+ <span class="nb">int</span> <span class="n">c</span><span class="p">[</span><span class="n">b</span><span class="p">[</span><span class="mi">0</span><span class="p">]];</span> <span class="o">//</span> <span class="n">warning</span><span class="p">:</span> <span class="n">do</span> <span class="ow">not</span> <span class="n">declare</span> <span class="n">C</span> <span class="n">VLA</span> <span class="n">arrays</span><span class="p">,</span> <span class="n">use</span> <span class="n">std</span><span class="p">::</span><span class="n">vector</span><span class="o"><></span> <span class="n">instead</span>
+<span class="p">}</span>
+
+<span class="n">template</span> <span class="o"><</span><span class="n">typename</span> <span class="n">T</span><span class="p">,</span> <span class="nb">int</span> <span class="n">Size</span><span class="o">></span>
+<span class="k">class</span> <span class="nc">array</span> <span class="p">{</span>
+ <span class="n">T</span> <span class="n">d</span><span class="p">[</span><span class="n">Size</span><span class="p">];</span> <span class="o">//</span> <span class="n">warning</span><span class="p">:</span> <span class="n">do</span> <span class="ow">not</span> <span class="n">declare</span> <span class="n">C</span><span class="o">-</span><span class="n">style</span> <span class="n">arrays</span><span class="p">,</span> <span class="n">use</span> <span class="n">std</span><span class="p">::</span><span class="n">array</span><span class="o"><></span> <span class="n">instead</span>
+
+ <span class="nb">int</span> <span class="n">e</span><span class="p">[</span><span class="mi">1</span><span class="p">];</span> <span class="o">//</span> <span class="n">warning</span><span class="p">:</span> <span class="n">do</span> <span class="ow">not</span> <span class="n">declare</span> <span class="n">C</span><span class="o">-</span><span class="n">style</span> <span class="n">arrays</span><span class="p">,</span> <span class="n">use</span> <span class="n">std</span><span class="p">::</span><span class="n">array</span><span class="o"><></span> <span class="n">instead</span>
+<span class="p">};</span>
+
+<span class="n">array</span><span class="o"><</span><span class="nb">int</span><span class="p">[</span><span class="mi">4</span><span class="p">],</span> <span class="mi">2</span><span class="o">></span> <span class="n">d</span><span class="p">;</span> <span class="o">//</span> <span class="n">warning</span><span class="p">:</span> <span class="n">do</span> <span class="ow">not</span> <span class="n">declare</span> <span class="n">C</span><span class="o">-</span><span class="n">style</span> <span class="n">arrays</span><span class="p">,</span> <span class="n">use</span> <span class="n">std</span><span class="p">::</span><span class="n">array</span><span class="o"><></span> <span class="n">instead</span>
+
+<span class="n">using</span> <span class="n">k</span> <span class="o">=</span> <span class="nb">int</span><span class="p">[</span><span class="mi">4</span><span class="p">];</span> <span class="o">//</span> <span class="n">warning</span><span class="p">:</span> <span class="n">do</span> <span class="ow">not</span> <span class="n">declare</span> <span class="n">C</span><span class="o">-</span><span class="n">style</span> <span class="n">arrays</span><span class="p">,</span> <span class="n">use</span> <span class="n">std</span><span class="p">::</span><span class="n">array</span><span class="o"><></span> <span class="n">instead</span>
+</pre></div>
+</div>
+<p>However, the <code class="docutils literal notranslate"><span class="pre">extern</span> <span class="pre">"C"</span></code> code is ignored, since it is common to share
+such headers between C code, and C++ code.</p>
+<div class="code c++ highlight-default notranslate"><div class="highlight"><pre><span></span><span class="o">//</span> <span class="n">Some</span> <span class="n">header</span>
+<span class="n">extern</span> <span class="s2">"C"</span> <span class="p">{</span>
+
+<span class="nb">int</span> <span class="n">f</span><span class="p">[]</span> <span class="o">=</span> <span class="p">{</span><span class="mi">1</span><span class="p">,</span> <span class="mi">2</span><span class="p">};</span> <span class="o">//</span> <span class="ow">not</span> <span class="n">diagnosed</span>
+
+<span class="nb">int</span> <span class="n">j</span><span class="p">[</span><span class="mi">1</span><span class="p">];</span> <span class="o">//</span> <span class="ow">not</span> <span class="n">diagnosed</span>
+
+<span class="n">inline</span> <span class="n">void</span> <span class="n">bar</span><span class="p">()</span> <span class="p">{</span>
+ <span class="p">{</span>
+ <span class="nb">int</span> <span class="n">j</span><span class="p">[</span><span class="n">j</span><span class="p">[</span><span class="mi">0</span><span class="p">]];</span> <span class="o">//</span> <span class="ow">not</span> <span class="n">diagnosed</span>
+ <span class="p">}</span>
+<span class="p">}</span>
+
+<span class="p">}</span>
+</pre></div>
+</div>
+<p>Similarly, the <code class="docutils literal notranslate"><span class="pre">main()</span></code> function is ignored. Its second and third parameters
+can be either <code class="docutils literal notranslate"><span class="pre">char*</span> <span class="pre">argv[]</span></code> or <code class="docutils literal notranslate"><span class="pre">char**</span> <span class="pre">argv</span></code>, but can not be
+<code class="docutils literal notranslate"><span class="pre">std::array<></span></code>.</p>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="modernize-avoid-bind.html">modernize-avoid-bind</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="modernize-concat-nested-namespaces.html">modernize-concat-nested-namespaces</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-concat-nested-namespaces.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-concat-nested-namespaces.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-concat-nested-namespaces.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-concat-nested-namespaces.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,103 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>clang-tidy - modernize-concat-nested-namespaces — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="modernize-deprecated-headers" href="modernize-deprecated-headers.html" />
+ <link rel="prev" title="modernize-avoid-c-arrays" href="modernize-avoid-c-arrays.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - modernize-concat-nested-namespaces</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="modernize-avoid-c-arrays.html">modernize-avoid-c-arrays</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="modernize-deprecated-headers.html">modernize-deprecated-headers</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="modernize-concat-nested-namespaces">
+<h1>modernize-concat-nested-namespaces<a class="headerlink" href="#modernize-concat-nested-namespaces" title="Permalink to this headline">¶</a></h1>
+<p>Checks for use of nested namespaces such as <code class="docutils literal notranslate"><span class="pre">namespace</span> <span class="pre">a</span> <span class="pre">{</span> <span class="pre">namespace</span> <span class="pre">b</span> <span class="pre">{</span> <span class="pre">...</span> <span class="pre">}</span> <span class="pre">}</span></code>
+and suggests changing to the more concise syntax introduced in C++17: <code class="docutils literal notranslate"><span class="pre">namespace</span> <span class="pre">a::b</span> <span class="pre">{</span> <span class="pre">...</span> <span class="pre">}</span></code>.
+Inline namespaces are not modified.</p>
+<p>For example:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">namespace</span> <span class="n">n1</span> <span class="p">{</span>
+<span class="k">namespace</span> <span class="n">n2</span> <span class="p">{</span>
+<span class="kt">void</span> <span class="n">t</span><span class="p">();</span>
+<span class="p">}</span>
+<span class="p">}</span>
+
+<span class="k">namespace</span> <span class="n">n3</span> <span class="p">{</span>
+<span class="k">namespace</span> <span class="n">n4</span> <span class="p">{</span>
+<span class="k">namespace</span> <span class="n">n5</span> <span class="p">{</span>
+<span class="kt">void</span> <span class="n">t</span><span class="p">();</span>
+<span class="p">}</span>
+<span class="p">}</span>
+<span class="k">namespace</span> <span class="n">n6</span> <span class="p">{</span>
+<span class="k">namespace</span> <span class="n">n7</span> <span class="p">{</span>
+<span class="kt">void</span> <span class="n">t</span><span class="p">();</span>
+<span class="p">}</span>
+<span class="p">}</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+<p>Will be modified to:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">namespace</span> <span class="n">n1</span><span class="o">::</span><span class="n">n2</span> <span class="p">{</span>
+<span class="kt">void</span> <span class="n">t</span><span class="p">();</span>
+<span class="p">}</span>
+
+<span class="k">namespace</span> <span class="n">n3</span> <span class="p">{</span>
+<span class="k">namespace</span> <span class="n">n4</span><span class="o">::</span><span class="n">n5</span> <span class="p">{</span>
+<span class="kt">void</span> <span class="n">t</span><span class="p">();</span>
+<span class="p">}</span>
+<span class="k">namespace</span> <span class="n">n6</span><span class="o">::</span><span class="n">n7</span> <span class="p">{</span>
+<span class="kt">void</span> <span class="n">t</span><span class="p">();</span>
+<span class="p">}</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="modernize-avoid-c-arrays.html">modernize-avoid-c-arrays</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="modernize-deprecated-headers.html">modernize-deprecated-headers</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-deprecated-headers.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-deprecated-headers.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-deprecated-headers.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-deprecated-headers.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,106 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>clang-tidy - modernize-deprecated-headers — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="modernize-deprecated-ios-base-aliases" href="modernize-deprecated-ios-base-aliases.html" />
+ <link rel="prev" title="modernize-concat-nested-namespaces" href="modernize-concat-nested-namespaces.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - modernize-deprecated-headers</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="modernize-concat-nested-namespaces.html">modernize-concat-nested-namespaces</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="modernize-deprecated-ios-base-aliases.html">modernize-deprecated-ios-base-aliases</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="modernize-deprecated-headers">
+<h1>modernize-deprecated-headers<a class="headerlink" href="#modernize-deprecated-headers" title="Permalink to this headline">¶</a></h1>
+<p>Some headers from C library were deprecated in C++ and are no longer welcome in
+C++ codebases. Some have no effect in C++. For more details refer to the C++ 14
+Standard [depr.c.headers] section.</p>
+<p>This check replaces C standard library headers with their C++ alternatives and
+removes redundant ones.</p>
+<p>Improtant note: the Standard doesnât guarantee that the C++ headers declare all
+the same functions in the global namespace. The check in its current form can
+break the code that uses library symbols from the global namespace.</p>
+<ul class="simple">
+<li><cite><assert.h></cite></li>
+<li><cite><complex.h></cite></li>
+<li><cite><ctype.h></cite></li>
+<li><cite><errno.h></cite></li>
+<li><cite><fenv.h></cite> // deprecated since C++11</li>
+<li><cite><float.h></cite></li>
+<li><cite><inttypes.h></cite></li>
+<li><cite><limits.h></cite></li>
+<li><cite><locale.h></cite></li>
+<li><cite><math.h></cite></li>
+<li><cite><setjmp.h></cite></li>
+<li><cite><signal.h></cite></li>
+<li><cite><stdarg.h></cite></li>
+<li><cite><stddef.h></cite></li>
+<li><cite><stdint.h></cite></li>
+<li><cite><stdio.h></cite></li>
+<li><cite><stdlib.h></cite></li>
+<li><cite><string.h></cite></li>
+<li><cite><tgmath.h></cite> // deprecated since C++11</li>
+<li><cite><time.h></cite></li>
+<li><cite><uchar.h></cite> // deprecated since C++11</li>
+<li><cite><wchar.h></cite></li>
+<li><cite><wctype.h></cite></li>
+</ul>
+<p>If the specified standard is older than C++11 the check will only replace
+headers deprecated before C++11, otherwise â every header that appeared in
+the previous list.</p>
+<p>These headers donât have effect in C++:</p>
+<ul class="simple">
+<li><cite><iso646.h></cite></li>
+<li><cite><stdalign.h></cite></li>
+<li><cite><stdbool.h></cite></li>
+</ul>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="modernize-concat-nested-namespaces.html">modernize-concat-nested-namespaces</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="modernize-deprecated-ios-base-aliases.html">modernize-deprecated-ios-base-aliases</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-deprecated-ios-base-aliases.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-deprecated-ios-base-aliases.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-deprecated-ios-base-aliases.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-deprecated-ios-base-aliases.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,94 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>clang-tidy - modernize-deprecated-ios-base-aliases — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="modernize-loop-convert" href="modernize-loop-convert.html" />
+ <link rel="prev" title="modernize-deprecated-headers" href="modernize-deprecated-headers.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - modernize-deprecated-ios-base-aliases</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="modernize-deprecated-headers.html">modernize-deprecated-headers</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="modernize-loop-convert.html">modernize-loop-convert</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="modernize-deprecated-ios-base-aliases">
+<h1>modernize-deprecated-ios-base-aliases<a class="headerlink" href="#modernize-deprecated-ios-base-aliases" title="Permalink to this headline">¶</a></h1>
+<p>Detects usage of the deprecated member types of <code class="docutils literal notranslate"><span class="pre">std::ios_base</span></code> and replaces
+those that have a non-deprecated equivalent.</p>
+<table border="1" class="docutils">
+<colgroup>
+<col width="56%" />
+<col width="44%" />
+</colgroup>
+<thead valign="bottom">
+<tr class="row-odd"><th class="head">Deprecated member type</th>
+<th class="head">Replacement</th>
+</tr>
+</thead>
+<tbody valign="top">
+<tr class="row-even"><td><code class="docutils literal notranslate"><span class="pre">std::ios_base::io_state</span></code></td>
+<td><code class="docutils literal notranslate"><span class="pre">std::ios_base::iostate</span></code></td>
+</tr>
+<tr class="row-odd"><td><code class="docutils literal notranslate"><span class="pre">std::ios_base::open_mode</span></code></td>
+<td><code class="docutils literal notranslate"><span class="pre">std::ios_base::openmode</span></code></td>
+</tr>
+<tr class="row-even"><td><code class="docutils literal notranslate"><span class="pre">std::ios_base::seek_dir</span></code></td>
+<td><code class="docutils literal notranslate"><span class="pre">std::ios_base::seekdir</span></code></td>
+</tr>
+<tr class="row-odd"><td><code class="docutils literal notranslate"><span class="pre">std::ios_base::streamoff</span></code></td>
+<td> </td>
+</tr>
+<tr class="row-even"><td><code class="docutils literal notranslate"><span class="pre">std::ios_base::streampos</span></code></td>
+<td> </td>
+</tr>
+</tbody>
+</table>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="modernize-deprecated-headers.html">modernize-deprecated-headers</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="modernize-loop-convert.html">modernize-loop-convert</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-loop-convert.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-loop-convert.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-loop-convert.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-loop-convert.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,295 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>clang-tidy - modernize-loop-convert — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="modernize-make-shared" href="modernize-make-shared.html" />
+ <link rel="prev" title="modernize-deprecated-ios-base-aliases" href="modernize-deprecated-ios-base-aliases.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - modernize-loop-convert</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="modernize-deprecated-ios-base-aliases.html">modernize-deprecated-ios-base-aliases</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="modernize-make-shared.html">modernize-make-shared</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="modernize-loop-convert">
+<h1>modernize-loop-convert<a class="headerlink" href="#modernize-loop-convert" title="Permalink to this headline">¶</a></h1>
+<p>This check converts <code class="docutils literal notranslate"><span class="pre">for(...;</span> <span class="pre">...;</span> <span class="pre">...)</span></code> loops to use the new range-based
+loops in C++11.</p>
+<p>Three kinds of loops can be converted:</p>
+<ul class="simple">
+<li>Loops over statically allocated arrays.</li>
+<li>Loops over containers, using iterators.</li>
+<li>Loops over array-like containers, using <code class="docutils literal notranslate"><span class="pre">operator[]</span></code> and <code class="docutils literal notranslate"><span class="pre">at()</span></code>.</li>
+</ul>
+<div class="section" id="minconfidence-option">
+<h2>MinConfidence option<a class="headerlink" href="#minconfidence-option" title="Permalink to this headline">¶</a></h2>
+<div class="section" id="risky">
+<h3>risky<a class="headerlink" href="#risky" title="Permalink to this headline">¶</a></h3>
+<p>In loops where the container expression is more complex than just a
+reference to a declared expression (a variable, function, enum, etc.),
+and some part of it appears elsewhere in the loop, we lower our confidence
+in the transformation due to the increased risk of changing semantics.
+Transformations for these loops are marked as <cite>risky</cite>, and thus will only
+be converted if the minimum required confidence level is set to <cite>risky</cite>.</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="kt">int</span> <span class="n">arr</span><span class="p">[</span><span class="mi">10</span><span class="p">][</span><span class="mi">20</span><span class="p">];</span>
+<span class="kt">int</span> <span class="n">l</span> <span class="o">=</span> <span class="mi">5</span><span class="p">;</span>
+
+<span class="k">for</span> <span class="p">(</span><span class="kt">int</span> <span class="n">j</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span> <span class="n">j</span> <span class="o"><</span> <span class="mi">20</span><span class="p">;</span> <span class="o">++</span><span class="n">j</span><span class="p">)</span>
+ <span class="kt">int</span> <span class="n">k</span> <span class="o">=</span> <span class="n">arr</span><span class="p">[</span><span class="n">l</span><span class="p">][</span><span class="n">j</span><span class="p">]</span> <span class="o">+</span> <span class="n">l</span><span class="p">;</span> <span class="c1">// using l outside arr[l] is considered risky</span>
+
+<span class="k">for</span> <span class="p">(</span><span class="kt">int</span> <span class="n">i</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span> <span class="n">i</span> <span class="o"><</span> <span class="n">obj</span><span class="p">.</span><span class="n">getVector</span><span class="p">().</span><span class="n">size</span><span class="p">();</span> <span class="o">++</span><span class="n">i</span><span class="p">)</span>
+ <span class="n">obj</span><span class="p">.</span><span class="n">foo</span><span class="p">(</span><span class="mi">10</span><span class="p">);</span> <span class="c1">// using 'obj' is considered risky</span>
+</pre></div>
+</div>
+<p>See
+<a class="reference internal" href="#incorrectriskytransformation"><span class="std std-ref">Range-based loops evaluate end() only once</span></a>
+for an example of an incorrect transformation when the minimum required confidence
+level is set to <cite>risky</cite>.</p>
+</div>
+<div class="section" id="reasonable-default">
+<h3>reasonable (Default)<a class="headerlink" href="#reasonable-default" title="Permalink to this headline">¶</a></h3>
+<p>If a loop calls <code class="docutils literal notranslate"><span class="pre">.end()</span></code> or <code class="docutils literal notranslate"><span class="pre">.size()</span></code> after each iteration, the
+transformation for that loop is marked as <cite>reasonable</cite>, and thus will
+be converted if the required confidence level is set to <cite>reasonable</cite>
+(default) or lower.</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="c1">// using size() is considered reasonable</span>
+<span class="k">for</span> <span class="p">(</span><span class="kt">int</span> <span class="n">i</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span> <span class="n">i</span> <span class="o"><</span> <span class="n">container</span><span class="p">.</span><span class="n">size</span><span class="p">();</span> <span class="o">++</span><span class="n">i</span><span class="p">)</span>
+ <span class="n">cout</span> <span class="o"><<</span> <span class="n">container</span><span class="p">[</span><span class="n">i</span><span class="p">];</span>
+</pre></div>
+</div>
+</div>
+<div class="section" id="safe">
+<h3>safe<a class="headerlink" href="#safe" title="Permalink to this headline">¶</a></h3>
+<p>Any other loops that do not match the above criteria to be marked as
+<cite>risky</cite> or <cite>reasonable</cite> are marked <cite>safe</cite>, and thus will be converted
+if the required confidence level is set to <cite>safe</cite> or lower.</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="kt">int</span> <span class="n">arr</span><span class="p">[]</span> <span class="o">=</span> <span class="p">{</span><span class="mi">1</span><span class="p">,</span><span class="mi">2</span><span class="p">,</span><span class="mi">3</span><span class="p">};</span>
+
+<span class="k">for</span> <span class="p">(</span><span class="kt">int</span> <span class="n">i</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span> <span class="n">i</span> <span class="o"><</span> <span class="mi">3</span><span class="p">;</span> <span class="o">++</span><span class="n">i</span><span class="p">)</span>
+ <span class="n">cout</span> <span class="o"><<</span> <span class="n">arr</span><span class="p">[</span><span class="n">i</span><span class="p">];</span>
+</pre></div>
+</div>
+</div>
+</div>
+<div class="section" id="example">
+<h2>Example<a class="headerlink" href="#example" title="Permalink to this headline">¶</a></h2>
+<p>Original:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">const</span> <span class="kt">int</span> <span class="n">N</span> <span class="o">=</span> <span class="mi">5</span><span class="p">;</span>
+<span class="kt">int</span> <span class="n">arr</span><span class="p">[]</span> <span class="o">=</span> <span class="p">{</span><span class="mi">1</span><span class="p">,</span><span class="mi">2</span><span class="p">,</span><span class="mi">3</span><span class="p">,</span><span class="mi">4</span><span class="p">,</span><span class="mi">5</span><span class="p">};</span>
+<span class="n">vector</span><span class="o"><</span><span class="kt">int</span><span class="o">></span> <span class="n">v</span><span class="p">;</span>
+<span class="n">v</span><span class="p">.</span><span class="n">push_back</span><span class="p">(</span><span class="mi">1</span><span class="p">);</span>
+<span class="n">v</span><span class="p">.</span><span class="n">push_back</span><span class="p">(</span><span class="mi">2</span><span class="p">);</span>
+<span class="n">v</span><span class="p">.</span><span class="n">push_back</span><span class="p">(</span><span class="mi">3</span><span class="p">);</span>
+
+<span class="c1">// safe conversion</span>
+<span class="k">for</span> <span class="p">(</span><span class="kt">int</span> <span class="n">i</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span> <span class="n">i</span> <span class="o"><</span> <span class="n">N</span><span class="p">;</span> <span class="o">++</span><span class="n">i</span><span class="p">)</span>
+ <span class="n">cout</span> <span class="o"><<</span> <span class="n">arr</span><span class="p">[</span><span class="n">i</span><span class="p">];</span>
+
+<span class="c1">// reasonable conversion</span>
+<span class="k">for</span> <span class="p">(</span><span class="n">vector</span><span class="o"><</span><span class="kt">int</span><span class="o">>::</span><span class="n">iterator</span> <span class="n">it</span> <span class="o">=</span> <span class="n">v</span><span class="p">.</span><span class="n">begin</span><span class="p">();</span> <span class="n">it</span> <span class="o">!=</span> <span class="n">v</span><span class="p">.</span><span class="n">end</span><span class="p">();</span> <span class="o">++</span><span class="n">it</span><span class="p">)</span>
+ <span class="n">cout</span> <span class="o"><<</span> <span class="o">*</span><span class="n">it</span><span class="p">;</span>
+
+<span class="c1">// reasonable conversion</span>
+<span class="k">for</span> <span class="p">(</span><span class="kt">int</span> <span class="n">i</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span> <span class="n">i</span> <span class="o"><</span> <span class="n">v</span><span class="p">.</span><span class="n">size</span><span class="p">();</span> <span class="o">++</span><span class="n">i</span><span class="p">)</span>
+ <span class="n">cout</span> <span class="o"><<</span> <span class="n">v</span><span class="p">[</span><span class="n">i</span><span class="p">];</span>
+</pre></div>
+</div>
+<p>After applying the check with minimum confidence level set to <cite>reasonable</cite> (default):</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">const</span> <span class="kt">int</span> <span class="n">N</span> <span class="o">=</span> <span class="mi">5</span><span class="p">;</span>
+<span class="kt">int</span> <span class="n">arr</span><span class="p">[]</span> <span class="o">=</span> <span class="p">{</span><span class="mi">1</span><span class="p">,</span><span class="mi">2</span><span class="p">,</span><span class="mi">3</span><span class="p">,</span><span class="mi">4</span><span class="p">,</span><span class="mi">5</span><span class="p">};</span>
+<span class="n">vector</span><span class="o"><</span><span class="kt">int</span><span class="o">></span> <span class="n">v</span><span class="p">;</span>
+<span class="n">v</span><span class="p">.</span><span class="n">push_back</span><span class="p">(</span><span class="mi">1</span><span class="p">);</span>
+<span class="n">v</span><span class="p">.</span><span class="n">push_back</span><span class="p">(</span><span class="mi">2</span><span class="p">);</span>
+<span class="n">v</span><span class="p">.</span><span class="n">push_back</span><span class="p">(</span><span class="mi">3</span><span class="p">);</span>
+
+<span class="c1">// safe conversion</span>
+<span class="k">for</span> <span class="p">(</span><span class="k">auto</span> <span class="o">&</span> <span class="nl">elem</span> <span class="p">:</span> <span class="n">arr</span><span class="p">)</span>
+ <span class="n">cout</span> <span class="o"><<</span> <span class="n">elem</span><span class="p">;</span>
+
+<span class="c1">// reasonable conversion</span>
+<span class="k">for</span> <span class="p">(</span><span class="k">auto</span> <span class="o">&</span> <span class="nl">elem</span> <span class="p">:</span> <span class="n">v</span><span class="p">)</span>
+ <span class="n">cout</span> <span class="o"><<</span> <span class="n">elem</span><span class="p">;</span>
+
+<span class="c1">// reasonable conversion</span>
+<span class="k">for</span> <span class="p">(</span><span class="k">auto</span> <span class="o">&</span> <span class="nl">elem</span> <span class="p">:</span> <span class="n">v</span><span class="p">)</span>
+ <span class="n">cout</span> <span class="o"><<</span> <span class="n">elem</span><span class="p">;</span>
+</pre></div>
+</div>
+</div>
+<div class="section" id="limitations">
+<h2>Limitations<a class="headerlink" href="#limitations" title="Permalink to this headline">¶</a></h2>
+<p>There are certain situations where the tool may erroneously perform
+transformations that remove information and change semantics. Users of the tool
+should be aware of the behaviour and limitations of the check outlined by
+the cases below.</p>
+<div class="section" id="comments-inside-loop-headers">
+<h3>Comments inside loop headers<a class="headerlink" href="#comments-inside-loop-headers" title="Permalink to this headline">¶</a></h3>
+<p>Comments inside the original loop header are ignored and deleted when
+transformed.</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">for</span> <span class="p">(</span><span class="kt">int</span> <span class="n">i</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span> <span class="n">i</span> <span class="o"><</span> <span class="n">N</span><span class="p">;</span> <span class="cm">/* This will be deleted */</span> <span class="o">++</span><span class="n">i</span><span class="p">)</span> <span class="p">{</span> <span class="p">}</span>
+</pre></div>
+</div>
+</div>
+<div class="section" id="range-based-loops-evaluate-end-only-once">
+<h3>Range-based loops evaluate end() only once<a class="headerlink" href="#range-based-loops-evaluate-end-only-once" title="Permalink to this headline">¶</a></h3>
+<p>The C++11 range-based for loop calls <code class="docutils literal notranslate"><span class="pre">.end()</span></code> only once during the
+initialization of the loop. If in the original loop <code class="docutils literal notranslate"><span class="pre">.end()</span></code> is called after
+each iteration the semantics of the transformed loop may differ.</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="c1">// The following is semantically equivalent to the C++11 range-based for loop,</span>
+<span class="c1">// therefore the semantics of the header will not change.</span>
+<span class="k">for</span> <span class="p">(</span><span class="n">iterator</span> <span class="n">it</span> <span class="o">=</span> <span class="n">container</span><span class="p">.</span><span class="n">begin</span><span class="p">(),</span> <span class="n">e</span> <span class="o">=</span> <span class="n">container</span><span class="p">.</span><span class="n">end</span><span class="p">();</span> <span class="n">it</span> <span class="o">!=</span> <span class="n">e</span><span class="p">;</span> <span class="o">++</span><span class="n">it</span><span class="p">)</span> <span class="p">{</span> <span class="p">}</span>
+
+<span class="c1">// Instead of calling .end() after each iteration, this loop will be</span>
+<span class="c1">// transformed to call .end() only once during the initialization of the loop,</span>
+<span class="c1">// which may affect semantics.</span>
+<span class="k">for</span> <span class="p">(</span><span class="n">iterator</span> <span class="n">it</span> <span class="o">=</span> <span class="n">container</span><span class="p">.</span><span class="n">begin</span><span class="p">();</span> <span class="n">it</span> <span class="o">!=</span> <span class="n">container</span><span class="p">.</span><span class="n">end</span><span class="p">();</span> <span class="o">++</span><span class="n">it</span><span class="p">)</span> <span class="p">{</span> <span class="p">}</span>
+</pre></div>
+</div>
+<p id="incorrectriskytransformation">As explained above, calling member functions of the container in the body
+of the loop is considered <cite>risky</cite>. If the called member function modifies the
+container the semantics of the converted loop will differ due to <code class="docutils literal notranslate"><span class="pre">.end()</span></code>
+being called only once.</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="kt">bool</span> <span class="n">flag</span> <span class="o">=</span> <span class="nb">false</span><span class="p">;</span>
+<span class="k">for</span> <span class="p">(</span><span class="n">vector</span><span class="o"><</span><span class="n">T</span><span class="o">>::</span><span class="n">iterator</span> <span class="n">it</span> <span class="o">=</span> <span class="n">vec</span><span class="p">.</span><span class="n">begin</span><span class="p">();</span> <span class="n">it</span> <span class="o">!=</span> <span class="n">vec</span><span class="p">.</span><span class="n">end</span><span class="p">();</span> <span class="o">++</span><span class="n">it</span><span class="p">)</span> <span class="p">{</span>
+ <span class="c1">// Add a copy of the first element to the end of the vector.</span>
+ <span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="n">flag</span><span class="p">)</span> <span class="p">{</span>
+ <span class="c1">// This line makes this transformation 'risky'.</span>
+ <span class="n">vec</span><span class="p">.</span><span class="n">push_back</span><span class="p">(</span><span class="o">*</span><span class="n">it</span><span class="p">);</span>
+ <span class="n">flag</span> <span class="o">=</span> <span class="nb">true</span><span class="p">;</span>
+ <span class="p">}</span>
+ <span class="n">cout</span> <span class="o"><<</span> <span class="o">*</span><span class="n">it</span><span class="p">;</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+<p>The original code above prints out the contents of the container including the
+newly added element while the converted loop, shown below, will only print the
+original contents and not the newly added element.</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="kt">bool</span> <span class="n">flag</span> <span class="o">=</span> <span class="nb">false</span><span class="p">;</span>
+<span class="k">for</span> <span class="p">(</span><span class="k">auto</span> <span class="o">&</span> <span class="nl">elem</span> <span class="p">:</span> <span class="n">vec</span><span class="p">)</span> <span class="p">{</span>
+ <span class="c1">// Add a copy of the first element to the end of the vector.</span>
+ <span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="n">flag</span><span class="p">)</span> <span class="p">{</span>
+ <span class="c1">// This line makes this transformation 'risky'</span>
+ <span class="n">vec</span><span class="p">.</span><span class="n">push_back</span><span class="p">(</span><span class="n">elem</span><span class="p">);</span>
+ <span class="n">flag</span> <span class="o">=</span> <span class="nb">true</span><span class="p">;</span>
+ <span class="p">}</span>
+ <span class="n">cout</span> <span class="o"><<</span> <span class="n">elem</span><span class="p">;</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+<p>Semantics will also be affected if <code class="docutils literal notranslate"><span class="pre">.end()</span></code> has side effects. For example, in
+the case where calls to <code class="docutils literal notranslate"><span class="pre">.end()</span></code> are logged the semantics will change in the
+transformed loop if <code class="docutils literal notranslate"><span class="pre">.end()</span></code> was originally called after each iteration.</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="n">iterator</span> <span class="nf">end</span><span class="p">()</span> <span class="p">{</span>
+ <span class="n">num_of_end_calls</span><span class="o">++</span><span class="p">;</span>
+ <span class="k">return</span> <span class="n">container</span><span class="p">.</span><span class="n">end</span><span class="p">();</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+</div>
+<div class="section" id="overloaded-operator-with-side-effects">
+<h3>Overloaded operator->() with side effects<a class="headerlink" href="#overloaded-operator-with-side-effects" title="Permalink to this headline">¶</a></h3>
+<p>Similarly, if <code class="docutils literal notranslate"><span class="pre">operator->()</span></code> was overloaded to have side effects, such as
+logging, the semantics will change. If the iteratorâs <code class="docutils literal notranslate"><span class="pre">operator->()</span></code> was used
+in the original loop it will be replaced with <code class="docutils literal notranslate"><span class="pre"><container</span> <span class="pre">element>.<member></span></code>
+instead due to the implicit dereference as part of the range-based for loop.
+Therefore any side effect of the overloaded <code class="docutils literal notranslate"><span class="pre">operator->()</span></code> will no longer be
+performed.</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">for</span> <span class="p">(</span><span class="n">iterator</span> <span class="n">it</span> <span class="o">=</span> <span class="n">c</span><span class="p">.</span><span class="n">begin</span><span class="p">();</span> <span class="n">it</span> <span class="o">!=</span> <span class="n">c</span><span class="p">.</span><span class="n">end</span><span class="p">();</span> <span class="o">++</span><span class="n">it</span><span class="p">)</span> <span class="p">{</span>
+ <span class="n">it</span><span class="o">-></span><span class="n">func</span><span class="p">();</span> <span class="c1">// Using operator->()</span>
+<span class="p">}</span>
+<span class="c1">// Will be transformed to:</span>
+<span class="k">for</span> <span class="p">(</span><span class="k">auto</span> <span class="o">&</span> <span class="nl">elem</span> <span class="p">:</span> <span class="n">c</span><span class="p">)</span> <span class="p">{</span>
+ <span class="n">elem</span><span class="p">.</span><span class="n">func</span><span class="p">();</span> <span class="c1">// No longer using operator->()</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+</div>
+<div class="section" id="pointers-and-references-to-containers">
+<h3>Pointers and references to containers<a class="headerlink" href="#pointers-and-references-to-containers" title="Permalink to this headline">¶</a></h3>
+<p>While most of the checkâs risk analysis is dedicated to determining whether
+the iterator or container was modified within the loop, it is possible to
+circumvent the analysis by accessing and modifying the container through a
+pointer or reference.</p>
+<p>If the container were directly used instead of using the pointer or reference
+the following transformation would have only been applied at the <cite>risky</cite>
+level since calling a member function of the container is considered <cite>risky</cite>.
+The check cannot identify expressions associated with the container that are
+different than the one used in the loop header, therefore the transformation
+below ends up being performed at the <cite>safe</cite> level.</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="n">vector</span><span class="o"><</span><span class="kt">int</span><span class="o">></span> <span class="n">vec</span><span class="p">;</span>
+
+<span class="n">vector</span><span class="o"><</span><span class="kt">int</span><span class="o">></span> <span class="o">*</span><span class="n">ptr</span> <span class="o">=</span> <span class="o">&</span><span class="n">vec</span><span class="p">;</span>
+<span class="n">vector</span><span class="o"><</span><span class="kt">int</span><span class="o">></span> <span class="o">&</span><span class="n">ref</span> <span class="o">=</span> <span class="n">vec</span><span class="p">;</span>
+
+<span class="k">for</span> <span class="p">(</span><span class="n">vector</span><span class="o"><</span><span class="kt">int</span><span class="o">>::</span><span class="n">iterator</span> <span class="n">it</span> <span class="o">=</span> <span class="n">vec</span><span class="p">.</span><span class="n">begin</span><span class="p">(),</span> <span class="n">e</span> <span class="o">=</span> <span class="n">vec</span><span class="p">.</span><span class="n">end</span><span class="p">();</span> <span class="n">it</span> <span class="o">!=</span> <span class="n">e</span><span class="p">;</span> <span class="o">++</span><span class="n">it</span><span class="p">)</span> <span class="p">{</span>
+ <span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="n">flag</span><span class="p">)</span> <span class="p">{</span>
+ <span class="c1">// Accessing and modifying the container is considered risky, but the risk</span>
+ <span class="c1">// level is not raised here.</span>
+ <span class="n">ptr</span><span class="o">-></span><span class="n">push_back</span><span class="p">(</span><span class="o">*</span><span class="n">it</span><span class="p">);</span>
+ <span class="n">ref</span><span class="p">.</span><span class="n">push_back</span><span class="p">(</span><span class="o">*</span><span class="n">it</span><span class="p">);</span>
+ <span class="n">flag</span> <span class="o">=</span> <span class="nb">true</span><span class="p">;</span>
+ <span class="p">}</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+</div>
+<div class="section" id="openmp">
+<h3>OpenMP<a class="headerlink" href="#openmp" title="Permalink to this headline">¶</a></h3>
+<p>As range-based for loops are only available since OpenMP 5, this check should
+not been used on code with a compatibility requirements of OpenMP prior to
+version 5. It is <strong>intentional</strong> that this check does not make any attempts to
+exclude incorrect diagnostics on OpenMP for loops prior to OpenMP 5.</p>
+<p>To prevent this check to be applied (and to break) OpenMP for loops but still be
+applied to non-OpenMP for loops the usage of <code class="docutils literal notranslate"><span class="pre">NOLINT</span></code> (see
+<a class="reference internal" href="../index.html#clang-tidy-nolint"><span class="std std-ref">Suppressing Undesired Diagnostics</span></a>) on the specific for loops is recommended.</p>
+</div>
+</div>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="modernize-deprecated-ios-base-aliases.html">modernize-deprecated-ios-base-aliases</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="modernize-make-shared.html">modernize-make-shared</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-make-shared.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-make-shared.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-make-shared.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-make-shared.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,114 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>clang-tidy - modernize-make-shared — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="modernize-make-unique" href="modernize-make-unique.html" />
+ <link rel="prev" title="modernize-loop-convert" href="modernize-loop-convert.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - modernize-make-shared</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="modernize-loop-convert.html">modernize-loop-convert</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="modernize-make-unique.html">modernize-make-unique</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="modernize-make-shared">
+<h1>modernize-make-shared<a class="headerlink" href="#modernize-make-shared" title="Permalink to this headline">¶</a></h1>
+<p>This check finds the creation of <code class="docutils literal notranslate"><span class="pre">std::shared_ptr</span></code> objects by explicitly
+calling the constructor and a <code class="docutils literal notranslate"><span class="pre">new</span></code> expression, and replaces it with a call
+to <code class="docutils literal notranslate"><span class="pre">std::make_shared</span></code>.</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">auto</span> <span class="n">my_ptr</span> <span class="o">=</span> <span class="n">std</span><span class="o">::</span><span class="n">shared_ptr</span><span class="o"><</span><span class="n">MyPair</span><span class="o">></span><span class="p">(</span><span class="k">new</span> <span class="n">MyPair</span><span class="p">(</span><span class="mi">1</span><span class="p">,</span> <span class="mi">2</span><span class="p">));</span>
+
+<span class="c1">// becomes</span>
+
+<span class="k">auto</span> <span class="n">my_ptr</span> <span class="o">=</span> <span class="n">std</span><span class="o">::</span><span class="n">make_shared</span><span class="o"><</span><span class="n">MyPair</span><span class="o">></span><span class="p">(</span><span class="mi">1</span><span class="p">,</span> <span class="mi">2</span><span class="p">);</span>
+</pre></div>
+</div>
+<p>This check also finds calls to <code class="docutils literal notranslate"><span class="pre">std::shared_ptr::reset()</span></code> with a <code class="docutils literal notranslate"><span class="pre">new</span></code>
+expression, and replaces it with a call to <code class="docutils literal notranslate"><span class="pre">std::make_shared</span></code>.</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="n">my_ptr</span><span class="p">.</span><span class="n">reset</span><span class="p">(</span><span class="k">new</span> <span class="n">MyPair</span><span class="p">(</span><span class="mi">1</span><span class="p">,</span> <span class="mi">2</span><span class="p">));</span>
+
+<span class="c1">// becomes</span>
+
+<span class="n">my_ptr</span> <span class="o">=</span> <span class="n">std</span><span class="o">::</span><span class="n">make_shared</span><span class="o"><</span><span class="n">MyPair</span><span class="o">></span><span class="p">(</span><span class="mi">1</span><span class="p">,</span> <span class="mi">2</span><span class="p">);</span>
+</pre></div>
+</div>
+<div class="section" id="options">
+<h2>Options<a class="headerlink" href="#options" title="Permalink to this headline">¶</a></h2>
+<dl class="option">
+<dt id="cmdoption-arg-makesmartptrfunction">
+<code class="descname">MakeSmartPtrFunction</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-makesmartptrfunction" title="Permalink to this definition">¶</a></dt>
+<dd><p>A string specifying the name of make-shared-ptr function. Default is
+<cite>std::make_shared</cite>.</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-makesmartptrfunctionheader">
+<code class="descname">MakeSmartPtrFunctionHeader</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-makesmartptrfunctionheader" title="Permalink to this definition">¶</a></dt>
+<dd><p>A string specifying the corresponding header of make-shared-ptr function.
+Default is <cite>memory</cite>.</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-includestyle">
+<code class="descname">IncludeStyle</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-includestyle" title="Permalink to this definition">¶</a></dt>
+<dd><p>A string specifying which include-style is used, <cite>llvm</cite> or <cite>google</cite>. Default
+is <cite>llvm</cite>.</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-ignoremacros">
+<code class="descname">IgnoreMacros</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-ignoremacros" title="Permalink to this definition">¶</a></dt>
+<dd><p>If set to non-zero, the check will not give warnings inside macros. Default
+is <cite>1</cite>.</p>
+</dd></dl>
+
+</div>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="modernize-loop-convert.html">modernize-loop-convert</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="modernize-make-unique.html">modernize-make-unique</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-make-unique.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-make-unique.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-make-unique.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-make-unique.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,114 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>clang-tidy - modernize-make-unique — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="modernize-pass-by-value" href="modernize-pass-by-value.html" />
+ <link rel="prev" title="modernize-make-shared" href="modernize-make-shared.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - modernize-make-unique</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="modernize-make-shared.html">modernize-make-shared</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="modernize-pass-by-value.html">modernize-pass-by-value</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="modernize-make-unique">
+<h1>modernize-make-unique<a class="headerlink" href="#modernize-make-unique" title="Permalink to this headline">¶</a></h1>
+<p>This check finds the creation of <code class="docutils literal notranslate"><span class="pre">std::unique_ptr</span></code> objects by explicitly
+calling the constructor and a <code class="docutils literal notranslate"><span class="pre">new</span></code> expression, and replaces it with a call
+to <code class="docutils literal notranslate"><span class="pre">std::make_unique</span></code>, introduced in C++14.</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">auto</span> <span class="n">my_ptr</span> <span class="o">=</span> <span class="n">std</span><span class="o">::</span><span class="n">unique_ptr</span><span class="o"><</span><span class="n">MyPair</span><span class="o">></span><span class="p">(</span><span class="k">new</span> <span class="n">MyPair</span><span class="p">(</span><span class="mi">1</span><span class="p">,</span> <span class="mi">2</span><span class="p">));</span>
+
+<span class="c1">// becomes</span>
+
+<span class="k">auto</span> <span class="n">my_ptr</span> <span class="o">=</span> <span class="n">std</span><span class="o">::</span><span class="n">make_unique</span><span class="o"><</span><span class="n">MyPair</span><span class="o">></span><span class="p">(</span><span class="mi">1</span><span class="p">,</span> <span class="mi">2</span><span class="p">);</span>
+</pre></div>
+</div>
+<p>This check also finds calls to <code class="docutils literal notranslate"><span class="pre">std::unique_ptr::reset()</span></code> with a <code class="docutils literal notranslate"><span class="pre">new</span></code>
+expression, and replaces it with a call to <code class="docutils literal notranslate"><span class="pre">std::make_unique</span></code>.</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="n">my_ptr</span><span class="p">.</span><span class="n">reset</span><span class="p">(</span><span class="k">new</span> <span class="n">MyPair</span><span class="p">(</span><span class="mi">1</span><span class="p">,</span> <span class="mi">2</span><span class="p">));</span>
+
+<span class="c1">// becomes</span>
+
+<span class="n">my_ptr</span> <span class="o">=</span> <span class="n">std</span><span class="o">::</span><span class="n">make_unique</span><span class="o"><</span><span class="n">MyPair</span><span class="o">></span><span class="p">(</span><span class="mi">1</span><span class="p">,</span> <span class="mi">2</span><span class="p">);</span>
+</pre></div>
+</div>
+<div class="section" id="options">
+<h2>Options<a class="headerlink" href="#options" title="Permalink to this headline">¶</a></h2>
+<dl class="option">
+<dt id="cmdoption-arg-makesmartptrfunction">
+<code class="descname">MakeSmartPtrFunction</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-makesmartptrfunction" title="Permalink to this definition">¶</a></dt>
+<dd><p>A string specifying the name of make-unique-ptr function. Default is
+<cite>std::make_unique</cite>.</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-makesmartptrfunctionheader">
+<code class="descname">MakeSmartPtrFunctionHeader</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-makesmartptrfunctionheader" title="Permalink to this definition">¶</a></dt>
+<dd><p>A string specifying the corresponding header of make-unique-ptr function.
+Default is <cite>memory</cite>.</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-includestyle">
+<code class="descname">IncludeStyle</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-includestyle" title="Permalink to this definition">¶</a></dt>
+<dd><p>A string specifying which include-style is used, <cite>llvm</cite> or <cite>google</cite>. Default
+is <cite>llvm</cite>.</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-ignoremacros">
+<code class="descname">IgnoreMacros</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-ignoremacros" title="Permalink to this definition">¶</a></dt>
+<dd><p>If set to non-zero, the check will not give warnings inside macros. Default
+is <cite>1</cite>.</p>
+</dd></dl>
+
+</div>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="modernize-make-shared.html">modernize-make-shared</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="modernize-pass-by-value.html">modernize-pass-by-value</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-pass-by-value.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-pass-by-value.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-pass-by-value.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-pass-by-value.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,207 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>clang-tidy - modernize-pass-by-value — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="modernize-raw-string-literal" href="modernize-raw-string-literal.html" />
+ <link rel="prev" title="modernize-make-unique" href="modernize-make-unique.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - modernize-pass-by-value</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="modernize-make-unique.html">modernize-make-unique</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="modernize-raw-string-literal.html">modernize-raw-string-literal</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="modernize-pass-by-value">
+<h1>modernize-pass-by-value<a class="headerlink" href="#modernize-pass-by-value" title="Permalink to this headline">¶</a></h1>
+<p>With move semantics added to the language and the standard library updated with
+move constructors added for many types it is now interesting to take an
+argument directly by value, instead of by const-reference, and then copy. This
+check allows the compiler to take care of choosing the best way to construct
+the copy.</p>
+<p>The transformation is usually beneficial when the calling code passes an
+<em>rvalue</em> and assumes the move construction is a cheap operation. This short
+example illustrates how the construction of the value happens:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="kt">void</span> <span class="nf">foo</span><span class="p">(</span><span class="n">std</span><span class="o">::</span><span class="n">string</span> <span class="n">s</span><span class="p">);</span>
+<span class="n">std</span><span class="o">::</span><span class="n">string</span> <span class="n">get_str</span><span class="p">();</span>
+
+<span class="kt">void</span> <span class="nf">f</span><span class="p">(</span><span class="k">const</span> <span class="n">std</span><span class="o">::</span><span class="n">string</span> <span class="o">&</span><span class="n">str</span><span class="p">)</span> <span class="p">{</span>
+ <span class="n">foo</span><span class="p">(</span><span class="n">str</span><span class="p">);</span> <span class="c1">// lvalue -> copy construction</span>
+ <span class="n">foo</span><span class="p">(</span><span class="n">get_str</span><span class="p">());</span> <span class="c1">// prvalue -> move construction</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+<div class="admonition note">
+<p class="first admonition-title">Note</p>
+<p class="last">Currently, only constructors are transformed to make use of pass-by-value.
+Contributions that handle other situations are welcome!</p>
+</div>
+<div class="section" id="pass-by-value-in-constructors">
+<h2>Pass-by-value in constructors<a class="headerlink" href="#pass-by-value-in-constructors" title="Permalink to this headline">¶</a></h2>
+<p>Replaces the uses of const-references constructor parameters that are copied
+into class fields. The parameter is then moved with <cite>std::move()</cite>.</p>
+<p>Since <code class="docutils literal notranslate"><span class="pre">std::move()</span></code> is a library function declared in <cite><utility></cite> it may be
+necessary to add this include. The check will add the include directive when
+necessary.</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span> <span class="cp">#include</span> <span class="cpf"><string></span><span class="cp"></span>
+
+ <span class="k">class</span> <span class="nc">Foo</span> <span class="p">{</span>
+ <span class="k">public</span><span class="o">:</span>
+<span class="o">-</span> <span class="n">Foo</span><span class="p">(</span><span class="k">const</span> <span class="n">std</span><span class="o">::</span><span class="n">string</span> <span class="o">&</span><span class="n">Copied</span><span class="p">,</span> <span class="k">const</span> <span class="n">std</span><span class="o">::</span><span class="n">string</span> <span class="o">&</span><span class="n">ReadOnly</span><span class="p">)</span>
+<span class="o">-</span> <span class="o">:</span> <span class="n">Copied</span><span class="p">(</span><span class="n">Copied</span><span class="p">),</span> <span class="n">ReadOnly</span><span class="p">(</span><span class="n">ReadOnly</span><span class="p">)</span>
+<span class="o">+</span> <span class="n">Foo</span><span class="p">(</span><span class="n">std</span><span class="o">::</span><span class="n">string</span> <span class="n">Copied</span><span class="p">,</span> <span class="k">const</span> <span class="n">std</span><span class="o">::</span><span class="n">string</span> <span class="o">&</span><span class="n">ReadOnly</span><span class="p">)</span>
+<span class="o">+</span> <span class="o">:</span> <span class="n">Copied</span><span class="p">(</span><span class="n">std</span><span class="o">::</span><span class="n">move</span><span class="p">(</span><span class="n">Copied</span><span class="p">)),</span> <span class="n">ReadOnly</span><span class="p">(</span><span class="n">ReadOnly</span><span class="p">)</span>
+ <span class="p">{}</span>
+
+ <span class="k">private</span><span class="o">:</span>
+ <span class="n">std</span><span class="o">::</span><span class="n">string</span> <span class="n">Copied</span><span class="p">;</span>
+ <span class="k">const</span> <span class="n">std</span><span class="o">::</span><span class="n">string</span> <span class="o">&</span><span class="n">ReadOnly</span><span class="p">;</span>
+ <span class="p">};</span>
+
+ <span class="n">std</span><span class="o">::</span><span class="n">string</span> <span class="n">get_cwd</span><span class="p">();</span>
+
+ <span class="kt">void</span> <span class="nf">f</span><span class="p">(</span><span class="k">const</span> <span class="n">std</span><span class="o">::</span><span class="n">string</span> <span class="o">&</span><span class="n">Path</span><span class="p">)</span> <span class="p">{</span>
+ <span class="c1">// The parameter corresponding to 'get_cwd()' is move-constructed. By</span>
+ <span class="c1">// using pass-by-value in the Foo constructor we managed to avoid a</span>
+ <span class="c1">// copy-construction.</span>
+ <span class="n">Foo</span> <span class="n">foo</span><span class="p">(</span><span class="n">get_cwd</span><span class="p">(),</span> <span class="n">Path</span><span class="p">);</span>
+ <span class="p">}</span>
+</pre></div>
+</div>
+<p>If the parameter is used more than once no transformation is performed since
+moved objects have an undefined state. It means the following code will be left
+untouched:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="cp">#include</span> <span class="cpf"><string></span><span class="cp"></span>
+
+<span class="kt">void</span> <span class="nf">pass</span><span class="p">(</span><span class="k">const</span> <span class="n">std</span><span class="o">::</span><span class="n">string</span> <span class="o">&</span><span class="n">S</span><span class="p">);</span>
+
+<span class="k">struct</span> <span class="n">Foo</span> <span class="p">{</span>
+ <span class="n">Foo</span><span class="p">(</span><span class="k">const</span> <span class="n">std</span><span class="o">::</span><span class="n">string</span> <span class="o">&</span><span class="n">S</span><span class="p">)</span> <span class="o">:</span> <span class="n">Str</span><span class="p">(</span><span class="n">S</span><span class="p">)</span> <span class="p">{</span>
+ <span class="n">pass</span><span class="p">(</span><span class="n">S</span><span class="p">);</span>
+ <span class="p">}</span>
+
+ <span class="n">std</span><span class="o">::</span><span class="n">string</span> <span class="n">Str</span><span class="p">;</span>
+<span class="p">};</span>
+</pre></div>
+</div>
+<div class="section" id="known-limitations">
+<h3>Known limitations<a class="headerlink" href="#known-limitations" title="Permalink to this headline">¶</a></h3>
+<p>A situation where the generated code can be wrong is when the object referenced
+is modified before the assignment in the init-list through a âhiddenâ reference.</p>
+<p>Example:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span> <span class="n">std</span><span class="o">::</span><span class="n">string</span> <span class="n">s</span><span class="p">(</span><span class="s">"foo"</span><span class="p">);</span>
+
+ <span class="k">struct</span> <span class="n">Base</span> <span class="p">{</span>
+ <span class="n">Base</span><span class="p">()</span> <span class="p">{</span>
+ <span class="n">s</span> <span class="o">=</span> <span class="s">"bar"</span><span class="p">;</span>
+ <span class="p">}</span>
+ <span class="p">};</span>
+
+ <span class="k">struct</span> <span class="nl">Derived</span> <span class="p">:</span> <span class="n">Base</span> <span class="p">{</span>
+<span class="o">-</span> <span class="n">Derived</span><span class="p">(</span><span class="k">const</span> <span class="n">std</span><span class="o">::</span><span class="n">string</span> <span class="o">&</span><span class="n">S</span><span class="p">)</span> <span class="o">:</span> <span class="n">Field</span><span class="p">(</span><span class="n">S</span><span class="p">)</span>
+<span class="o">+</span> <span class="n">Derived</span><span class="p">(</span><span class="n">std</span><span class="o">::</span><span class="n">string</span> <span class="n">S</span><span class="p">)</span> <span class="o">:</span> <span class="n">Field</span><span class="p">(</span><span class="n">std</span><span class="o">::</span><span class="n">move</span><span class="p">(</span><span class="n">S</span><span class="p">))</span>
+ <span class="p">{</span> <span class="p">}</span>
+
+ <span class="n">std</span><span class="o">::</span><span class="n">string</span> <span class="n">Field</span><span class="p">;</span>
+ <span class="p">};</span>
+
+ <span class="kt">void</span> <span class="nf">f</span><span class="p">()</span> <span class="p">{</span>
+<span class="o">-</span> <span class="n">Derived</span> <span class="n">d</span><span class="p">(</span><span class="n">s</span><span class="p">);</span> <span class="c1">// d.Field holds "bar"</span>
+<span class="o">+</span> <span class="n">Derived</span> <span class="n">d</span><span class="p">(</span><span class="n">s</span><span class="p">);</span> <span class="c1">// d.Field holds "foo"</span>
+ <span class="p">}</span>
+</pre></div>
+</div>
+</div>
+<div class="section" id="note-about-delayed-template-parsing">
+<h3>Note about delayed template parsing<a class="headerlink" href="#note-about-delayed-template-parsing" title="Permalink to this headline">¶</a></h3>
+<p>When delayed template parsing is enabled, constructors part of templated
+contexts; templated constructors, constructors in class templates, constructors
+of inner classes of template classes, etc., are not transformed. Delayed
+template parsing is enabled by default on Windows as a Microsoft extension:
+<a class="reference external" href="https://clang.llvm.org/docs/UsersManual.html#microsoft-extensions">Clang Compiler Userâs Manual - Microsoft extensions</a>.</p>
+<p>Delayed template parsing can be enabled using the <cite>-fdelayed-template-parsing</cite>
+flag and disabled using <cite>-fno-delayed-template-parsing</cite>.</p>
+<p>Example:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span> <span class="k">template</span> <span class="o"><</span><span class="k">typename</span> <span class="n">T</span><span class="o">></span> <span class="k">class</span> <span class="nc">C</span> <span class="p">{</span>
+ <span class="n">std</span><span class="o">::</span><span class="n">string</span> <span class="n">S</span><span class="p">;</span>
+
+ <span class="k">public</span><span class="o">:</span>
+<span class="o">=</span> <span class="c1">// using -fdelayed-template-parsing (default on Windows)</span>
+<span class="o">=</span> <span class="n">C</span><span class="p">(</span><span class="k">const</span> <span class="n">std</span><span class="o">::</span><span class="n">string</span> <span class="o">&</span><span class="n">S</span><span class="p">)</span> <span class="o">:</span> <span class="n">S</span><span class="p">(</span><span class="n">S</span><span class="p">)</span> <span class="p">{}</span>
+
+<span class="o">+</span> <span class="c1">// using -fno-delayed-template-parsing (default on non-Windows systems)</span>
+<span class="o">+</span> <span class="n">C</span><span class="p">(</span><span class="n">std</span><span class="o">::</span><span class="n">string</span> <span class="n">S</span><span class="p">)</span> <span class="o">:</span> <span class="n">S</span><span class="p">(</span><span class="n">std</span><span class="o">::</span><span class="n">move</span><span class="p">(</span><span class="n">S</span><span class="p">))</span> <span class="p">{}</span>
+ <span class="p">};</span>
+</pre></div>
+</div>
+<div class="admonition seealso">
+<p class="first admonition-title">See also</p>
+<p class="last">For more information about the pass-by-value idiom, read: <a class="reference external" href="https://web.archive.org/web/20140205194657/http://cpp-next.com/archive/2009/08/want-speed-pass-by-value/">Want Speed? Pass by Value</a>.</p>
+</div>
+</div>
+</div>
+<div class="section" id="options">
+<h2>Options<a class="headerlink" href="#options" title="Permalink to this headline">¶</a></h2>
+<dl class="option">
+<dt id="cmdoption-arg-includestyle">
+<code class="descname">IncludeStyle</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-includestyle" title="Permalink to this definition">¶</a></dt>
+<dd><p>A string specifying which include-style is used, <cite>llvm</cite> or <cite>google</cite>. Default
+is <cite>llvm</cite>.</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-valuesonly">
+<code class="descname">ValuesOnly</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-valuesonly" title="Permalink to this definition">¶</a></dt>
+<dd><p>When non-zero, the check only warns about copied parameters that are already
+passed by value. Default is <cite>0</cite>.</p>
+</dd></dl>
+
+</div>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="modernize-make-unique.html">modernize-make-unique</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="modernize-raw-string-literal.html">modernize-raw-string-literal</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-raw-string-literal.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-raw-string-literal.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-raw-string-literal.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-raw-string-literal.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,98 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>clang-tidy - modernize-raw-string-literal — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="modernize-redundant-void-arg" href="modernize-redundant-void-arg.html" />
+ <link rel="prev" title="modernize-pass-by-value" href="modernize-pass-by-value.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - modernize-raw-string-literal</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="modernize-pass-by-value.html">modernize-pass-by-value</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="modernize-redundant-void-arg.html">modernize-redundant-void-arg</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="modernize-raw-string-literal">
+<h1>modernize-raw-string-literal<a class="headerlink" href="#modernize-raw-string-literal" title="Permalink to this headline">¶</a></h1>
+<p>This check selectively replaces string literals containing escaped characters
+with raw string literals.</p>
+<p>Example:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">const</span> <span class="kt">char</span> <span class="o">*</span><span class="k">const</span> <span class="n">Quotes</span><span class="p">{</span><span class="s">"embedded </span><span class="se">\"</span><span class="s">quotes</span><span class="se">\"</span><span class="s">"</span><span class="p">};</span>
+<span class="k">const</span> <span class="kt">char</span> <span class="o">*</span><span class="k">const</span> <span class="n">Paragraph</span><span class="p">{</span><span class="s">"Line one.</span><span class="se">\n</span><span class="s">Line two.</span><span class="se">\n</span><span class="s">Line three.</span><span class="se">\n</span><span class="s">"</span><span class="p">};</span>
+<span class="k">const</span> <span class="kt">char</span> <span class="o">*</span><span class="k">const</span> <span class="n">SingleLine</span><span class="p">{</span><span class="s">"Single line.</span><span class="se">\n</span><span class="s">"</span><span class="p">};</span>
+<span class="k">const</span> <span class="kt">char</span> <span class="o">*</span><span class="k">const</span> <span class="n">TrailingSpace</span><span class="p">{</span><span class="s">"Look here -> </span><span class="se">\n</span><span class="s">"</span><span class="p">};</span>
+<span class="k">const</span> <span class="kt">char</span> <span class="o">*</span><span class="k">const</span> <span class="n">Tab</span><span class="p">{</span><span class="s">"One</span><span class="se">\t</span><span class="s">Two</span><span class="se">\n</span><span class="s">"</span><span class="p">};</span>
+<span class="k">const</span> <span class="kt">char</span> <span class="o">*</span><span class="k">const</span> <span class="n">Bell</span><span class="p">{</span><span class="s">"Hello!</span><span class="se">\a</span><span class="s"> And welcome!"</span><span class="p">};</span>
+<span class="k">const</span> <span class="kt">char</span> <span class="o">*</span><span class="k">const</span> <span class="n">Path</span><span class="p">{</span><span class="s">"C:</span><span class="se">\\</span><span class="s">Program Files</span><span class="se">\\</span><span class="s">Vendor</span><span class="se">\\</span><span class="s">Application.exe"</span><span class="p">};</span>
+<span class="k">const</span> <span class="kt">char</span> <span class="o">*</span><span class="k">const</span> <span class="n">RegEx</span><span class="p">{</span><span class="s">"</span><span class="se">\\</span><span class="s">w</span><span class="se">\\</span><span class="s">([a-z]</span><span class="se">\\</span><span class="s">)"</span><span class="p">};</span>
+</pre></div>
+</div>
+<p>becomes</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">const</span> <span class="kt">char</span> <span class="o">*</span><span class="k">const</span> <span class="n">Quotes</span><span class="p">{</span><span class="sa">R</span><span class="s">"</span><span class="dl">(</span><span class="s">embedded "quotes"</span><span class="dl">)</span><span class="s">"</span><span class="p">};</span>
+<span class="k">const</span> <span class="kt">char</span> <span class="o">*</span><span class="k">const</span> <span class="n">Paragraph</span><span class="p">{</span><span class="s">"Line one.</span><span class="se">\n</span><span class="s">Line two.</span><span class="se">\n</span><span class="s">Line three.</span><span class="se">\n</span><span class="s">"</span><span class="p">};</span>
+<span class="k">const</span> <span class="kt">char</span> <span class="o">*</span><span class="k">const</span> <span class="n">SingleLine</span><span class="p">{</span><span class="s">"Single line.</span><span class="se">\n</span><span class="s">"</span><span class="p">};</span>
+<span class="k">const</span> <span class="kt">char</span> <span class="o">*</span><span class="k">const</span> <span class="n">TrailingSpace</span><span class="p">{</span><span class="s">"Look here -> </span><span class="se">\n</span><span class="s">"</span><span class="p">};</span>
+<span class="k">const</span> <span class="kt">char</span> <span class="o">*</span><span class="k">const</span> <span class="n">Tab</span><span class="p">{</span><span class="s">"One</span><span class="se">\t</span><span class="s">Two</span><span class="se">\n</span><span class="s">"</span><span class="p">};</span>
+<span class="k">const</span> <span class="kt">char</span> <span class="o">*</span><span class="k">const</span> <span class="n">Bell</span><span class="p">{</span><span class="s">"Hello!</span><span class="se">\a</span><span class="s"> And welcome!"</span><span class="p">};</span>
+<span class="k">const</span> <span class="kt">char</span> <span class="o">*</span><span class="k">const</span> <span class="n">Path</span><span class="p">{</span><span class="sa">R</span><span class="s">"</span><span class="dl">(</span><span class="s">C:\Program Files\Vendor\Application.exe</span><span class="dl">)</span><span class="s">"</span><span class="p">};</span>
+<span class="k">const</span> <span class="kt">char</span> <span class="o">*</span><span class="k">const</span> <span class="n">RegEx</span><span class="p">{</span><span class="sa">R</span><span class="s">"</span><span class="dl">(</span><span class="s">\w\([a-z]\)</span><span class="dl">)</span><span class="s">"</span><span class="p">};</span>
+</pre></div>
+</div>
+<p>The presence of any of the following escapes can cause the string to be
+converted to a raw string literal: <code class="docutils literal notranslate"><span class="pre">\\</span></code>, <code class="docutils literal notranslate"><span class="pre">\'</span></code>, <code class="docutils literal notranslate"><span class="pre">\"</span></code>, <code class="docutils literal notranslate"><span class="pre">\?</span></code>,
+and octal or hexadecimal escapes for printable ASCII characters.</p>
+<p>A string literal containing only escaped newlines is a common way of
+writing lines of text output. Introducing physical newlines with raw
+string literals in this case is likely to impede readability. These
+string literals are left unchanged.</p>
+<p>An escaped horizontal tab, form feed, or vertical tab prevents the string
+literal from being converted. The presence of a horizontal tab, form feed or
+vertical tab in source code is not visually obvious.</p>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="modernize-pass-by-value.html">modernize-pass-by-value</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="modernize-redundant-void-arg.html">modernize-redundant-void-arg</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-redundant-void-arg.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-redundant-void-arg.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-redundant-void-arg.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-redundant-void-arg.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,100 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>clang-tidy - modernize-redundant-void-arg — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="modernize-replace-auto-ptr" href="modernize-replace-auto-ptr.html" />
+ <link rel="prev" title="modernize-raw-string-literal" href="modernize-raw-string-literal.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - modernize-redundant-void-arg</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="modernize-raw-string-literal.html">modernize-raw-string-literal</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="modernize-replace-auto-ptr.html">modernize-replace-auto-ptr</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="modernize-redundant-void-arg">
+<h1>modernize-redundant-void-arg<a class="headerlink" href="#modernize-redundant-void-arg" title="Permalink to this headline">¶</a></h1>
+<p>Find and remove redundant <code class="docutils literal notranslate"><span class="pre">void</span></code> argument lists.</p>
+<dl class="docutils">
+<dt>Examples:</dt>
+<dd><table border="1" class="first last docutils">
+<colgroup>
+<col width="56%" />
+<col width="44%" />
+</colgroup>
+<thead valign="bottom">
+<tr class="row-odd"><th class="head">Initial code</th>
+<th class="head">Code with applied fixes</th>
+</tr>
+</thead>
+<tbody valign="top">
+<tr class="row-even"><td><code class="docutils literal notranslate"><span class="pre">int</span> <span class="pre">f(void);</span></code></td>
+<td><code class="docutils literal notranslate"><span class="pre">int</span> <span class="pre">f();</span></code></td>
+</tr>
+<tr class="row-odd"><td><code class="docutils literal notranslate"><span class="pre">int</span> <span class="pre">(*f(void))(void);</span></code></td>
+<td><code class="docutils literal notranslate"><span class="pre">int</span> <span class="pre">(*f())();</span></code></td>
+</tr>
+<tr class="row-even"><td><code class="docutils literal notranslate"><span class="pre">typedef</span> <span class="pre">int</span> <span class="pre">(*f_t(void))(void);</span></code></td>
+<td><code class="docutils literal notranslate"><span class="pre">typedef</span> <span class="pre">int</span> <span class="pre">(*f_t())();</span></code></td>
+</tr>
+<tr class="row-odd"><td><code class="docutils literal notranslate"><span class="pre">void</span> <span class="pre">(C::*p)(void);</span></code></td>
+<td><code class="docutils literal notranslate"><span class="pre">void</span> <span class="pre">(C::*p)();</span></code></td>
+</tr>
+<tr class="row-even"><td><code class="docutils literal notranslate"><span class="pre">C::C(void)</span> <span class="pre">{}</span></code></td>
+<td><code class="docutils literal notranslate"><span class="pre">C::C()</span> <span class="pre">{}</span></code></td>
+</tr>
+<tr class="row-odd"><td><code class="docutils literal notranslate"><span class="pre">C::~C(void)</span> <span class="pre">{}</span></code></td>
+<td><code class="docutils literal notranslate"><span class="pre">C::~C()</span> <span class="pre">{}</span></code></td>
+</tr>
+</tbody>
+</table>
+</dd>
+</dl>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="modernize-raw-string-literal.html">modernize-raw-string-literal</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="modernize-replace-auto-ptr.html">modernize-replace-auto-ptr</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-replace-auto-ptr.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-replace-auto-ptr.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-replace-auto-ptr.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-replace-auto-ptr.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,137 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>clang-tidy - modernize-replace-auto-ptr — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="modernize-replace-random-shuffle" href="modernize-replace-random-shuffle.html" />
+ <link rel="prev" title="modernize-redundant-void-arg" href="modernize-redundant-void-arg.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - modernize-replace-auto-ptr</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="modernize-redundant-void-arg.html">modernize-redundant-void-arg</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="modernize-replace-random-shuffle.html">modernize-replace-random-shuffle</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="modernize-replace-auto-ptr">
+<h1>modernize-replace-auto-ptr<a class="headerlink" href="#modernize-replace-auto-ptr" title="Permalink to this headline">¶</a></h1>
+<p>This check replaces the uses of the deprecated class <code class="docutils literal notranslate"><span class="pre">std::auto_ptr</span></code> by
+<code class="docutils literal notranslate"><span class="pre">std::unique_ptr</span></code> (introduced in C++11). The transfer of ownership, done
+by the copy-constructor and the assignment operator, is changed to match
+<code class="docutils literal notranslate"><span class="pre">std::unique_ptr</span></code> usage by using explicit calls to <code class="docutils literal notranslate"><span class="pre">std::move()</span></code>.</p>
+<p>Migration example:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="o">-</span><span class="kt">void</span> <span class="n">take_ownership_fn</span><span class="p">(</span><span class="n">std</span><span class="o">::</span><span class="n">auto_ptr</span><span class="o"><</span><span class="kt">int</span><span class="o">></span> <span class="n">int_ptr</span><span class="p">);</span>
+<span class="o">+</span><span class="kt">void</span> <span class="n">take_ownership_fn</span><span class="p">(</span><span class="n">std</span><span class="o">::</span><span class="n">unique_ptr</span><span class="o"><</span><span class="kt">int</span><span class="o">></span> <span class="n">int_ptr</span><span class="p">);</span>
+
+ <span class="kt">void</span> <span class="nf">f</span><span class="p">(</span><span class="kt">int</span> <span class="n">x</span><span class="p">)</span> <span class="p">{</span>
+<span class="o">-</span> <span class="n">std</span><span class="o">::</span><span class="n">auto_ptr</span><span class="o"><</span><span class="kt">int</span><span class="o">></span> <span class="n">a</span><span class="p">(</span><span class="k">new</span> <span class="kt">int</span><span class="p">(</span><span class="n">x</span><span class="p">));</span>
+<span class="o">-</span> <span class="n">std</span><span class="o">::</span><span class="n">auto_ptr</span><span class="o"><</span><span class="kt">int</span><span class="o">></span> <span class="n">b</span><span class="p">;</span>
+<span class="o">+</span> <span class="n">std</span><span class="o">::</span><span class="n">unique_ptr</span><span class="o"><</span><span class="kt">int</span><span class="o">></span> <span class="n">a</span><span class="p">(</span><span class="k">new</span> <span class="kt">int</span><span class="p">(</span><span class="n">x</span><span class="p">));</span>
+<span class="o">+</span> <span class="n">std</span><span class="o">::</span><span class="n">unique_ptr</span><span class="o"><</span><span class="kt">int</span><span class="o">></span> <span class="n">b</span><span class="p">;</span>
+
+<span class="o">-</span> <span class="n">b</span> <span class="o">=</span> <span class="n">a</span><span class="p">;</span>
+<span class="o">-</span> <span class="n">take_ownership_fn</span><span class="p">(</span><span class="n">b</span><span class="p">);</span>
+<span class="o">+</span> <span class="n">b</span> <span class="o">=</span> <span class="n">std</span><span class="o">::</span><span class="n">move</span><span class="p">(</span><span class="n">a</span><span class="p">);</span>
+<span class="o">+</span> <span class="n">take_ownership_fn</span><span class="p">(</span><span class="n">std</span><span class="o">::</span><span class="n">move</span><span class="p">(</span><span class="n">b</span><span class="p">));</span>
+ <span class="p">}</span>
+</pre></div>
+</div>
+<p>Since <code class="docutils literal notranslate"><span class="pre">std::move()</span></code> is a library function declared in <code class="docutils literal notranslate"><span class="pre"><utility></span></code> it may be
+necessary to add this include. The check will add the include directive when
+necessary.</p>
+<div class="section" id="known-limitations">
+<h2>Known Limitations<a class="headerlink" href="#known-limitations" title="Permalink to this headline">¶</a></h2>
+<ul class="simple">
+<li>If headers modification is not activated or if a header is not allowed to be
+changed this check will produce broken code (compilation error), where the
+headersâ code will stay unchanged while the code using them will be changed.</li>
+<li>Client code that declares a reference to an <code class="docutils literal notranslate"><span class="pre">std::auto_ptr</span></code> coming from
+code that canât be migrated (such as a header coming from a 3<sup>rd</sup>
+party library) will produce a compilation error after migration. This is
+because the type of the reference will be changed to <code class="docutils literal notranslate"><span class="pre">std::unique_ptr</span></code> but
+the type returned by the library wonât change, binding a reference to
+<code class="docutils literal notranslate"><span class="pre">std::unique_ptr</span></code> from an <code class="docutils literal notranslate"><span class="pre">std::auto_ptr</span></code>. This pattern doesnât make much
+sense and usually <code class="docutils literal notranslate"><span class="pre">std::auto_ptr</span></code> are stored by value (otherwise what is
+the point in using them instead of a reference or a pointer?).</li>
+</ul>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span> <span class="c1">// <3rd-party header...></span>
+ <span class="n">std</span><span class="o">::</span><span class="n">auto_ptr</span><span class="o"><</span><span class="kt">int</span><span class="o">></span> <span class="n">get_value</span><span class="p">();</span>
+ <span class="k">const</span> <span class="n">std</span><span class="o">::</span><span class="n">auto_ptr</span><span class="o"><</span><span class="kt">int</span><span class="o">></span> <span class="o">&</span> <span class="n">get_ref</span><span class="p">();</span>
+
+ <span class="c1">// <calling code (with migration)...></span>
+<span class="o">-</span><span class="n">std</span><span class="o">::</span><span class="n">auto_ptr</span><span class="o"><</span><span class="kt">int</span><span class="o">></span> <span class="n">a</span><span class="p">(</span><span class="n">get_value</span><span class="p">());</span>
+<span class="o">+</span><span class="n">std</span><span class="o">::</span><span class="n">unique_ptr</span><span class="o"><</span><span class="kt">int</span><span class="o">></span> <span class="n">a</span><span class="p">(</span><span class="n">get_value</span><span class="p">());</span> <span class="c1">// ok, unique_ptr constructed from auto_ptr</span>
+
+<span class="o">-</span><span class="k">const</span> <span class="n">std</span><span class="o">::</span><span class="n">auto_ptr</span><span class="o"><</span><span class="kt">int</span><span class="o">></span> <span class="o">&</span> <span class="n">p</span> <span class="o">=</span> <span class="n">get_ptr</span><span class="p">();</span>
+<span class="o">+</span><span class="k">const</span> <span class="n">std</span><span class="o">::</span><span class="n">unique_ptr</span><span class="o"><</span><span class="kt">int</span><span class="o">></span> <span class="o">&</span> <span class="n">p</span> <span class="o">=</span> <span class="n">get_ptr</span><span class="p">();</span> <span class="c1">// won't compile</span>
+</pre></div>
+</div>
+<ul class="simple">
+<li>Non-instantiated templates arenât modified.</li>
+</ul>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">template</span> <span class="o"><</span><span class="k">typename</span> <span class="n">X</span><span class="o">></span>
+<span class="kt">void</span> <span class="n">f</span><span class="p">()</span> <span class="p">{</span>
+ <span class="n">std</span><span class="o">::</span><span class="n">auto_ptr</span><span class="o"><</span><span class="n">X</span><span class="o">></span> <span class="n">p</span><span class="p">;</span>
+<span class="p">}</span>
+
+<span class="c1">// only 'f<int>()' (or similar) will trigger the replacement.</span>
+</pre></div>
+</div>
+</div>
+<div class="section" id="options">
+<h2>Options<a class="headerlink" href="#options" title="Permalink to this headline">¶</a></h2>
+<dl class="option">
+<dt id="cmdoption-arg-includestyle">
+<code class="descname">IncludeStyle</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-includestyle" title="Permalink to this definition">¶</a></dt>
+<dd><p>A string specifying which include-style is used, <cite>llvm</cite> or <cite>google</cite>. Default
+is <cite>llvm</cite>.</p>
+</dd></dl>
+
+</div>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="modernize-redundant-void-arg.html">modernize-redundant-void-arg</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="modernize-replace-random-shuffle.html">modernize-replace-random-shuffle</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-replace-random-shuffle.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-replace-random-shuffle.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-replace-random-shuffle.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-replace-random-shuffle.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,93 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>clang-tidy - modernize-replace-random-shuffle — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="modernize-return-braced-init-list" href="modernize-return-braced-init-list.html" />
+ <link rel="prev" title="modernize-replace-auto-ptr" href="modernize-replace-auto-ptr.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - modernize-replace-random-shuffle</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="modernize-replace-auto-ptr.html">modernize-replace-auto-ptr</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="modernize-return-braced-init-list.html">modernize-return-braced-init-list</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="modernize-replace-random-shuffle">
+<h1>modernize-replace-random-shuffle<a class="headerlink" href="#modernize-replace-random-shuffle" title="Permalink to this headline">¶</a></h1>
+<p>This check will find occurrences of <code class="docutils literal notranslate"><span class="pre">std::random_shuffle</span></code> and replace it with <code class="docutils literal notranslate"><span class="pre">std::shuffle</span></code>. In C++17 <code class="docutils literal notranslate"><span class="pre">std::random_shuffle</span></code> will no longer be available and thus we need to replace it.</p>
+<p>Below are two examples of what kind of occurrences will be found and two examples of what it will be replaced with.</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="n">std</span><span class="o">::</span><span class="n">vector</span><span class="o"><</span><span class="kt">int</span><span class="o">></span> <span class="n">v</span><span class="p">;</span>
+
+<span class="c1">// First example</span>
+<span class="n">std</span><span class="o">::</span><span class="n">random_shuffle</span><span class="p">(</span><span class="n">vec</span><span class="p">.</span><span class="n">begin</span><span class="p">(),</span> <span class="n">vec</span><span class="p">.</span><span class="n">end</span><span class="p">());</span>
+
+<span class="c1">// Second example</span>
+<span class="n">std</span><span class="o">::</span><span class="n">random_shuffle</span><span class="p">(</span><span class="n">vec</span><span class="p">.</span><span class="n">begin</span><span class="p">(),</span> <span class="n">vec</span><span class="p">.</span><span class="n">end</span><span class="p">(),</span> <span class="n">randomFunc</span><span class="p">);</span>
+</pre></div>
+</div>
+<p>Both of these examples will be replaced with:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="n">std</span><span class="o">::</span><span class="n">shuffle</span><span class="p">(</span><span class="n">vec</span><span class="p">.</span><span class="n">begin</span><span class="p">(),</span> <span class="n">vec</span><span class="p">.</span><span class="n">end</span><span class="p">(),</span> <span class="n">std</span><span class="o">::</span><span class="n">mt19937</span><span class="p">(</span><span class="n">std</span><span class="o">::</span><span class="n">random_device</span><span class="p">()()));</span>
+</pre></div>
+</div>
+<p>The second example will also receive a warning that <code class="docutils literal notranslate"><span class="pre">randomFunc</span></code> is no longer supported in the same way as before so if the user wants the same functionality, the user will need to change the implementation of the <code class="docutils literal notranslate"><span class="pre">randomFunc</span></code>.</p>
+<p>One thing to be aware of here is that <code class="docutils literal notranslate"><span class="pre">std::random_device</span></code> is quite expensive to initialize. So if you are using the code in a performance critical place, you probably want to initialize it elsewhere.
+Another thing is that the seeding quality of the suggested fix is quite poor: <code class="docutils literal notranslate"><span class="pre">std::mt19937</span></code> has an internal state of 624 32-bit integers, but is only seeded with a single integer. So if you require
+higher quality randomness, you should consider seeding better, for example:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="n">std</span><span class="o">::</span><span class="n">shuffle</span><span class="p">(</span><span class="n">v</span><span class="p">.</span><span class="n">begin</span><span class="p">(),</span> <span class="n">v</span><span class="p">.</span><span class="n">end</span><span class="p">(),</span> <span class="p">[]()</span> <span class="p">{</span>
+ <span class="n">std</span><span class="o">::</span><span class="n">mt19937</span><span class="o">::</span><span class="n">result_type</span> <span class="n">seeds</span><span class="p">[</span><span class="n">std</span><span class="o">::</span><span class="n">mt19937</span><span class="o">::</span><span class="n">state_size</span><span class="p">];</span>
+ <span class="n">std</span><span class="o">::</span><span class="n">random_device</span> <span class="n">device</span><span class="p">;</span>
+ <span class="n">std</span><span class="o">::</span><span class="n">uniform_int_distribution</span><span class="o"><</span><span class="k">typename</span> <span class="n">std</span><span class="o">::</span><span class="n">mt19937</span><span class="o">::</span><span class="n">result_type</span><span class="o">></span> <span class="n">dist</span><span class="p">;</span>
+ <span class="n">std</span><span class="o">::</span><span class="n">generate</span><span class="p">(</span><span class="n">std</span><span class="o">::</span><span class="n">begin</span><span class="p">(</span><span class="n">seeds</span><span class="p">),</span> <span class="n">std</span><span class="o">::</span><span class="n">end</span><span class="p">(</span><span class="n">seeds</span><span class="p">),</span> <span class="p">[</span><span class="o">&</span><span class="p">]</span> <span class="p">{</span> <span class="k">return</span> <span class="n">dist</span><span class="p">(</span><span class="n">device</span><span class="p">);</span> <span class="p">});</span>
+ <span class="n">std</span><span class="o">::</span><span class="n">seed_seq</span> <span class="n">seq</span><span class="p">(</span><span class="n">std</span><span class="o">::</span><span class="n">begin</span><span class="p">(</span><span class="n">seeds</span><span class="p">),</span> <span class="n">std</span><span class="o">::</span><span class="n">end</span><span class="p">(</span><span class="n">seeds</span><span class="p">));</span>
+ <span class="k">return</span> <span class="n">std</span><span class="o">::</span><span class="n">mt19937</span><span class="p">(</span><span class="n">seq</span><span class="p">);</span>
+<span class="p">}());</span>
+</pre></div>
+</div>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="modernize-replace-auto-ptr.html">modernize-replace-auto-ptr</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="modernize-return-braced-init-list.html">modernize-return-braced-init-list</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-return-braced-init-list.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-return-braced-init-list.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-return-braced-init-list.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-return-braced-init-list.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,80 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>clang-tidy - modernize-return-braced-init-list — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="modernize-shrink-to-fit" href="modernize-shrink-to-fit.html" />
+ <link rel="prev" title="modernize-replace-random-shuffle" href="modernize-replace-random-shuffle.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - modernize-return-braced-init-list</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="modernize-replace-random-shuffle.html">modernize-replace-random-shuffle</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="modernize-shrink-to-fit.html">modernize-shrink-to-fit</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="modernize-return-braced-init-list">
+<h1>modernize-return-braced-init-list<a class="headerlink" href="#modernize-return-braced-init-list" title="Permalink to this headline">¶</a></h1>
+<p>Replaces explicit calls to the constructor in a return with a braced
+initializer list. This way the return type is not needlessly duplicated in the
+function definition and the return statement.</p>
+<div class="code c++ highlight-default notranslate"><div class="highlight"><pre><span></span><span class="n">Foo</span> <span class="n">bar</span><span class="p">()</span> <span class="p">{</span>
+ <span class="n">Baz</span> <span class="n">baz</span><span class="p">;</span>
+ <span class="k">return</span> <span class="n">Foo</span><span class="p">(</span><span class="n">baz</span><span class="p">);</span>
+<span class="p">}</span>
+
+<span class="o">//</span> <span class="n">transforms</span> <span class="n">to</span><span class="p">:</span>
+
+<span class="n">Foo</span> <span class="n">bar</span><span class="p">()</span> <span class="p">{</span>
+ <span class="n">Baz</span> <span class="n">baz</span><span class="p">;</span>
+ <span class="k">return</span> <span class="p">{</span><span class="n">baz</span><span class="p">};</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="modernize-replace-random-shuffle.html">modernize-replace-random-shuffle</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="modernize-shrink-to-fit.html">modernize-shrink-to-fit</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-shrink-to-fit.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-shrink-to-fit.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-shrink-to-fit.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-shrink-to-fit.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,69 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>clang-tidy - modernize-shrink-to-fit — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="modernize-unary-static-assert" href="modernize-unary-static-assert.html" />
+ <link rel="prev" title="modernize-return-braced-init-list" href="modernize-return-braced-init-list.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - modernize-shrink-to-fit</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="modernize-return-braced-init-list.html">modernize-return-braced-init-list</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="modernize-unary-static-assert.html">modernize-unary-static-assert</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="modernize-shrink-to-fit">
+<h1>modernize-shrink-to-fit<a class="headerlink" href="#modernize-shrink-to-fit" title="Permalink to this headline">¶</a></h1>
+<p>Replace copy and swap tricks on shrinkable containers with the
+<code class="docutils literal notranslate"><span class="pre">shrink_to_fit()</span></code> method call.</p>
+<p>The <code class="docutils literal notranslate"><span class="pre">shrink_to_fit()</span></code> method is more readable and more effective than
+the copy and swap trick to reduce the capacity of a shrinkable container.
+Note that, the <code class="docutils literal notranslate"><span class="pre">shrink_to_fit()</span></code> method is only available in C++11 and up.</p>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="modernize-return-braced-init-list.html">modernize-return-braced-init-list</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="modernize-unary-static-assert.html">modernize-unary-static-assert</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-unary-static-assert.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-unary-static-assert.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-unary-static-assert.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-unary-static-assert.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,79 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>clang-tidy - modernize-unary-static-assert — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="modernize-use-auto" href="modernize-use-auto.html" />
+ <link rel="prev" title="modernize-shrink-to-fit" href="modernize-shrink-to-fit.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - modernize-unary-static-assert</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="modernize-shrink-to-fit.html">modernize-shrink-to-fit</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="modernize-use-auto.html">modernize-use-auto</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="modernize-unary-static-assert">
+<h1>modernize-unary-static-assert<a class="headerlink" href="#modernize-unary-static-assert" title="Permalink to this headline">¶</a></h1>
+<p>The check diagnoses any <code class="docutils literal notranslate"><span class="pre">static_assert</span></code> declaration with an empty string literal
+and provides a fix-it to replace the declaration with a single-argument <code class="docutils literal notranslate"><span class="pre">static_assert</span></code> declaration.</p>
+<p>The check is only applicable for C++17 and later code.</p>
+<p>The following code:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="kt">void</span> <span class="nf">f_textless</span><span class="p">(</span><span class="kt">int</span> <span class="n">a</span><span class="p">)</span> <span class="p">{</span>
+ <span class="k">static_assert</span><span class="p">(</span><span class="k">sizeof</span><span class="p">(</span><span class="n">a</span><span class="p">)</span> <span class="o"><=</span> <span class="mi">10</span><span class="p">,</span> <span class="s">""</span><span class="p">);</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+<p>is replaced by:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="kt">void</span> <span class="nf">f_textless</span><span class="p">(</span><span class="kt">int</span> <span class="n">a</span><span class="p">)</span> <span class="p">{</span>
+ <span class="k">static_assert</span><span class="p">(</span><span class="k">sizeof</span><span class="p">(</span><span class="n">a</span><span class="p">)</span> <span class="o"><=</span> <span class="mi">10</span><span class="p">);</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="modernize-shrink-to-fit.html">modernize-shrink-to-fit</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="modernize-use-auto.html">modernize-use-auto</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-use-auto.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-use-auto.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-use-auto.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-use-auto.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,282 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>clang-tidy - modernize-use-auto — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="modernize-use-bool-literals" href="modernize-use-bool-literals.html" />
+ <link rel="prev" title="modernize-unary-static-assert" href="modernize-unary-static-assert.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - modernize-use-auto</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="modernize-unary-static-assert.html">modernize-unary-static-assert</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="modernize-use-bool-literals.html">modernize-use-bool-literals</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="modernize-use-auto">
+<h1>modernize-use-auto<a class="headerlink" href="#modernize-use-auto" title="Permalink to this headline">¶</a></h1>
+<p>This check is responsible for using the <code class="docutils literal notranslate"><span class="pre">auto</span></code> type specifier for variable
+declarations to <em>improve code readability and maintainability</em>. For example:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="n">std</span><span class="o">::</span><span class="n">vector</span><span class="o"><</span><span class="kt">int</span><span class="o">>::</span><span class="n">iterator</span> <span class="n">I</span> <span class="o">=</span> <span class="n">my_container</span><span class="p">.</span><span class="n">begin</span><span class="p">();</span>
+
+<span class="c1">// transforms to:</span>
+
+<span class="k">auto</span> <span class="n">I</span> <span class="o">=</span> <span class="n">my_container</span><span class="p">.</span><span class="n">begin</span><span class="p">();</span>
+</pre></div>
+</div>
+<p>The <code class="docutils literal notranslate"><span class="pre">auto</span></code> type specifier will only be introduced in situations where the
+variable type matches the type of the initializer expression. In other words
+<code class="docutils literal notranslate"><span class="pre">auto</span></code> should deduce the same type that was originally spelled in the source.
+However, not every situation should be transformed:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="kt">int</span> <span class="n">val</span> <span class="o">=</span> <span class="mi">42</span><span class="p">;</span>
+<span class="n">InfoStruct</span> <span class="o">&</span><span class="n">I</span> <span class="o">=</span> <span class="n">SomeObject</span><span class="p">.</span><span class="n">getInfo</span><span class="p">();</span>
+
+<span class="c1">// Should not become:</span>
+
+<span class="k">auto</span> <span class="n">val</span> <span class="o">=</span> <span class="mi">42</span><span class="p">;</span>
+<span class="k">auto</span> <span class="o">&</span><span class="n">I</span> <span class="o">=</span> <span class="n">SomeObject</span><span class="p">.</span><span class="n">getInfo</span><span class="p">();</span>
+</pre></div>
+</div>
+<p>In this example using <code class="docutils literal notranslate"><span class="pre">auto</span></code> for builtins doesnât improve readability. In
+other situations it makes the code less self-documenting impairing readability
+and maintainability. As a result, <code class="docutils literal notranslate"><span class="pre">auto</span></code> is used only introduced in specific
+situations described below.</p>
+<div class="section" id="iterators">
+<h2>Iterators<a class="headerlink" href="#iterators" title="Permalink to this headline">¶</a></h2>
+<p>Iterator type specifiers tend to be long and used frequently, especially in
+loop constructs. Since the functions generating iterators have a common format,
+the type specifier can be replaced without obscuring the meaning of code while
+improving readability and maintainability.</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">for</span> <span class="p">(</span><span class="n">std</span><span class="o">::</span><span class="n">vector</span><span class="o"><</span><span class="kt">int</span><span class="o">>::</span><span class="n">iterator</span> <span class="n">I</span> <span class="o">=</span> <span class="n">my_container</span><span class="p">.</span><span class="n">begin</span><span class="p">(),</span>
+ <span class="n">E</span> <span class="o">=</span> <span class="n">my_container</span><span class="p">.</span><span class="n">end</span><span class="p">();</span>
+ <span class="n">I</span> <span class="o">!=</span> <span class="n">E</span><span class="p">;</span> <span class="o">++</span><span class="n">I</span><span class="p">)</span> <span class="p">{</span>
+<span class="p">}</span>
+
+<span class="c1">// becomes</span>
+
+<span class="k">for</span> <span class="p">(</span><span class="k">auto</span> <span class="n">I</span> <span class="o">=</span> <span class="n">my_container</span><span class="p">.</span><span class="n">begin</span><span class="p">(),</span> <span class="n">E</span> <span class="o">=</span> <span class="n">my_container</span><span class="p">.</span><span class="n">end</span><span class="p">();</span> <span class="n">I</span> <span class="o">!=</span> <span class="n">E</span><span class="p">;</span> <span class="o">++</span><span class="n">I</span><span class="p">)</span> <span class="p">{</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+<p>The check will only replace iterator type-specifiers when all of the following
+conditions are satisfied:</p>
+<ul class="simple">
+<li>The iterator is for one of the standard container in <code class="docutils literal notranslate"><span class="pre">std</span></code> namespace:<ul>
+<li><code class="docutils literal notranslate"><span class="pre">array</span></code></li>
+<li><code class="docutils literal notranslate"><span class="pre">deque</span></code></li>
+<li><code class="docutils literal notranslate"><span class="pre">forward_list</span></code></li>
+<li><code class="docutils literal notranslate"><span class="pre">list</span></code></li>
+<li><code class="docutils literal notranslate"><span class="pre">vector</span></code></li>
+<li><code class="docutils literal notranslate"><span class="pre">map</span></code></li>
+<li><code class="docutils literal notranslate"><span class="pre">multimap</span></code></li>
+<li><code class="docutils literal notranslate"><span class="pre">set</span></code></li>
+<li><code class="docutils literal notranslate"><span class="pre">multiset</span></code></li>
+<li><code class="docutils literal notranslate"><span class="pre">unordered_map</span></code></li>
+<li><code class="docutils literal notranslate"><span class="pre">unordered_multimap</span></code></li>
+<li><code class="docutils literal notranslate"><span class="pre">unordered_set</span></code></li>
+<li><code class="docutils literal notranslate"><span class="pre">unordered_multiset</span></code></li>
+<li><code class="docutils literal notranslate"><span class="pre">queue</span></code></li>
+<li><code class="docutils literal notranslate"><span class="pre">priority_queue</span></code></li>
+<li><code class="docutils literal notranslate"><span class="pre">stack</span></code></li>
+</ul>
+</li>
+<li>The iterator is one of the possible iterator types for standard containers:<ul>
+<li><code class="docutils literal notranslate"><span class="pre">iterator</span></code></li>
+<li><code class="docutils literal notranslate"><span class="pre">reverse_iterator</span></code></li>
+<li><code class="docutils literal notranslate"><span class="pre">const_iterator</span></code></li>
+<li><code class="docutils literal notranslate"><span class="pre">const_reverse_iterator</span></code></li>
+</ul>
+</li>
+<li>In addition to using iterator types directly, typedefs or other ways of
+referring to those types are also allowed. However, implementation-specific
+types for which a type like <code class="docutils literal notranslate"><span class="pre">std::vector<int>::iterator</span></code> is itself a
+typedef will not be transformed. Consider the following examples:</li>
+</ul>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="c1">// The following direct uses of iterator types will be transformed.</span>
+<span class="n">std</span><span class="o">::</span><span class="n">vector</span><span class="o"><</span><span class="kt">int</span><span class="o">>::</span><span class="n">iterator</span> <span class="n">I</span> <span class="o">=</span> <span class="n">MyVec</span><span class="p">.</span><span class="n">begin</span><span class="p">();</span>
+<span class="p">{</span>
+ <span class="k">using</span> <span class="k">namespace</span> <span class="n">std</span><span class="p">;</span>
+ <span class="n">list</span><span class="o"><</span><span class="kt">int</span><span class="o">>::</span><span class="n">iterator</span> <span class="n">I</span> <span class="o">=</span> <span class="n">MyList</span><span class="p">.</span><span class="n">begin</span><span class="p">();</span>
+<span class="p">}</span>
+
+<span class="c1">// The type specifier for J would transform to auto since it's a typedef</span>
+<span class="c1">// to a standard iterator type.</span>
+<span class="k">typedef</span> <span class="n">std</span><span class="o">::</span><span class="n">map</span><span class="o"><</span><span class="kt">int</span><span class="p">,</span> <span class="n">std</span><span class="o">::</span><span class="n">string</span><span class="o">>::</span><span class="n">const_iterator</span> <span class="n">map_iterator</span><span class="p">;</span>
+<span class="n">map_iterator</span> <span class="n">J</span> <span class="o">=</span> <span class="n">MyMap</span><span class="p">.</span><span class="n">begin</span><span class="p">();</span>
+
+<span class="c1">// The following implementation-specific iterator type for which</span>
+<span class="c1">// std::vector<int>::iterator could be a typedef would not be transformed.</span>
+<span class="n">__gnu_cxx</span><span class="o">::</span><span class="n">__normal_iterator</span><span class="o"><</span><span class="kt">int</span><span class="o">*</span><span class="p">,</span> <span class="n">std</span><span class="o">::</span><span class="n">vector</span><span class="o">></span> <span class="n">K</span> <span class="o">=</span> <span class="n">MyVec</span><span class="p">.</span><span class="n">begin</span><span class="p">();</span>
+</pre></div>
+</div>
+<ul class="simple">
+<li>The initializer for the variable being declared is not a braced initializer
+list. Otherwise, use of <code class="docutils literal notranslate"><span class="pre">auto</span></code> would cause the type of the variable to be
+deduced as <code class="docutils literal notranslate"><span class="pre">std::initializer_list</span></code>.</li>
+</ul>
+</div>
+<div class="section" id="new-expressions">
+<h2>New expressions<a class="headerlink" href="#new-expressions" title="Permalink to this headline">¶</a></h2>
+<p>Frequently, when a pointer is declared and initialized with <code class="docutils literal notranslate"><span class="pre">new</span></code>, the
+pointee type is written twice: in the declaration type and in the
+<code class="docutils literal notranslate"><span class="pre">new</span></code> expression. In this cases, the declaration type can be replaced with
+<code class="docutils literal notranslate"><span class="pre">auto</span></code> improving readability and maintainability.</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="n">TypeName</span> <span class="o">*</span><span class="n">my_pointer</span> <span class="o">=</span> <span class="k">new</span> <span class="n">TypeName</span><span class="p">(</span><span class="n">my_param</span><span class="p">);</span>
+
+<span class="c1">// becomes</span>
+
+<span class="k">auto</span> <span class="o">*</span><span class="n">my_pointer</span> <span class="o">=</span> <span class="k">new</span> <span class="n">TypeName</span><span class="p">(</span><span class="n">my_param</span><span class="p">);</span>
+</pre></div>
+</div>
+<p>The check will also replace the declaration type in multiple declarations, if
+the following conditions are satisfied:</p>
+<ul class="simple">
+<li>All declared variables have the same type (i.e. all of them are pointers to
+the same type).</li>
+<li>All declared variables are initialized with a <code class="docutils literal notranslate"><span class="pre">new</span></code> expression.</li>
+<li>The types of all the new expressions are the same than the pointee of the
+declaration type.</li>
+</ul>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="n">TypeName</span> <span class="o">*</span><span class="n">my_first_pointer</span> <span class="o">=</span> <span class="k">new</span> <span class="n">TypeName</span><span class="p">,</span> <span class="o">*</span><span class="n">my_second_pointer</span> <span class="o">=</span> <span class="k">new</span> <span class="n">TypeName</span><span class="p">;</span>
+
+<span class="c1">// becomes</span>
+
+<span class="k">auto</span> <span class="o">*</span><span class="n">my_first_pointer</span> <span class="o">=</span> <span class="k">new</span> <span class="n">TypeName</span><span class="p">,</span> <span class="o">*</span><span class="n">my_second_pointer</span> <span class="o">=</span> <span class="k">new</span> <span class="n">TypeName</span><span class="p">;</span>
+</pre></div>
+</div>
+</div>
+<div class="section" id="cast-expressions">
+<h2>Cast expressions<a class="headerlink" href="#cast-expressions" title="Permalink to this headline">¶</a></h2>
+<p>Frequently, when a variable is declared and initialized with a cast, the
+variable type is written twice: in the declaration type and in the
+cast expression. In this cases, the declaration type can be replaced with
+<code class="docutils literal notranslate"><span class="pre">auto</span></code> improving readability and maintainability.</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="n">TypeName</span> <span class="o">*</span><span class="n">my_pointer</span> <span class="o">=</span> <span class="k">static_cast</span><span class="o"><</span><span class="n">TypeName</span><span class="o">></span><span class="p">(</span><span class="n">my_param</span><span class="p">);</span>
+
+<span class="c1">// becomes</span>
+
+<span class="k">auto</span> <span class="o">*</span><span class="n">my_pointer</span> <span class="o">=</span> <span class="k">static_cast</span><span class="o"><</span><span class="n">TypeName</span><span class="o">></span><span class="p">(</span><span class="n">my_param</span><span class="p">);</span>
+</pre></div>
+</div>
+<p>The check handles <code class="docutils literal notranslate"><span class="pre">static_cast</span></code>, <code class="docutils literal notranslate"><span class="pre">dynamic_cast</span></code>, <code class="docutils literal notranslate"><span class="pre">const_cast</span></code>,
+<code class="docutils literal notranslate"><span class="pre">reinterpret_cast</span></code>, functional casts, C-style casts and function templates
+that behave as casts, such as <code class="docutils literal notranslate"><span class="pre">llvm::dyn_cast</span></code>, <code class="docutils literal notranslate"><span class="pre">boost::lexical_cast</span></code> and
+<code class="docutils literal notranslate"><span class="pre">gsl::narrow_cast</span></code>. Calls to function templates are considered to behave as
+casts if the first template argument is explicit and is a type, and the function
+returns that type, or a pointer or reference to it.</p>
+</div>
+<div class="section" id="known-limitations">
+<h2>Known Limitations<a class="headerlink" href="#known-limitations" title="Permalink to this headline">¶</a></h2>
+<ul class="simple">
+<li>If the initializer is an explicit conversion constructor, the check will not
+replace the type specifier even though it would be safe to do so.</li>
+<li>User-defined iterators are not handled at this time.</li>
+</ul>
+</div>
+<div class="section" id="options">
+<h2>Options<a class="headerlink" href="#options" title="Permalink to this headline">¶</a></h2>
+<dl class="option">
+<dt id="cmdoption-arg-mintypenamelength">
+<code class="descname">MinTypeNameLength</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-mintypenamelength" title="Permalink to this definition">¶</a></dt>
+<dd><p>If the option is set to non-zero (default <cite>5</cite>), the check will ignore type
+names having a length less than the option value. The option affects
+expressions only, not iterators.
+Spaces between multi-lexeme type names (<code class="docutils literal notranslate"><span class="pre">long</span> <span class="pre">int</span></code>) are considered as one.
+If <code class="docutils literal notranslate"><span class="pre">RemoveStars</span></code> option (see below) is set to non-zero, then <code class="docutils literal notranslate"><span class="pre">*s</span></code> in
+the type are also counted as a part of the type name.</p>
+</dd></dl>
+
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="c1">// MinTypeNameLength = 0, RemoveStars=0</span>
+
+<span class="kt">int</span> <span class="n">a</span> <span class="o">=</span> <span class="k">static_cast</span><span class="o"><</span><span class="kt">int</span><span class="o">></span><span class="p">(</span><span class="n">foo</span><span class="p">());</span> <span class="c1">// ---> auto a = ...</span>
+<span class="c1">// length(bool *) = 4</span>
+<span class="kt">bool</span> <span class="o">*</span><span class="n">b</span> <span class="o">=</span> <span class="k">new</span> <span class="kt">bool</span><span class="p">;</span> <span class="c1">// ---> auto *b = ...</span>
+<span class="kt">unsigned</span> <span class="n">c</span> <span class="o">=</span> <span class="k">static_cast</span><span class="o"><</span><span class="kt">unsigned</span><span class="o">></span><span class="p">(</span><span class="n">foo</span><span class="p">());</span> <span class="c1">// ---> auto c = ...</span>
+
+<span class="c1">// MinTypeNameLength = 5, RemoveStars=0</span>
+
+<span class="kt">int</span> <span class="n">a</span> <span class="o">=</span> <span class="k">static_cast</span><span class="o"><</span><span class="kt">int</span><span class="o">></span><span class="p">(</span><span class="n">foo</span><span class="p">());</span> <span class="c1">// ---> int a = ...</span>
+<span class="kt">bool</span> <span class="n">b</span> <span class="o">=</span> <span class="k">static_cast</span><span class="o"><</span><span class="kt">bool</span><span class="o">></span><span class="p">(</span><span class="n">foo</span><span class="p">());</span> <span class="c1">// ---> bool b = ...</span>
+<span class="kt">bool</span> <span class="o">*</span><span class="n">pb</span> <span class="o">=</span> <span class="k">static_cast</span><span class="o"><</span><span class="kt">bool</span><span class="o">*></span><span class="p">(</span><span class="n">foo</span><span class="p">());</span> <span class="c1">// ---> bool *pb = ...</span>
+<span class="kt">unsigned</span> <span class="n">c</span> <span class="o">=</span> <span class="k">static_cast</span><span class="o"><</span><span class="kt">unsigned</span><span class="o">></span><span class="p">(</span><span class="n">foo</span><span class="p">());</span> <span class="c1">// ---> auto c = ...</span>
+<span class="c1">// length(long <on-or-more-spaces> int) = 8</span>
+<span class="kt">long</span> <span class="kt">int</span> <span class="n">d</span> <span class="o">=</span> <span class="k">static_cast</span><span class="o"><</span><span class="kt">long</span> <span class="kt">int</span><span class="o">></span><span class="p">(</span><span class="n">foo</span><span class="p">());</span> <span class="c1">// ---> auto d = ...</span>
+
+<span class="c1">// MinTypeNameLength = 5, RemoveStars=1</span>
+
+<span class="kt">int</span> <span class="n">a</span> <span class="o">=</span> <span class="k">static_cast</span><span class="o"><</span><span class="kt">int</span><span class="o">></span><span class="p">(</span><span class="n">foo</span><span class="p">());</span> <span class="c1">// ---> int a = ...</span>
+<span class="c1">// length(int * * ) = 5</span>
+<span class="kt">int</span> <span class="o">**</span><span class="n">pa</span> <span class="o">=</span> <span class="k">static_cast</span><span class="o"><</span><span class="kt">int</span><span class="o">**></span><span class="p">(</span><span class="n">foo</span><span class="p">());</span> <span class="c1">// ---> auto pa = ...</span>
+<span class="kt">bool</span> <span class="n">b</span> <span class="o">=</span> <span class="k">static_cast</span><span class="o"><</span><span class="kt">bool</span><span class="o">></span><span class="p">(</span><span class="n">foo</span><span class="p">());</span> <span class="c1">// ---> bool b = ...</span>
+<span class="kt">bool</span> <span class="o">*</span><span class="n">pb</span> <span class="o">=</span> <span class="k">static_cast</span><span class="o"><</span><span class="kt">bool</span><span class="o">*></span><span class="p">(</span><span class="n">foo</span><span class="p">());</span> <span class="c1">// ---> auto pb = ...</span>
+<span class="kt">unsigned</span> <span class="n">c</span> <span class="o">=</span> <span class="k">static_cast</span><span class="o"><</span><span class="kt">unsigned</span><span class="o">></span><span class="p">(</span><span class="n">foo</span><span class="p">());</span> <span class="c1">// ---> auto c = ...</span>
+<span class="kt">long</span> <span class="kt">int</span> <span class="n">d</span> <span class="o">=</span> <span class="k">static_cast</span><span class="o"><</span><span class="kt">long</span> <span class="kt">int</span><span class="o">></span><span class="p">(</span><span class="n">foo</span><span class="p">());</span> <span class="c1">// ---> auto d = ...</span>
+</pre></div>
+</div>
+<dl class="option">
+<dt id="cmdoption-arg-removestars">
+<code class="descname">RemoveStars</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-removestars" title="Permalink to this definition">¶</a></dt>
+<dd><p>If the option is set to non-zero (default is <cite>0</cite>), the check will remove
+stars from the non-typedef pointer types when replacing type names with
+<code class="docutils literal notranslate"><span class="pre">auto</span></code>. Otherwise, the check will leave stars. For example:</p>
+</dd></dl>
+
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="n">TypeName</span> <span class="o">*</span><span class="n">my_first_pointer</span> <span class="o">=</span> <span class="k">new</span> <span class="n">TypeName</span><span class="p">,</span> <span class="o">*</span><span class="n">my_second_pointer</span> <span class="o">=</span> <span class="k">new</span> <span class="n">TypeName</span><span class="p">;</span>
+
+<span class="c1">// RemoveStars = 0</span>
+
+<span class="k">auto</span> <span class="o">*</span><span class="n">my_first_pointer</span> <span class="o">=</span> <span class="k">new</span> <span class="n">TypeName</span><span class="p">,</span> <span class="o">*</span><span class="n">my_second_pointer</span> <span class="o">=</span> <span class="k">new</span> <span class="n">TypeName</span><span class="p">;</span>
+
+<span class="c1">// RemoveStars = 1</span>
+
+<span class="k">auto</span> <span class="n">my_first_pointer</span> <span class="o">=</span> <span class="k">new</span> <span class="n">TypeName</span><span class="p">,</span> <span class="n">my_second_pointer</span> <span class="o">=</span> <span class="k">new</span> <span class="n">TypeName</span><span class="p">;</span>
+</pre></div>
+</div>
+</div>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="modernize-unary-static-assert.html">modernize-unary-static-assert</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="modernize-use-bool-literals.html">modernize-use-bool-literals</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-use-bool-literals.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-use-bool-literals.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-use-bool-literals.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-use-bool-literals.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,88 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>clang-tidy - modernize-use-bool-literals — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="modernize-use-default-member-init" href="modernize-use-default-member-init.html" />
+ <link rel="prev" title="modernize-use-auto" href="modernize-use-auto.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - modernize-use-bool-literals</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="modernize-use-auto.html">modernize-use-auto</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="modernize-use-default-member-init.html">modernize-use-default-member-init</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="modernize-use-bool-literals">
+<h1>modernize-use-bool-literals<a class="headerlink" href="#modernize-use-bool-literals" title="Permalink to this headline">¶</a></h1>
+<p>Finds integer literals which are cast to <code class="docutils literal notranslate"><span class="pre">bool</span></code>.</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="kt">bool</span> <span class="n">p</span> <span class="o">=</span> <span class="mi">1</span><span class="p">;</span>
+<span class="kt">bool</span> <span class="n">f</span> <span class="o">=</span> <span class="k">static_cast</span><span class="o"><</span><span class="kt">bool</span><span class="o">></span><span class="p">(</span><span class="mi">1</span><span class="p">);</span>
+<span class="n">std</span><span class="o">::</span><span class="n">ios_base</span><span class="o">::</span><span class="n">sync_with_stdio</span><span class="p">(</span><span class="mi">0</span><span class="p">);</span>
+<span class="kt">bool</span> <span class="n">x</span> <span class="o">=</span> <span class="n">p</span> <span class="o">?</span> <span class="mi">1</span> <span class="o">:</span> <span class="mi">0</span><span class="p">;</span>
+
+<span class="c1">// transforms to</span>
+
+<span class="kt">bool</span> <span class="n">p</span> <span class="o">=</span> <span class="nb">true</span><span class="p">;</span>
+<span class="kt">bool</span> <span class="n">f</span> <span class="o">=</span> <span class="nb">true</span><span class="p">;</span>
+<span class="n">std</span><span class="o">::</span><span class="n">ios_base</span><span class="o">::</span><span class="n">sync_with_stdio</span><span class="p">(</span><span class="nb">false</span><span class="p">);</span>
+<span class="kt">bool</span> <span class="n">x</span> <span class="o">=</span> <span class="n">p</span> <span class="o">?</span> <span class="nb">true</span> <span class="o">:</span> <span class="nb">false</span><span class="p">;</span>
+</pre></div>
+</div>
+<div class="section" id="options">
+<h2>Options<a class="headerlink" href="#options" title="Permalink to this headline">¶</a></h2>
+<dl class="option">
+<dt id="cmdoption-arg-ignoremacros">
+<code class="descname">IgnoreMacros</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-ignoremacros" title="Permalink to this definition">¶</a></dt>
+<dd><p>If set to non-zero, the check will not give warnings inside macros. Default
+is <cite>1</cite>.</p>
+</dd></dl>
+
+</div>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="modernize-use-auto.html">modernize-use-auto</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="modernize-use-default-member-init.html">modernize-use-default-member-init</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-use-default-member-init.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-use-default-member-init.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-use-default-member-init.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-use-default-member-init.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,116 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>clang-tidy - modernize-use-default-member-init — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="modernize-use-emplace" href="modernize-use-emplace.html" />
+ <link rel="prev" title="modernize-use-bool-literals" href="modernize-use-bool-literals.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - modernize-use-default-member-init</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="modernize-use-bool-literals.html">modernize-use-bool-literals</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="modernize-use-emplace.html">modernize-use-emplace</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="modernize-use-default-member-init">
+<h1>modernize-use-default-member-init<a class="headerlink" href="#modernize-use-default-member-init" title="Permalink to this headline">¶</a></h1>
+<p>This check converts a default constructorâs member initializers into the new
+default member initializers in C++11. Other member initializers that match the
+default member initializer are removed. This can reduce repeated code or allow
+use of â= defaultâ.</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">struct</span> <span class="n">A</span> <span class="p">{</span>
+ <span class="n">A</span><span class="p">()</span> <span class="o">:</span> <span class="n">i</span><span class="p">(</span><span class="mi">5</span><span class="p">),</span> <span class="n">j</span><span class="p">(</span><span class="mf">10.0</span><span class="p">)</span> <span class="p">{}</span>
+ <span class="n">A</span><span class="p">(</span><span class="kt">int</span> <span class="n">i</span><span class="p">)</span> <span class="o">:</span> <span class="n">i</span><span class="p">(</span><span class="n">i</span><span class="p">),</span> <span class="n">j</span><span class="p">(</span><span class="mf">10.0</span><span class="p">)</span> <span class="p">{}</span>
+ <span class="kt">int</span> <span class="n">i</span><span class="p">;</span>
+ <span class="kt">double</span> <span class="n">j</span><span class="p">;</span>
+<span class="p">};</span>
+
+<span class="c1">// becomes</span>
+
+<span class="k">struct</span> <span class="n">A</span> <span class="p">{</span>
+ <span class="n">A</span><span class="p">()</span> <span class="p">{}</span>
+ <span class="n">A</span><span class="p">(</span><span class="kt">int</span> <span class="n">i</span><span class="p">)</span> <span class="o">:</span> <span class="n">i</span><span class="p">(</span><span class="n">i</span><span class="p">)</span> <span class="p">{}</span>
+ <span class="kt">int</span> <span class="n">i</span><span class="p">{</span><span class="mi">5</span><span class="p">};</span>
+ <span class="kt">double</span> <span class="n">j</span><span class="p">{</span><span class="mf">10.0</span><span class="p">};</span>
+<span class="p">};</span>
+</pre></div>
+</div>
+<div class="admonition note">
+<p class="first admonition-title">Note</p>
+<p class="last">Only converts member initializers for built-in types, enums, and pointers.
+The <cite>readability-redundant-member-init</cite> check will remove redundant member
+initializers for classes.</p>
+</div>
+<div class="section" id="options">
+<h2>Options<a class="headerlink" href="#options" title="Permalink to this headline">¶</a></h2>
+<dl class="option">
+<dt id="cmdoption-arg-useassignment">
+<code class="descname">UseAssignment</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-useassignment" title="Permalink to this definition">¶</a></dt>
+<dd><p>If this option is set to non-zero (default is <cite>0</cite>), the check will initialise
+members with an assignment. For example:</p>
+</dd></dl>
+
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">struct</span> <span class="n">A</span> <span class="p">{</span>
+ <span class="n">A</span><span class="p">()</span> <span class="p">{}</span>
+ <span class="n">A</span><span class="p">(</span><span class="kt">int</span> <span class="n">i</span><span class="p">)</span> <span class="o">:</span> <span class="n">i</span><span class="p">(</span><span class="n">i</span><span class="p">)</span> <span class="p">{}</span>
+ <span class="kt">int</span> <span class="n">i</span> <span class="o">=</span> <span class="mi">5</span><span class="p">;</span>
+ <span class="kt">double</span> <span class="n">j</span> <span class="o">=</span> <span class="mf">10.0</span><span class="p">;</span>
+<span class="p">};</span>
+</pre></div>
+</div>
+<dl class="option">
+<dt id="cmdoption-arg-ignoremacros">
+<code class="descname">IgnoreMacros</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-ignoremacros" title="Permalink to this definition">¶</a></dt>
+<dd><p>If this option is set to non-zero (default is <cite>1</cite>), the check will not warn
+about members declared inside macros.</p>
+</dd></dl>
+
+</div>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="modernize-use-bool-literals.html">modernize-use-bool-literals</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="modernize-use-emplace.html">modernize-use-emplace</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-use-default.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-use-default.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-use-default.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-use-default.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,57 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><meta content="5;URL=modernize-use-equals-default.html" http-equiv="refresh" />
+
+ <title>clang-tidy - modernize-use-default — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - modernize-use-default</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ <a class="uplink" href="../../index.html">Contents</a>
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="modernize-use-default">
+<h1>modernize-use-default<a class="headerlink" href="#modernize-use-default" title="Permalink to this headline">¶</a></h1>
+<p>This check has been renamed to
+<a class="reference external" href="modernize-use-equals-default.html">modernize-use-equals-default</a>.</p>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ <a class="uplink" href="../../index.html">Contents</a>
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-use-emplace.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-use-emplace.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-use-emplace.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-use-emplace.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,191 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>clang-tidy - modernize-use-emplace — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="modernize-use-equals-default" href="modernize-use-equals-default.html" />
+ <link rel="prev" title="modernize-use-default-member-init" href="modernize-use-default-member-init.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - modernize-use-emplace</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="modernize-use-default-member-init.html">modernize-use-default-member-init</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="modernize-use-equals-default.html">modernize-use-equals-default</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="modernize-use-emplace">
+<h1>modernize-use-emplace<a class="headerlink" href="#modernize-use-emplace" title="Permalink to this headline">¶</a></h1>
+<p>The check flags insertions to an STL-style container done by calling the
+<code class="docutils literal notranslate"><span class="pre">push_back</span></code> method with an explicitly-constructed temporary of the container
+element type. In this case, the corresponding <code class="docutils literal notranslate"><span class="pre">emplace_back</span></code> method
+results in less verbose and potentially more efficient code.
+Right now the check doesnât support <code class="docutils literal notranslate"><span class="pre">push_front</span></code> and <code class="docutils literal notranslate"><span class="pre">insert</span></code>.
+It also doesnât support <code class="docutils literal notranslate"><span class="pre">insert</span></code> functions for associative containers
+because replacing <code class="docutils literal notranslate"><span class="pre">insert</span></code> with <code class="docutils literal notranslate"><span class="pre">emplace</span></code> may result in
+<a class="reference external" href="https://htmlpreview.github.io/?https://github.com/HowardHinnant/papers/blob/master/insert_vs_emplace.html">speed regression</a>, but it might get support with some addition flag in the future.</p>
+<p>By default only <code class="docutils literal notranslate"><span class="pre">std::vector</span></code>, <code class="docutils literal notranslate"><span class="pre">std::deque</span></code>, <code class="docutils literal notranslate"><span class="pre">std::list</span></code> are considered.
+This list can be modified using the <a class="reference internal" href="#cmdoption-arg-containerswithpushback"><code class="xref std std-option docutils literal notranslate"><span class="pre">ContainersWithPushBack</span></code></a> option.</p>
+<p>Before:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="n">std</span><span class="o">::</span><span class="n">vector</span><span class="o"><</span><span class="n">MyClass</span><span class="o">></span> <span class="n">v</span><span class="p">;</span>
+<span class="n">v</span><span class="p">.</span><span class="n">push_back</span><span class="p">(</span><span class="n">MyClass</span><span class="p">(</span><span class="mi">21</span><span class="p">,</span> <span class="mi">37</span><span class="p">));</span>
+
+<span class="n">std</span><span class="o">::</span><span class="n">vector</span><span class="o"><</span><span class="n">std</span><span class="o">::</span><span class="n">pair</span><span class="o"><</span><span class="kt">int</span><span class="p">,</span> <span class="kt">int</span><span class="o">>></span> <span class="n">w</span><span class="p">;</span>
+
+<span class="n">w</span><span class="p">.</span><span class="n">push_back</span><span class="p">(</span><span class="n">std</span><span class="o">::</span><span class="n">pair</span><span class="o"><</span><span class="kt">int</span><span class="p">,</span> <span class="kt">int</span><span class="o">></span><span class="p">(</span><span class="mi">21</span><span class="p">,</span> <span class="mi">37</span><span class="p">));</span>
+<span class="n">w</span><span class="p">.</span><span class="n">push_back</span><span class="p">(</span><span class="n">std</span><span class="o">::</span><span class="n">make_pair</span><span class="p">(</span><span class="mi">21L</span><span class="p">,</span> <span class="mi">37L</span><span class="p">));</span>
+</pre></div>
+</div>
+<p>After:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="n">std</span><span class="o">::</span><span class="n">vector</span><span class="o"><</span><span class="n">MyClass</span><span class="o">></span> <span class="n">v</span><span class="p">;</span>
+<span class="n">v</span><span class="p">.</span><span class="n">emplace_back</span><span class="p">(</span><span class="mi">21</span><span class="p">,</span> <span class="mi">37</span><span class="p">);</span>
+
+<span class="n">std</span><span class="o">::</span><span class="n">vector</span><span class="o"><</span><span class="n">std</span><span class="o">::</span><span class="n">pair</span><span class="o"><</span><span class="kt">int</span><span class="p">,</span> <span class="kt">int</span><span class="o">>></span> <span class="n">w</span><span class="p">;</span>
+<span class="n">w</span><span class="p">.</span><span class="n">emplace_back</span><span class="p">(</span><span class="mi">21</span><span class="p">,</span> <span class="mi">37</span><span class="p">);</span>
+<span class="n">w</span><span class="p">.</span><span class="n">emplace_back</span><span class="p">(</span><span class="mi">21L</span><span class="p">,</span> <span class="mi">37L</span><span class="p">);</span>
+</pre></div>
+</div>
+<p>By default, the check is able to remove unnecessary <code class="docutils literal notranslate"><span class="pre">std::make_pair</span></code> and
+<code class="docutils literal notranslate"><span class="pre">std::make_tuple</span></code> calls from <code class="docutils literal notranslate"><span class="pre">push_back</span></code> calls on containers of
+<code class="docutils literal notranslate"><span class="pre">std::pair</span></code> and <code class="docutils literal notranslate"><span class="pre">std::tuple</span></code>. Custom tuple-like types can be modified by
+the <a class="reference internal" href="#cmdoption-arg-tupletypes"><code class="xref std std-option docutils literal notranslate"><span class="pre">TupleTypes</span></code></a> option; custom make functions can be modified by the
+<a class="reference internal" href="#cmdoption-arg-tuplemakefunctions"><code class="xref std std-option docutils literal notranslate"><span class="pre">TupleMakeFunctions</span></code></a> option.</p>
+<p>The other situation is when we pass arguments that will be converted to a type
+inside a container.</p>
+<p>Before:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="n">std</span><span class="o">::</span><span class="n">vector</span><span class="o"><</span><span class="n">boost</span><span class="o">::</span><span class="n">optional</span><span class="o"><</span><span class="n">std</span><span class="o">::</span><span class="n">string</span><span class="o">></span> <span class="o">></span> <span class="n">v</span><span class="p">;</span>
+<span class="n">v</span><span class="p">.</span><span class="n">push_back</span><span class="p">(</span><span class="s">"abc"</span><span class="p">);</span>
+</pre></div>
+</div>
+<p>After:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="n">std</span><span class="o">::</span><span class="n">vector</span><span class="o"><</span><span class="n">boost</span><span class="o">::</span><span class="n">optional</span><span class="o"><</span><span class="n">std</span><span class="o">::</span><span class="n">string</span><span class="o">></span> <span class="o">></span> <span class="n">v</span><span class="p">;</span>
+<span class="n">v</span><span class="p">.</span><span class="n">emplace_back</span><span class="p">(</span><span class="s">"abc"</span><span class="p">);</span>
+</pre></div>
+</div>
+<p>In some cases the transformation would be valid, but the code wouldnât be
+exception safe. In this case the calls of <code class="docutils literal notranslate"><span class="pre">push_back</span></code> wonât be replaced.</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="n">std</span><span class="o">::</span><span class="n">vector</span><span class="o"><</span><span class="n">std</span><span class="o">::</span><span class="n">unique_ptr</span><span class="o"><</span><span class="kt">int</span><span class="o">>></span> <span class="n">v</span><span class="p">;</span>
+<span class="n">v</span><span class="p">.</span><span class="n">push_back</span><span class="p">(</span><span class="n">std</span><span class="o">::</span><span class="n">unique_ptr</span><span class="o"><</span><span class="kt">int</span><span class="o">></span><span class="p">(</span><span class="k">new</span> <span class="kt">int</span><span class="p">(</span><span class="mi">0</span><span class="p">)));</span>
+<span class="k">auto</span> <span class="o">*</span><span class="n">ptr</span> <span class="o">=</span> <span class="k">new</span> <span class="kt">int</span><span class="p">(</span><span class="mi">1</span><span class="p">);</span>
+<span class="n">v</span><span class="p">.</span><span class="n">push_back</span><span class="p">(</span><span class="n">std</span><span class="o">::</span><span class="n">unique_ptr</span><span class="o"><</span><span class="kt">int</span><span class="o">></span><span class="p">(</span><span class="n">ptr</span><span class="p">));</span>
+</pre></div>
+</div>
+<p>This is because replacing it with <code class="docutils literal notranslate"><span class="pre">emplace_back</span></code> could cause a leak of this
+pointer if <code class="docutils literal notranslate"><span class="pre">emplace_back</span></code> would throw exception before emplacement (e.g. not
+enough memory to add a new element).</p>
+<p>For more info read item 42 - âConsider emplacement instead of insertion.â of
+Scott Meyers âEffective Modern C++â.</p>
+<p>The default smart pointers that are considered are <code class="docutils literal notranslate"><span class="pre">std::unique_ptr</span></code>,
+<code class="docutils literal notranslate"><span class="pre">std::shared_ptr</span></code>, <code class="docutils literal notranslate"><span class="pre">std::auto_ptr</span></code>. To specify other smart pointers or
+other classes use the <a class="reference internal" href="#cmdoption-arg-smartpointers"><code class="xref std std-option docutils literal notranslate"><span class="pre">SmartPointers</span></code></a> option.</p>
+<p>Check also doesnât fire if any argument of the constructor call would be:</p>
+<blockquote>
+<div><ul class="simple">
+<li>a bit-field (bit-fields canât bind to rvalue/universal reference)</li>
+<li>a <code class="docutils literal notranslate"><span class="pre">new</span></code> expression (to avoid leak)</li>
+<li>if the argument would be converted via derived-to-base cast.</li>
+</ul>
+</div></blockquote>
+<p>This check requires C++11 or higher to run.</p>
+<div class="section" id="options">
+<h2>Options<a class="headerlink" href="#options" title="Permalink to this headline">¶</a></h2>
+<dl class="option">
+<dt id="cmdoption-arg-containerswithpushback">
+<code class="descname">ContainersWithPushBack</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-containerswithpushback" title="Permalink to this definition">¶</a></dt>
+<dd><p>Semicolon-separated list of class names of custom containers that support
+<code class="docutils literal notranslate"><span class="pre">push_back</span></code>.</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-ignoreimplicitconstructors">
+<code class="descname">IgnoreImplicitConstructors</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-ignoreimplicitconstructors" title="Permalink to this definition">¶</a></dt>
+<dd><p>When non-zero, the check will ignore implicitly constructed arguments of
+<code class="docutils literal notranslate"><span class="pre">push_back</span></code>, e.g.</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="n">std</span><span class="o">::</span><span class="n">vector</span><span class="o"><</span><span class="n">std</span><span class="o">::</span><span class="n">string</span><span class="o">></span> <span class="n">v</span><span class="p">;</span>
+<span class="n">v</span><span class="p">.</span><span class="n">push_back</span><span class="p">(</span><span class="s">"a"</span><span class="p">);</span> <span class="c1">// Ignored when IgnoreImplicitConstructors is ``1``.</span>
+</pre></div>
+</div>
+<p>Default is <code class="docutils literal notranslate"><span class="pre">0</span></code>.</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-smartpointers">
+<code class="descname">SmartPointers</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-smartpointers" title="Permalink to this definition">¶</a></dt>
+<dd><p>Semicolon-separated list of class names of custom smart pointers.</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-tupletypes">
+<code class="descname">TupleTypes</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-tupletypes" title="Permalink to this definition">¶</a></dt>
+<dd><p>Semicolon-separated list of <code class="docutils literal notranslate"><span class="pre">std::tuple</span></code>-like class names.</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-tuplemakefunctions">
+<code class="descname">TupleMakeFunctions</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-tuplemakefunctions" title="Permalink to this definition">¶</a></dt>
+<dd><p>Semicolon-separated list of <code class="docutils literal notranslate"><span class="pre">std::make_tuple</span></code>-like function names. Those
+function calls will be removed from <code class="docutils literal notranslate"><span class="pre">push_back</span></code> calls and turned into
+<code class="docutils literal notranslate"><span class="pre">emplace_back</span></code>.</p>
+</dd></dl>
+
+<div class="section" id="example">
+<h3>Example<a class="headerlink" href="#example" title="Permalink to this headline">¶</a></h3>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="n">std</span><span class="o">::</span><span class="n">vector</span><span class="o"><</span><span class="n">MyTuple</span><span class="o"><</span><span class="kt">int</span><span class="p">,</span> <span class="kt">bool</span><span class="p">,</span> <span class="kt">char</span><span class="o">>></span> <span class="n">x</span><span class="p">;</span>
+<span class="n">x</span><span class="p">.</span><span class="n">push_back</span><span class="p">(</span><span class="n">MakeMyTuple</span><span class="p">(</span><span class="mi">1</span><span class="p">,</span> <span class="nb">false</span><span class="p">,</span> <span class="sc">'x'</span><span class="p">));</span>
+</pre></div>
+</div>
+<p>transforms to:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="n">std</span><span class="o">::</span><span class="n">vector</span><span class="o"><</span><span class="n">MyTuple</span><span class="o"><</span><span class="kt">int</span><span class="p">,</span> <span class="kt">bool</span><span class="p">,</span> <span class="kt">char</span><span class="o">>></span> <span class="n">x</span><span class="p">;</span>
+<span class="n">x</span><span class="p">.</span><span class="n">emplace_back</span><span class="p">(</span><span class="mi">1</span><span class="p">,</span> <span class="nb">false</span><span class="p">,</span> <span class="sc">'x'</span><span class="p">);</span>
+</pre></div>
+</div>
+<p>when <a class="reference internal" href="#cmdoption-arg-tupletypes"><code class="xref std std-option docutils literal notranslate"><span class="pre">TupleTypes</span></code></a> is set to <code class="docutils literal notranslate"><span class="pre">MyTuple</span></code> and <a class="reference internal" href="#cmdoption-arg-tuplemakefunctions"><code class="xref std std-option docutils literal notranslate"><span class="pre">TupleMakeFunctions</span></code></a>
+is set to <code class="docutils literal notranslate"><span class="pre">MakeMyTuple</span></code>.</p>
+</div>
+</div>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="modernize-use-default-member-init.html">modernize-use-default-member-init</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="modernize-use-equals-default.html">modernize-use-equals-default</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-use-equals-default.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-use-equals-default.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-use-equals-default.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-use-equals-default.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,97 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>clang-tidy - modernize-use-equals-default — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="modernize-use-equals-delete" href="modernize-use-equals-delete.html" />
+ <link rel="prev" title="modernize-use-emplace" href="modernize-use-emplace.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - modernize-use-equals-default</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="modernize-use-emplace.html">modernize-use-emplace</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="modernize-use-equals-delete.html">modernize-use-equals-delete</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="modernize-use-equals-default">
+<h1>modernize-use-equals-default<a class="headerlink" href="#modernize-use-equals-default" title="Permalink to this headline">¶</a></h1>
+<p>This check replaces default bodies of special member functions with <code class="docutils literal notranslate"><span class="pre">=</span>
+<span class="pre">default;</span></code>. The explicitly defaulted function declarations enable more
+opportunities in optimization, because the compiler might treat explicitly
+defaulted functions as trivial.</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">struct</span> <span class="n">A</span> <span class="p">{</span>
+ <span class="n">A</span><span class="p">()</span> <span class="p">{}</span>
+ <span class="o">~</span><span class="n">A</span><span class="p">();</span>
+<span class="p">};</span>
+<span class="n">A</span><span class="o">::~</span><span class="n">A</span><span class="p">()</span> <span class="p">{}</span>
+
+<span class="c1">// becomes</span>
+
+<span class="k">struct</span> <span class="n">A</span> <span class="p">{</span>
+ <span class="n">A</span><span class="p">()</span> <span class="o">=</span> <span class="k">default</span><span class="p">;</span>
+ <span class="o">~</span><span class="n">A</span><span class="p">();</span>
+<span class="p">};</span>
+<span class="n">A</span><span class="o">::~</span><span class="n">A</span><span class="p">()</span> <span class="o">=</span> <span class="k">default</span><span class="p">;</span>
+</pre></div>
+</div>
+<div class="admonition note">
+<p class="first admonition-title">Note</p>
+<p class="last">Move-constructor and move-assignment operator are not supported yet.</p>
+</div>
+<div class="section" id="options">
+<h2>Options<a class="headerlink" href="#options" title="Permalink to this headline">¶</a></h2>
+<dl class="option">
+<dt id="cmdoption-arg-ignoremacros">
+<code class="descname">IgnoreMacros</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-ignoremacros" title="Permalink to this definition">¶</a></dt>
+<dd><p>If set to non-zero, the check will not give warnings inside macros. Default
+is <cite>1</cite>.</p>
+</dd></dl>
+
+</div>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="modernize-use-emplace.html">modernize-use-emplace</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="modernize-use-equals-delete.html">modernize-use-equals-delete</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-use-equals-delete.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-use-equals-delete.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-use-equals-delete.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-use-equals-delete.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,89 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>clang-tidy - modernize-use-equals-delete — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="modernize-use-nodiscard" href="modernize-use-nodiscard.html" />
+ <link rel="prev" title="modernize-use-equals-default" href="modernize-use-equals-default.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - modernize-use-equals-delete</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="modernize-use-equals-default.html">modernize-use-equals-default</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="modernize-use-nodiscard.html">modernize-use-nodiscard</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="modernize-use-equals-delete">
+<h1>modernize-use-equals-delete<a class="headerlink" href="#modernize-use-equals-delete" title="Permalink to this headline">¶</a></h1>
+<p>This check marks unimplemented private special member functions with <code class="docutils literal notranslate"><span class="pre">=</span> <span class="pre">delete</span></code>.
+To avoid false-positives, this check only applies in a translation unit that has
+all other member functions implemented.</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">struct</span> <span class="n">A</span> <span class="p">{</span>
+<span class="k">private</span><span class="o">:</span>
+ <span class="n">A</span><span class="p">(</span><span class="k">const</span> <span class="n">A</span><span class="o">&</span><span class="p">);</span>
+ <span class="n">A</span><span class="o">&</span> <span class="k">operator</span><span class="o">=</span><span class="p">(</span><span class="k">const</span> <span class="n">A</span><span class="o">&</span><span class="p">);</span>
+<span class="p">};</span>
+
+<span class="c1">// becomes</span>
+
+<span class="k">struct</span> <span class="n">A</span> <span class="p">{</span>
+<span class="k">private</span><span class="o">:</span>
+ <span class="n">A</span><span class="p">(</span><span class="k">const</span> <span class="n">A</span><span class="o">&</span><span class="p">)</span> <span class="o">=</span> <span class="k">delete</span><span class="p">;</span>
+ <span class="n">A</span><span class="o">&</span> <span class="k">operator</span><span class="o">=</span><span class="p">(</span><span class="k">const</span> <span class="n">A</span><span class="o">&</span><span class="p">)</span> <span class="o">=</span> <span class="k">delete</span><span class="p">;</span>
+<span class="p">};</span>
+</pre></div>
+</div>
+<dl class="option">
+<dt id="cmdoption-arg-ignoremacros">
+<code class="descname">IgnoreMacros</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-ignoremacros" title="Permalink to this definition">¶</a></dt>
+<dd><p>If this option is set to non-zero (default is <cite>1</cite>), the check will not warn
+about functions declared inside macros.</p>
+</dd></dl>
+
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="modernize-use-equals-default.html">modernize-use-equals-default</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="modernize-use-nodiscard.html">modernize-use-nodiscard</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-use-nodiscard.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-use-nodiscard.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-use-nodiscard.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-use-nodiscard.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,137 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>clang-tidy - modernize-use-nodiscard — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="modernize-use-noexcept" href="modernize-use-noexcept.html" />
+ <link rel="prev" title="modernize-use-equals-delete" href="modernize-use-equals-delete.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - modernize-use-nodiscard</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="modernize-use-equals-delete.html">modernize-use-equals-delete</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="modernize-use-noexcept.html">modernize-use-noexcept</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="modernize-use-nodiscard">
+<h1>modernize-use-nodiscard<a class="headerlink" href="#modernize-use-nodiscard" title="Permalink to this headline">¶</a></h1>
+<p>Adds <code class="docutils literal notranslate"><span class="pre">[[nodiscard]]</span></code> attributes (introduced in C++17) to member functions in
+order to highlight at compile time which return values should not be ignored.</p>
+<p>Member functions need to satisfy the following conditions to be considered by
+this check:</p>
+<blockquote>
+<div><ul class="simple">
+<li>no <code class="docutils literal notranslate"><span class="pre">[[nodiscard]]</span></code>, <code class="docutils literal notranslate"><span class="pre">[[noreturn]]</span></code>,
+<code class="docutils literal notranslate"><span class="pre">__attribute__((warn_unused_result))</span></code>,
+<code class="docutils literal notranslate"><span class="pre">[[clang::warn_unused_result]]</span></code> nor <code class="docutils literal notranslate"><span class="pre">[[gcc::warn_unused_result]]</span></code>
+attribute,</li>
+<li>non-void return type,</li>
+<li>non-template return types,</li>
+<li>const member function,</li>
+<li>non-variadic functions,</li>
+<li>no non-const reference parameters,</li>
+<li>no pointer parameters,</li>
+<li>no template parameters,</li>
+<li>no template function parameters,</li>
+<li>not be a member of a class with mutable member variables,</li>
+<li>no Lambdas,</li>
+<li>no conversion functions.</li>
+</ul>
+</div></blockquote>
+<p>Such functions have no means of altering any state or passing values other than
+via the return type. Unless the member functions are altering state via some
+external call (e.g. I/O).</p>
+<div class="section" id="example">
+<h2>Example<a class="headerlink" href="#example" title="Permalink to this headline">¶</a></h2>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="kt">bool</span> <span class="nf">empty</span><span class="p">()</span> <span class="k">const</span><span class="p">;</span>
+<span class="kt">bool</span> <span class="nf">empty</span><span class="p">(</span><span class="kt">int</span> <span class="n">i</span><span class="p">)</span> <span class="k">const</span><span class="p">;</span>
+</pre></div>
+</div>
+<p>transforms to:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="p">[[</span><span class="n">nodiscard</span><span class="p">]</span> <span class="kt">bool</span> <span class="n">empty</span><span class="p">()</span> <span class="k">const</span><span class="p">;</span>
+<span class="p">[[</span><span class="n">nodiscard</span><span class="p">]</span> <span class="kt">bool</span> <span class="n">empty</span><span class="p">(</span><span class="kt">int</span> <span class="n">i</span><span class="p">)</span> <span class="k">const</span><span class="p">;</span>
+</pre></div>
+</div>
+</div>
+<div class="section" id="options">
+<h2>Options<a class="headerlink" href="#options" title="Permalink to this headline">¶</a></h2>
+<dl class="option">
+<dt id="cmdoption-arg-replacementstring">
+<code class="descname">ReplacementString</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-replacementstring" title="Permalink to this definition">¶</a></dt>
+<dd><p>Specifies a macro to use instead of <code class="docutils literal notranslate"><span class="pre">[[nodiscard]]</span></code>. This is useful when
+maintaining source code that needs to compile with a pre-C++17 compiler.</p>
+</dd></dl>
+
+<div class="section" id="id1">
+<h3>Example<a class="headerlink" href="#id1" title="Permalink to this headline">¶</a></h3>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="kt">bool</span> <span class="nf">empty</span><span class="p">()</span> <span class="k">const</span><span class="p">;</span>
+<span class="kt">bool</span> <span class="nf">empty</span><span class="p">(</span><span class="kt">int</span> <span class="n">i</span><span class="p">)</span> <span class="k">const</span><span class="p">;</span>
+</pre></div>
+</div>
+<p>transforms to:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="n">NO_DISCARD</span> <span class="kt">bool</span> <span class="nf">empty</span><span class="p">()</span> <span class="k">const</span><span class="p">;</span>
+<span class="n">NO_DISCARD</span> <span class="kt">bool</span> <span class="nf">empty</span><span class="p">(</span><span class="kt">int</span> <span class="n">i</span><span class="p">)</span> <span class="k">const</span><span class="p">;</span>
+</pre></div>
+</div>
+<p>if the <a class="reference internal" href="modernize-use-noexcept.html#cmdoption-arg-replacementstring"><code class="xref std std-option docutils literal notranslate"><span class="pre">ReplacementString</span></code></a> option is set to <cite>NO_DISCARD</cite>.</p>
+<div class="admonition note">
+<p class="first admonition-title">Note</p>
+<p class="last">If the <a class="reference internal" href="modernize-use-noexcept.html#cmdoption-arg-replacementstring"><code class="xref std std-option docutils literal notranslate"><span class="pre">ReplacementString</span></code></a> is not a C++ attribute, but instead a
+macro, then that macro must be defined in scope or the fix-it will not be
+applied.</p>
+</div>
+<div class="admonition note">
+<p class="first admonition-title">Note</p>
+<p class="last">For alternative <code class="docutils literal notranslate"><span class="pre">__attribute__</span></code> syntax options to mark functions as
+<code class="docutils literal notranslate"><span class="pre">[[nodiscard]]</span></code> in non-c++17 source code.
+See <a class="reference external" href="https://clang.llvm.org/docs/AttributeReference.html#nodiscard-warn-unused-result">https://clang.llvm.org/docs/AttributeReference.html#nodiscard-warn-unused-result</a></p>
+</div>
+</div>
+</div>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="modernize-use-equals-delete.html">modernize-use-equals-delete</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="modernize-use-noexcept.html">modernize-use-noexcept</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-use-noexcept.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-use-noexcept.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-use-noexcept.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-use-noexcept.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,142 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>clang-tidy - modernize-use-noexcept — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="modernize-use-nullptr" href="modernize-use-nullptr.html" />
+ <link rel="prev" title="modernize-use-nodiscard" href="modernize-use-nodiscard.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - modernize-use-noexcept</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="modernize-use-nodiscard.html">modernize-use-nodiscard</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="modernize-use-nullptr.html">modernize-use-nullptr</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="modernize-use-noexcept">
+<h1>modernize-use-noexcept<a class="headerlink" href="#modernize-use-noexcept" title="Permalink to this headline">¶</a></h1>
+<p>This check replaces deprecated dynamic exception specifications with
+the appropriate noexcept specification (introduced in C++11). By
+default this check will replace <code class="docutils literal notranslate"><span class="pre">throw()</span></code> with <code class="docutils literal notranslate"><span class="pre">noexcept</span></code>,
+and <code class="docutils literal notranslate"><span class="pre">throw(<exception>[,...])</span></code> or <code class="docutils literal notranslate"><span class="pre">throw(...)</span></code> with
+<code class="docutils literal notranslate"><span class="pre">noexcept(false)</span></code>.</p>
+<div class="section" id="example">
+<h2>Example<a class="headerlink" href="#example" title="Permalink to this headline">¶</a></h2>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="kt">void</span> <span class="nf">foo</span><span class="p">()</span> <span class="k">throw</span><span class="p">();</span>
+ <span class="kt">void</span> <span class="nf">bar</span><span class="p">()</span> <span class="k">throw</span><span class="p">(</span><span class="kt">int</span><span class="p">)</span> <span class="p">{}</span>
+</pre></div>
+</div>
+<p>transforms to:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="kt">void</span> <span class="nf">foo</span><span class="p">()</span> <span class="k">noexcept</span><span class="p">;</span>
+ <span class="kt">void</span> <span class="nf">bar</span><span class="p">()</span> <span class="k">noexcept</span><span class="p">(</span><span class="nb">false</span><span class="p">)</span> <span class="p">{}</span>
+</pre></div>
+</div>
+</div>
+<div class="section" id="options">
+<h2>Options<a class="headerlink" href="#options" title="Permalink to this headline">¶</a></h2>
+<dl class="option">
+<dt id="cmdoption-arg-replacementstring">
+<code class="descname">ReplacementString</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-replacementstring" title="Permalink to this definition">¶</a></dt>
+<dd></dd></dl>
+
+<p>Users can use <a class="reference internal" href="#cmdoption-arg-replacementstring"><code class="xref std std-option docutils literal notranslate"><span class="pre">ReplacementString</span></code></a> to specify a macro to use
+instead of <code class="docutils literal notranslate"><span class="pre">noexcept</span></code>. This is useful when maintaining source code
+that uses custom exception specification marking other than
+<code class="docutils literal notranslate"><span class="pre">noexcept</span></code>. Fix-it hints will only be generated for non-throwing
+specifications.</p>
+<div class="section" id="id1">
+<h3>Example<a class="headerlink" href="#id1" title="Permalink to this headline">¶</a></h3>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="kt">void</span> <span class="nf">bar</span><span class="p">()</span> <span class="k">throw</span><span class="p">(</span><span class="kt">int</span><span class="p">);</span>
+<span class="kt">void</span> <span class="nf">foo</span><span class="p">()</span> <span class="k">throw</span><span class="p">();</span>
+</pre></div>
+</div>
+<p>transforms to:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="kt">void</span> <span class="nf">bar</span><span class="p">()</span> <span class="k">throw</span><span class="p">(</span><span class="kt">int</span><span class="p">);</span> <span class="c1">// No fix-it generated.</span>
+<span class="kt">void</span> <span class="nf">foo</span><span class="p">()</span> <span class="n">NOEXCEPT</span><span class="p">;</span>
+</pre></div>
+</div>
+<p>if the <a class="reference internal" href="#cmdoption-arg-replacementstring"><code class="xref std std-option docutils literal notranslate"><span class="pre">ReplacementString</span></code></a> option is set to <cite>NOEXCEPT</cite>.</p>
+<dl class="option">
+<dt id="cmdoption-arg-usenoexceptfalse">
+<code class="descname">UseNoexceptFalse</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-usenoexceptfalse" title="Permalink to this definition">¶</a></dt>
+<dd></dd></dl>
+
+<p>Enabled by default, disabling will generate fix-it hints that remove
+throwing dynamic exception specs, e.g., <code class="docutils literal notranslate"><span class="pre">throw(<something>)</span></code>,
+completely without providing a replacement text, except for
+destructors and delete operators that are <code class="docutils literal notranslate"><span class="pre">noexcept(true)</span></code> by
+default.</p>
+</div>
+<div class="section" id="id2">
+<h3>Example<a class="headerlink" href="#id2" title="Permalink to this headline">¶</a></h3>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="kt">void</span> <span class="nf">foo</span><span class="p">()</span> <span class="k">throw</span><span class="p">(</span><span class="kt">int</span><span class="p">)</span> <span class="p">{}</span>
+
+<span class="k">struct</span> <span class="n">bar</span> <span class="p">{</span>
+ <span class="kt">void</span> <span class="n">foobar</span><span class="p">()</span> <span class="k">throw</span><span class="p">(</span><span class="kt">int</span><span class="p">);</span>
+ <span class="kt">void</span> <span class="k">operator</span> <span class="nf">delete</span><span class="p">(</span><span class="kt">void</span> <span class="o">*</span><span class="n">ptr</span><span class="p">)</span> <span class="k">throw</span><span class="p">(</span><span class="kt">int</span><span class="p">);</span>
+ <span class="kt">void</span> <span class="k">operator</span> <span class="k">delete</span><span class="p">[](</span><span class="kt">void</span> <span class="o">*</span><span class="n">ptr</span><span class="p">)</span> <span class="k">throw</span><span class="p">(</span><span class="kt">int</span><span class="p">);</span>
+ <span class="o">~</span><span class="n">bar</span><span class="p">()</span> <span class="k">throw</span><span class="p">(</span><span class="kt">int</span><span class="p">);</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+<p>transforms to:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="kt">void</span> <span class="nf">foo</span><span class="p">()</span> <span class="p">{}</span>
+
+<span class="k">struct</span> <span class="n">bar</span> <span class="p">{</span>
+ <span class="kt">void</span> <span class="n">foobar</span><span class="p">();</span>
+ <span class="kt">void</span> <span class="k">operator</span> <span class="nf">delete</span><span class="p">(</span><span class="kt">void</span> <span class="o">*</span><span class="n">ptr</span><span class="p">)</span> <span class="k">noexcept</span><span class="p">(</span><span class="nb">false</span><span class="p">);</span>
+ <span class="kt">void</span> <span class="k">operator</span> <span class="k">delete</span><span class="p">[](</span><span class="kt">void</span> <span class="o">*</span><span class="n">ptr</span><span class="p">)</span> <span class="k">noexcept</span><span class="p">(</span><span class="nb">false</span><span class="p">);</span>
+ <span class="o">~</span><span class="n">bar</span><span class="p">()</span> <span class="k">noexcept</span><span class="p">(</span><span class="nb">false</span><span class="p">);</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+<p>if the <a class="reference internal" href="#cmdoption-arg-usenoexceptfalse"><code class="xref std std-option docutils literal notranslate"><span class="pre">UseNoexceptFalse</span></code></a> option is set to <cite>0</cite>.</p>
+</div>
+</div>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="modernize-use-nodiscard.html">modernize-use-nodiscard</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="modernize-use-nullptr.html">modernize-use-nullptr</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-use-nullptr.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-use-nullptr.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-use-nullptr.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-use-nullptr.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,120 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>clang-tidy - modernize-use-nullptr — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="modernize-use-override" href="modernize-use-override.html" />
+ <link rel="prev" title="modernize-use-noexcept" href="modernize-use-noexcept.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - modernize-use-nullptr</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="modernize-use-noexcept.html">modernize-use-noexcept</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="modernize-use-override.html">modernize-use-override</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="modernize-use-nullptr">
+<h1>modernize-use-nullptr<a class="headerlink" href="#modernize-use-nullptr" title="Permalink to this headline">¶</a></h1>
+<p>The check converts the usage of null pointer constants (eg. <code class="docutils literal notranslate"><span class="pre">NULL</span></code>, <code class="docutils literal notranslate"><span class="pre">0</span></code>)
+to use the new C++11 <code class="docutils literal notranslate"><span class="pre">nullptr</span></code> keyword.</p>
+<div class="section" id="example">
+<h2>Example<a class="headerlink" href="#example" title="Permalink to this headline">¶</a></h2>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="kt">void</span> <span class="nf">assignment</span><span class="p">()</span> <span class="p">{</span>
+ <span class="kt">char</span> <span class="o">*</span><span class="n">a</span> <span class="o">=</span> <span class="nb">NULL</span><span class="p">;</span>
+ <span class="kt">char</span> <span class="o">*</span><span class="n">b</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span>
+ <span class="kt">char</span> <span class="n">c</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span>
+<span class="p">}</span>
+
+<span class="kt">int</span> <span class="o">*</span><span class="nf">ret_ptr</span><span class="p">()</span> <span class="p">{</span>
+ <span class="k">return</span> <span class="mi">0</span><span class="p">;</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+<p>transforms to:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="kt">void</span> <span class="nf">assignment</span><span class="p">()</span> <span class="p">{</span>
+ <span class="kt">char</span> <span class="o">*</span><span class="n">a</span> <span class="o">=</span> <span class="k">nullptr</span><span class="p">;</span>
+ <span class="kt">char</span> <span class="o">*</span><span class="n">b</span> <span class="o">=</span> <span class="k">nullptr</span><span class="p">;</span>
+ <span class="kt">char</span> <span class="n">c</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span>
+<span class="p">}</span>
+
+<span class="kt">int</span> <span class="o">*</span><span class="nf">ret_ptr</span><span class="p">()</span> <span class="p">{</span>
+ <span class="k">return</span> <span class="k">nullptr</span><span class="p">;</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+</div>
+<div class="section" id="options">
+<h2>Options<a class="headerlink" href="#options" title="Permalink to this headline">¶</a></h2>
+<dl class="option">
+<dt id="cmdoption-arg-nullmacros">
+<code class="descname">NullMacros</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-nullmacros" title="Permalink to this definition">¶</a></dt>
+<dd><p>Comma-separated list of macro names that will be transformed along with
+<code class="docutils literal notranslate"><span class="pre">NULL</span></code>. By default this check will only replace the <code class="docutils literal notranslate"><span class="pre">NULL</span></code> macro and will
+skip any similar user-defined macros.</p>
+</dd></dl>
+
+<div class="section" id="id1">
+<h3>Example<a class="headerlink" href="#id1" title="Permalink to this headline">¶</a></h3>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="cp">#define MY_NULL (void*)0</span>
+<span class="kt">void</span> <span class="nf">assignment</span><span class="p">()</span> <span class="p">{</span>
+ <span class="kt">void</span> <span class="o">*</span><span class="n">p</span> <span class="o">=</span> <span class="n">MY_NULL</span><span class="p">;</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+<p>transforms to:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="cp">#define MY_NULL NULL</span>
+<span class="kt">void</span> <span class="nf">assignment</span><span class="p">()</span> <span class="p">{</span>
+ <span class="kt">int</span> <span class="o">*</span><span class="n">p</span> <span class="o">=</span> <span class="k">nullptr</span><span class="p">;</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+<p>if the <a class="reference internal" href="#cmdoption-arg-nullmacros"><code class="xref std std-option docutils literal notranslate"><span class="pre">NullMacros</span></code></a> option is set to <code class="docutils literal notranslate"><span class="pre">MY_NULL</span></code>.</p>
+</div>
+</div>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="modernize-use-noexcept.html">modernize-use-noexcept</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="modernize-use-override.html">modernize-use-override</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-use-override.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-use-override.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-use-override.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-use-override.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,109 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>clang-tidy - modernize-use-override — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="modernize-use-trailing-return-type" href="modernize-use-trailing-return-type.html" />
+ <link rel="prev" title="modernize-use-nullptr" href="modernize-use-nullptr.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - modernize-use-override</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="modernize-use-nullptr.html">modernize-use-nullptr</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="modernize-use-trailing-return-type.html">modernize-use-trailing-return-type</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="modernize-use-override">
+<h1>modernize-use-override<a class="headerlink" href="#modernize-use-override" title="Permalink to this headline">¶</a></h1>
+<p>Adds <code class="docutils literal notranslate"><span class="pre">override</span></code> (introduced in C++11) to overridden virtual functions and
+removes <code class="docutils literal notranslate"><span class="pre">virtual</span></code> from those functions as it is not required.</p>
+<p><code class="docutils literal notranslate"><span class="pre">virtual</span></code> on non base class implementations was used to help indiciate to the
+user that a function was virtual. C++ compilers did not use the presence of
+this to signify an overriden function.</p>
+<p>In C++ 11 <code class="docutils literal notranslate"><span class="pre">override</span></code> and <code class="docutils literal notranslate"><span class="pre">final</span></code> keywords were introduced to allow
+overridden functions to be marked appropriately. Their presence allows
+compilers to verify that an overridden function correctly overrides a base
+class implementation.</p>
+<p>This can be useful as compilers can generate a compile time error when:</p>
+<blockquote>
+<div><ul class="simple">
+<li>The base class implementation function signature changes.</li>
+<li>The user has not created the override with the correct signature.</li>
+</ul>
+</div></blockquote>
+<div class="section" id="options">
+<h2>Options<a class="headerlink" href="#options" title="Permalink to this headline">¶</a></h2>
+<dl class="option">
+<dt id="cmdoption-arg-ignoredestructors">
+<code class="descname">IgnoreDestructors</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-ignoredestructors" title="Permalink to this definition">¶</a></dt>
+<dd><p>If set to non-zero, this check will not diagnose destructors. Default is <cite>0</cite>.</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-overridespelling">
+<code class="descname">OverrideSpelling</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-overridespelling" title="Permalink to this definition">¶</a></dt>
+<dd><p>Specifies a macro to use instead of <code class="docutils literal notranslate"><span class="pre">override</span></code>. This is useful when
+maintaining source code that also needs to compile with a pre-C++11
+compiler.</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-finalspelling">
+<code class="descname">FinalSpelling</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-finalspelling" title="Permalink to this definition">¶</a></dt>
+<dd><p>Specifies a macro to use instead of <code class="docutils literal notranslate"><span class="pre">final</span></code>. This is useful when
+maintaining source code that also needs to compile with a pre-C++11
+compiler.</p>
+</dd></dl>
+
+<div class="admonition note">
+<p class="first admonition-title">Note</p>
+<p class="last">For more information on the use of <code class="docutils literal notranslate"><span class="pre">override</span></code> see <a class="reference external" href="https://en.cppreference.com/w/cpp/language/override">https://en.cppreference.com/w/cpp/language/override</a></p>
+</div>
+</div>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="modernize-use-nullptr.html">modernize-use-nullptr</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="modernize-use-trailing-return-type.html">modernize-use-trailing-return-type</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-use-trailing-return-type.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-use-trailing-return-type.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-use-trailing-return-type.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-use-trailing-return-type.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,117 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>clang-tidy - modernize-use-trailing-return-type — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="modernize-use-transparent-functors" href="modernize-use-transparent-functors.html" />
+ <link rel="prev" title="modernize-use-override" href="modernize-use-override.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - modernize-use-trailing-return-type</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="modernize-use-override.html">modernize-use-override</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="modernize-use-transparent-functors.html">modernize-use-transparent-functors</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="modernize-use-trailing-return-type">
+<h1>modernize-use-trailing-return-type<a class="headerlink" href="#modernize-use-trailing-return-type" title="Permalink to this headline">¶</a></h1>
+<p>Rewrites function signatures to use a trailing return type
+(introduced in C++11). This transformation is purely stylistic.
+The return type before the function name is replaced by <code class="docutils literal notranslate"><span class="pre">auto</span></code>
+and inserted after the function parameter list (and qualifiers).</p>
+<div class="section" id="example">
+<h2>Example<a class="headerlink" href="#example" title="Permalink to this headline">¶</a></h2>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="kt">int</span> <span class="nf">f1</span><span class="p">();</span>
+<span class="kr">inline</span> <span class="kt">int</span> <span class="nf">f2</span><span class="p">(</span><span class="kt">int</span> <span class="n">arg</span><span class="p">)</span> <span class="k">noexcept</span><span class="p">;</span>
+<span class="k">virtual</span> <span class="kt">float</span> <span class="nf">f3</span><span class="p">()</span> <span class="k">const</span> <span class="o">&&</span> <span class="o">=</span> <span class="k">delete</span><span class="p">;</span>
+</pre></div>
+</div>
+<p>transforms to:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">auto</span> <span class="nf">f1</span><span class="p">()</span> <span class="o">-></span> <span class="kt">int</span><span class="p">;</span>
+<span class="kr">inline</span> <span class="k">auto</span> <span class="nf">f2</span><span class="p">(</span><span class="kt">int</span> <span class="n">arg</span><span class="p">)</span> <span class="o">-></span> <span class="kt">int</span> <span class="k">noexcept</span><span class="p">;</span>
+<span class="k">virtual</span> <span class="k">auto</span> <span class="nf">f3</span><span class="p">()</span> <span class="k">const</span> <span class="o">&&</span> <span class="o">-></span> <span class="kt">float</span> <span class="o">=</span> <span class="k">delete</span><span class="p">;</span>
+</pre></div>
+</div>
+</div>
+<div class="section" id="known-limitations">
+<h2>Known Limitations<a class="headerlink" href="#known-limitations" title="Permalink to this headline">¶</a></h2>
+<p>The following categories of return types cannot be rewritten currently:
+* function pointers
+* member function pointers
+* member pointers
+* decltype, when it is the top level expression</p>
+<p>Unqualified names in the return type might erroneously refer to different entities after the rewrite.
+Preventing such errors requires a full lookup of all unqualified names present in the return type in the scope of the trailing return type location.
+This location includes e.g. function parameter names and members of the enclosing class (including all inherited classes).
+Such a lookup is currently not implemented.</p>
+<p>Given the following piece of code</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">struct</span> <span class="n">Object</span> <span class="p">{</span> <span class="kt">long</span> <span class="kt">long</span> <span class="n">value</span><span class="p">;</span> <span class="p">};</span>
+<span class="n">Object</span> <span class="nf">f</span><span class="p">(</span><span class="kt">unsigned</span> <span class="n">Object</span><span class="p">)</span> <span class="p">{</span> <span class="k">return</span> <span class="p">{</span><span class="n">Object</span> <span class="o">*</span> <span class="mi">2</span><span class="p">};</span> <span class="p">}</span>
+<span class="k">class</span> <span class="nc">CC</span> <span class="p">{</span>
+ <span class="kt">int</span> <span class="n">Object</span><span class="p">;</span>
+ <span class="k">struct</span> <span class="n">Object</span> <span class="nf">m</span><span class="p">();</span>
+<span class="p">};</span>
+<span class="n">Object</span> <span class="n">CC</span><span class="o">::</span><span class="n">m</span><span class="p">()</span> <span class="p">{</span> <span class="k">return</span> <span class="p">{</span><span class="mi">0</span><span class="p">};</span> <span class="p">}</span>
+</pre></div>
+</div>
+<p>a careless rewrite would produce the following output:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">struct</span> <span class="n">Object</span> <span class="p">{</span> <span class="kt">long</span> <span class="kt">long</span> <span class="n">value</span><span class="p">;</span> <span class="p">};</span>
+<span class="k">auto</span> <span class="nf">f</span><span class="p">(</span><span class="kt">unsigned</span> <span class="n">Object</span><span class="p">)</span> <span class="o">-></span> <span class="n">Object</span> <span class="p">{</span> <span class="k">return</span> <span class="p">{</span><span class="n">Object</span> <span class="o">*</span> <span class="mi">2</span><span class="p">};</span> <span class="p">}</span> <span class="c1">// error</span>
+<span class="k">class</span> <span class="nc">CC</span> <span class="p">{</span>
+ <span class="kt">int</span> <span class="n">Object</span><span class="p">;</span>
+ <span class="k">auto</span> <span class="nf">m</span><span class="p">()</span> <span class="o">-></span> <span class="k">struct</span> <span class="n">Object</span><span class="p">;</span>
+<span class="p">};</span>
+<span class="k">auto</span> <span class="n">CC</span><span class="o">::</span><span class="n">m</span><span class="p">()</span> <span class="o">-></span> <span class="n">Object</span> <span class="p">{</span> <span class="k">return</span> <span class="p">{</span><span class="mi">0</span><span class="p">};</span> <span class="p">}</span> <span class="c1">// error</span>
+</pre></div>
+</div>
+<p>This code fails to compile because the Object in the context of f refers to the equally named function parameter.
+Similarly, the Object in the context of m refers to the equally named class member.
+The check can currently only detect a clash with a function parameter name.</p>
+</div>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="modernize-use-override.html">modernize-use-override</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="modernize-use-transparent-functors.html">modernize-use-transparent-functors</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-use-transparent-functors.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-use-transparent-functors.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-use-transparent-functors.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-use-transparent-functors.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,96 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>clang-tidy - modernize-use-transparent-functors — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="modernize-use-uncaught-exceptions" href="modernize-use-uncaught-exceptions.html" />
+ <link rel="prev" title="modernize-use-trailing-return-type" href="modernize-use-trailing-return-type.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - modernize-use-transparent-functors</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="modernize-use-trailing-return-type.html">modernize-use-trailing-return-type</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="modernize-use-uncaught-exceptions.html">modernize-use-uncaught-exceptions</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="modernize-use-transparent-functors">
+<h1>modernize-use-transparent-functors<a class="headerlink" href="#modernize-use-transparent-functors" title="Permalink to this headline">¶</a></h1>
+<p>Prefer transparent functors to non-transparent ones. When using transparent
+functors, the type does not need to be repeated. The code is easier to read,
+maintain and less prone to errors. It is not possible to introduce unwanted
+conversions.</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="c1">// Non-transparent functor</span>
+<span class="n">std</span><span class="o">::</span><span class="n">map</span><span class="o"><</span><span class="kt">int</span><span class="p">,</span> <span class="n">std</span><span class="o">::</span><span class="n">string</span><span class="p">,</span> <span class="n">std</span><span class="o">::</span><span class="n">greater</span><span class="o"><</span><span class="kt">int</span><span class="o">>></span> <span class="n">s</span><span class="p">;</span>
+
+<span class="c1">// Transparent functor.</span>
+<span class="n">std</span><span class="o">::</span><span class="n">map</span><span class="o"><</span><span class="kt">int</span><span class="p">,</span> <span class="n">std</span><span class="o">::</span><span class="n">string</span><span class="p">,</span> <span class="n">std</span><span class="o">::</span><span class="n">greater</span><span class="o"><>></span> <span class="n">s</span><span class="p">;</span>
+
+<span class="c1">// Non-transparent functor</span>
+<span class="k">using</span> <span class="n">MyFunctor</span> <span class="o">=</span> <span class="n">std</span><span class="o">::</span><span class="n">less</span><span class="o"><</span><span class="n">MyType</span><span class="o">></span><span class="p">;</span>
+</pre></div>
+</div>
+<p>It is not always a safe transformation though. The following case will be
+untouched to preserve the semantics.</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="c1">// Non-transparent functor</span>
+<span class="n">std</span><span class="o">::</span><span class="n">map</span><span class="o"><</span><span class="k">const</span> <span class="kt">char</span> <span class="o">*</span><span class="p">,</span> <span class="n">std</span><span class="o">::</span><span class="n">string</span><span class="p">,</span> <span class="n">std</span><span class="o">::</span><span class="n">greater</span><span class="o"><</span><span class="n">std</span><span class="o">::</span><span class="n">string</span><span class="o">>></span> <span class="n">s</span><span class="p">;</span>
+</pre></div>
+</div>
+<div class="section" id="options">
+<h2>Options<a class="headerlink" href="#options" title="Permalink to this headline">¶</a></h2>
+<dl class="option">
+<dt id="cmdoption-arg-safemode">
+<code class="descname">SafeMode</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-safemode" title="Permalink to this definition">¶</a></dt>
+<dd><p>If the option is set to non-zero, the check will not diagnose cases where
+using a transparent functor cannot be guaranteed to produce identical results
+as the original code. The default value for this option is <cite>0</cite>.</p>
+</dd></dl>
+
+<p>This check requires using C++14 or higher to run.</p>
+</div>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="modernize-use-trailing-return-type.html">modernize-use-trailing-return-type</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="modernize-use-uncaught-exceptions.html">modernize-use-uncaught-exceptions</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-use-uncaught-exceptions.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-use-uncaught-exceptions.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-use-uncaught-exceptions.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-use-uncaught-exceptions.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,119 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>clang-tidy - modernize-use-uncaught-exceptions — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="modernize-use-using" href="modernize-use-using.html" />
+ <link rel="prev" title="modernize-use-transparent-functors" href="modernize-use-transparent-functors.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - modernize-use-uncaught-exceptions</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="modernize-use-transparent-functors.html">modernize-use-transparent-functors</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="modernize-use-using.html">modernize-use-using</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="modernize-use-uncaught-exceptions">
+<h1>modernize-use-uncaught-exceptions<a class="headerlink" href="#modernize-use-uncaught-exceptions" title="Permalink to this headline">¶</a></h1>
+<p>This check will warn on calls to <code class="docutils literal notranslate"><span class="pre">std::uncaught_exception</span></code> and replace them
+with calls to <code class="docutils literal notranslate"><span class="pre">std::uncaught_exceptions</span></code>, since <code class="docutils literal notranslate"><span class="pre">std::uncaught_exception</span></code>
+was deprecated in C++17.</p>
+<p>Below are a few examples of what kind of occurrences will be found and what
+they will be replaced with.</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="cp">#define MACRO1 std::uncaught_exception</span>
+<span class="cp">#define MACRO2 std::uncaught_exception</span>
+
+<span class="kt">int</span> <span class="nf">uncaught_exception</span><span class="p">()</span> <span class="p">{</span>
+ <span class="k">return</span> <span class="mi">0</span><span class="p">;</span>
+<span class="p">}</span>
+
+<span class="kt">int</span> <span class="nf">main</span><span class="p">()</span> <span class="p">{</span>
+ <span class="kt">int</span> <span class="n">res</span><span class="p">;</span>
+
+ <span class="n">res</span> <span class="o">=</span> <span class="n">uncaught_exception</span><span class="p">();</span>
+ <span class="c1">// No warning, since it is not the deprecated function from namespace std</span>
+
+ <span class="n">res</span> <span class="o">=</span> <span class="n">MACRO2</span><span class="p">();</span>
+ <span class="c1">// Warning, but will not be replaced</span>
+
+ <span class="n">res</span> <span class="o">=</span> <span class="n">std</span><span class="o">::</span><span class="n">uncaught_exception</span><span class="p">();</span>
+ <span class="c1">// Warning and replaced</span>
+
+ <span class="k">using</span> <span class="n">std</span><span class="o">::</span><span class="n">uncaught_exception</span><span class="p">;</span>
+ <span class="c1">// Warning and replaced</span>
+
+ <span class="n">res</span> <span class="o">=</span> <span class="n">uncaught_exception</span><span class="p">();</span>
+ <span class="c1">// Warning and replaced</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+<p>After applying the fixes the code will look like the following:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="cp">#define MACRO1 std::uncaught_exception</span>
+<span class="cp">#define MACRO2 std::uncaught_exception</span>
+
+<span class="kt">int</span> <span class="nf">uncaught_exception</span><span class="p">()</span> <span class="p">{</span>
+ <span class="k">return</span> <span class="mi">0</span><span class="p">;</span>
+<span class="p">}</span>
+
+<span class="kt">int</span> <span class="nf">main</span><span class="p">()</span> <span class="p">{</span>
+ <span class="kt">int</span> <span class="n">res</span><span class="p">;</span>
+
+ <span class="n">res</span> <span class="o">=</span> <span class="n">uncaught_exception</span><span class="p">();</span>
+
+ <span class="n">res</span> <span class="o">=</span> <span class="n">MACRO2</span><span class="p">();</span>
+
+ <span class="n">res</span> <span class="o">=</span> <span class="n">std</span><span class="o">::</span><span class="n">uncaught_exceptions</span><span class="p">();</span>
+
+ <span class="k">using</span> <span class="n">std</span><span class="o">::</span><span class="n">uncaught_exceptions</span><span class="p">;</span>
+
+ <span class="n">res</span> <span class="o">=</span> <span class="n">uncaught_exceptions</span><span class="p">();</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="modernize-use-transparent-functors.html">modernize-use-transparent-functors</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="modernize-use-using.html">modernize-use-using</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-use-using.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-use-using.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-use-using.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/modernize-use-using.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,90 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>clang-tidy - modernize-use-using — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="mpi-buffer-deref" href="mpi-buffer-deref.html" />
+ <link rel="prev" title="modernize-use-uncaught-exceptions" href="modernize-use-uncaught-exceptions.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - modernize-use-using</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="modernize-use-uncaught-exceptions.html">modernize-use-uncaught-exceptions</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="mpi-buffer-deref.html">mpi-buffer-deref</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="modernize-use-using">
+<h1>modernize-use-using<a class="headerlink" href="#modernize-use-using" title="Permalink to this headline">¶</a></h1>
+<p>The check converts the usage of <code class="docutils literal notranslate"><span class="pre">typedef</span></code> with <code class="docutils literal notranslate"><span class="pre">using</span></code> keyword.</p>
+<p>Before:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">typedef</span> <span class="kt">int</span> <span class="n">variable</span><span class="p">;</span>
+
+<span class="k">class</span> <span class="nc">Class</span><span class="p">{};</span>
+<span class="k">typedef</span> <span class="nf">void</span> <span class="p">(</span><span class="n">Class</span><span class="o">::*</span> <span class="n">MyPtrType</span><span class="p">)()</span> <span class="k">const</span><span class="p">;</span>
+</pre></div>
+</div>
+<p>After:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">using</span> <span class="n">variable</span> <span class="o">=</span> <span class="kt">int</span><span class="p">;</span>
+
+<span class="k">class</span> <span class="nc">Class</span><span class="p">{};</span>
+<span class="k">using</span> <span class="n">MyPtrType</span> <span class="o">=</span> <span class="kt">void</span> <span class="p">(</span><span class="n">Class</span><span class="o">::*</span><span class="p">)()</span> <span class="k">const</span><span class="p">;</span>
+</pre></div>
+</div>
+<p>This check requires using C++11 or higher to run.</p>
+<div class="section" id="options">
+<h2>Options<a class="headerlink" href="#options" title="Permalink to this headline">¶</a></h2>
+<dl class="option">
+<dt id="cmdoption-arg-ignoremacros">
+<code class="descname">IgnoreMacros</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-ignoremacros" title="Permalink to this definition">¶</a></dt>
+<dd><p>If set to non-zero, the check will not give warnings inside macros. Default
+is <cite>1</cite>.</p>
+</dd></dl>
+
+</div>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="modernize-use-uncaught-exceptions.html">modernize-use-uncaught-exceptions</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="mpi-buffer-deref.html">mpi-buffer-deref</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/mpi-buffer-deref.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/mpi-buffer-deref.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/mpi-buffer-deref.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/mpi-buffer-deref.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,83 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>clang-tidy - mpi-buffer-deref — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="mpi-type-mismatch" href="mpi-type-mismatch.html" />
+ <link rel="prev" title="modernize-use-using" href="modernize-use-using.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - mpi-buffer-deref</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="modernize-use-using.html">modernize-use-using</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="mpi-type-mismatch.html">mpi-type-mismatch</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="mpi-buffer-deref">
+<h1>mpi-buffer-deref<a class="headerlink" href="#mpi-buffer-deref" title="Permalink to this headline">¶</a></h1>
+<p>This check verifies if a buffer passed to an MPI (Message Passing Interface)
+function is sufficiently dereferenced. Buffers should be passed as a single
+pointer or array. As MPI function signatures specify <code class="docutils literal notranslate"><span class="pre">void</span> <span class="pre">*</span></code> for their buffer
+types, insufficiently dereferenced buffers can be passed, like for example as
+double pointers or multidimensional arrays, without a compiler warning emitted.</p>
+<p>Examples:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="c1">// A double pointer is passed to the MPI function.</span>
+<span class="kt">char</span> <span class="o">*</span><span class="n">buf</span><span class="p">;</span>
+<span class="n">MPI_Send</span><span class="p">(</span><span class="o">&</span><span class="n">buf</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="n">MPI_CHAR</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="n">MPI_COMM_WORLD</span><span class="p">);</span>
+
+<span class="c1">// A multidimensional array is passed to the MPI function.</span>
+<span class="kt">short</span> <span class="n">buf</span><span class="p">[</span><span class="mi">1</span><span class="p">][</span><span class="mi">1</span><span class="p">];</span>
+<span class="n">MPI_Send</span><span class="p">(</span><span class="n">buf</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="n">MPI_SHORT</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="n">MPI_COMM_WORLD</span><span class="p">);</span>
+
+<span class="c1">// A pointer to an array is passed to the MPI function.</span>
+<span class="kt">short</span> <span class="o">*</span><span class="n">buf</span><span class="p">[</span><span class="mi">1</span><span class="p">];</span>
+<span class="n">MPI_Send</span><span class="p">(</span><span class="n">buf</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="n">MPI_SHORT</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="n">MPI_COMM_WORLD</span><span class="p">);</span>
+</pre></div>
+</div>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="modernize-use-using.html">modernize-use-using</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="mpi-type-mismatch.html">mpi-type-mismatch</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/mpi-type-mismatch.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/mpi-type-mismatch.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/mpi-type-mismatch.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/mpi-type-mismatch.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,78 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>clang-tidy - mpi-type-mismatch — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="objc-avoid-nserror-init" href="objc-avoid-nserror-init.html" />
+ <link rel="prev" title="mpi-buffer-deref" href="mpi-buffer-deref.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - mpi-type-mismatch</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="mpi-buffer-deref.html">mpi-buffer-deref</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="objc-avoid-nserror-init.html">objc-avoid-nserror-init</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="mpi-type-mismatch">
+<h1>mpi-type-mismatch<a class="headerlink" href="#mpi-type-mismatch" title="Permalink to this headline">¶</a></h1>
+<p>This check verifies if buffer type and MPI (Message Passing Interface) datatype
+pairs match for used MPI functions. All MPI datatypes defined by the MPI
+standard (3.1) are verified by this check. User defined typedefs, custom MPI
+datatypes and null pointer constants are skipped, in the course of verification.</p>
+<p>Example:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="c1">// In this case, the buffer type matches MPI datatype.</span>
+<span class="kt">char</span> <span class="n">buf</span><span class="p">;</span>
+<span class="n">MPI_Send</span><span class="p">(</span><span class="o">&</span><span class="n">buf</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="n">MPI_CHAR</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="n">MPI_COMM_WORLD</span><span class="p">);</span>
+
+<span class="c1">// In the following case, the buffer type does not match MPI datatype.</span>
+<span class="kt">int</span> <span class="n">buf</span><span class="p">;</span>
+<span class="n">MPI_Send</span><span class="p">(</span><span class="o">&</span><span class="n">buf</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="n">MPI_CHAR</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="n">MPI_COMM_WORLD</span><span class="p">);</span>
+</pre></div>
+</div>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="mpi-buffer-deref.html">mpi-buffer-deref</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="objc-avoid-nserror-init.html">objc-avoid-nserror-init</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/objc-avoid-nserror-init.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/objc-avoid-nserror-init.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/objc-avoid-nserror-init.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/objc-avoid-nserror-init.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,70 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>clang-tidy - objc-avoid-nserror-init — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="objc-avoid-spinlock" href="objc-avoid-spinlock.html" />
+ <link rel="prev" title="mpi-type-mismatch" href="mpi-type-mismatch.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - objc-avoid-nserror-init</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="mpi-type-mismatch.html">mpi-type-mismatch</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="objc-avoid-spinlock.html">objc-avoid-spinlock</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="objc-avoid-nserror-init">
+<h1>objc-avoid-nserror-init<a class="headerlink" href="#objc-avoid-nserror-init" title="Permalink to this headline">¶</a></h1>
+<p>Finds improper initialization of <code class="docutils literal notranslate"><span class="pre">NSError</span></code> objects.</p>
+<p>According to Apple developer document, we should always use factory method
+<code class="docutils literal notranslate"><span class="pre">errorWithDomain:code:userInfo:</span></code> to create new NSError objects instead
+of <code class="docutils literal notranslate"><span class="pre">[NSError</span> <span class="pre">alloc]</span> <span class="pre">init]</span></code>. Otherwise it will lead to a warning message
+during runtime.</p>
+<p>The corresponding information about <code class="docutils literal notranslate"><span class="pre">NSError</span></code> creation: <a class="reference external" href="https://developer.apple.com/library/content/documentation/Cocoa/Conceptual/ErrorHandlingCocoa/CreateCustomizeNSError/CreateCustomizeNSError.html">https://developer.apple.com/library/content/documentation/Cocoa/Conceptual/ErrorHandlingCocoa/CreateCustomizeNSError/CreateCustomizeNSError.html</a></p>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="mpi-type-mismatch.html">mpi-type-mismatch</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="objc-avoid-spinlock.html">objc-avoid-spinlock</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/objc-avoid-spinlock.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/objc-avoid-spinlock.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/objc-avoid-spinlock.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/objc-avoid-spinlock.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,73 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>clang-tidy - objc-avoid-spinlock — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="objc-forbidden-subclassing" href="objc-forbidden-subclassing.html" />
+ <link rel="prev" title="objc-avoid-nserror-init" href="objc-avoid-nserror-init.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - objc-avoid-spinlock</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="objc-avoid-nserror-init.html">objc-avoid-nserror-init</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="objc-forbidden-subclassing.html">objc-forbidden-subclassing</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="objc-avoid-spinlock">
+<h1>objc-avoid-spinlock<a class="headerlink" href="#objc-avoid-spinlock" title="Permalink to this headline">¶</a></h1>
+<p>Finds usages of <code class="docutils literal notranslate"><span class="pre">OSSpinlock</span></code>, which is deprecated due to potential livelock
+problems.</p>
+<p>This check will detect following function invocations:</p>
+<ul class="simple">
+<li><code class="docutils literal notranslate"><span class="pre">OSSpinlockLock</span></code></li>
+<li><code class="docutils literal notranslate"><span class="pre">OSSpinlockTry</span></code></li>
+<li><code class="docutils literal notranslate"><span class="pre">OSSpinlockUnlock</span></code></li>
+</ul>
+<p>The corresponding information about the problem of <code class="docutils literal notranslate"><span class="pre">OSSpinlock</span></code>: <a class="reference external" href="https://blog.postmates.com/why-spinlocks-are-bad-on-ios-b69fc5221058">https://blog.postmates.com/why-spinlocks-are-bad-on-ios-b69fc5221058</a></p>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="objc-avoid-nserror-init.html">objc-avoid-nserror-init</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="objc-forbidden-subclassing.html">objc-forbidden-subclassing</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/objc-forbidden-subclassing.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/objc-forbidden-subclassing.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/objc-forbidden-subclassing.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/objc-forbidden-subclassing.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,87 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>clang-tidy - objc-forbidden-subclassing — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="objc-property-declaration" href="objc-property-declaration.html" />
+ <link rel="prev" title="objc-avoid-spinlock" href="objc-avoid-spinlock.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - objc-forbidden-subclassing</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="objc-avoid-spinlock.html">objc-avoid-spinlock</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="objc-property-declaration.html">objc-property-declaration</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="objc-forbidden-subclassing">
+<h1>objc-forbidden-subclassing<a class="headerlink" href="#objc-forbidden-subclassing" title="Permalink to this headline">¶</a></h1>
+<p>Finds Objective-C classes which are subclasses of classes which are not designed
+to be subclassed.</p>
+<p>By default, includes a list of Objective-C classes which are publicly documented
+as not supporting subclassing.</p>
+<div class="admonition note">
+<p class="first admonition-title">Note</p>
+<p class="last">Instead of using this check, for code under your control, you should add
+<code class="docutils literal notranslate"><span class="pre">__attribute__((objc_subclassing_restricted))</span></code> before your <code class="docutils literal notranslate"><span class="pre">@interface</span></code>
+declarations to ensure the compiler prevents others from subclassing your
+Objective-C classes.
+See <a class="reference external" href="https://clang.llvm.org/docs/AttributeReference.html#objc-subclassing-restricted">https://clang.llvm.org/docs/AttributeReference.html#objc-subclassing-restricted</a></p>
+</div>
+<div class="section" id="options">
+<h2>Options<a class="headerlink" href="#options" title="Permalink to this headline">¶</a></h2>
+<dl class="option">
+<dt id="cmdoption-arg-forbiddensuperclassnames">
+<code class="descname">ForbiddenSuperClassNames</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-forbiddensuperclassnames" title="Permalink to this definition">¶</a></dt>
+<dd><p>Semicolon-separated list of names of Objective-C classes which
+do not support subclassing.</p>
+<p>Defaults to <cite>ABNewPersonViewController;ABPeoplePickerNavigationController;ABPersonViewController;ABUnknownPersonViewController;NSHashTable;NSMapTable;NSPointerArray;NSPointerFunctions;NSTimer;UIActionSheet;UIAlertView;UIImagePickerController;UITextInputMode;UIWebView</cite>.</p>
+</dd></dl>
+
+</div>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="objc-avoid-spinlock.html">objc-avoid-spinlock</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="objc-property-declaration.html">objc-property-declaration</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/objc-property-declaration.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/objc-property-declaration.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/objc-property-declaration.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/objc-property-declaration.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,90 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>clang-tidy - objc-property-declaration — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="objc-super-self" href="objc-super-self.html" />
+ <link rel="prev" title="objc-forbidden-subclassing" href="objc-forbidden-subclassing.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - objc-property-declaration</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="objc-forbidden-subclassing.html">objc-forbidden-subclassing</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="objc-super-self.html">objc-super-self</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="objc-property-declaration">
+<h1>objc-property-declaration<a class="headerlink" href="#objc-property-declaration" title="Permalink to this headline">¶</a></h1>
+<p>Finds property declarations in Objective-C files that do not follow the pattern
+of property names in Appleâs programming guide. The property name should be
+in the format of Lower Camel Case.</p>
+<p>For code:</p>
+<div class="highlight-objc notranslate"><div class="highlight"><pre><span></span><span class="k">@property</span><span class="p">(</span><span class="k">nonatomic</span><span class="p">,</span> <span class="k">assign</span><span class="p">)</span> <span class="kt">int</span> <span class="n">LowerCamelCase</span><span class="p">;</span>
+</pre></div>
+</div>
+<p>The fix will be:</p>
+<div class="highlight-objc notranslate"><div class="highlight"><pre><span></span><span class="k">@property</span><span class="p">(</span><span class="k">nonatomic</span><span class="p">,</span> <span class="k">assign</span><span class="p">)</span> <span class="kt">int</span> <span class="n">lowerCamelCase</span><span class="p">;</span>
+</pre></div>
+</div>
+<p>The check will only fix âCamelCaseâ to âcamelCaseâ. In some other cases we will
+only provide warning messages since the property name could be complicated.
+Users will need to come up with a proper name by their own.</p>
+<p>This check also accepts special acronyms as prefixes or suffixes. Such prefixes or suffixes
+will suppress the Lower Camel Case check according to the guide:
+<a class="reference external" href="https://developer.apple.com/library/content/documentation/Cocoa/Conceptual/CodingGuidelines/Articles/NamingBasics.html#//apple_ref/doc/uid/20001281-1002931-BBCFHEAB">https://developer.apple.com/library/content/documentation/Cocoa/Conceptual/CodingGuidelines/Articles/NamingBasics.html#//apple_ref/doc/uid/20001281-1002931-BBCFHEAB</a></p>
+<p>For a full list of well-known acronyms:
+<a class="reference external" href="https://developer.apple.com/library/content/documentation/Cocoa/Conceptual/CodingGuidelines/Articles/APIAbbreviations.html#//apple_ref/doc/uid/20001285-BCIHCGAE">https://developer.apple.com/library/content/documentation/Cocoa/Conceptual/CodingGuidelines/Articles/APIAbbreviations.html#//apple_ref/doc/uid/20001285-BCIHCGAE</a></p>
+<p>The corresponding style rule: <a class="reference external" href="https://developer.apple.com/library/content/documentation/Cocoa/Conceptual/CodingGuidelines/Articles/NamingIvarsAndTypes.html#//apple_ref/doc/uid/20001284-1001757">https://developer.apple.com/library/content/documentation/Cocoa/Conceptual/CodingGuidelines/Articles/NamingIvarsAndTypes.html#//apple_ref/doc/uid/20001284-1001757</a></p>
+<p>The check will also accept property declared in category with a prefix of
+lowercase letters followed by a â_â to avoid naming conflict. For example:</p>
+<div class="highlight-objc notranslate"><div class="highlight"><pre><span></span><span class="k">@property</span><span class="p">(</span><span class="k">nonatomic</span><span class="p">,</span> <span class="k">assign</span><span class="p">)</span> <span class="kt">int</span> <span class="n">abc_lowerCamelCase</span><span class="p">;</span>
+</pre></div>
+</div>
+<p>The corresponding style rule: <a class="reference external" href="https://developer.apple.com/library/content/qa/qa1908/_index.html">https://developer.apple.com/library/content/qa/qa1908/_index.html</a></p>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="objc-forbidden-subclassing.html">objc-forbidden-subclassing</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="objc-super-self.html">objc-super-self</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/objc-super-self.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/objc-super-self.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/objc-super-self.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/objc-super-self.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,70 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>clang-tidy - objc-super-self — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="openmp-exception-escape" href="openmp-exception-escape.html" />
+ <link rel="prev" title="objc-property-declaration" href="objc-property-declaration.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - objc-super-self</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="objc-property-declaration.html">objc-property-declaration</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="openmp-exception-escape.html">openmp-exception-escape</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="objc-super-self">
+<h1>objc-super-self<a class="headerlink" href="#objc-super-self" title="Permalink to this headline">¶</a></h1>
+<p>Finds invocations of <code class="docutils literal notranslate"><span class="pre">-self</span></code> on super instances in initializers of subclasses
+of <code class="docutils literal notranslate"><span class="pre">NSObject</span></code> and recommends calling a superclass initializer instead.</p>
+<p>Invoking <code class="docutils literal notranslate"><span class="pre">-self</span></code> on super instances in initializers is a common programmer
+error when the programmerâs original intent is to call a superclass
+initializer. Failing to call a superclass initializer breaks initializer
+chaining and can result in invalid object initialization.</p>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="objc-property-declaration.html">objc-property-declaration</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="openmp-exception-escape.html">openmp-exception-escape</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/openmp-exception-escape.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/openmp-exception-escape.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/openmp-exception-escape.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/openmp-exception-escape.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,83 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>clang-tidy - openmp-exception-escape — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="openmp-use-default-none" href="openmp-use-default-none.html" />
+ <link rel="prev" title="objc-super-self" href="objc-super-self.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - openmp-exception-escape</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="objc-super-self.html">objc-super-self</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="openmp-use-default-none.html">openmp-use-default-none</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="openmp-exception-escape">
+<h1>openmp-exception-escape<a class="headerlink" href="#openmp-exception-escape" title="Permalink to this headline">¶</a></h1>
+<p>Analyzes OpenMP Structured Blocks and checks that no exception escapes
+out of the Structured Block it was thrown in.</p>
+<p>As per the OpenMP specification, a structured block is an executable statement,
+possibly compound, with a single entry at the top and a single exit at the
+bottom. Which means, <code class="docutils literal notranslate"><span class="pre">throw</span></code> may not be used to to âexitâ out of the
+structured block. If an exception is not caught in the same structured block
+it was thrown in, the behaviour is undefined.</p>
+<p>FIXME: this check does not model SEH, <code class="docutils literal notranslate"><span class="pre">setjmp</span></code>/<code class="docutils literal notranslate"><span class="pre">longjmp</span></code>.</p>
+<p>WARNING! This check may be expensive on large source files.</p>
+<div class="section" id="options">
+<h2>Options<a class="headerlink" href="#options" title="Permalink to this headline">¶</a></h2>
+<dl class="option">
+<dt id="cmdoption-arg-ignoredexceptions">
+<code class="descname">IgnoredExceptions</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-ignoredexceptions" title="Permalink to this definition">¶</a></dt>
+<dd><p>Comma-separated list containing type names which are not counted as thrown
+exceptions in the check. Default value is an empty string.</p>
+</dd></dl>
+
+</div>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="objc-super-self.html">objc-super-self</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="openmp-use-default-none.html">openmp-use-default-none</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/openmp-use-default-none.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/openmp-use-default-none.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/openmp-use-default-none.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/openmp-use-default-none.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,110 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>clang-tidy - openmp-use-default-none — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="performance-faster-string-find" href="performance-faster-string-find.html" />
+ <link rel="prev" title="openmp-exception-escape" href="openmp-exception-escape.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - openmp-use-default-none</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="openmp-exception-escape.html">openmp-exception-escape</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="performance-faster-string-find.html">performance-faster-string-find</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="openmp-use-default-none">
+<h1>openmp-use-default-none<a class="headerlink" href="#openmp-use-default-none" title="Permalink to this headline">¶</a></h1>
+<p>Finds OpenMP directives that are allowed to contain a <code class="docutils literal notranslate"><span class="pre">default</span></code> clause,
+but either donât specify it or the clause is specified but with the kind
+other than <code class="docutils literal notranslate"><span class="pre">none</span></code>, and suggests to use the <code class="docutils literal notranslate"><span class="pre">default(none)</span></code> clause.</p>
+<p>Using <code class="docutils literal notranslate"><span class="pre">default(none)</span></code> clause forces developers to explicitly specify data
+sharing attributes for the variables referenced in the construct,
+thus making it obvious which variables are referenced, and what is their
+data sharing attribute, thus increasing readability and possibly making errors
+easier to spot.</p>
+<div class="section" id="example">
+<h2>Example<a class="headerlink" href="#example" title="Permalink to this headline">¶</a></h2>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="c1">// ``for`` directive can not have ``default`` clause, no diagnostics.</span>
+<span class="kt">void</span> <span class="nf">n0</span><span class="p">(</span><span class="k">const</span> <span class="kt">int</span> <span class="n">a</span><span class="p">)</span> <span class="p">{</span>
+<span class="cp">#pragma omp for</span>
+ <span class="k">for</span> <span class="p">(</span><span class="kt">int</span> <span class="n">b</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span> <span class="n">b</span> <span class="o"><</span> <span class="n">a</span><span class="p">;</span> <span class="n">b</span><span class="o">++</span><span class="p">)</span>
+ <span class="p">;</span>
+<span class="p">}</span>
+
+<span class="c1">// ``parallel`` directive.</span>
+
+<span class="c1">// ``parallel`` directive can have ``default`` clause, but said clause is not</span>
+<span class="c1">// specified, diagnosed.</span>
+<span class="kt">void</span> <span class="nf">p0_0</span><span class="p">()</span> <span class="p">{</span>
+<span class="cp">#pragma omp parallel</span>
+ <span class="p">;</span>
+ <span class="c1">// WARNING: OpenMP directive ``parallel`` does not specify ``default``</span>
+ <span class="c1">// clause. Consider specifying ``default(none)`` clause.</span>
+<span class="p">}</span>
+
+<span class="c1">// ``parallel`` directive can have ``default`` clause, and said clause is</span>
+<span class="c1">// specified, with ``none`` kind, all good.</span>
+<span class="kt">void</span> <span class="nf">p0_1</span><span class="p">()</span> <span class="p">{</span>
+<span class="cp">#pragma omp parallel default(none)</span>
+ <span class="p">;</span>
+<span class="p">}</span>
+
+<span class="c1">// ``parallel`` directive can have ``default`` clause, and said clause is</span>
+<span class="c1">// specified, but with ``shared`` kind, which is not ``none``, diagnose.</span>
+<span class="kt">void</span> <span class="nf">p0_2</span><span class="p">()</span> <span class="p">{</span>
+<span class="cp">#pragma omp parallel default(shared)</span>
+ <span class="p">;</span>
+ <span class="c1">// WARNING: OpenMP directive ``parallel`` specifies ``default(shared)``</span>
+ <span class="c1">// clause. Consider using ``default(none)`` clause instead.</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+</div>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="openmp-exception-escape.html">openmp-exception-escape</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="performance-faster-string-find.html">performance-faster-string-find</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/performance-faster-string-find.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/performance-faster-string-find.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/performance-faster-string-find.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/performance-faster-string-find.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,86 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>clang-tidy - performance-faster-string-find — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="performance-for-range-copy" href="performance-for-range-copy.html" />
+ <link rel="prev" title="openmp-use-default-none" href="openmp-use-default-none.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - performance-faster-string-find</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="openmp-use-default-none.html">openmp-use-default-none</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="performance-for-range-copy.html">performance-for-range-copy</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="performance-faster-string-find">
+<h1>performance-faster-string-find<a class="headerlink" href="#performance-faster-string-find" title="Permalink to this headline">¶</a></h1>
+<p>Optimize calls to <code class="docutils literal notranslate"><span class="pre">std::string::find()</span></code> and friends when the needle passed is
+a single character string literal. The character literal overload is more
+efficient.</p>
+<p>Examples:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="n">str</span><span class="p">.</span><span class="n">find</span><span class="p">(</span><span class="s">"A"</span><span class="p">);</span>
+
+<span class="c1">// becomes</span>
+
+<span class="n">str</span><span class="p">.</span><span class="n">find</span><span class="p">(</span><span class="sc">'A'</span><span class="p">);</span>
+</pre></div>
+</div>
+<div class="section" id="options">
+<h2>Options<a class="headerlink" href="#options" title="Permalink to this headline">¶</a></h2>
+<dl class="option">
+<dt id="cmdoption-arg-stringlikeclasses">
+<code class="descname">StringLikeClasses</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-stringlikeclasses" title="Permalink to this definition">¶</a></dt>
+<dd><p>Semicolon-separated list of names of string-like classes. By default only
+<code class="docutils literal notranslate"><span class="pre">std::basic_string</span></code> is considered. The list of methods to consired is
+fixed.</p>
+</dd></dl>
+
+</div>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="openmp-use-default-none.html">openmp-use-default-none</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="performance-for-range-copy.html">performance-for-range-copy</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/performance-for-range-copy.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/performance-for-range-copy.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/performance-for-range-copy.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/performance-for-range-copy.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,96 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>clang-tidy - performance-for-range-copy — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="performance-implicit-conversion-in-loop" href="performance-implicit-conversion-in-loop.html" />
+ <link rel="prev" title="performance-faster-string-find" href="performance-faster-string-find.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - performance-for-range-copy</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="performance-faster-string-find.html">performance-faster-string-find</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="performance-implicit-conversion-in-loop.html">performance-implicit-conversion-in-loop</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="performance-for-range-copy">
+<h1>performance-for-range-copy<a class="headerlink" href="#performance-for-range-copy" title="Permalink to this headline">¶</a></h1>
+<p>Finds C++11 for ranges where the loop variable is copied in each iteration but
+it would suffice to obtain it by const reference.</p>
+<p>The check is only applied to loop variables of types that are expensive to copy
+which means they are not trivially copyable or have a non-trivial copy
+constructor or destructor.</p>
+<p>To ensure that it is safe to replace the copy with a const reference the
+following heuristic is employed:</p>
+<ol class="arabic simple">
+<li>The loop variable is const qualified.</li>
+<li>The loop variable is not const, but only const methods or operators are
+invoked on it, or it is used as const reference or value argument in
+constructors or function calls.</li>
+</ol>
+<div class="section" id="options">
+<h2>Options<a class="headerlink" href="#options" title="Permalink to this headline">¶</a></h2>
+<dl class="option">
+<dt id="cmdoption-arg-warnonallautocopies">
+<code class="descname">WarnOnAllAutoCopies</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-warnonallautocopies" title="Permalink to this definition">¶</a></dt>
+<dd><p>When non-zero, warns on any use of <cite>auto</cite> as the type of the range-based for
+loop variable. Default is <cite>0</cite>.</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-allowedtypes">
+<code class="descname">AllowedTypes</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-allowedtypes" title="Permalink to this definition">¶</a></dt>
+<dd><p>A semicolon-separated list of names of types allowed to be copied in each
+iteration. Regular expressions are accepted, e.g. <cite>[Rr]ef(erence)?$</cite> matches
+every type with suffix <cite>Ref</cite>, <cite>ref</cite>, <cite>Reference</cite> and <cite>reference</cite>. The default
+is empty.</p>
+</dd></dl>
+
+</div>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="performance-faster-string-find.html">performance-faster-string-find</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="performance-implicit-conversion-in-loop.html">performance-implicit-conversion-in-loop</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/performance-implicit-cast-in-loop.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/performance-implicit-cast-in-loop.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/performance-implicit-cast-in-loop.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/performance-implicit-cast-in-loop.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,56 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><meta content="5;URL=performance-implicit-conversion-in-loop.html" http-equiv="refresh" />
+
+ <title>clang-tidy - performance-implicit-cast-in-loop — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - performance-implicit-cast-in-loop</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ <a class="uplink" href="../../index.html">Contents</a>
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="performance-implicit-cast-in-loop">
+<h1>performance-implicit-cast-in-loop<a class="headerlink" href="#performance-implicit-cast-in-loop" title="Permalink to this headline">¶</a></h1>
+<p>This check has been renamed to <a class="reference external" href="performance-implicit-conversion-in-loop.html">performance-implicit-conversion-in-loop</a>.</p>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ <a class="uplink" href="../../index.html">Contents</a>
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/performance-implicit-conversion-in-loop.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/performance-implicit-conversion-in-loop.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/performance-implicit-conversion-in-loop.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/performance-implicit-conversion-in-loop.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,77 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>clang-tidy - performance-implicit-conversion-in-loop — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="performance-inefficient-algorithm" href="performance-inefficient-algorithm.html" />
+ <link rel="prev" title="performance-for-range-copy" href="performance-for-range-copy.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - performance-implicit-conversion-in-loop</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="performance-for-range-copy.html">performance-for-range-copy</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="performance-inefficient-algorithm.html">performance-inefficient-algorithm</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="performance-implicit-conversion-in-loop">
+<h1>performance-implicit-conversion-in-loop<a class="headerlink" href="#performance-implicit-conversion-in-loop" title="Permalink to this headline">¶</a></h1>
+<p>This warning appears in a range-based loop with a loop variable of const ref
+type where the type of the variable does not match the one returned by the
+iterator. This means that an implicit conversion happens, which can for example
+result in expensive deep copies.</p>
+<p>Example:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="n">map</span><span class="o"><</span><span class="kt">int</span><span class="p">,</span> <span class="n">vector</span><span class="o"><</span><span class="n">string</span><span class="o">>></span> <span class="n">my_map</span><span class="p">;</span>
+<span class="k">for</span> <span class="p">(</span><span class="k">const</span> <span class="n">pair</span><span class="o"><</span><span class="kt">int</span><span class="p">,</span> <span class="n">vector</span><span class="o"><</span><span class="n">string</span><span class="o">>>&</span> <span class="nl">p</span> <span class="p">:</span> <span class="n">my_map</span><span class="p">)</span> <span class="p">{}</span>
+<span class="c1">// The iterator type is in fact pair<const int, vector<string>>, which means</span>
+<span class="c1">// that the compiler added a conversion, resulting in a copy of the vectors.</span>
+</pre></div>
+</div>
+<p>The easiest solution is usually to use <code class="docutils literal notranslate"><span class="pre">const</span> <span class="pre">auto&</span></code> instead of writing the
+type manually.</p>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="performance-for-range-copy.html">performance-for-range-copy</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="performance-inefficient-algorithm.html">performance-inefficient-algorithm</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/performance-inefficient-algorithm.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/performance-inefficient-algorithm.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/performance-inefficient-algorithm.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/performance-inefficient-algorithm.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,84 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>clang-tidy - performance-inefficient-algorithm — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="performance-inefficient-string-concatenation" href="performance-inefficient-string-concatenation.html" />
+ <link rel="prev" title="performance-implicit-conversion-in-loop" href="performance-implicit-conversion-in-loop.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - performance-inefficient-algorithm</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="performance-implicit-conversion-in-loop.html">performance-implicit-conversion-in-loop</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="performance-inefficient-string-concatenation.html">performance-inefficient-string-concatenation</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="performance-inefficient-algorithm">
+<h1>performance-inefficient-algorithm<a class="headerlink" href="#performance-inefficient-algorithm" title="Permalink to this headline">¶</a></h1>
+<p>Warns on inefficient use of STL algorithms on associative containers.</p>
+<p>Associative containers implements some of the algorithms as methods which
+should be preferred to the algorithms in the algorithm header. The methods
+can take advanatage of the order of the elements.</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="n">std</span><span class="o">::</span><span class="n">set</span><span class="o"><</span><span class="kt">int</span><span class="o">></span> <span class="n">s</span><span class="p">;</span>
+<span class="k">auto</span> <span class="n">it</span> <span class="o">=</span> <span class="n">std</span><span class="o">::</span><span class="n">find</span><span class="p">(</span><span class="n">s</span><span class="p">.</span><span class="n">begin</span><span class="p">(),</span> <span class="n">s</span><span class="p">.</span><span class="n">end</span><span class="p">(),</span> <span class="mi">43</span><span class="p">);</span>
+
+<span class="c1">// becomes</span>
+
+<span class="k">auto</span> <span class="n">it</span> <span class="o">=</span> <span class="n">s</span><span class="p">.</span><span class="n">find</span><span class="p">(</span><span class="mi">43</span><span class="p">);</span>
+</pre></div>
+</div>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="n">std</span><span class="o">::</span><span class="n">set</span><span class="o"><</span><span class="kt">int</span><span class="o">></span> <span class="n">s</span><span class="p">;</span>
+<span class="k">auto</span> <span class="n">c</span> <span class="o">=</span> <span class="n">std</span><span class="o">::</span><span class="n">count</span><span class="p">(</span><span class="n">s</span><span class="p">.</span><span class="n">begin</span><span class="p">(),</span> <span class="n">s</span><span class="p">.</span><span class="n">end</span><span class="p">(),</span> <span class="mi">43</span><span class="p">);</span>
+
+<span class="c1">// becomes</span>
+
+<span class="k">auto</span> <span class="n">c</span> <span class="o">=</span> <span class="n">s</span><span class="p">.</span><span class="n">count</span><span class="p">(</span><span class="mi">43</span><span class="p">);</span>
+</pre></div>
+</div>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="performance-implicit-conversion-in-loop.html">performance-implicit-conversion-in-loop</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="performance-inefficient-string-concatenation.html">performance-inefficient-string-concatenation</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/performance-inefficient-string-concatenation.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/performance-inefficient-string-concatenation.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/performance-inefficient-string-concatenation.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/performance-inefficient-string-concatenation.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,111 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>clang-tidy - performance-inefficient-string-concatenation — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="performance-inefficient-vector-operation" href="performance-inefficient-vector-operation.html" />
+ <link rel="prev" title="performance-inefficient-algorithm" href="performance-inefficient-algorithm.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - performance-inefficient-string-concatenation</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="performance-inefficient-algorithm.html">performance-inefficient-algorithm</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="performance-inefficient-vector-operation.html">performance-inefficient-vector-operation</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="performance-inefficient-string-concatenation">
+<h1>performance-inefficient-string-concatenation<a class="headerlink" href="#performance-inefficient-string-concatenation" title="Permalink to this headline">¶</a></h1>
+<p>This check warns about the performance overhead arising from concatenating
+strings using the <code class="docutils literal notranslate"><span class="pre">operator+</span></code>, for instance:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="n">std</span><span class="o">::</span><span class="n">string</span> <span class="n">a</span><span class="p">(</span><span class="s">"Foo"</span><span class="p">),</span> <span class="n">b</span><span class="p">(</span><span class="s">"Bar"</span><span class="p">);</span>
+<span class="n">a</span> <span class="o">=</span> <span class="n">a</span> <span class="o">+</span> <span class="n">b</span><span class="p">;</span>
+</pre></div>
+</div>
+<p>Instead of this structure you should use <code class="docutils literal notranslate"><span class="pre">operator+=</span></code> or <code class="docutils literal notranslate"><span class="pre">std::string</span></code>âs
+(<code class="docutils literal notranslate"><span class="pre">std::basic_string</span></code>) class member function <code class="docutils literal notranslate"><span class="pre">append()</span></code>. For instance:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="n">std</span><span class="o">::</span><span class="n">string</span> <span class="n">a</span><span class="p">(</span><span class="s">"Foo"</span><span class="p">),</span> <span class="n">b</span><span class="p">(</span><span class="s">"Baz"</span><span class="p">);</span>
+<span class="k">for</span> <span class="p">(</span><span class="kt">int</span> <span class="n">i</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span> <span class="n">i</span> <span class="o"><</span> <span class="mi">20000</span><span class="p">;</span> <span class="o">++</span><span class="n">i</span><span class="p">)</span> <span class="p">{</span>
+ <span class="n">a</span> <span class="o">=</span> <span class="n">a</span> <span class="o">+</span> <span class="s">"Bar"</span> <span class="o">+</span> <span class="n">b</span><span class="p">;</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+<p>Could be rewritten in a greatly more efficient way like:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="n">std</span><span class="o">::</span><span class="n">string</span> <span class="n">a</span><span class="p">(</span><span class="s">"Foo"</span><span class="p">),</span> <span class="n">b</span><span class="p">(</span><span class="s">"Baz"</span><span class="p">);</span>
+<span class="k">for</span> <span class="p">(</span><span class="kt">int</span> <span class="n">i</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span> <span class="n">i</span> <span class="o"><</span> <span class="mi">20000</span><span class="p">;</span> <span class="o">++</span><span class="n">i</span><span class="p">)</span> <span class="p">{</span>
+ <span class="n">a</span><span class="p">.</span><span class="n">append</span><span class="p">(</span><span class="s">"Bar"</span><span class="p">).</span><span class="n">append</span><span class="p">(</span><span class="n">b</span><span class="p">);</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+<p>And this can be rewritten too:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="kt">void</span> <span class="nf">f</span><span class="p">(</span><span class="k">const</span> <span class="n">std</span><span class="o">::</span><span class="n">string</span><span class="o">&</span><span class="p">)</span> <span class="p">{}</span>
+<span class="n">std</span><span class="o">::</span><span class="n">string</span> <span class="n">a</span><span class="p">(</span><span class="s">"Foo"</span><span class="p">),</span> <span class="n">b</span><span class="p">(</span><span class="s">"Baz"</span><span class="p">);</span>
+<span class="kt">void</span> <span class="nf">g</span><span class="p">()</span> <span class="p">{</span>
+ <span class="n">f</span><span class="p">(</span><span class="n">a</span> <span class="o">+</span> <span class="s">"Bar"</span> <span class="o">+</span> <span class="n">b</span><span class="p">);</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+<p>In a slightly more efficient way like:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="kt">void</span> <span class="nf">f</span><span class="p">(</span><span class="k">const</span> <span class="n">std</span><span class="o">::</span><span class="n">string</span><span class="o">&</span><span class="p">)</span> <span class="p">{}</span>
+<span class="n">std</span><span class="o">::</span><span class="n">string</span> <span class="n">a</span><span class="p">(</span><span class="s">"Foo"</span><span class="p">),</span> <span class="n">b</span><span class="p">(</span><span class="s">"Baz"</span><span class="p">);</span>
+<span class="kt">void</span> <span class="nf">g</span><span class="p">()</span> <span class="p">{</span>
+ <span class="n">f</span><span class="p">(</span><span class="n">std</span><span class="o">::</span><span class="n">string</span><span class="p">(</span><span class="n">a</span><span class="p">).</span><span class="n">append</span><span class="p">(</span><span class="s">"Bar"</span><span class="p">).</span><span class="n">append</span><span class="p">(</span><span class="n">b</span><span class="p">));</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+<div class="section" id="options">
+<h2>Options<a class="headerlink" href="#options" title="Permalink to this headline">¶</a></h2>
+<dl class="option">
+<dt id="cmdoption-arg-strictmode">
+<code class="descname">StrictMode</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-strictmode" title="Permalink to this definition">¶</a></dt>
+<dd><p>When zero, the check will only check the string usage in <code class="docutils literal notranslate"><span class="pre">while</span></code>, <code class="docutils literal notranslate"><span class="pre">for</span></code>
+and <code class="docutils literal notranslate"><span class="pre">for-range</span></code> statements. Default is <cite>0</cite>.</p>
+</dd></dl>
+
+</div>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="performance-inefficient-algorithm.html">performance-inefficient-algorithm</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="performance-inefficient-vector-operation.html">performance-inefficient-vector-operation</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/performance-inefficient-vector-operation.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/performance-inefficient-vector-operation.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/performance-inefficient-vector-operation.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/performance-inefficient-vector-operation.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,107 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>clang-tidy - performance-inefficient-vector-operation — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="performance-move-const-arg" href="performance-move-const-arg.html" />
+ <link rel="prev" title="performance-inefficient-string-concatenation" href="performance-inefficient-string-concatenation.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - performance-inefficient-vector-operation</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="performance-inefficient-string-concatenation.html">performance-inefficient-string-concatenation</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="performance-move-const-arg.html">performance-move-const-arg</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="performance-inefficient-vector-operation">
+<h1>performance-inefficient-vector-operation<a class="headerlink" href="#performance-inefficient-vector-operation" title="Permalink to this headline">¶</a></h1>
+<p>Finds possible inefficient <code class="docutils literal notranslate"><span class="pre">std::vector</span></code> operations (e.g. <code class="docutils literal notranslate"><span class="pre">push_back</span></code>,
+<code class="docutils literal notranslate"><span class="pre">emplace_back</span></code>) that may cause unnecessary memory reallocations.</p>
+<p>Currently, the check only detects following kinds of loops with a single
+statement body:</p>
+<ul class="simple">
+<li>Counter-based for loops start with 0:</li>
+</ul>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="n">std</span><span class="o">::</span><span class="n">vector</span><span class="o"><</span><span class="kt">int</span><span class="o">></span> <span class="n">v</span><span class="p">;</span>
+<span class="k">for</span> <span class="p">(</span><span class="kt">int</span> <span class="n">i</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span> <span class="n">i</span> <span class="o"><</span> <span class="n">n</span><span class="p">;</span> <span class="o">++</span><span class="n">i</span><span class="p">)</span> <span class="p">{</span>
+ <span class="n">v</span><span class="p">.</span><span class="n">push_back</span><span class="p">(</span><span class="n">n</span><span class="p">);</span>
+ <span class="c1">// This will trigger the warning since the push_back may cause multiple</span>
+ <span class="c1">// memory reallocations in v. This can be avoid by inserting a 'reserve(n)'</span>
+ <span class="c1">// statement before the for statement.</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+<ul class="simple">
+<li>For-range loops like <code class="docutils literal notranslate"><span class="pre">for</span> <span class="pre">(range-declaration</span> <span class="pre">:</span> <span class="pre">range_expression)</span></code>, the type
+of <code class="docutils literal notranslate"><span class="pre">range_expression</span></code> can be <code class="docutils literal notranslate"><span class="pre">std::vector</span></code>, <code class="docutils literal notranslate"><span class="pre">std::array</span></code>,
+<code class="docutils literal notranslate"><span class="pre">std::deque</span></code>, <code class="docutils literal notranslate"><span class="pre">std::set</span></code>, <code class="docutils literal notranslate"><span class="pre">std::unordered_set</span></code>, <code class="docutils literal notranslate"><span class="pre">std::map</span></code>,
+<code class="docutils literal notranslate"><span class="pre">std::unordered_set</span></code>:</li>
+</ul>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="n">std</span><span class="o">::</span><span class="n">vector</span><span class="o"><</span><span class="kt">int</span><span class="o">></span> <span class="n">data</span><span class="p">;</span>
+<span class="n">std</span><span class="o">::</span><span class="n">vector</span><span class="o"><</span><span class="kt">int</span><span class="o">></span> <span class="n">v</span><span class="p">;</span>
+
+<span class="k">for</span> <span class="p">(</span><span class="k">auto</span> <span class="nl">element</span> <span class="p">:</span> <span class="n">data</span><span class="p">)</span> <span class="p">{</span>
+ <span class="n">v</span><span class="p">.</span><span class="n">push_back</span><span class="p">(</span><span class="n">element</span><span class="p">);</span>
+ <span class="c1">// This will trigger the warning since the 'push_back' may cause multiple</span>
+ <span class="c1">// memory reallocations in v. This can be avoid by inserting a</span>
+ <span class="c1">// 'reserve(data.size())' statement before the for statement.</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+<div class="section" id="options">
+<h2>Options<a class="headerlink" href="#options" title="Permalink to this headline">¶</a></h2>
+<dl class="option">
+<dt id="cmdoption-arg-vectorlikeclasses">
+<code class="descname">VectorLikeClasses</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-vectorlikeclasses" title="Permalink to this definition">¶</a></dt>
+<dd><p>Semicolon-separated list of names of vector-like classes. By default only
+<code class="docutils literal notranslate"><span class="pre">::std::vector</span></code> is considered.</p>
+</dd></dl>
+
+</div>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="performance-inefficient-string-concatenation.html">performance-inefficient-string-concatenation</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="performance-move-const-arg.html">performance-move-const-arg</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/performance-move-const-arg.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/performance-move-const-arg.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/performance-move-const-arg.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/performance-move-const-arg.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,94 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>clang-tidy - performance-move-const-arg — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="performance-move-constructor-init" href="performance-move-constructor-init.html" />
+ <link rel="prev" title="performance-inefficient-vector-operation" href="performance-inefficient-vector-operation.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - performance-move-const-arg</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="performance-inefficient-vector-operation.html">performance-inefficient-vector-operation</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="performance-move-constructor-init.html">performance-move-constructor-init</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="performance-move-const-arg">
+<h1>performance-move-const-arg<a class="headerlink" href="#performance-move-const-arg" title="Permalink to this headline">¶</a></h1>
+<p>The check warns</p>
+<ul class="simple">
+<li>if <code class="docutils literal notranslate"><span class="pre">std::move()</span></code> is called with a constant argument,</li>
+<li>if <code class="docutils literal notranslate"><span class="pre">std::move()</span></code> is called with an argument of a trivially-copyable type,</li>
+<li>if the result of <code class="docutils literal notranslate"><span class="pre">std::move()</span></code> is passed as a const reference argument.</li>
+</ul>
+<p>In all three cases, the check will suggest a fix that removes the
+<code class="docutils literal notranslate"><span class="pre">std::move()</span></code>.</p>
+<p>Here are examples of each of the three cases:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">const</span> <span class="n">string</span> <span class="n">s</span><span class="p">;</span>
+<span class="k">return</span> <span class="n">std</span><span class="o">::</span><span class="n">move</span><span class="p">(</span><span class="n">s</span><span class="p">);</span> <span class="c1">// Warning: std::move of the const variable has no effect</span>
+
+<span class="kt">int</span> <span class="n">x</span><span class="p">;</span>
+<span class="k">return</span> <span class="n">std</span><span class="o">::</span><span class="n">move</span><span class="p">(</span><span class="n">x</span><span class="p">);</span> <span class="c1">// Warning: std::move of the variable of a trivially-copyable type has no effect</span>
+
+<span class="kt">void</span> <span class="nf">f</span><span class="p">(</span><span class="k">const</span> <span class="n">string</span> <span class="o">&</span><span class="n">s</span><span class="p">);</span>
+<span class="n">string</span> <span class="n">s</span><span class="p">;</span>
+<span class="n">f</span><span class="p">(</span><span class="n">std</span><span class="o">::</span><span class="n">move</span><span class="p">(</span><span class="n">s</span><span class="p">));</span> <span class="c1">// Warning: passing result of std::move as a const reference argument; no move will actually happen</span>
+</pre></div>
+</div>
+<div class="section" id="options">
+<h2>Options<a class="headerlink" href="#options" title="Permalink to this headline">¶</a></h2>
+<dl class="option">
+<dt id="cmdoption-arg-checktriviallycopyablemove">
+<code class="descname">CheckTriviallyCopyableMove</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-checktriviallycopyablemove" title="Permalink to this definition">¶</a></dt>
+<dd><p>If non-zero, enables detection of trivially copyable types that do not
+have a move constructor. Default is non-zero.</p>
+</dd></dl>
+
+</div>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="performance-inefficient-vector-operation.html">performance-inefficient-vector-operation</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="performance-move-constructor-init.html">performance-move-constructor-init</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/performance-move-constructor-init.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/performance-move-constructor-init.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/performance-move-constructor-init.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/performance-move-constructor-init.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,78 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>clang-tidy - performance-move-constructor-init — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="performance-noexcept-move-constructor" href="performance-noexcept-move-constructor.html" />
+ <link rel="prev" title="performance-move-const-arg" href="performance-move-const-arg.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - performance-move-constructor-init</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="performance-move-const-arg.html">performance-move-const-arg</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="performance-noexcept-move-constructor.html">performance-noexcept-move-constructor</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="performance-move-constructor-init">
+<h1>performance-move-constructor-init<a class="headerlink" href="#performance-move-constructor-init" title="Permalink to this headline">¶</a></h1>
+<p>âcert-oop11-cppâ redirects here as an alias for this check.</p>
+<p>The check flags user-defined move constructors that have a ctor-initializer
+initializing a member or base class through a copy constructor instead of a
+move constructor.</p>
+<div class="section" id="options">
+<h2>Options<a class="headerlink" href="#options" title="Permalink to this headline">¶</a></h2>
+<dl class="option">
+<dt id="cmdoption-arg-includestyle">
+<code class="descname">IncludeStyle</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-includestyle" title="Permalink to this definition">¶</a></dt>
+<dd><p>A string specifying which include-style is used, <cite>llvm</cite> or <cite>google</cite>. Default
+is <cite>llvm</cite>.</p>
+</dd></dl>
+
+</div>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="performance-move-const-arg.html">performance-move-const-arg</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="performance-noexcept-move-constructor.html">performance-noexcept-move-constructor</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/performance-noexcept-move-constructor.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/performance-noexcept-move-constructor.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/performance-noexcept-move-constructor.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/performance-noexcept-move-constructor.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,70 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>clang-tidy - performance-noexcept-move-constructor — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="performance-type-promotion-in-math-fn" href="performance-type-promotion-in-math-fn.html" />
+ <link rel="prev" title="performance-move-constructor-init" href="performance-move-constructor-init.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - performance-noexcept-move-constructor</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="performance-move-constructor-init.html">performance-move-constructor-init</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="performance-type-promotion-in-math-fn.html">performance-type-promotion-in-math-fn</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="performance-noexcept-move-constructor">
+<h1>performance-noexcept-move-constructor<a class="headerlink" href="#performance-noexcept-move-constructor" title="Permalink to this headline">¶</a></h1>
+<p>The check flags user-defined move constructors and assignment operators not
+marked with <code class="docutils literal notranslate"><span class="pre">noexcept</span></code> or marked with <code class="docutils literal notranslate"><span class="pre">noexcept(expr)</span></code> where <code class="docutils literal notranslate"><span class="pre">expr</span></code>
+evaluates to <code class="docutils literal notranslate"><span class="pre">false</span></code> (but is not a <code class="docutils literal notranslate"><span class="pre">false</span></code> literal itself).</p>
+<p>Move constructors of all the types used with STL containers, for example,
+need to be declared <code class="docutils literal notranslate"><span class="pre">noexcept</span></code>. Otherwise STL will choose copy constructors
+instead. The same is valid for move assignment operations.</p>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="performance-move-constructor-init.html">performance-move-constructor-init</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="performance-type-promotion-in-math-fn.html">performance-type-promotion-in-math-fn</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/performance-type-promotion-in-math-fn.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/performance-type-promotion-in-math-fn.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/performance-type-promotion-in-math-fn.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/performance-type-promotion-in-math-fn.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,78 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>clang-tidy - performance-type-promotion-in-math-fn — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="performance-unnecessary-copy-initialization" href="performance-unnecessary-copy-initialization.html" />
+ <link rel="prev" title="performance-noexcept-move-constructor" href="performance-noexcept-move-constructor.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - performance-type-promotion-in-math-fn</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="performance-noexcept-move-constructor.html">performance-noexcept-move-constructor</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="performance-unnecessary-copy-initialization.html">performance-unnecessary-copy-initialization</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="performance-type-promotion-in-math-fn">
+<h1>performance-type-promotion-in-math-fn<a class="headerlink" href="#performance-type-promotion-in-math-fn" title="Permalink to this headline">¶</a></h1>
+<p>Finds calls to C math library functions (from <code class="docutils literal notranslate"><span class="pre">math.h</span></code> or, in C++, <code class="docutils literal notranslate"><span class="pre">cmath</span></code>)
+with implicit <code class="docutils literal notranslate"><span class="pre">float</span></code> to <code class="docutils literal notranslate"><span class="pre">double</span></code> promotions.</p>
+<p>For example, warns on <code class="docutils literal notranslate"><span class="pre">::sin(0.f)</span></code>, because this funcitonâs parameter is a
+double. You probably meant to call <code class="docutils literal notranslate"><span class="pre">std::sin(0.f)</span></code> (in C++), or <code class="docutils literal notranslate"><span class="pre">sinf(0.f)</span></code>
+(in C).</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="kt">float</span> <span class="n">a</span><span class="p">;</span>
+<span class="n">asin</span><span class="p">(</span><span class="n">a</span><span class="p">);</span>
+
+<span class="c1">// becomes</span>
+
+<span class="kt">float</span> <span class="n">a</span><span class="p">;</span>
+<span class="n">std</span><span class="o">::</span><span class="n">asin</span><span class="p">(</span><span class="n">a</span><span class="p">);</span>
+</pre></div>
+</div>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="performance-noexcept-move-constructor.html">performance-noexcept-move-constructor</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="performance-unnecessary-copy-initialization.html">performance-unnecessary-copy-initialization</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/performance-unnecessary-copy-initialization.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/performance-unnecessary-copy-initialization.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/performance-unnecessary-copy-initialization.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/performance-unnecessary-copy-initialization.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,105 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>clang-tidy - performance-unnecessary-copy-initialization — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="performance-unnecessary-value-param" href="performance-unnecessary-value-param.html" />
+ <link rel="prev" title="performance-type-promotion-in-math-fn" href="performance-type-promotion-in-math-fn.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - performance-unnecessary-copy-initialization</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="performance-type-promotion-in-math-fn.html">performance-type-promotion-in-math-fn</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="performance-unnecessary-value-param.html">performance-unnecessary-value-param</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="performance-unnecessary-copy-initialization">
+<h1>performance-unnecessary-copy-initialization<a class="headerlink" href="#performance-unnecessary-copy-initialization" title="Permalink to this headline">¶</a></h1>
+<p>Finds local variable declarations that are initialized using the copy
+constructor of a non-trivially-copyable type but it would suffice to obtain a
+const reference.</p>
+<p>The check is only applied if it is safe to replace the copy by a const
+reference. This is the case when the variable is const qualified or when it is
+only used as a const, i.e. only const methods or operators are invoked on it, or
+it is used as const reference or value argument in constructors or function
+calls.</p>
+<p>Example:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">const</span> <span class="n">string</span><span class="o">&</span> <span class="n">constReference</span><span class="p">();</span>
+<span class="kt">void</span> <span class="nf">Function</span><span class="p">()</span> <span class="p">{</span>
+ <span class="c1">// The warning will suggest making this a const reference.</span>
+ <span class="k">const</span> <span class="n">string</span> <span class="n">UnnecessaryCopy</span> <span class="o">=</span> <span class="n">constReference</span><span class="p">();</span>
+<span class="p">}</span>
+
+<span class="k">struct</span> <span class="n">Foo</span> <span class="p">{</span>
+ <span class="k">const</span> <span class="n">string</span><span class="o">&</span> <span class="n">name</span><span class="p">()</span> <span class="k">const</span><span class="p">;</span>
+<span class="p">};</span>
+<span class="kt">void</span> <span class="nf">Function</span><span class="p">(</span><span class="k">const</span> <span class="n">Foo</span><span class="o">&</span> <span class="n">foo</span><span class="p">)</span> <span class="p">{</span>
+ <span class="c1">// The warning will suggest making this a const reference.</span>
+ <span class="n">string</span> <span class="n">UnnecessaryCopy1</span> <span class="o">=</span> <span class="n">foo</span><span class="p">.</span><span class="n">name</span><span class="p">();</span>
+ <span class="n">UnnecessaryCopy1</span><span class="p">.</span><span class="n">find</span><span class="p">(</span><span class="s">"bar"</span><span class="p">);</span>
+
+ <span class="c1">// The warning will suggest making this a const reference.</span>
+ <span class="n">string</span> <span class="n">UnnecessaryCopy2</span> <span class="o">=</span> <span class="n">UnnecessaryCopy1</span><span class="p">;</span>
+ <span class="n">UnnecessaryCopy2</span><span class="p">.</span><span class="n">find</span><span class="p">(</span><span class="s">"bar"</span><span class="p">);</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+<div class="section" id="options">
+<h2>Options<a class="headerlink" href="#options" title="Permalink to this headline">¶</a></h2>
+<dl class="option">
+<dt id="cmdoption-arg-allowedtypes">
+<code class="descname">AllowedTypes</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-allowedtypes" title="Permalink to this definition">¶</a></dt>
+<dd><p>A semicolon-separated list of names of types allowed to be initialized by
+copying. Regular expressions are accepted, e.g. <cite>[Rr]ef(erence)?$</cite> matches
+every type with suffix <cite>Ref</cite>, <cite>ref</cite>, <cite>Reference</cite> and <cite>reference</cite>. The
+default is empty.</p>
+</dd></dl>
+
+</div>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="performance-type-promotion-in-math-fn.html">performance-type-promotion-in-math-fn</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="performance-unnecessary-value-param.html">performance-unnecessary-value-param</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/performance-unnecessary-value-param.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/performance-unnecessary-value-param.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/performance-unnecessary-value-param.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/performance-unnecessary-value-param.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,124 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>clang-tidy - performance-unnecessary-value-param — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="portability-simd-intrinsics" href="portability-simd-intrinsics.html" />
+ <link rel="prev" title="performance-unnecessary-copy-initialization" href="performance-unnecessary-copy-initialization.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - performance-unnecessary-value-param</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="performance-unnecessary-copy-initialization.html">performance-unnecessary-copy-initialization</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="portability-simd-intrinsics.html">portability-simd-intrinsics</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="performance-unnecessary-value-param">
+<h1>performance-unnecessary-value-param<a class="headerlink" href="#performance-unnecessary-value-param" title="Permalink to this headline">¶</a></h1>
+<p>Flags value parameter declarations of expensive to copy types that are copied
+for each invocation but it would suffice to pass them by const reference.</p>
+<p>The check is only applied to parameters of types that are expensive to copy
+which means they are not trivially copyable or have a non-trivial copy
+constructor or destructor.</p>
+<p>To ensure that it is safe to replace the value parameter with a const reference
+the following heuristic is employed:</p>
+<ol class="arabic simple">
+<li>the parameter is const qualified;</li>
+<li>the parameter is not const, but only const methods or operators are invoked
+on it, or it is used as const reference or value argument in constructors or
+function calls.</li>
+</ol>
+<p>Example:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="kt">void</span> <span class="nf">f</span><span class="p">(</span><span class="k">const</span> <span class="n">string</span> <span class="n">Value</span><span class="p">)</span> <span class="p">{</span>
+ <span class="c1">// The warning will suggest making Value a reference.</span>
+<span class="p">}</span>
+
+<span class="kt">void</span> <span class="nf">g</span><span class="p">(</span><span class="n">ExpensiveToCopy</span> <span class="n">Value</span><span class="p">)</span> <span class="p">{</span>
+ <span class="c1">// The warning will suggest making Value a const reference.</span>
+ <span class="n">Value</span><span class="p">.</span><span class="n">ConstMethd</span><span class="p">();</span>
+ <span class="n">ExpensiveToCopy</span> <span class="n">Copy</span><span class="p">(</span><span class="n">Value</span><span class="p">);</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+<p>If the parameter is not const, only copied or assigned once and has a
+non-trivial move-constructor or move-assignment operator respectively the check
+will suggest to move it.</p>
+<p>Example:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="kt">void</span> <span class="nf">setValue</span><span class="p">(</span><span class="n">string</span> <span class="n">Value</span><span class="p">)</span> <span class="p">{</span>
+ <span class="n">Field</span> <span class="o">=</span> <span class="n">Value</span><span class="p">;</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+<p>Will become:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="cp">#include</span> <span class="cpf"><utility></span><span class="cp"></span>
+
+<span class="kt">void</span> <span class="nf">setValue</span><span class="p">(</span><span class="n">string</span> <span class="n">Value</span><span class="p">)</span> <span class="p">{</span>
+ <span class="n">Field</span> <span class="o">=</span> <span class="n">std</span><span class="o">::</span><span class="n">move</span><span class="p">(</span><span class="n">Value</span><span class="p">);</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+<div class="section" id="options">
+<h2>Options<a class="headerlink" href="#options" title="Permalink to this headline">¶</a></h2>
+<dl class="option">
+<dt id="cmdoption-arg-includestyle">
+<code class="descname">IncludeStyle</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-includestyle" title="Permalink to this definition">¶</a></dt>
+<dd><p>A string specifying which include-style is used, <cite>llvm</cite> or <cite>google</cite>. Default
+is <cite>llvm</cite>.</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-allowedtypes">
+<code class="descname">AllowedTypes</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-allowedtypes" title="Permalink to this definition">¶</a></dt>
+<dd><p>A semicolon-separated list of names of types allowed to be passed by value.
+Regular expressions are accepted, e.g. <cite>[Rr]ef(erence)?$</cite> matches every type
+with suffix <cite>Ref</cite>, <cite>ref</cite>, <cite>Reference</cite> and <cite>reference</cite>. The default is empty.</p>
+</dd></dl>
+
+</div>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="performance-unnecessary-copy-initialization.html">performance-unnecessary-copy-initialization</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="portability-simd-intrinsics.html">portability-simd-intrinsics</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/portability-simd-intrinsics.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/portability-simd-intrinsics.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/portability-simd-intrinsics.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/portability-simd-intrinsics.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,103 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>clang-tidy - portability-simd-intrinsics — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="readability-avoid-const-params-in-decls" href="readability-avoid-const-params-in-decls.html" />
+ <link rel="prev" title="performance-unnecessary-value-param" href="performance-unnecessary-value-param.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - portability-simd-intrinsics</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="performance-unnecessary-value-param.html">performance-unnecessary-value-param</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="readability-avoid-const-params-in-decls.html">readability-avoid-const-params-in-decls</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="portability-simd-intrinsics">
+<h1>portability-simd-intrinsics<a class="headerlink" href="#portability-simd-intrinsics" title="Permalink to this headline">¶</a></h1>
+<p>Finds SIMD intrinsics calls and suggests <code class="docutils literal notranslate"><span class="pre">std::experimental::simd</span></code> (<a class="reference external" href="https://wg21.link/p0214">P0214</a>)
+alternatives.</p>
+<p>If the option <code class="docutils literal notranslate"><span class="pre">Suggest</span></code> is set to non-zero, for</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="n">_mm_add_epi32</span><span class="p">(</span><span class="n">a</span><span class="p">,</span> <span class="n">b</span><span class="p">);</span> <span class="c1">// x86</span>
+<span class="n">vec_add</span><span class="p">(</span><span class="n">a</span><span class="p">,</span> <span class="n">b</span><span class="p">);</span> <span class="c1">// Power</span>
+</pre></div>
+</div>
+<p>the check suggests an alternative: <code class="docutils literal notranslate"><span class="pre">operator+</span></code> on <code class="docutils literal notranslate"><span class="pre">std::experimental::simd</span></code>
+objects.</p>
+<p>Otherwise, it just complains the intrinsics are non-portable (and there are
+<a class="reference external" href="https://wg21.link/p0214">P0214</a> alternatives).</p>
+<p>Many architectures provide SIMD operations (e.g. x86 SSE/AVX, Power AltiVec/VSX,
+ARM NEON). It is common that SIMD code implementing the same algorithm, is
+written in multiple target-dispatching pieces to optimize for different
+architectures or micro-architectures.</p>
+<p>The C++ standard proposal <a class="reference external" href="https://wg21.link/p0214">P0214</a> and its extensions cover many common SIMD
+operations. By migrating from target-dependent intrinsics to <a class="reference external" href="https://wg21.link/p0214">P0214</a>
+operations, the SIMD code can be simplified and pieces for different targets can
+be unified.</p>
+<p>Refer to <a class="reference external" href="https://wg21.link/p0214">P0214</a> for introduction and motivation for the data-parallel standard
+library.</p>
+<div class="section" id="options">
+<h2>Options<a class="headerlink" href="#options" title="Permalink to this headline">¶</a></h2>
+<dl class="option">
+<dt id="cmdoption-arg-suggest">
+<code class="descname">Suggest</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-suggest" title="Permalink to this definition">¶</a></dt>
+<dd><p>If this option is set to non-zero (default is <cite>0</cite>), the check will suggest
+<a class="reference external" href="https://wg21.link/p0214">P0214</a> alternatives, otherwise it only points out the intrinsic function is
+non-portable.</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-std">
+<code class="descname">Std</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-std" title="Permalink to this definition">¶</a></dt>
+<dd><p>The namespace used to suggest <a class="reference external" href="https://wg21.link/p0214">P0214</a> alternatives. If not specified, <cite>std::</cite>
+for <cite>-std=c++2a</cite> and <cite>std::experimental::</cite> for <cite>-std=c++11</cite>.</p>
+</dd></dl>
+
+</div>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="performance-unnecessary-value-param.html">performance-unnecessary-value-param</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="readability-avoid-const-params-in-decls.html">readability-avoid-const-params-in-decls</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/readability-avoid-const-params-in-decls.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/readability-avoid-const-params-in-decls.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/readability-avoid-const-params-in-decls.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/readability-avoid-const-params-in-decls.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,73 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>clang-tidy - readability-avoid-const-params-in-decls — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="readability-braces-around-statements" href="readability-braces-around-statements.html" />
+ <link rel="prev" title="portability-simd-intrinsics" href="portability-simd-intrinsics.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - readability-avoid-const-params-in-decls</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="portability-simd-intrinsics.html">portability-simd-intrinsics</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="readability-braces-around-statements.html">readability-braces-around-statements</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="readability-avoid-const-params-in-decls">
+<h1>readability-avoid-const-params-in-decls<a class="headerlink" href="#readability-avoid-const-params-in-decls" title="Permalink to this headline">¶</a></h1>
+<p>Checks whether a function declaration has parameters that are top level
+<code class="docutils literal notranslate"><span class="pre">const</span></code>.</p>
+<p><code class="docutils literal notranslate"><span class="pre">const</span></code> values in declarations do not affect the signature of a function, so
+they should not be put there.</p>
+<p>Examples:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="kt">void</span> <span class="nf">f</span><span class="p">(</span><span class="k">const</span> <span class="n">string</span><span class="p">);</span> <span class="c1">// Bad: const is top level.</span>
+<span class="kt">void</span> <span class="nf">f</span><span class="p">(</span><span class="k">const</span> <span class="n">string</span><span class="o">&</span><span class="p">);</span> <span class="c1">// Good: const is not top level.</span>
+</pre></div>
+</div>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="portability-simd-intrinsics.html">portability-simd-intrinsics</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="readability-braces-around-statements.html">readability-braces-around-statements</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/readability-braces-around-statements.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/readability-braces-around-statements.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/readability-braces-around-statements.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/readability-braces-around-statements.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,93 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>clang-tidy - readability-braces-around-statements — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="readability-const-return-type" href="readability-const-return-type.html" />
+ <link rel="prev" title="readability-avoid-const-params-in-decls" href="readability-avoid-const-params-in-decls.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - readability-braces-around-statements</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="readability-avoid-const-params-in-decls.html">readability-avoid-const-params-in-decls</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="readability-const-return-type.html">readability-const-return-type</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="readability-braces-around-statements">
+<h1>readability-braces-around-statements<a class="headerlink" href="#readability-braces-around-statements" title="Permalink to this headline">¶</a></h1>
+<p><cite>google-readability-braces-around-statements</cite> redirects here as an alias for
+this check.</p>
+<p>Checks that bodies of <code class="docutils literal notranslate"><span class="pre">if</span></code> statements and loops (<code class="docutils literal notranslate"><span class="pre">for</span></code>, <code class="docutils literal notranslate"><span class="pre">do</span> <span class="pre">while</span></code>, and
+<code class="docutils literal notranslate"><span class="pre">while</span></code>) are inside braces.</p>
+<p>Before:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">if</span> <span class="p">(</span><span class="n">condition</span><span class="p">)</span>
+ <span class="n">statement</span><span class="p">;</span>
+</pre></div>
+</div>
+<p>After:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">if</span> <span class="p">(</span><span class="n">condition</span><span class="p">)</span> <span class="p">{</span>
+ <span class="n">statement</span><span class="p">;</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+<div class="section" id="options">
+<h2>Options<a class="headerlink" href="#options" title="Permalink to this headline">¶</a></h2>
+<dl class="option">
+<dt id="cmdoption-arg-shortstatementlines">
+<code class="descname">ShortStatementLines</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-shortstatementlines" title="Permalink to this definition">¶</a></dt>
+<dd><p>Defines the minimal number of lines that the statement should have in order
+to trigger this check.</p>
+<p>The number of lines is counted from the end of condition or initial keyword
+(<code class="docutils literal notranslate"><span class="pre">do</span></code>/<code class="docutils literal notranslate"><span class="pre">else</span></code>) until the last line of the inner statement. Default value
+<cite>0</cite> means that braces will be added to all statements (not having them
+already).</p>
+</dd></dl>
+
+</div>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="readability-avoid-const-params-in-decls.html">readability-avoid-const-params-in-decls</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="readability-const-return-type.html">readability-const-return-type</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/readability-const-return-type.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/readability-const-return-type.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/readability-const-return-type.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/readability-const-return-type.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,81 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>clang-tidy - readability-const-return-type — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="readability-container-size-empty" href="readability-container-size-empty.html" />
+ <link rel="prev" title="readability-braces-around-statements" href="readability-braces-around-statements.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - readability-const-return-type</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="readability-braces-around-statements.html">readability-braces-around-statements</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="readability-container-size-empty.html">readability-container-size-empty</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="readability-const-return-type">
+<h1>readability-const-return-type<a class="headerlink" href="#readability-const-return-type" title="Permalink to this headline">¶</a></h1>
+<p>Checks for functions with a <code class="docutils literal notranslate"><span class="pre">const</span></code>-qualified return type and recommends
+removal of the <code class="docutils literal notranslate"><span class="pre">const</span></code> keyword. Such use of <cite>const</cite> is usually superfluous,
+and can prevent valuable compiler optimizations. Does not (yet) fix trailing
+return types.</p>
+<p>Examples:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">const</span> <span class="kt">int</span> <span class="nf">foo</span><span class="p">();</span>
+<span class="k">const</span> <span class="n">Clazz</span> <span class="nf">foo</span><span class="p">();</span>
+<span class="n">Clazz</span> <span class="o">*</span><span class="k">const</span> <span class="nf">foo</span><span class="p">();</span>
+</pre></div>
+</div>
+<p>Note that this applies strictly to top-level qualification, which excludes
+pointers or references to const values. For example, these are fine:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">const</span> <span class="kt">int</span><span class="o">*</span> <span class="nf">foo</span><span class="p">();</span>
+<span class="k">const</span> <span class="kt">int</span><span class="o">&</span> <span class="n">foo</span><span class="p">();</span>
+<span class="k">const</span> <span class="n">Clazz</span><span class="o">*</span> <span class="nf">foo</span><span class="p">();</span>
+</pre></div>
+</div>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="readability-braces-around-statements.html">readability-braces-around-statements</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="readability-container-size-empty.html">readability-container-size-empty</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/readability-container-size-empty.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/readability-container-size-empty.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/readability-container-size-empty.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/readability-container-size-empty.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,80 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>clang-tidy - readability-container-size-empty — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="readability-convert-member-functions-to-static" href="readability-convert-member-functions-to-static.html" />
+ <link rel="prev" title="readability-const-return-type" href="readability-const-return-type.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - readability-container-size-empty</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="readability-const-return-type.html">readability-const-return-type</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="readability-convert-member-functions-to-static.html">readability-convert-member-functions-to-static</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="readability-container-size-empty">
+<h1>readability-container-size-empty<a class="headerlink" href="#readability-container-size-empty" title="Permalink to this headline">¶</a></h1>
+<p>Checks whether a call to the <code class="docutils literal notranslate"><span class="pre">size()</span></code> method can be replaced with a call to
+<code class="docutils literal notranslate"><span class="pre">empty()</span></code>.</p>
+<p>The emptiness of a container should be checked using the <code class="docutils literal notranslate"><span class="pre">empty()</span></code> method
+instead of the <code class="docutils literal notranslate"><span class="pre">size()</span></code> method. It is not guaranteed that <code class="docutils literal notranslate"><span class="pre">size()</span></code> is a
+constant-time function, and it is generally more efficient and also shows
+clearer intent to use <code class="docutils literal notranslate"><span class="pre">empty()</span></code>. Furthermore some containers may implement
+the <code class="docutils literal notranslate"><span class="pre">empty()</span></code> method but not implement the <code class="docutils literal notranslate"><span class="pre">size()</span></code> method. Using
+<code class="docutils literal notranslate"><span class="pre">empty()</span></code> whenever possible makes it easier to switch to another container in
+the future.</p>
+<p>The check issues warning if a container has <code class="docutils literal notranslate"><span class="pre">size()</span></code> and <code class="docutils literal notranslate"><span class="pre">empty()</span></code> methods
+matching following signatures:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="n">size_type</span> <span class="nf">size</span><span class="p">()</span> <span class="k">const</span><span class="p">;</span>
+<span class="kt">bool</span> <span class="nf">empty</span><span class="p">()</span> <span class="k">const</span><span class="p">;</span>
+</pre></div>
+</div>
+<p><cite>size_type</cite> can be any kind of integer type.</p>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="readability-const-return-type.html">readability-const-return-type</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="readability-convert-member-functions-to-static.html">readability-convert-member-functions-to-static</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/readability-convert-member-functions-to-static.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/readability-convert-member-functions-to-static.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/readability-convert-member-functions-to-static.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/readability-convert-member-functions-to-static.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,71 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>clang-tidy - readability-convert-member-functions-to-static — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="readability-delete-null-pointer" href="readability-delete-null-pointer.html" />
+ <link rel="prev" title="readability-container-size-empty" href="readability-container-size-empty.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - readability-convert-member-functions-to-static</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="readability-container-size-empty.html">readability-container-size-empty</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="readability-delete-null-pointer.html">readability-delete-null-pointer</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="readability-convert-member-functions-to-static">
+<h1>readability-convert-member-functions-to-static<a class="headerlink" href="#readability-convert-member-functions-to-static" title="Permalink to this headline">¶</a></h1>
+<p>Finds non-static member functions that can be made <code class="docutils literal notranslate"><span class="pre">static</span></code>
+because the functions donât use <code class="docutils literal notranslate"><span class="pre">this</span></code>.</p>
+<p>After applying modifications as suggested by the check, runnnig the check again
+might find more opportunities to mark member functions <code class="docutils literal notranslate"><span class="pre">static</span></code>.</p>
+<p>After making a member function <code class="docutils literal notranslate"><span class="pre">static</span></code>, you might want to run the check
+<cite>readability-static-accessed-through-instance</cite> to replace calls like
+<code class="docutils literal notranslate"><span class="pre">Instance.method()</span></code> by <code class="docutils literal notranslate"><span class="pre">Class::method()</span></code>.</p>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="readability-container-size-empty.html">readability-container-size-empty</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="readability-delete-null-pointer.html">readability-delete-null-pointer</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/readability-delete-null-pointer.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/readability-delete-null-pointer.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/readability-delete-null-pointer.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/readability-delete-null-pointer.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,71 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>clang-tidy - readability-delete-null-pointer — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="readability-deleted-default" href="readability-deleted-default.html" />
+ <link rel="prev" title="readability-convert-member-functions-to-static" href="readability-convert-member-functions-to-static.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - readability-delete-null-pointer</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="readability-convert-member-functions-to-static.html">readability-convert-member-functions-to-static</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="readability-deleted-default.html">readability-deleted-default</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="readability-delete-null-pointer">
+<h1>readability-delete-null-pointer<a class="headerlink" href="#readability-delete-null-pointer" title="Permalink to this headline">¶</a></h1>
+<p>Checks the <code class="docutils literal notranslate"><span class="pre">if</span></code> statements where a pointerâs existence is checked and then deletes the pointer.
+The check is unnecessary as deleting a null pointer has no effect.</p>
+<div class="code c++ highlight-default notranslate"><div class="highlight"><pre><span></span><span class="nb">int</span> <span class="o">*</span><span class="n">p</span><span class="p">;</span>
+<span class="k">if</span> <span class="p">(</span><span class="n">p</span><span class="p">)</span>
+ <span class="n">delete</span> <span class="n">p</span><span class="p">;</span>
+</pre></div>
+</div>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="readability-convert-member-functions-to-static.html">readability-convert-member-functions-to-static</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="readability-deleted-default.html">readability-deleted-default</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/readability-deleted-default.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/readability-deleted-default.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/readability-deleted-default.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/readability-deleted-default.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,80 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>clang-tidy - readability-deleted-default — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="readability-else-after-return" href="readability-else-after-return.html" />
+ <link rel="prev" title="readability-delete-null-pointer" href="readability-delete-null-pointer.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - readability-deleted-default</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="readability-delete-null-pointer.html">readability-delete-null-pointer</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="readability-else-after-return.html">readability-else-after-return</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="readability-deleted-default">
+<h1>readability-deleted-default<a class="headerlink" href="#readability-deleted-default" title="Permalink to this headline">¶</a></h1>
+<p>Checks that constructors and assignment operators marked as <code class="docutils literal notranslate"><span class="pre">=</span> <span class="pre">default</span></code> are
+not actually deleted by the compiler.</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">class</span> <span class="nc">Example</span> <span class="p">{</span>
+<span class="k">public</span><span class="o">:</span>
+ <span class="c1">// This constructor is deleted because I is missing a default value.</span>
+ <span class="n">Example</span><span class="p">()</span> <span class="o">=</span> <span class="k">default</span><span class="p">;</span>
+ <span class="c1">// This is fine.</span>
+ <span class="n">Example</span><span class="p">(</span><span class="k">const</span> <span class="n">Example</span><span class="o">&</span> <span class="n">Other</span><span class="p">)</span> <span class="o">=</span> <span class="k">default</span><span class="p">;</span>
+ <span class="c1">// This operator is deleted because I cannot be assigned (it is const).</span>
+ <span class="n">Example</span><span class="o">&</span> <span class="k">operator</span><span class="o">=</span><span class="p">(</span><span class="k">const</span> <span class="n">Example</span><span class="o">&</span> <span class="n">Other</span><span class="p">)</span> <span class="o">=</span> <span class="k">default</span><span class="p">;</span>
+
+<span class="k">private</span><span class="o">:</span>
+ <span class="k">const</span> <span class="kt">int</span> <span class="n">I</span><span class="p">;</span>
+<span class="p">};</span>
+</pre></div>
+</div>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="readability-delete-null-pointer.html">readability-delete-null-pointer</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="readability-else-after-return.html">readability-else-after-return</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/readability-else-after-return.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/readability-else-after-return.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/readability-else-after-return.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/readability-else-after-return.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,115 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>clang-tidy - readability-else-after-return — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="readability-function-size" href="readability-function-size.html" />
+ <link rel="prev" title="readability-deleted-default" href="readability-deleted-default.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - readability-else-after-return</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="readability-deleted-default.html">readability-deleted-default</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="readability-function-size.html">readability-function-size</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="readability-else-after-return">
+<h1>readability-else-after-return<a class="headerlink" href="#readability-else-after-return" title="Permalink to this headline">¶</a></h1>
+<p><a class="reference external" href="https://llvm.org/docs/CodingStandards.html">LLVM Coding Standards</a> advises to
+reduce indentation where possible and where it makes understanding code easier.
+Early exit is one of the suggested enforcements of that. Please do not use
+<code class="docutils literal notranslate"><span class="pre">else</span></code> or <code class="docutils literal notranslate"><span class="pre">else</span> <span class="pre">if</span></code> after something that interrupts control flow - like
+<code class="docutils literal notranslate"><span class="pre">return</span></code>, <code class="docutils literal notranslate"><span class="pre">break</span></code>, <code class="docutils literal notranslate"><span class="pre">continue</span></code>, <code class="docutils literal notranslate"><span class="pre">throw</span></code>.</p>
+<p>The following piece of code illustrates how the check works. This piece of code:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="kt">void</span> <span class="nf">foo</span><span class="p">(</span><span class="kt">int</span> <span class="n">Value</span><span class="p">)</span> <span class="p">{</span>
+ <span class="kt">int</span> <span class="n">Local</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span>
+ <span class="k">for</span> <span class="p">(</span><span class="kt">int</span> <span class="n">i</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span> <span class="n">i</span> <span class="o"><</span> <span class="mi">42</span><span class="p">;</span> <span class="n">i</span><span class="o">++</span><span class="p">)</span> <span class="p">{</span>
+ <span class="k">if</span> <span class="p">(</span><span class="n">Value</span> <span class="o">==</span> <span class="mi">1</span><span class="p">)</span> <span class="p">{</span>
+ <span class="k">return</span><span class="p">;</span>
+ <span class="p">}</span> <span class="k">else</span> <span class="p">{</span>
+ <span class="n">Local</span><span class="o">++</span><span class="p">;</span>
+ <span class="p">}</span>
+
+ <span class="k">if</span> <span class="p">(</span><span class="n">Value</span> <span class="o">==</span> <span class="mi">2</span><span class="p">)</span>
+ <span class="k">continue</span><span class="p">;</span>
+ <span class="k">else</span>
+ <span class="n">Local</span><span class="o">++</span><span class="p">;</span>
+
+ <span class="k">if</span> <span class="p">(</span><span class="n">Value</span> <span class="o">==</span> <span class="mi">3</span><span class="p">)</span> <span class="p">{</span>
+ <span class="k">throw</span> <span class="mi">42</span><span class="p">;</span>
+ <span class="p">}</span> <span class="k">else</span> <span class="p">{</span>
+ <span class="n">Local</span><span class="o">++</span><span class="p">;</span>
+ <span class="p">}</span>
+ <span class="p">}</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+<p>Would be transformed into:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="kt">void</span> <span class="nf">foo</span><span class="p">(</span><span class="kt">int</span> <span class="n">Value</span><span class="p">)</span> <span class="p">{</span>
+ <span class="kt">int</span> <span class="n">Local</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span>
+ <span class="k">for</span> <span class="p">(</span><span class="kt">int</span> <span class="n">i</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span> <span class="n">i</span> <span class="o"><</span> <span class="mi">42</span><span class="p">;</span> <span class="n">i</span><span class="o">++</span><span class="p">)</span> <span class="p">{</span>
+ <span class="k">if</span> <span class="p">(</span><span class="n">Value</span> <span class="o">==</span> <span class="mi">1</span><span class="p">)</span> <span class="p">{</span>
+ <span class="k">return</span><span class="p">;</span>
+ <span class="p">}</span>
+ <span class="n">Local</span><span class="o">++</span><span class="p">;</span>
+
+ <span class="k">if</span> <span class="p">(</span><span class="n">Value</span> <span class="o">==</span> <span class="mi">2</span><span class="p">)</span>
+ <span class="k">continue</span><span class="p">;</span>
+ <span class="n">Local</span><span class="o">++</span><span class="p">;</span>
+
+ <span class="k">if</span> <span class="p">(</span><span class="n">Value</span> <span class="o">==</span> <span class="mi">3</span><span class="p">)</span> <span class="p">{</span>
+ <span class="k">throw</span> <span class="mi">42</span><span class="p">;</span>
+ <span class="p">}</span>
+ <span class="n">Local</span><span class="o">++</span><span class="p">;</span>
+ <span class="p">}</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+<p>This check helps to enforce this <a class="reference external" href="https://llvm.org/docs/CodingStandards.html#don-t-use-else-after-a-return">LLVM Coding Standards recommendation</a>.</p>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="readability-deleted-default.html">readability-deleted-default</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="readability-function-size.html">readability-function-size</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/readability-function-size.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/readability-function-size.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/readability-function-size.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/readability-function-size.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,115 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>clang-tidy - readability-function-size — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="readability-identifier-naming" href="readability-identifier-naming.html" />
+ <link rel="prev" title="readability-else-after-return" href="readability-else-after-return.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - readability-function-size</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="readability-else-after-return.html">readability-else-after-return</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="readability-identifier-naming.html">readability-identifier-naming</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="readability-function-size">
+<h1>readability-function-size<a class="headerlink" href="#readability-function-size" title="Permalink to this headline">¶</a></h1>
+<p><cite>google-readability-function-size</cite> redirects here as an alias for this check.</p>
+<p>Checks for large functions based on various metrics.</p>
+<div class="section" id="options">
+<h2>Options<a class="headerlink" href="#options" title="Permalink to this headline">¶</a></h2>
+<dl class="option">
+<dt id="cmdoption-arg-linethreshold">
+<code class="descname">LineThreshold</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-linethreshold" title="Permalink to this definition">¶</a></dt>
+<dd><p>Flag functions exceeding this number of lines. The default is <cite>-1</cite> (ignore
+the number of lines).</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-statementthreshold">
+<code class="descname">StatementThreshold</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-statementthreshold" title="Permalink to this definition">¶</a></dt>
+<dd><p>Flag functions exceeding this number of statements. This may differ
+significantly from the number of lines for macro-heavy code. The default is
+<cite>800</cite>.</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-branchthreshold">
+<code class="descname">BranchThreshold</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-branchthreshold" title="Permalink to this definition">¶</a></dt>
+<dd><p>Flag functions exceeding this number of control statements. The default is
+<cite>-1</cite> (ignore the number of branches).</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-parameterthreshold">
+<code class="descname">ParameterThreshold</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-parameterthreshold" title="Permalink to this definition">¶</a></dt>
+<dd><p>Flag functions that exceed a specified number of parameters. The default
+is <cite>-1</cite> (ignore the number of parameters).</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-nestingthreshold">
+<code class="descname">NestingThreshold</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-nestingthreshold" title="Permalink to this definition">¶</a></dt>
+<dd><p>Flag compound statements which create next nesting level after
+<cite>NestingThreshold</cite>. This may differ significantly from the expected value
+for macro-heavy code. The default is <cite>-1</cite> (ignore the nesting level).</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-variablethreshold">
+<code class="descname">VariableThreshold</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-variablethreshold" title="Permalink to this definition">¶</a></dt>
+<dd><p>Flag functions exceeding this number of variables declared in the body.
+The default is <cite>-1</cite> (ignore the number of variables).
+Please note that function parameters and variables declared in lambdas,
+GNU Statement Expressions, and nested class inline functions are not counted.</p>
+</dd></dl>
+
+</div>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="readability-else-after-return.html">readability-else-after-return</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="readability-identifier-naming.html">readability-identifier-naming</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/readability-identifier-naming.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/readability-identifier-naming.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/readability-identifier-naming.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/readability-identifier-naming.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,2130 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>clang-tidy - readability-identifier-naming — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="readability-implicit-bool-conversion" href="readability-implicit-bool-conversion.html" />
+ <link rel="prev" title="readability-function-size" href="readability-function-size.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - readability-identifier-naming</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="readability-function-size.html">readability-function-size</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="readability-implicit-bool-conversion.html">readability-implicit-bool-conversion</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="readability-identifier-naming">
+<h1>readability-identifier-naming<a class="headerlink" href="#readability-identifier-naming" title="Permalink to this headline">¶</a></h1>
+<p>Checks for identifiers naming style mismatch.</p>
+<p>This check will try to enforce coding guidelines on the identifiers naming. It
+supports one of the following casing types and tries to convert from one to
+another if a mismatch is detected</p>
+<p>Casing types inclde:</p>
+<blockquote>
+<div><ul class="simple">
+<li><code class="docutils literal notranslate"><span class="pre">lower_case</span></code>,</li>
+<li><code class="docutils literal notranslate"><span class="pre">UPPER_CASE</span></code>,</li>
+<li><code class="docutils literal notranslate"><span class="pre">camelBack</span></code>,</li>
+<li><code class="docutils literal notranslate"><span class="pre">CamelCase</span></code>,</li>
+<li><code class="docutils literal notranslate"><span class="pre">camel_Snake_Back</span></code>,</li>
+<li><code class="docutils literal notranslate"><span class="pre">Camel_Snake_Case</span></code>,</li>
+<li><code class="docutils literal notranslate"><span class="pre">aNy_CasE</span></code>.</li>
+</ul>
+</div></blockquote>
+<p>It also supports a fixed prefix and suffix that will be prepended or appended
+to the identifiers, regardless of the casing.</p>
+<p>Many configuration options are available, in order to be able to create
+different rules for different kinds of identifiers. In general, the rules are
+falling back to a more generic rule if the specific case is not configured.</p>
+<div class="section" id="options">
+<h2>Options<a class="headerlink" href="#options" title="Permalink to this headline">¶</a></h2>
+<p>The following options are describe below:</p>
+<blockquote>
+<div><ul class="simple">
+<li><a class="reference internal" href="#cmdoption-arg-abstractclasscase"><code class="xref std std-option docutils literal notranslate"><span class="pre">AbstractClassCase</span></code></a>, <a class="reference internal" href="#cmdoption-arg-abstractclassprefix"><code class="xref std std-option docutils literal notranslate"><span class="pre">AbstractClassPrefix</span></code></a>, <a class="reference internal" href="#cmdoption-arg-abstractclasssuffix"><code class="xref std std-option docutils literal notranslate"><span class="pre">AbstractClassSuffix</span></code></a></li>
+<li><a class="reference internal" href="#cmdoption-arg-classcase"><code class="xref std std-option docutils literal notranslate"><span class="pre">ClassCase</span></code></a>, <a class="reference internal" href="#cmdoption-arg-classprefix"><code class="xref std std-option docutils literal notranslate"><span class="pre">ClassPrefix</span></code></a>, <a class="reference internal" href="#cmdoption-arg-classsuffix"><code class="xref std std-option docutils literal notranslate"><span class="pre">ClassSuffix</span></code></a></li>
+<li><a class="reference internal" href="#cmdoption-arg-classconstantcase"><code class="xref std std-option docutils literal notranslate"><span class="pre">ClassConstantCase</span></code></a>, <a class="reference internal" href="#cmdoption-arg-classconstantprefix"><code class="xref std std-option docutils literal notranslate"><span class="pre">ClassConstantPrefix</span></code></a>, <a class="reference internal" href="#cmdoption-arg-classconstantsuffix"><code class="xref std std-option docutils literal notranslate"><span class="pre">ClassConstantSuffix</span></code></a></li>
+<li><a class="reference internal" href="#cmdoption-arg-classmembercase"><code class="xref std std-option docutils literal notranslate"><span class="pre">ClassMemberCase</span></code></a>, <a class="reference internal" href="#cmdoption-arg-classmemberprefix"><code class="xref std std-option docutils literal notranslate"><span class="pre">ClassMemberPrefix</span></code></a>, <a class="reference internal" href="#cmdoption-arg-classmembersuffix"><code class="xref std std-option docutils literal notranslate"><span class="pre">ClassMemberSuffix</span></code></a></li>
+<li><a class="reference internal" href="#cmdoption-arg-classmethodcase"><code class="xref std std-option docutils literal notranslate"><span class="pre">ClassMethodCase</span></code></a>, <a class="reference internal" href="#cmdoption-arg-classmethodprefix"><code class="xref std std-option docutils literal notranslate"><span class="pre">ClassMethodPrefix</span></code></a>, <a class="reference internal" href="#cmdoption-arg-classmethodsuffix"><code class="xref std std-option docutils literal notranslate"><span class="pre">ClassMethodSuffix</span></code></a></li>
+<li><a class="reference internal" href="#cmdoption-arg-constantcase"><code class="xref std std-option docutils literal notranslate"><span class="pre">ConstantCase</span></code></a>, <a class="reference internal" href="#cmdoption-arg-constantprefix"><code class="xref std std-option docutils literal notranslate"><span class="pre">ConstantPrefix</span></code></a>, <a class="reference internal" href="#cmdoption-arg-constantsuffix"><code class="xref std std-option docutils literal notranslate"><span class="pre">ConstantSuffix</span></code></a></li>
+<li><a class="reference internal" href="#cmdoption-arg-constantmembercase"><code class="xref std std-option docutils literal notranslate"><span class="pre">ConstantMemberCase</span></code></a>, <a class="reference internal" href="#cmdoption-arg-constantmemberprefix"><code class="xref std std-option docutils literal notranslate"><span class="pre">ConstantMemberPrefix</span></code></a>, <a class="reference internal" href="#cmdoption-arg-constantmembersuffix"><code class="xref std std-option docutils literal notranslate"><span class="pre">ConstantMemberSuffix</span></code></a></li>
+<li><a class="reference internal" href="#cmdoption-arg-constantparametercase"><code class="xref std std-option docutils literal notranslate"><span class="pre">ConstantParameterCase</span></code></a>, <a class="reference internal" href="#cmdoption-arg-constantparameterprefix"><code class="xref std std-option docutils literal notranslate"><span class="pre">ConstantParameterPrefix</span></code></a>, <a class="reference internal" href="#cmdoption-arg-constantparametersuffix"><code class="xref std std-option docutils literal notranslate"><span class="pre">ConstantParameterSuffix</span></code></a></li>
+<li><a class="reference internal" href="#cmdoption-arg-constantpointerparametercase"><code class="xref std std-option docutils literal notranslate"><span class="pre">ConstantPointerParameterCase</span></code></a>, <a class="reference internal" href="#cmdoption-arg-constantpointerparameterprefix"><code class="xref std std-option docutils literal notranslate"><span class="pre">ConstantPointerParameterPrefix</span></code></a>, <a class="reference internal" href="#cmdoption-arg-constantpointerparametersuffix"><code class="xref std std-option docutils literal notranslate"><span class="pre">ConstantPointerParameterSuffix</span></code></a></li>
+<li><a class="reference internal" href="#cmdoption-arg-constexprfunctioncase"><code class="xref std std-option docutils literal notranslate"><span class="pre">ConstexprFunctionCase</span></code></a>, <a class="reference internal" href="#cmdoption-arg-constexprfunctionprefix"><code class="xref std std-option docutils literal notranslate"><span class="pre">ConstexprFunctionPrefix</span></code></a>, <a class="reference internal" href="#cmdoption-arg-constexprfunctionsuffix"><code class="xref std std-option docutils literal notranslate"><span class="pre">ConstexprFunctionSuffix</span></code></a></li>
+<li><a class="reference internal" href="#cmdoption-arg-constexprmethodcase"><code class="xref std std-option docutils literal notranslate"><span class="pre">ConstexprMethodCase</span></code></a>, <a class="reference internal" href="#cmdoption-arg-constexprmethodprefix"><code class="xref std std-option docutils literal notranslate"><span class="pre">ConstexprMethodPrefix</span></code></a>, <a class="reference internal" href="#cmdoption-arg-constexprmethodsuffix"><code class="xref std std-option docutils literal notranslate"><span class="pre">ConstexprMethodSuffix</span></code></a></li>
+<li><a class="reference internal" href="#cmdoption-arg-constexprvariablecase"><code class="xref std std-option docutils literal notranslate"><span class="pre">ConstexprVariableCase</span></code></a>, <a class="reference internal" href="#cmdoption-arg-constexprvariableprefix"><code class="xref std std-option docutils literal notranslate"><span class="pre">ConstexprVariablePrefix</span></code></a>, <a class="reference internal" href="#cmdoption-arg-constexprvariablesuffix"><code class="xref std std-option docutils literal notranslate"><span class="pre">ConstexprVariableSuffix</span></code></a></li>
+<li><a class="reference internal" href="#cmdoption-arg-enumcase"><code class="xref std std-option docutils literal notranslate"><span class="pre">EnumCase</span></code></a>, <a class="reference internal" href="#cmdoption-arg-enumprefix"><code class="xref std std-option docutils literal notranslate"><span class="pre">EnumPrefix</span></code></a>, <a class="reference internal" href="#cmdoption-arg-enumsuffix"><code class="xref std std-option docutils literal notranslate"><span class="pre">EnumSuffix</span></code></a></li>
+<li><a class="reference internal" href="#cmdoption-arg-enumconstantcase"><code class="xref std std-option docutils literal notranslate"><span class="pre">EnumConstantCase</span></code></a>, <a class="reference internal" href="#cmdoption-arg-enumconstantprefix"><code class="xref std std-option docutils literal notranslate"><span class="pre">EnumConstantPrefix</span></code></a>, <a class="reference internal" href="#cmdoption-arg-enumconstantsuffix"><code class="xref std std-option docutils literal notranslate"><span class="pre">EnumConstantSuffix</span></code></a></li>
+<li><a class="reference internal" href="#cmdoption-arg-functioncase"><code class="xref std std-option docutils literal notranslate"><span class="pre">FunctionCase</span></code></a>, <a class="reference internal" href="#cmdoption-arg-functionprefix"><code class="xref std std-option docutils literal notranslate"><span class="pre">FunctionPrefix</span></code></a>, <a class="reference internal" href="#cmdoption-arg-functionsuffix"><code class="xref std std-option docutils literal notranslate"><span class="pre">FunctionSuffix</span></code></a></li>
+<li><a class="reference internal" href="#cmdoption-arg-globalconstantcase"><code class="xref std std-option docutils literal notranslate"><span class="pre">GlobalConstantCase</span></code></a>, <a class="reference internal" href="#cmdoption-arg-globalconstantprefix"><code class="xref std std-option docutils literal notranslate"><span class="pre">GlobalConstantPrefix</span></code></a>, <a class="reference internal" href="#cmdoption-arg-globalconstantsuffix"><code class="xref std std-option docutils literal notranslate"><span class="pre">GlobalConstantSuffix</span></code></a></li>
+<li><a class="reference internal" href="#cmdoption-arg-globalconstantpointercase"><code class="xref std std-option docutils literal notranslate"><span class="pre">GlobalConstantPointerCase</span></code></a>, <a class="reference internal" href="#cmdoption-arg-globalconstantpointerprefix"><code class="xref std std-option docutils literal notranslate"><span class="pre">GlobalConstantPointerPrefix</span></code></a>, <a class="reference internal" href="#cmdoption-arg-globalconstantpointersuffix"><code class="xref std std-option docutils literal notranslate"><span class="pre">GlobalConstantPointerSuffix</span></code></a></li>
+<li><a class="reference internal" href="#cmdoption-arg-globalfunctioncase"><code class="xref std std-option docutils literal notranslate"><span class="pre">GlobalFunctionCase</span></code></a>, <a class="reference internal" href="#cmdoption-arg-globalfunctionprefix"><code class="xref std std-option docutils literal notranslate"><span class="pre">GlobalFunctionPrefix</span></code></a>, <a class="reference internal" href="#cmdoption-arg-globalfunctionsuffix"><code class="xref std std-option docutils literal notranslate"><span class="pre">GlobalFunctionSuffix</span></code></a></li>
+<li><a class="reference internal" href="#cmdoption-arg-globalpointercase"><code class="xref std std-option docutils literal notranslate"><span class="pre">GlobalPointerCase</span></code></a>, <a class="reference internal" href="#cmdoption-arg-globalpointerprefix"><code class="xref std std-option docutils literal notranslate"><span class="pre">GlobalPointerPrefix</span></code></a>, <a class="reference internal" href="#cmdoption-arg-globalpointersuffix"><code class="xref std std-option docutils literal notranslate"><span class="pre">GlobalPointerSuffix</span></code></a></li>
+<li><a class="reference internal" href="#cmdoption-arg-globalvariablecase"><code class="xref std std-option docutils literal notranslate"><span class="pre">GlobalVariableCase</span></code></a>, <a class="reference internal" href="#cmdoption-arg-globalvariableprefix"><code class="xref std std-option docutils literal notranslate"><span class="pre">GlobalVariablePrefix</span></code></a>, <a class="reference internal" href="#cmdoption-arg-globalvariablesuffix"><code class="xref std std-option docutils literal notranslate"><span class="pre">GlobalVariableSuffix</span></code></a></li>
+<li><a class="reference internal" href="#cmdoption-arg-inlinenamespacecase"><code class="xref std std-option docutils literal notranslate"><span class="pre">InlineNamespaceCase</span></code></a>, <a class="reference internal" href="#cmdoption-arg-inlinenamespaceprefix"><code class="xref std std-option docutils literal notranslate"><span class="pre">InlineNamespacePrefix</span></code></a>, <a class="reference internal" href="#cmdoption-arg-inlinenamespacesuffix"><code class="xref std std-option docutils literal notranslate"><span class="pre">InlineNamespaceSuffix</span></code></a></li>
+<li><a class="reference internal" href="#cmdoption-arg-localconstantcase"><code class="xref std std-option docutils literal notranslate"><span class="pre">LocalConstantCase</span></code></a>, <a class="reference internal" href="#cmdoption-arg-localconstantprefix"><code class="xref std std-option docutils literal notranslate"><span class="pre">LocalConstantPrefix</span></code></a>, <a class="reference internal" href="#cmdoption-arg-localconstantsuffix"><code class="xref std std-option docutils literal notranslate"><span class="pre">LocalConstantSuffix</span></code></a></li>
+<li><a class="reference internal" href="#cmdoption-arg-localconstantpointercase"><code class="xref std std-option docutils literal notranslate"><span class="pre">LocalConstantPointerCase</span></code></a>, <a class="reference internal" href="#cmdoption-arg-localconstantpointerprefix"><code class="xref std std-option docutils literal notranslate"><span class="pre">LocalConstantPointerPrefix</span></code></a>, <a class="reference internal" href="#cmdoption-arg-localconstantpointersuffix"><code class="xref std std-option docutils literal notranslate"><span class="pre">LocalConstantPointerSuffix</span></code></a></li>
+<li><a class="reference internal" href="#cmdoption-arg-localpointercase"><code class="xref std std-option docutils literal notranslate"><span class="pre">LocalPointerCase</span></code></a>, <a class="reference internal" href="#cmdoption-arg-localpointerprefix"><code class="xref std std-option docutils literal notranslate"><span class="pre">LocalPointerPrefix</span></code></a>, <a class="reference internal" href="#cmdoption-arg-localpointersuffix"><code class="xref std std-option docutils literal notranslate"><span class="pre">LocalPointerSuffix</span></code></a></li>
+<li><a class="reference internal" href="#cmdoption-arg-localvariablecase"><code class="xref std std-option docutils literal notranslate"><span class="pre">LocalVariableCase</span></code></a>, <a class="reference internal" href="#cmdoption-arg-localvariableprefix"><code class="xref std std-option docutils literal notranslate"><span class="pre">LocalVariablePrefix</span></code></a>, <a class="reference internal" href="#cmdoption-arg-localvariablesuffix"><code class="xref std std-option docutils literal notranslate"><span class="pre">LocalVariableSuffix</span></code></a></li>
+<li><a class="reference internal" href="#cmdoption-arg-membercase"><code class="xref std std-option docutils literal notranslate"><span class="pre">MemberCase</span></code></a>, <a class="reference internal" href="#cmdoption-arg-memberprefix"><code class="xref std std-option docutils literal notranslate"><span class="pre">MemberPrefix</span></code></a>, <a class="reference internal" href="#cmdoption-arg-membersuffix"><code class="xref std std-option docutils literal notranslate"><span class="pre">MemberSuffix</span></code></a></li>
+<li><a class="reference internal" href="#cmdoption-arg-methodcase"><code class="xref std std-option docutils literal notranslate"><span class="pre">MethodCase</span></code></a>, <a class="reference internal" href="#cmdoption-arg-methodprefix"><code class="xref std std-option docutils literal notranslate"><span class="pre">MethodPrefix</span></code></a>, <a class="reference internal" href="#cmdoption-arg-methodsuffix"><code class="xref std std-option docutils literal notranslate"><span class="pre">MethodSuffix</span></code></a></li>
+<li><a class="reference internal" href="#cmdoption-arg-namespacecase"><code class="xref std std-option docutils literal notranslate"><span class="pre">NamespaceCase</span></code></a>, <a class="reference internal" href="#cmdoption-arg-namespaceprefix"><code class="xref std std-option docutils literal notranslate"><span class="pre">NamespacePrefix</span></code></a>, <a class="reference internal" href="#cmdoption-arg-namespacesuffix"><code class="xref std std-option docutils literal notranslate"><span class="pre">NamespaceSuffix</span></code></a></li>
+<li><a class="reference internal" href="#cmdoption-arg-parametercase"><code class="xref std std-option docutils literal notranslate"><span class="pre">ParameterCase</span></code></a>, <a class="reference internal" href="#cmdoption-arg-parameterprefix"><code class="xref std std-option docutils literal notranslate"><span class="pre">ParameterPrefix</span></code></a>, <a class="reference internal" href="#cmdoption-arg-parametersuffix"><code class="xref std std-option docutils literal notranslate"><span class="pre">ParameterSuffix</span></code></a></li>
+<li><a class="reference internal" href="#cmdoption-arg-parameterpackcase"><code class="xref std std-option docutils literal notranslate"><span class="pre">ParameterPackCase</span></code></a>, <a class="reference internal" href="#cmdoption-arg-parameterpackprefix"><code class="xref std std-option docutils literal notranslate"><span class="pre">ParameterPackPrefix</span></code></a>, <a class="reference internal" href="#cmdoption-arg-parameterpacksuffix"><code class="xref std std-option docutils literal notranslate"><span class="pre">ParameterPackSuffix</span></code></a></li>
+<li><a class="reference internal" href="#cmdoption-arg-pointerparametercase"><code class="xref std std-option docutils literal notranslate"><span class="pre">PointerParameterCase</span></code></a>, <a class="reference internal" href="#cmdoption-arg-pointerparameterprefix"><code class="xref std std-option docutils literal notranslate"><span class="pre">PointerParameterPrefix</span></code></a>, <a class="reference internal" href="#cmdoption-arg-pointerparametersuffix"><code class="xref std std-option docutils literal notranslate"><span class="pre">PointerParameterSuffix</span></code></a></li>
+<li><a class="reference internal" href="#cmdoption-arg-privatemembercase"><code class="xref std std-option docutils literal notranslate"><span class="pre">PrivateMemberCase</span></code></a>, <a class="reference internal" href="#cmdoption-arg-privatememberprefix"><code class="xref std std-option docutils literal notranslate"><span class="pre">PrivateMemberPrefix</span></code></a>, <a class="reference internal" href="#cmdoption-arg-privatemembersuffix"><code class="xref std std-option docutils literal notranslate"><span class="pre">PrivateMemberSuffix</span></code></a></li>
+<li><a class="reference internal" href="#cmdoption-arg-privatemethodcase"><code class="xref std std-option docutils literal notranslate"><span class="pre">PrivateMethodCase</span></code></a>, <a class="reference internal" href="#cmdoption-arg-privatemethodprefix"><code class="xref std std-option docutils literal notranslate"><span class="pre">PrivateMethodPrefix</span></code></a>, <a class="reference internal" href="#cmdoption-arg-privatemethodsuffix"><code class="xref std std-option docutils literal notranslate"><span class="pre">PrivateMethodSuffix</span></code></a></li>
+<li><a class="reference internal" href="#cmdoption-arg-protectedmembercase"><code class="xref std std-option docutils literal notranslate"><span class="pre">ProtectedMemberCase</span></code></a>, <a class="reference internal" href="#cmdoption-arg-protectedmemberprefix"><code class="xref std std-option docutils literal notranslate"><span class="pre">ProtectedMemberPrefix</span></code></a>, <a class="reference internal" href="#cmdoption-arg-protectedmembersuffix"><code class="xref std std-option docutils literal notranslate"><span class="pre">ProtectedMemberSuffix</span></code></a></li>
+<li><a class="reference internal" href="#cmdoption-arg-protectedmethodcase"><code class="xref std std-option docutils literal notranslate"><span class="pre">ProtectedMethodCase</span></code></a>, <a class="reference internal" href="#cmdoption-arg-protectedmethodprefix"><code class="xref std std-option docutils literal notranslate"><span class="pre">ProtectedMethodPrefix</span></code></a>, <a class="reference internal" href="#cmdoption-arg-protectedmethodsuffix"><code class="xref std std-option docutils literal notranslate"><span class="pre">ProtectedMethodSuffix</span></code></a></li>
+<li><a class="reference internal" href="#cmdoption-arg-publicmembercase"><code class="xref std std-option docutils literal notranslate"><span class="pre">PublicMemberCase</span></code></a>, <a class="reference internal" href="#cmdoption-arg-publicmemberprefix"><code class="xref std std-option docutils literal notranslate"><span class="pre">PublicMemberPrefix</span></code></a>, <a class="reference internal" href="#cmdoption-arg-publicmembersuffix"><code class="xref std std-option docutils literal notranslate"><span class="pre">PublicMemberSuffix</span></code></a></li>
+<li><a class="reference internal" href="#cmdoption-arg-publicmethodcase"><code class="xref std std-option docutils literal notranslate"><span class="pre">PublicMethodCase</span></code></a>, <a class="reference internal" href="#cmdoption-arg-publicmethodprefix"><code class="xref std std-option docutils literal notranslate"><span class="pre">PublicMethodPrefix</span></code></a>, <a class="reference internal" href="#cmdoption-arg-publicmethodsuffix"><code class="xref std std-option docutils literal notranslate"><span class="pre">PublicMethodSuffix</span></code></a></li>
+<li><a class="reference internal" href="#cmdoption-arg-staticconstantcase"><code class="xref std std-option docutils literal notranslate"><span class="pre">StaticConstantCase</span></code></a>, <a class="reference internal" href="#cmdoption-arg-staticconstantprefix"><code class="xref std std-option docutils literal notranslate"><span class="pre">StaticConstantPrefix</span></code></a>, <a class="reference internal" href="#cmdoption-arg-staticconstantsuffix"><code class="xref std std-option docutils literal notranslate"><span class="pre">StaticConstantSuffix</span></code></a></li>
+<li><a class="reference internal" href="#cmdoption-arg-staticvariablecase"><code class="xref std std-option docutils literal notranslate"><span class="pre">StaticVariableCase</span></code></a>, <a class="reference internal" href="#cmdoption-arg-staticvariableprefix"><code class="xref std std-option docutils literal notranslate"><span class="pre">StaticVariablePrefix</span></code></a>, <a class="reference internal" href="#cmdoption-arg-staticvariablesuffix"><code class="xref std std-option docutils literal notranslate"><span class="pre">StaticVariableSuffix</span></code></a></li>
+<li><a class="reference internal" href="#cmdoption-arg-structcase"><code class="xref std std-option docutils literal notranslate"><span class="pre">StructCase</span></code></a>, <a class="reference internal" href="#cmdoption-arg-structprefix"><code class="xref std std-option docutils literal notranslate"><span class="pre">StructPrefix</span></code></a>, <a class="reference internal" href="#cmdoption-arg-structsuffix"><code class="xref std std-option docutils literal notranslate"><span class="pre">StructSuffix</span></code></a></li>
+<li><a class="reference internal" href="#cmdoption-arg-templateparametercase"><code class="xref std std-option docutils literal notranslate"><span class="pre">TemplateParameterCase</span></code></a>, <a class="reference internal" href="#cmdoption-arg-templateparameterprefix"><code class="xref std std-option docutils literal notranslate"><span class="pre">TemplateParameterPrefix</span></code></a>, <a class="reference internal" href="#cmdoption-arg-templateparametersuffix"><code class="xref std std-option docutils literal notranslate"><span class="pre">TemplateParameterSuffix</span></code></a></li>
+<li><a class="reference internal" href="#cmdoption-arg-templatetemplateparametercase"><code class="xref std std-option docutils literal notranslate"><span class="pre">TemplateTemplateParameterCase</span></code></a>, <a class="reference internal" href="#cmdoption-arg-templatetemplateparameterprefix"><code class="xref std std-option docutils literal notranslate"><span class="pre">TemplateTemplateParameterPrefix</span></code></a>, <a class="reference internal" href="#cmdoption-arg-templatetemplateparametersuffix"><code class="xref std std-option docutils literal notranslate"><span class="pre">TemplateTemplateParameterSuffix</span></code></a></li>
+<li><a class="reference internal" href="#cmdoption-arg-typealiascase"><code class="xref std std-option docutils literal notranslate"><span class="pre">TypeAliasCase</span></code></a>, <a class="reference internal" href="#cmdoption-arg-typealiasprefix"><code class="xref std std-option docutils literal notranslate"><span class="pre">TypeAliasPrefix</span></code></a>, <a class="reference internal" href="#cmdoption-arg-typealiassuffix"><code class="xref std std-option docutils literal notranslate"><span class="pre">TypeAliasSuffix</span></code></a></li>
+<li><a class="reference internal" href="#cmdoption-arg-typedefcase"><code class="xref std std-option docutils literal notranslate"><span class="pre">TypedefCase</span></code></a>, <a class="reference internal" href="#cmdoption-arg-typedefprefix"><code class="xref std std-option docutils literal notranslate"><span class="pre">TypedefPrefix</span></code></a>, <a class="reference internal" href="#cmdoption-arg-typedefsuffix"><code class="xref std std-option docutils literal notranslate"><span class="pre">TypedefSuffix</span></code></a></li>
+<li><a class="reference internal" href="#cmdoption-arg-typetemplateparametercase"><code class="xref std std-option docutils literal notranslate"><span class="pre">TypeTemplateParameterCase</span></code></a>, <a class="reference internal" href="#cmdoption-arg-typetemplateparameterprefix"><code class="xref std std-option docutils literal notranslate"><span class="pre">TypeTemplateParameterPrefix</span></code></a>, <a class="reference internal" href="#cmdoption-arg-typetemplateparametersuffix"><code class="xref std std-option docutils literal notranslate"><span class="pre">TypeTemplateParameterSuffix</span></code></a></li>
+<li><a class="reference internal" href="#cmdoption-arg-unioncase"><code class="xref std std-option docutils literal notranslate"><span class="pre">UnionCase</span></code></a>, <a class="reference internal" href="#cmdoption-arg-unionprefix"><code class="xref std std-option docutils literal notranslate"><span class="pre">UnionPrefix</span></code></a>, <a class="reference internal" href="#cmdoption-arg-unionsuffix"><code class="xref std std-option docutils literal notranslate"><span class="pre">UnionSuffix</span></code></a></li>
+<li><a class="reference internal" href="#cmdoption-arg-valuetemplateparametercase"><code class="xref std std-option docutils literal notranslate"><span class="pre">ValueTemplateParameterCase</span></code></a>, <a class="reference internal" href="#cmdoption-arg-valuetemplateparameterprefix"><code class="xref std std-option docutils literal notranslate"><span class="pre">ValueTemplateParameterPrefix</span></code></a>, <a class="reference internal" href="#cmdoption-arg-valuetemplateparametersuffix"><code class="xref std std-option docutils literal notranslate"><span class="pre">ValueTemplateParameterSuffix</span></code></a></li>
+<li><a class="reference internal" href="#cmdoption-arg-variablecase"><code class="xref std std-option docutils literal notranslate"><span class="pre">VariableCase</span></code></a>, <a class="reference internal" href="#cmdoption-arg-variableprefix"><code class="xref std std-option docutils literal notranslate"><span class="pre">VariablePrefix</span></code></a>, <a class="reference internal" href="#cmdoption-arg-variablesuffix"><code class="xref std std-option docutils literal notranslate"><span class="pre">VariableSuffix</span></code></a></li>
+<li><a class="reference internal" href="#cmdoption-arg-virtualmethodcase"><code class="xref std std-option docutils literal notranslate"><span class="pre">VirtualMethodCase</span></code></a>, <a class="reference internal" href="#cmdoption-arg-virtualmethodprefix"><code class="xref std std-option docutils literal notranslate"><span class="pre">VirtualMethodPrefix</span></code></a>, <a class="reference internal" href="#cmdoption-arg-virtualmethodsuffix"><code class="xref std std-option docutils literal notranslate"><span class="pre">VirtualMethodSuffix</span></code></a></li>
+</ul>
+</div></blockquote>
+<dl class="option">
+<dt id="cmdoption-arg-abstractclasscase">
+<code class="descname">AbstractClassCase</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-abstractclasscase" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure abstract class names conform to the
+selected casing.</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-abstractclassprefix">
+<code class="descname">AbstractClassPrefix</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-abstractclassprefix" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure abstract class names will add the
+prefixed with the given value (regardless of casing).</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-abstractclasssuffix">
+<code class="descname">AbstractClassSuffix</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-abstractclasssuffix" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure abstract class names will add the
+suffix with the given value (regardless of casing).</p>
+</dd></dl>
+
+<p>For example using values of:</p>
+<blockquote>
+<div><ul class="simple">
+<li>AbstractClassCase of <code class="docutils literal notranslate"><span class="pre">lower_case</span></code></li>
+<li>AbstractClassPrefix of <code class="docutils literal notranslate"><span class="pre">pre_</span></code></li>
+<li>AbstractClassSuffix of <code class="docutils literal notranslate"><span class="pre">_post</span></code></li>
+</ul>
+</div></blockquote>
+<p>Identifies and/or transforms abstract class names as follows:</p>
+<p>Before:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">class</span> <span class="nc">ABSTRACT_CLASS</span> <span class="p">{</span>
+<span class="k">public</span><span class="o">:</span>
+ <span class="n">ABSTRACT_CLASS</span><span class="p">();</span>
+<span class="p">};</span>
+</pre></div>
+</div>
+<p>After:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">class</span> <span class="nc">pre_abstract_class_post</span> <span class="p">{</span>
+<span class="k">public</span><span class="o">:</span>
+ <span class="n">pre_abstract_class_post</span><span class="p">();</span>
+<span class="p">};</span>
+</pre></div>
+</div>
+<dl class="option">
+<dt id="cmdoption-arg-classcase">
+<code class="descname">ClassCase</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-classcase" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure class names conform to the
+selected casing.</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-classprefix">
+<code class="descname">ClassPrefix</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-classprefix" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure class names will add the
+prefixed with the given value (regardless of casing).</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-classsuffix">
+<code class="descname">ClassSuffix</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-classsuffix" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure class names will add the
+suffix with the given value (regardless of casing).</p>
+</dd></dl>
+
+<p>For example using values of:</p>
+<blockquote>
+<div><ul class="simple">
+<li>ClassCase of <code class="docutils literal notranslate"><span class="pre">lower_case</span></code></li>
+<li>ClassPrefix of <code class="docutils literal notranslate"><span class="pre">pre_</span></code></li>
+<li>ClassSuffix of <code class="docutils literal notranslate"><span class="pre">_post</span></code></li>
+</ul>
+</div></blockquote>
+<p>Identifies and/or transforms class names as follows:</p>
+<p>Before:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">class</span> <span class="nc">FOO</span> <span class="p">{</span>
+<span class="k">public</span><span class="o">:</span>
+ <span class="n">FOO</span><span class="p">();</span>
+ <span class="o">~</span><span class="n">FOO</span><span class="p">();</span>
+<span class="p">};</span>
+</pre></div>
+</div>
+<p>After:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">class</span> <span class="nc">pre_foo_post</span> <span class="p">{</span>
+<span class="k">public</span><span class="o">:</span>
+ <span class="n">pre_foo_post</span><span class="p">();</span>
+ <span class="o">~</span><span class="n">pre_foo_post</span><span class="p">();</span>
+<span class="p">};</span>
+</pre></div>
+</div>
+<dl class="option">
+<dt id="cmdoption-arg-classconstantcase">
+<code class="descname">ClassConstantCase</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-classconstantcase" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure class constant names conform to the
+selected casing.</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-classconstantprefix">
+<code class="descname">ClassConstantPrefix</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-classconstantprefix" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure class constant names will add the
+prefixed with the given value (regardless of casing).</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-classconstantsuffix">
+<code class="descname">ClassConstantSuffix</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-classconstantsuffix" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure class constant names will add the
+suffix with the given value (regardless of casing).</p>
+</dd></dl>
+
+<p>For example using values of:</p>
+<blockquote>
+<div><ul class="simple">
+<li>ClassConstantCase of <code class="docutils literal notranslate"><span class="pre">lower_case</span></code></li>
+<li>ClassConstantPrefix of <code class="docutils literal notranslate"><span class="pre">pre_</span></code></li>
+<li>ClassConstantSuffix of <code class="docutils literal notranslate"><span class="pre">_post</span></code></li>
+</ul>
+</div></blockquote>
+<p>Identifies and/or transforms class constant names as follows:</p>
+<p>Before:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">class</span> <span class="nc">FOO</span> <span class="p">{</span>
+<span class="k">public</span><span class="o">:</span>
+ <span class="k">static</span> <span class="k">const</span> <span class="kt">int</span> <span class="n">CLASS_CONSTANT</span><span class="p">;</span>
+<span class="p">};</span>
+</pre></div>
+</div>
+<p>After:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">class</span> <span class="nc">FOO</span> <span class="p">{</span>
+<span class="k">public</span><span class="o">:</span>
+ <span class="k">static</span> <span class="k">const</span> <span class="kt">int</span> <span class="n">pre_class_constant_post</span><span class="p">;</span>
+<span class="p">};</span>
+</pre></div>
+</div>
+<dl class="option">
+<dt id="cmdoption-arg-classmembercase">
+<code class="descname">ClassMemberCase</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-classmembercase" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure class member names conform to the
+selected casing.</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-classmemberprefix">
+<code class="descname">ClassMemberPrefix</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-classmemberprefix" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure class member names will add the
+prefixed with the given value (regardless of casing).</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-classmembersuffix">
+<code class="descname">ClassMemberSuffix</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-classmembersuffix" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure class member names will add the
+suffix with the given value (regardless of casing).</p>
+</dd></dl>
+
+<p>For example using values of:</p>
+<blockquote>
+<div><ul class="simple">
+<li>ClassMemberCase of <code class="docutils literal notranslate"><span class="pre">lower_case</span></code></li>
+<li>ClassMemberPrefix of <code class="docutils literal notranslate"><span class="pre">pre_</span></code></li>
+<li>ClassMemberSuffix of <code class="docutils literal notranslate"><span class="pre">_post</span></code></li>
+</ul>
+</div></blockquote>
+<p>Identifies and/or transforms class member names as follows:</p>
+<p>Before:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">class</span> <span class="nc">FOO</span> <span class="p">{</span>
+<span class="k">public</span><span class="o">:</span>
+ <span class="k">static</span> <span class="kt">int</span> <span class="n">CLASS_CONSTANT</span><span class="p">;</span>
+<span class="p">};</span>
+</pre></div>
+</div>
+<p>After:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">class</span> <span class="nc">FOO</span> <span class="p">{</span>
+<span class="k">public</span><span class="o">:</span>
+ <span class="k">static</span> <span class="kt">int</span> <span class="n">pre_class_constant_post</span><span class="p">;</span>
+<span class="p">};</span>
+</pre></div>
+</div>
+<dl class="option">
+<dt id="cmdoption-arg-classmethodcase">
+<code class="descname">ClassMethodCase</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-classmethodcase" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure class method names conform to the
+selected casing.</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-classmethodprefix">
+<code class="descname">ClassMethodPrefix</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-classmethodprefix" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure class method names will add the
+prefixed with the given value (regardless of casing).</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-classmethodsuffix">
+<code class="descname">ClassMethodSuffix</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-classmethodsuffix" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure class method names will add the
+suffix with the given value (regardless of casing).</p>
+</dd></dl>
+
+<p>For example using values of:</p>
+<blockquote>
+<div><ul class="simple">
+<li>ClassMethodCase of <code class="docutils literal notranslate"><span class="pre">lower_case</span></code></li>
+<li>ClassMethodPrefix of <code class="docutils literal notranslate"><span class="pre">pre_</span></code></li>
+<li>ClassMethodSuffix of <code class="docutils literal notranslate"><span class="pre">_post</span></code></li>
+</ul>
+</div></blockquote>
+<p>Identifies and/or transforms class method names as follows:</p>
+<p>Before:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">class</span> <span class="nc">FOO</span> <span class="p">{</span>
+<span class="k">public</span><span class="o">:</span>
+ <span class="kt">int</span> <span class="n">CLASS_MEMBER</span><span class="p">();</span>
+<span class="p">};</span>
+</pre></div>
+</div>
+<p>After:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">class</span> <span class="nc">FOO</span> <span class="p">{</span>
+<span class="k">public</span><span class="o">:</span>
+ <span class="kt">int</span> <span class="n">pre_class_member_post</span><span class="p">();</span>
+<span class="p">};</span>
+</pre></div>
+</div>
+<dl class="option">
+<dt id="cmdoption-arg-constantcase">
+<code class="descname">ConstantCase</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-constantcase" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure constant names conform to the
+selected casing.</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-constantprefix">
+<code class="descname">ConstantPrefix</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-constantprefix" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure constant names will add the
+prefixed with the given value (regardless of casing).</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-constantsuffix">
+<code class="descname">ConstantSuffix</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-constantsuffix" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure constant names will add the
+suffix with the given value (regardless of casing).</p>
+</dd></dl>
+
+<p>For example using values of:</p>
+<blockquote>
+<div><ul class="simple">
+<li>ConstantCase of <code class="docutils literal notranslate"><span class="pre">lower_case</span></code></li>
+<li>ConstantPrefix of <code class="docutils literal notranslate"><span class="pre">pre_</span></code></li>
+<li>ConstantSuffix of <code class="docutils literal notranslate"><span class="pre">_post</span></code></li>
+</ul>
+</div></blockquote>
+<p>Identifies and/or transforms constant names as follows:</p>
+<p>Before:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="kt">void</span> <span class="nf">function</span><span class="p">()</span> <span class="p">{</span> <span class="kt">unsigned</span> <span class="k">const</span> <span class="n">MyConst_array</span><span class="p">[]</span> <span class="o">=</span> <span class="p">{</span><span class="mi">1</span><span class="p">,</span> <span class="mi">2</span><span class="p">,</span> <span class="mi">3</span><span class="p">};</span> <span class="p">}</span>
+</pre></div>
+</div>
+<p>After:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="kt">void</span> <span class="nf">function</span><span class="p">()</span> <span class="p">{</span> <span class="kt">unsigned</span> <span class="k">const</span> <span class="n">pre_myconst_array_post</span><span class="p">[]</span> <span class="o">=</span> <span class="p">{</span><span class="mi">1</span><span class="p">,</span> <span class="mi">2</span><span class="p">,</span> <span class="mi">3</span><span class="p">};</span> <span class="p">}</span>
+</pre></div>
+</div>
+<dl class="option">
+<dt id="cmdoption-arg-constantmembercase">
+<code class="descname">ConstantMemberCase</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-constantmembercase" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure constant member names conform to the
+selected casing.</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-constantmemberprefix">
+<code class="descname">ConstantMemberPrefix</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-constantmemberprefix" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure constant member names will add the
+prefixed with the given value (regardless of casing).</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-constantmembersuffix">
+<code class="descname">ConstantMemberSuffix</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-constantmembersuffix" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure constant member names will add the
+suffix with the given value (regardless of casing).</p>
+</dd></dl>
+
+<p>For example using values of:</p>
+<blockquote>
+<div><ul class="simple">
+<li>ConstantMemberCase of <code class="docutils literal notranslate"><span class="pre">lower_case</span></code></li>
+<li>ConstantMemberPrefix of <code class="docutils literal notranslate"><span class="pre">pre_</span></code></li>
+<li>ConstantMemberSuffix of <code class="docutils literal notranslate"><span class="pre">_post</span></code></li>
+</ul>
+</div></blockquote>
+<p>Identifies and/or transforms constant member names as follows:</p>
+<p>Before:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">class</span> <span class="nc">Foo</span> <span class="p">{</span>
+ <span class="kt">char</span> <span class="k">const</span> <span class="n">MY_ConstMember_string</span><span class="p">[</span><span class="mi">4</span><span class="p">]</span> <span class="o">=</span> <span class="s">"123"</span><span class="p">;</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+<p>After:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">class</span> <span class="nc">Foo</span> <span class="p">{</span>
+ <span class="kt">char</span> <span class="k">const</span> <span class="n">pre_my_constmember_string_post</span><span class="p">[</span><span class="mi">4</span><span class="p">]</span> <span class="o">=</span> <span class="s">"123"</span><span class="p">;</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+<dl class="option">
+<dt id="cmdoption-arg-constantparametercase">
+<code class="descname">ConstantParameterCase</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-constantparametercase" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure constant parameter names conform to the
+selected casing.</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-constantparameterprefix">
+<code class="descname">ConstantParameterPrefix</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-constantparameterprefix" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure constant parameter names will add the
+prefixed with the given value (regardless of casing).</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-constantparametersuffix">
+<code class="descname">ConstantParameterSuffix</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-constantparametersuffix" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure constant parameter names will add the
+suffix with the given value (regardless of casing).</p>
+</dd></dl>
+
+<p>For example using values of:</p>
+<blockquote>
+<div><ul class="simple">
+<li>ConstantParameterCase of <code class="docutils literal notranslate"><span class="pre">lower_case</span></code></li>
+<li>ConstantParameterPrefix of <code class="docutils literal notranslate"><span class="pre">pre_</span></code></li>
+<li>ConstantParameterSuffix of <code class="docutils literal notranslate"><span class="pre">_post</span></code></li>
+</ul>
+</div></blockquote>
+<p>Identifies and/or transforms constant parameter names as follows:</p>
+<p>Before:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="kt">void</span> <span class="nf">GLOBAL_FUNCTION</span><span class="p">(</span><span class="kt">int</span> <span class="n">PARAMETER_1</span><span class="p">,</span> <span class="kt">int</span> <span class="k">const</span> <span class="n">CONST_parameter</span><span class="p">);</span>
+</pre></div>
+</div>
+<p>After:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="kt">void</span> <span class="nf">GLOBAL_FUNCTION</span><span class="p">(</span><span class="kt">int</span> <span class="n">PARAMETER_1</span><span class="p">,</span> <span class="kt">int</span> <span class="k">const</span> <span class="n">pre_const_parameter_post</span><span class="p">);</span>
+</pre></div>
+</div>
+<dl class="option">
+<dt id="cmdoption-arg-constantpointerparametercase">
+<code class="descname">ConstantPointerParameterCase</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-constantpointerparametercase" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure constant pointer parameter names conform to the
+selected casing.</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-constantpointerparameterprefix">
+<code class="descname">ConstantPointerParameterPrefix</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-constantpointerparameterprefix" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure constant pointer parameter names will add the
+prefixed with the given value (regardless of casing).</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-constantpointerparametersuffix">
+<code class="descname">ConstantPointerParameterSuffix</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-constantpointerparametersuffix" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure constant pointer parameter names will add the
+suffix with the given value (regardless of casing).</p>
+</dd></dl>
+
+<p>For example using values of:</p>
+<blockquote>
+<div><ul class="simple">
+<li>ConstantPointerParameterCase of <code class="docutils literal notranslate"><span class="pre">lower_case</span></code></li>
+<li>ConstantPointerParameterPrefix of <code class="docutils literal notranslate"><span class="pre">pre_</span></code></li>
+<li>ConstantPointerParameterSuffix of <code class="docutils literal notranslate"><span class="pre">_post</span></code></li>
+</ul>
+</div></blockquote>
+<p>Identifies and/or transforms constant pointer parameter names as follows:</p>
+<p>Before:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="kt">void</span> <span class="nf">GLOBAL_FUNCTION</span><span class="p">(</span><span class="kt">int</span> <span class="k">const</span> <span class="o">*</span><span class="n">CONST_parameter</span><span class="p">);</span>
+</pre></div>
+</div>
+<p>After:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="kt">void</span> <span class="nf">GLOBAL_FUNCTION</span><span class="p">(</span><span class="kt">int</span> <span class="k">const</span> <span class="o">*</span><span class="n">pre_const_parameter_post</span><span class="p">);</span>
+</pre></div>
+</div>
+<dl class="option">
+<dt id="cmdoption-arg-constexprfunctioncase">
+<code class="descname">ConstexprFunctionCase</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-constexprfunctioncase" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure constexpr function names conform to the
+selected casing.</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-constexprfunctionprefix">
+<code class="descname">ConstexprFunctionPrefix</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-constexprfunctionprefix" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure constexpr function names will add the
+prefixed with the given value (regardless of casing).</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-constexprfunctionsuffix">
+<code class="descname">ConstexprFunctionSuffix</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-constexprfunctionsuffix" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure constexpr function names will add the
+suffix with the given value (regardless of casing).</p>
+</dd></dl>
+
+<p>For example using values of:</p>
+<blockquote>
+<div><ul class="simple">
+<li>ConstexprFunctionCase of <code class="docutils literal notranslate"><span class="pre">lower_case</span></code></li>
+<li>ConstexprFunctionPrefix of <code class="docutils literal notranslate"><span class="pre">pre_</span></code></li>
+<li>ConstexprFunctionSuffix of <code class="docutils literal notranslate"><span class="pre">_post</span></code></li>
+</ul>
+</div></blockquote>
+<p>Identifies and/or transforms constexpr function names as follows:</p>
+<p>Before:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">constexpr</span> <span class="kt">int</span> <span class="nf">CE_function</span><span class="p">()</span> <span class="p">{</span> <span class="k">return</span> <span class="mi">3</span><span class="p">;</span> <span class="p">}</span>
+</pre></div>
+</div>
+<p>After:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">constexpr</span> <span class="kt">int</span> <span class="nf">pre_ce_function_post</span><span class="p">()</span> <span class="p">{</span> <span class="k">return</span> <span class="mi">3</span><span class="p">;</span> <span class="p">}</span>
+</pre></div>
+</div>
+<dl class="option">
+<dt id="cmdoption-arg-constexprmethodcase">
+<code class="descname">ConstexprMethodCase</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-constexprmethodcase" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure constexpr method names conform to the
+selected casing.</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-constexprmethodprefix">
+<code class="descname">ConstexprMethodPrefix</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-constexprmethodprefix" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure constexpr method names will add the
+prefixed with the given value (regardless of casing).</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-constexprmethodsuffix">
+<code class="descname">ConstexprMethodSuffix</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-constexprmethodsuffix" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure constexpr method names will add the
+suffix with the given value (regardless of casing).</p>
+</dd></dl>
+
+<p>For example using values of:</p>
+<blockquote>
+<div><ul class="simple">
+<li>ConstexprMethodCase of <code class="docutils literal notranslate"><span class="pre">lower_case</span></code></li>
+<li>ConstexprMethodPrefix of <code class="docutils literal notranslate"><span class="pre">pre_</span></code></li>
+<li>ConstexprMethodSuffix of <code class="docutils literal notranslate"><span class="pre">_post</span></code></li>
+</ul>
+</div></blockquote>
+<p>Identifies and/or transforms constexpr method names as follows:</p>
+<p>Before:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">class</span> <span class="nc">Foo</span> <span class="p">{</span>
+<span class="k">public</span><span class="o">:</span>
+ <span class="k">constexpr</span> <span class="kt">int</span> <span class="n">CST_expr_Method</span><span class="p">()</span> <span class="p">{</span> <span class="k">return</span> <span class="mi">2</span><span class="p">;</span> <span class="p">}</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+<p>After:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">class</span> <span class="nc">Foo</span> <span class="p">{</span>
+<span class="k">public</span><span class="o">:</span>
+ <span class="k">constexpr</span> <span class="kt">int</span> <span class="n">pre_cst_expr_method_post</span><span class="p">()</span> <span class="p">{</span> <span class="k">return</span> <span class="mi">2</span><span class="p">;</span> <span class="p">}</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+<dl class="option">
+<dt id="cmdoption-arg-constexprvariablecase">
+<code class="descname">ConstexprVariableCase</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-constexprvariablecase" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure constexpr variable names conform to the
+selected casing.</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-constexprvariableprefix">
+<code class="descname">ConstexprVariablePrefix</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-constexprvariableprefix" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure constexpr variable names will add the
+prefixed with the given value (regardless of casing).</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-constexprvariablesuffix">
+<code class="descname">ConstexprVariableSuffix</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-constexprvariablesuffix" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure constexpr variable names will add the
+suffix with the given value (regardless of casing).</p>
+</dd></dl>
+
+<p>For example using values of:</p>
+<blockquote>
+<div><ul class="simple">
+<li>ConstexprVariableCase of <code class="docutils literal notranslate"><span class="pre">lower_case</span></code></li>
+<li>ConstexprVariablePrefix of <code class="docutils literal notranslate"><span class="pre">pre_</span></code></li>
+<li>ConstexprVariableSuffix of <code class="docutils literal notranslate"><span class="pre">_post</span></code></li>
+</ul>
+</div></blockquote>
+<p>Identifies and/or transforms constexpr variable names as follows:</p>
+<p>Before:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">constexpr</span> <span class="kt">int</span> <span class="n">ConstExpr_variable</span> <span class="o">=</span> <span class="n">MyConstant</span><span class="p">;</span>
+</pre></div>
+</div>
+<p>After:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">constexpr</span> <span class="kt">int</span> <span class="n">pre_constexpr_variable_post</span> <span class="o">=</span> <span class="n">MyConstant</span><span class="p">;</span>
+</pre></div>
+</div>
+<dl class="option">
+<dt id="cmdoption-arg-enumcase">
+<code class="descname">EnumCase</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-enumcase" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure enumeration names conform to the
+selected casing.</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-enumprefix">
+<code class="descname">EnumPrefix</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-enumprefix" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure enumeration names will add the
+prefixed with the given value (regardless of casing).</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-enumsuffix">
+<code class="descname">EnumSuffix</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-enumsuffix" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure enumeration names will add the
+suffix with the given value (regardless of casing).</p>
+</dd></dl>
+
+<p>For example using values of:</p>
+<blockquote>
+<div><ul class="simple">
+<li>EnumCase of <code class="docutils literal notranslate"><span class="pre">lower_case</span></code></li>
+<li>EnumPrefix of <code class="docutils literal notranslate"><span class="pre">pre_</span></code></li>
+<li>EnumSuffix of <code class="docutils literal notranslate"><span class="pre">_post</span></code></li>
+</ul>
+</div></blockquote>
+<p>Identifies and/or transforms enumeration names as follows:</p>
+<p>Before:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">enum</span> <span class="n">FOO</span> <span class="p">{</span> <span class="n">One</span><span class="p">,</span> <span class="n">Two</span><span class="p">,</span> <span class="n">Three</span> <span class="p">};</span>
+</pre></div>
+</div>
+<p>After:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">enum</span> <span class="n">pre_foo_post</span> <span class="p">{</span> <span class="n">One</span><span class="p">,</span> <span class="n">Two</span><span class="p">,</span> <span class="n">Three</span> <span class="p">};</span>
+</pre></div>
+</div>
+<dl class="option">
+<dt id="cmdoption-arg-enumconstantcase">
+<code class="descname">EnumConstantCase</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-enumconstantcase" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure enumeration constant names conform to the
+selected casing.</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-enumconstantprefix">
+<code class="descname">EnumConstantPrefix</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-enumconstantprefix" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure enumeration constant names will add the
+prefixed with the given value (regardless of casing).</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-enumconstantsuffix">
+<code class="descname">EnumConstantSuffix</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-enumconstantsuffix" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure enumeration constant names will add the
+suffix with the given value (regardless of casing).</p>
+</dd></dl>
+
+<p>For example using values of:</p>
+<blockquote>
+<div><ul class="simple">
+<li>EnumConstantCase of <code class="docutils literal notranslate"><span class="pre">lower_case</span></code></li>
+<li>EnumConstantPrefix of <code class="docutils literal notranslate"><span class="pre">pre_</span></code></li>
+<li>EnumConstantSuffix of <code class="docutils literal notranslate"><span class="pre">_post</span></code></li>
+</ul>
+</div></blockquote>
+<p>Identifies and/or transforms enumeration constant names as follows:</p>
+<p>Before:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">enum</span> <span class="n">FOO</span> <span class="p">{</span> <span class="n">One</span><span class="p">,</span> <span class="n">Two</span><span class="p">,</span> <span class="n">Three</span> <span class="p">};</span>
+</pre></div>
+</div>
+<p>After:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">enum</span> <span class="n">FOO</span> <span class="p">{</span> <span class="n">pre_One_post</span><span class="p">,</span> <span class="n">pre_Two_post</span><span class="p">,</span> <span class="n">pre_Three_post</span> <span class="p">};</span>
+</pre></div>
+</div>
+<dl class="option">
+<dt id="cmdoption-arg-functioncase">
+<code class="descname">FunctionCase</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-functioncase" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure function names conform to the
+selected casing.</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-functionprefix">
+<code class="descname">FunctionPrefix</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-functionprefix" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure function names will add the
+prefixed with the given value (regardless of casing).</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-functionsuffix">
+<code class="descname">FunctionSuffix</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-functionsuffix" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure function names will add the
+suffix with the given value (regardless of casing).</p>
+</dd></dl>
+
+<p>For example using values of:</p>
+<blockquote>
+<div><ul class="simple">
+<li>FunctionCase of <code class="docutils literal notranslate"><span class="pre">lower_case</span></code></li>
+<li>FunctionPrefix of <code class="docutils literal notranslate"><span class="pre">pre_</span></code></li>
+<li>FunctionSuffix of <code class="docutils literal notranslate"><span class="pre">_post</span></code></li>
+</ul>
+</div></blockquote>
+<p>Identifies and/or transforms function names as follows:</p>
+<p>Before:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="kt">char</span> <span class="nf">MY_Function_string</span><span class="p">();</span>
+</pre></div>
+</div>
+<p>After:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="kt">char</span> <span class="nf">pre_my_function_string_post</span><span class="p">();</span>
+</pre></div>
+</div>
+<dl class="option">
+<dt id="cmdoption-arg-globalconstantcase">
+<code class="descname">GlobalConstantCase</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-globalconstantcase" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure global constant names conform to the
+selected casing.</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-globalconstantprefix">
+<code class="descname">GlobalConstantPrefix</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-globalconstantprefix" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure global constant names will add the
+prefixed with the given value (regardless of casing).</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-globalconstantsuffix">
+<code class="descname">GlobalConstantSuffix</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-globalconstantsuffix" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure global constant names will add the
+suffix with the given value (regardless of casing).</p>
+</dd></dl>
+
+<p>For example using values of:</p>
+<blockquote>
+<div><ul class="simple">
+<li>GlobalConstantCase of <code class="docutils literal notranslate"><span class="pre">lower_case</span></code></li>
+<li>GlobalConstantPrefix of <code class="docutils literal notranslate"><span class="pre">pre_</span></code></li>
+<li>GlobalConstantSuffix of <code class="docutils literal notranslate"><span class="pre">_post</span></code></li>
+</ul>
+</div></blockquote>
+<p>Identifies and/or transforms global constant names as follows:</p>
+<p>Before:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="kt">unsigned</span> <span class="k">const</span> <span class="n">MyConstGlobal_array</span><span class="p">[]</span> <span class="o">=</span> <span class="p">{</span><span class="mi">1</span><span class="p">,</span> <span class="mi">2</span><span class="p">,</span> <span class="mi">3</span><span class="p">};</span>
+</pre></div>
+</div>
+<p>After:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="kt">unsigned</span> <span class="k">const</span> <span class="n">pre_myconstglobal_array_post</span><span class="p">[]</span> <span class="o">=</span> <span class="p">{</span><span class="mi">1</span><span class="p">,</span> <span class="mi">2</span><span class="p">,</span> <span class="mi">3</span><span class="p">};</span>
+</pre></div>
+</div>
+<dl class="option">
+<dt id="cmdoption-arg-globalconstantpointercase">
+<code class="descname">GlobalConstantPointerCase</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-globalconstantpointercase" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure global constant pointer names conform to the
+selected casing.</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-globalconstantpointerprefix">
+<code class="descname">GlobalConstantPointerPrefix</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-globalconstantpointerprefix" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure global constant pointer names will add the
+prefixed with the given value (regardless of casing).</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-globalconstantpointersuffix">
+<code class="descname">GlobalConstantPointerSuffix</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-globalconstantpointersuffix" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure global constant pointer names will add the
+suffix with the given value (regardless of casing).</p>
+</dd></dl>
+
+<p>For example using values of:</p>
+<blockquote>
+<div><ul class="simple">
+<li>GlobalConstantPointerCase of <code class="docutils literal notranslate"><span class="pre">lower_case</span></code></li>
+<li>GlobalConstantPointerPrefix of <code class="docutils literal notranslate"><span class="pre">pre_</span></code></li>
+<li>GlobalConstantPointerSuffix of <code class="docutils literal notranslate"><span class="pre">_post</span></code></li>
+</ul>
+</div></blockquote>
+<p>Identifies and/or transforms global constant pointer names as follows:</p>
+<p>Before:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="kt">int</span> <span class="o">*</span><span class="k">const</span> <span class="n">MyConstantGlobalPointer</span> <span class="o">=</span> <span class="k">nullptr</span><span class="p">;</span>
+</pre></div>
+</div>
+<p>After:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="kt">int</span> <span class="o">*</span><span class="k">const</span> <span class="n">pre_myconstantglobalpointer_post</span> <span class="o">=</span> <span class="k">nullptr</span><span class="p">;</span>
+</pre></div>
+</div>
+<dl class="option">
+<dt id="cmdoption-arg-globalfunctioncase">
+<code class="descname">GlobalFunctionCase</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-globalfunctioncase" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure global function names conform to the
+selected casing.</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-globalfunctionprefix">
+<code class="descname">GlobalFunctionPrefix</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-globalfunctionprefix" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure global function names will add the
+prefixed with the given value (regardless of casing).</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-globalfunctionsuffix">
+<code class="descname">GlobalFunctionSuffix</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-globalfunctionsuffix" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure global function names will add the
+suffix with the given value (regardless of casing).</p>
+</dd></dl>
+
+<p>For example using values of:</p>
+<blockquote>
+<div><ul class="simple">
+<li>GlobalFunctionCase of <code class="docutils literal notranslate"><span class="pre">lower_case</span></code></li>
+<li>GlobalFunctionPrefix of <code class="docutils literal notranslate"><span class="pre">pre_</span></code></li>
+<li>GlobalFunctionSuffix of <code class="docutils literal notranslate"><span class="pre">_post</span></code></li>
+</ul>
+</div></blockquote>
+<p>Identifies and/or transforms global function names as follows:</p>
+<p>Before:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="kt">void</span> <span class="nf">GLOBAL_FUNCTION</span><span class="p">(</span><span class="kt">int</span> <span class="n">PARAMETER_1</span><span class="p">,</span> <span class="kt">int</span> <span class="k">const</span> <span class="n">CONST_parameter</span><span class="p">);</span>
+</pre></div>
+</div>
+<p>After:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="kt">void</span> <span class="nf">pre_global_function_post</span><span class="p">(</span><span class="kt">int</span> <span class="n">PARAMETER_1</span><span class="p">,</span> <span class="kt">int</span> <span class="k">const</span> <span class="n">CONST_parameter</span><span class="p">);</span>
+</pre></div>
+</div>
+<dl class="option">
+<dt id="cmdoption-arg-globalpointercase">
+<code class="descname">GlobalPointerCase</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-globalpointercase" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure global pointer names conform to the
+selected casing.</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-globalpointerprefix">
+<code class="descname">GlobalPointerPrefix</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-globalpointerprefix" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure global pointer names will add the
+prefixed with the given value (regardless of casing).</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-globalpointersuffix">
+<code class="descname">GlobalPointerSuffix</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-globalpointersuffix" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure global pointer names will add the
+suffix with the given value (regardless of casing).</p>
+</dd></dl>
+
+<p>For example using values of:</p>
+<blockquote>
+<div><ul class="simple">
+<li>GlobalPointerCase of <code class="docutils literal notranslate"><span class="pre">lower_case</span></code></li>
+<li>GlobalPointerPrefix of <code class="docutils literal notranslate"><span class="pre">pre_</span></code></li>
+<li>GlobalPointerSuffix of <code class="docutils literal notranslate"><span class="pre">_post</span></code></li>
+</ul>
+</div></blockquote>
+<p>Identifies and/or transforms global pointer names as follows:</p>
+<p>Before:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="kt">int</span> <span class="o">*</span><span class="n">GLOBAL3</span><span class="p">;</span>
+</pre></div>
+</div>
+<p>After:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="kt">int</span> <span class="o">*</span><span class="n">pre_global3_post</span><span class="p">;</span>
+</pre></div>
+</div>
+<dl class="option">
+<dt id="cmdoption-arg-globalvariablecase">
+<code class="descname">GlobalVariableCase</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-globalvariablecase" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure global variable names conform to the
+selected casing.</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-globalvariableprefix">
+<code class="descname">GlobalVariablePrefix</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-globalvariableprefix" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure global variable names will add the
+prefixed with the given value (regardless of casing).</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-globalvariablesuffix">
+<code class="descname">GlobalVariableSuffix</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-globalvariablesuffix" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure global variable names will add the
+suffix with the given value (regardless of casing).</p>
+</dd></dl>
+
+<p>For example using values of:</p>
+<blockquote>
+<div><ul class="simple">
+<li>GlobalVariableCase of <code class="docutils literal notranslate"><span class="pre">lower_case</span></code></li>
+<li>GlobalVariablePrefix of <code class="docutils literal notranslate"><span class="pre">pre_</span></code></li>
+<li>GlobalVariableSuffix of <code class="docutils literal notranslate"><span class="pre">_post</span></code></li>
+</ul>
+</div></blockquote>
+<p>Identifies and/or transforms global variable names as follows:</p>
+<p>Before:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="kt">int</span> <span class="n">GLOBAL3</span><span class="p">;</span>
+</pre></div>
+</div>
+<p>After:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="kt">int</span> <span class="n">pre_global3_post</span><span class="p">;</span>
+</pre></div>
+</div>
+<dl class="option">
+<dt id="cmdoption-arg-inlinenamespacecase">
+<code class="descname">InlineNamespaceCase</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-inlinenamespacecase" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure inline namespaces names conform to the
+selected casing.</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-inlinenamespaceprefix">
+<code class="descname">InlineNamespacePrefix</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-inlinenamespaceprefix" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure inline namespaces names will add the
+prefixed with the given value (regardless of casing).</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-inlinenamespacesuffix">
+<code class="descname">InlineNamespaceSuffix</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-inlinenamespacesuffix" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure inline namespaces names will add the
+suffix with the given value (regardless of casing).</p>
+</dd></dl>
+
+<p>For example using values of:</p>
+<blockquote>
+<div><ul class="simple">
+<li>InlineNamespaceCase of <code class="docutils literal notranslate"><span class="pre">lower_case</span></code></li>
+<li>InlineNamespacePrefix of <code class="docutils literal notranslate"><span class="pre">pre_</span></code></li>
+<li>InlineNamespaceSuffix of <code class="docutils literal notranslate"><span class="pre">_post</span></code></li>
+</ul>
+</div></blockquote>
+<p>Identifies and/or transforms inline namespaces names as follows:</p>
+<p>Before:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">namespace</span> <span class="n">FOO_NS</span> <span class="p">{</span>
+<span class="kr">inline</span> <span class="k">namespace</span> <span class="n">InlineNamespace</span> <span class="p">{</span>
+<span class="p">...</span>
+<span class="p">}</span>
+<span class="p">}</span> <span class="c1">// namespace FOO_NS</span>
+</pre></div>
+</div>
+<p>After:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">namespace</span> <span class="n">FOO_NS</span> <span class="p">{</span>
+<span class="kr">inline</span> <span class="k">namespace</span> <span class="n">pre_inlinenamespace_post</span> <span class="p">{</span>
+<span class="p">...</span>
+<span class="p">}</span>
+<span class="p">}</span> <span class="c1">// namespace FOO_NS</span>
+</pre></div>
+</div>
+<dl class="option">
+<dt id="cmdoption-arg-localconstantcase">
+<code class="descname">LocalConstantCase</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-localconstantcase" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure local constant names conform to the
+selected casing.</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-localconstantprefix">
+<code class="descname">LocalConstantPrefix</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-localconstantprefix" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure local constant names will add the
+prefixed with the given value (regardless of casing).</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-localconstantsuffix">
+<code class="descname">LocalConstantSuffix</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-localconstantsuffix" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure local constant names will add the
+suffix with the given value (regardless of casing).</p>
+</dd></dl>
+
+<p>For example using values of:</p>
+<blockquote>
+<div><ul class="simple">
+<li>LocalConstantCase of <code class="docutils literal notranslate"><span class="pre">lower_case</span></code></li>
+<li>LocalConstantPrefix of <code class="docutils literal notranslate"><span class="pre">pre_</span></code></li>
+<li>LocalConstantSuffix of <code class="docutils literal notranslate"><span class="pre">_post</span></code></li>
+</ul>
+</div></blockquote>
+<p>Identifies and/or transforms local constant names as follows:</p>
+<p>Before:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="kt">void</span> <span class="nf">foo</span><span class="p">()</span> <span class="p">{</span> <span class="kt">int</span> <span class="k">const</span> <span class="n">local_Constant</span> <span class="o">=</span> <span class="mi">3</span><span class="p">;</span> <span class="p">}</span>
+</pre></div>
+</div>
+<p>After:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="kt">void</span> <span class="nf">foo</span><span class="p">()</span> <span class="p">{</span> <span class="kt">int</span> <span class="k">const</span> <span class="n">pre_local_constant_post</span> <span class="o">=</span> <span class="mi">3</span><span class="p">;</span> <span class="p">}</span>
+</pre></div>
+</div>
+<dl class="option">
+<dt id="cmdoption-arg-localconstantpointercase">
+<code class="descname">LocalConstantPointerCase</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-localconstantpointercase" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure local constant pointer names conform to the
+selected casing.</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-localconstantpointerprefix">
+<code class="descname">LocalConstantPointerPrefix</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-localconstantpointerprefix" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure local constant pointer names will add the
+prefixed with the given value (regardless of casing).</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-localconstantpointersuffix">
+<code class="descname">LocalConstantPointerSuffix</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-localconstantpointersuffix" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure local constant pointer names will add the
+suffix with the given value (regardless of casing).</p>
+</dd></dl>
+
+<p>For example using values of:</p>
+<blockquote>
+<div><ul class="simple">
+<li>LocalConstantPointerCase of <code class="docutils literal notranslate"><span class="pre">lower_case</span></code></li>
+<li>LocalConstantPointerPrefix of <code class="docutils literal notranslate"><span class="pre">pre_</span></code></li>
+<li>LocalConstantPointerSuffix of <code class="docutils literal notranslate"><span class="pre">_post</span></code></li>
+</ul>
+</div></blockquote>
+<p>Identifies and/or transforms local constant pointer names as follows:</p>
+<p>Before:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="kt">void</span> <span class="nf">foo</span><span class="p">()</span> <span class="p">{</span> <span class="kt">int</span> <span class="k">const</span> <span class="o">*</span><span class="n">local_Constant</span> <span class="o">=</span> <span class="mi">3</span><span class="p">;</span> <span class="p">}</span>
+</pre></div>
+</div>
+<p>After:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="kt">void</span> <span class="nf">foo</span><span class="p">()</span> <span class="p">{</span> <span class="kt">int</span> <span class="k">const</span> <span class="o">*</span><span class="n">pre_local_constant_post</span> <span class="o">=</span> <span class="mi">3</span><span class="p">;</span> <span class="p">}</span>
+</pre></div>
+</div>
+<dl class="option">
+<dt id="cmdoption-arg-localpointercase">
+<code class="descname">LocalPointerCase</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-localpointercase" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure local pointer names conform to the
+selected casing.</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-localpointerprefix">
+<code class="descname">LocalPointerPrefix</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-localpointerprefix" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure local pointer names will add the
+prefixed with the given value (regardless of casing).</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-localpointersuffix">
+<code class="descname">LocalPointerSuffix</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-localpointersuffix" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure local pointer names will add the
+suffix with the given value (regardless of casing).</p>
+</dd></dl>
+
+<p>For example using values of:</p>
+<blockquote>
+<div><ul class="simple">
+<li>LocalPointerCase of <code class="docutils literal notranslate"><span class="pre">lower_case</span></code></li>
+<li>LocalPointerPrefix of <code class="docutils literal notranslate"><span class="pre">pre_</span></code></li>
+<li>LocalPointerSuffix of <code class="docutils literal notranslate"><span class="pre">_post</span></code></li>
+</ul>
+</div></blockquote>
+<p>Identifies and/or transforms local pointer names as follows:</p>
+<p>Before:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="kt">void</span> <span class="nf">foo</span><span class="p">()</span> <span class="p">{</span> <span class="kt">int</span> <span class="o">*</span><span class="n">local_Constant</span><span class="p">;</span> <span class="p">}</span>
+</pre></div>
+</div>
+<p>After:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="kt">void</span> <span class="nf">foo</span><span class="p">()</span> <span class="p">{</span> <span class="kt">int</span> <span class="o">*</span><span class="n">pre_local_constant_post</span><span class="p">;</span> <span class="p">}</span>
+</pre></div>
+</div>
+<dl class="option">
+<dt id="cmdoption-arg-localvariablecase">
+<code class="descname">LocalVariableCase</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-localvariablecase" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure local variable names conform to the
+selected casing.</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-localvariableprefix">
+<code class="descname">LocalVariablePrefix</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-localvariableprefix" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure local variable names will add the
+prefixed with the given value (regardless of casing).</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-localvariablesuffix">
+<code class="descname">LocalVariableSuffix</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-localvariablesuffix" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure local variable names will add the
+suffix with the given value (regardless of casing).</p>
+</dd></dl>
+
+<p>For example using values of:</p>
+<blockquote>
+<div><ul class="simple">
+<li>LocalVariableCase of <code class="docutils literal notranslate"><span class="pre">lower_case</span></code></li>
+<li>LocalVariablePrefix of <code class="docutils literal notranslate"><span class="pre">pre_</span></code></li>
+<li>LocalVariableSuffix of <code class="docutils literal notranslate"><span class="pre">_post</span></code></li>
+</ul>
+</div></blockquote>
+<p>Identifies and/or transforms local variable names as follows:</p>
+<p>Before:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="kt">void</span> <span class="nf">foo</span><span class="p">()</span> <span class="p">{</span> <span class="kt">int</span> <span class="n">local_Constant</span><span class="p">;</span> <span class="p">}</span>
+</pre></div>
+</div>
+<p>After:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="kt">void</span> <span class="nf">foo</span><span class="p">()</span> <span class="p">{</span> <span class="kt">int</span> <span class="n">pre_local_constant_post</span><span class="p">;</span> <span class="p">}</span>
+</pre></div>
+</div>
+<dl class="option">
+<dt id="cmdoption-arg-membercase">
+<code class="descname">MemberCase</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-membercase" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure member names conform to the
+selected casing.</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-memberprefix">
+<code class="descname">MemberPrefix</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-memberprefix" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure member names will add the
+prefixed with the given value (regardless of casing).</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-membersuffix">
+<code class="descname">MemberSuffix</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-membersuffix" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure member names will add the
+suffix with the given value (regardless of casing).</p>
+</dd></dl>
+
+<p>For example using values of:</p>
+<blockquote>
+<div><ul class="simple">
+<li>MemberCase of <code class="docutils literal notranslate"><span class="pre">lower_case</span></code></li>
+<li>MemberPrefix of <code class="docutils literal notranslate"><span class="pre">pre_</span></code></li>
+<li>MemberSuffix of <code class="docutils literal notranslate"><span class="pre">_post</span></code></li>
+</ul>
+</div></blockquote>
+<p>Identifies and/or transforms member names as follows:</p>
+<p>Before:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">class</span> <span class="nc">Foo</span> <span class="p">{</span>
+ <span class="kt">char</span> <span class="n">MY_ConstMember_string</span><span class="p">[</span><span class="mi">4</span><span class="p">];</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+<p>After:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">class</span> <span class="nc">Foo</span> <span class="p">{</span>
+ <span class="kt">char</span> <span class="n">pre_my_constmember_string_post</span><span class="p">[</span><span class="mi">4</span><span class="p">];</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+<dl class="option">
+<dt id="cmdoption-arg-methodcase">
+<code class="descname">MethodCase</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-methodcase" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure method names conform to the
+selected casing.</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-methodprefix">
+<code class="descname">MethodPrefix</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-methodprefix" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure method names will add the
+prefixed with the given value (regardless of casing).</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-methodsuffix">
+<code class="descname">MethodSuffix</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-methodsuffix" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure method names will add the
+suffix with the given value (regardless of casing).</p>
+</dd></dl>
+
+<p>For example using values of:</p>
+<blockquote>
+<div><ul class="simple">
+<li>MethodCase of <code class="docutils literal notranslate"><span class="pre">lower_case</span></code></li>
+<li>MethodPrefix of <code class="docutils literal notranslate"><span class="pre">pre_</span></code></li>
+<li>MethodSuffix of <code class="docutils literal notranslate"><span class="pre">_post</span></code></li>
+</ul>
+</div></blockquote>
+<p>Identifies and/or transforms method names as follows:</p>
+<p>Before:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">class</span> <span class="nc">Foo</span> <span class="p">{</span>
+ <span class="kt">char</span> <span class="n">MY_Method_string</span><span class="p">();</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+<p>After:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">class</span> <span class="nc">Foo</span> <span class="p">{</span>
+ <span class="kt">char</span> <span class="n">pre_my_method_string_post</span><span class="p">();</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+<dl class="option">
+<dt id="cmdoption-arg-namespacecase">
+<code class="descname">NamespaceCase</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-namespacecase" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure namespace names conform to the
+selected casing.</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-namespaceprefix">
+<code class="descname">NamespacePrefix</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-namespaceprefix" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure namespace names will add the
+prefixed with the given value (regardless of casing).</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-namespacesuffix">
+<code class="descname">NamespaceSuffix</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-namespacesuffix" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure namespace names will add the
+suffix with the given value (regardless of casing).</p>
+</dd></dl>
+
+<p>For example using values of:</p>
+<blockquote>
+<div><ul class="simple">
+<li>NamespaceCase of <code class="docutils literal notranslate"><span class="pre">lower_case</span></code></li>
+<li>NamespacePrefix of <code class="docutils literal notranslate"><span class="pre">pre_</span></code></li>
+<li>NamespaceSuffix of <code class="docutils literal notranslate"><span class="pre">_post</span></code></li>
+</ul>
+</div></blockquote>
+<p>Identifies and/or transforms namespace names as follows:</p>
+<p>Before:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">namespace</span> <span class="n">FOO_NS</span> <span class="p">{</span>
+<span class="p">...</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+<p>After:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">namespace</span> <span class="n">pre_foo_ns_post</span> <span class="p">{</span>
+<span class="p">...</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+<dl class="option">
+<dt id="cmdoption-arg-parametercase">
+<code class="descname">ParameterCase</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-parametercase" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure parameter names conform to the
+selected casing.</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-parameterprefix">
+<code class="descname">ParameterPrefix</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-parameterprefix" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure parameter names will add the
+prefixed with the given value (regardless of casing).</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-parametersuffix">
+<code class="descname">ParameterSuffix</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-parametersuffix" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure parameter names will add the
+suffix with the given value (regardless of casing).</p>
+</dd></dl>
+
+<p>For example using values of:</p>
+<blockquote>
+<div><ul class="simple">
+<li>ParameterCase of <code class="docutils literal notranslate"><span class="pre">lower_case</span></code></li>
+<li>ParameterPrefix of <code class="docutils literal notranslate"><span class="pre">pre_</span></code></li>
+<li>ParameterSuffix of <code class="docutils literal notranslate"><span class="pre">_post</span></code></li>
+</ul>
+</div></blockquote>
+<p>Identifies and/or transforms parameter names as follows:</p>
+<p>Before:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="kt">void</span> <span class="nf">GLOBAL_FUNCTION</span><span class="p">(</span><span class="kt">int</span> <span class="n">PARAMETER_1</span><span class="p">,</span> <span class="kt">int</span> <span class="k">const</span> <span class="n">CONST_parameter</span><span class="p">);</span>
+</pre></div>
+</div>
+<p>After:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="kt">void</span> <span class="nf">GLOBAL_FUNCTION</span><span class="p">(</span><span class="kt">int</span> <span class="n">pre_parameter_post</span><span class="p">,</span> <span class="kt">int</span> <span class="k">const</span> <span class="n">CONST_parameter</span><span class="p">);</span>
+</pre></div>
+</div>
+<dl class="option">
+<dt id="cmdoption-arg-parameterpackcase">
+<code class="descname">ParameterPackCase</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-parameterpackcase" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure parameter pack names conform to the
+selected casing.</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-parameterpackprefix">
+<code class="descname">ParameterPackPrefix</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-parameterpackprefix" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure parameter pack names will add the
+prefixed with the given value (regardless of casing).</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-parameterpacksuffix">
+<code class="descname">ParameterPackSuffix</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-parameterpacksuffix" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure parameter pack names will add the
+suffix with the given value (regardless of casing).</p>
+</dd></dl>
+
+<p>For example using values of:</p>
+<blockquote>
+<div><ul class="simple">
+<li>ParameterPackCase of <code class="docutils literal notranslate"><span class="pre">lower_case</span></code></li>
+<li>ParameterPackPrefix of <code class="docutils literal notranslate"><span class="pre">pre_</span></code></li>
+<li>ParameterPackSuffix of <code class="docutils literal notranslate"><span class="pre">_post</span></code></li>
+</ul>
+</div></blockquote>
+<p>Identifies and/or transforms parameter pack names as follows:</p>
+<p>Before:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">template</span> <span class="o"><</span><span class="k">typename</span><span class="p">...</span> <span class="n">TYPE_parameters</span><span class="o">></span> <span class="p">{</span>
+ <span class="kt">void</span> <span class="n">FUNCTION</span><span class="p">(</span><span class="kt">int</span><span class="p">...</span> <span class="n">TYPE_parameters</span><span class="p">);</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+<p>After:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">template</span> <span class="o"><</span><span class="k">typename</span><span class="p">...</span> <span class="n">TYPE_parameters</span><span class="o">></span> <span class="p">{</span>
+ <span class="kt">void</span> <span class="n">FUNCTION</span><span class="p">(</span><span class="kt">int</span><span class="p">...</span> <span class="n">pre_type_parameters_post</span><span class="p">);</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+<dl class="option">
+<dt id="cmdoption-arg-pointerparametercase">
+<code class="descname">PointerParameterCase</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-pointerparametercase" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure pointer parameter names conform to the
+selected casing.</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-pointerparameterprefix">
+<code class="descname">PointerParameterPrefix</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-pointerparameterprefix" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure pointer parameter names will add the
+prefixed with the given value (regardless of casing).</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-pointerparametersuffix">
+<code class="descname">PointerParameterSuffix</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-pointerparametersuffix" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure pointer parameter names will add the
+suffix with the given value (regardless of casing).</p>
+</dd></dl>
+
+<p>For example using values of:</p>
+<blockquote>
+<div><ul class="simple">
+<li>PointerParameterCase of <code class="docutils literal notranslate"><span class="pre">lower_case</span></code></li>
+<li>PointerParameterPrefix of <code class="docutils literal notranslate"><span class="pre">pre_</span></code></li>
+<li>PointerParameterSuffix of <code class="docutils literal notranslate"><span class="pre">_post</span></code></li>
+</ul>
+</div></blockquote>
+<p>Identifies and/or transforms pointer parameter names as follows:</p>
+<p>Before:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="kt">void</span> <span class="nf">FUNCTION</span><span class="p">(</span><span class="kt">int</span> <span class="o">*</span><span class="n">PARAMETER</span><span class="p">);</span>
+</pre></div>
+</div>
+<p>After:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="kt">void</span> <span class="nf">FUNCTION</span><span class="p">(</span><span class="kt">int</span> <span class="o">*</span><span class="n">pre_parameter_post</span><span class="p">);</span>
+</pre></div>
+</div>
+<dl class="option">
+<dt id="cmdoption-arg-privatemembercase">
+<code class="descname">PrivateMemberCase</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-privatemembercase" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure private member names conform to the
+selected casing.</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-privatememberprefix">
+<code class="descname">PrivateMemberPrefix</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-privatememberprefix" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure private member names will add the
+prefixed with the given value (regardless of casing).</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-privatemembersuffix">
+<code class="descname">PrivateMemberSuffix</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-privatemembersuffix" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure private member names will add the
+suffix with the given value (regardless of casing).</p>
+</dd></dl>
+
+<p>For example using values of:</p>
+<blockquote>
+<div><ul class="simple">
+<li>PrivateMemberCase of <code class="docutils literal notranslate"><span class="pre">lower_case</span></code></li>
+<li>PrivateMemberPrefix of <code class="docutils literal notranslate"><span class="pre">pre_</span></code></li>
+<li>PrivateMemberSuffix of <code class="docutils literal notranslate"><span class="pre">_post</span></code></li>
+</ul>
+</div></blockquote>
+<p>Identifies and/or transforms private member names as follows:</p>
+<p>Before:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">class</span> <span class="nc">Foo</span> <span class="p">{</span>
+<span class="k">private</span><span class="o">:</span>
+ <span class="kt">int</span> <span class="n">Member_Variable</span><span class="p">;</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+<p>After:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">class</span> <span class="nc">Foo</span> <span class="p">{</span>
+<span class="k">private</span><span class="o">:</span>
+ <span class="kt">int</span> <span class="n">pre_member_variable_post</span><span class="p">;</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+<dl class="option">
+<dt id="cmdoption-arg-privatemethodcase">
+<code class="descname">PrivateMethodCase</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-privatemethodcase" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure private method names conform to the
+selected casing.</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-privatemethodprefix">
+<code class="descname">PrivateMethodPrefix</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-privatemethodprefix" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure private method names will add the
+prefixed with the given value (regardless of casing).</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-privatemethodsuffix">
+<code class="descname">PrivateMethodSuffix</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-privatemethodsuffix" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure private method names will add the
+suffix with the given value (regardless of casing).</p>
+</dd></dl>
+
+<p>For example using values of:</p>
+<blockquote>
+<div><ul class="simple">
+<li>PrivateMethodCase of <code class="docutils literal notranslate"><span class="pre">lower_case</span></code></li>
+<li>PrivateMethodPrefix of <code class="docutils literal notranslate"><span class="pre">pre_</span></code></li>
+<li>PrivateMethodSuffix of <code class="docutils literal notranslate"><span class="pre">_post</span></code></li>
+</ul>
+</div></blockquote>
+<p>Identifies and/or transforms private method names as follows:</p>
+<p>Before:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">class</span> <span class="nc">Foo</span> <span class="p">{</span>
+<span class="k">private</span><span class="o">:</span>
+ <span class="kt">int</span> <span class="n">Member_Method</span><span class="p">();</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+<p>After:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">class</span> <span class="nc">Foo</span> <span class="p">{</span>
+<span class="k">private</span><span class="o">:</span>
+ <span class="kt">int</span> <span class="n">pre_member_method_post</span><span class="p">();</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+<dl class="option">
+<dt id="cmdoption-arg-protectedmembercase">
+<code class="descname">ProtectedMemberCase</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-protectedmembercase" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure protected member names conform to the
+selected casing.</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-protectedmemberprefix">
+<code class="descname">ProtectedMemberPrefix</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-protectedmemberprefix" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure protected member names will add the
+prefixed with the given value (regardless of casing).</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-protectedmembersuffix">
+<code class="descname">ProtectedMemberSuffix</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-protectedmembersuffix" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure protected member names will add the
+suffix with the given value (regardless of casing).</p>
+</dd></dl>
+
+<p>For example using values of:</p>
+<blockquote>
+<div><ul class="simple">
+<li>ProtectedMemberCase of <code class="docutils literal notranslate"><span class="pre">lower_case</span></code></li>
+<li>ProtectedMemberPrefix of <code class="docutils literal notranslate"><span class="pre">pre_</span></code></li>
+<li>ProtectedMemberSuffix of <code class="docutils literal notranslate"><span class="pre">_post</span></code></li>
+</ul>
+</div></blockquote>
+<p>Identifies and/or transforms protected member names as follows:</p>
+<p>Before:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">class</span> <span class="nc">Foo</span> <span class="p">{</span>
+<span class="k">protected</span><span class="o">:</span>
+ <span class="kt">int</span> <span class="n">Member_Variable</span><span class="p">;</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+<p>After:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">class</span> <span class="nc">Foo</span> <span class="p">{</span>
+<span class="k">protected</span><span class="o">:</span>
+ <span class="kt">int</span> <span class="n">pre_member_variable_post</span><span class="p">;</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+<dl class="option">
+<dt id="cmdoption-arg-protectedmethodcase">
+<code class="descname">ProtectedMethodCase</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-protectedmethodcase" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure protect method names conform to the
+selected casing.</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-protectedmethodprefix">
+<code class="descname">ProtectedMethodPrefix</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-protectedmethodprefix" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure protect method names will add the
+prefixed with the given value (regardless of casing).</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-protectedmethodsuffix">
+<code class="descname">ProtectedMethodSuffix</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-protectedmethodsuffix" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure protect method names will add the
+suffix with the given value (regardless of casing).</p>
+</dd></dl>
+
+<p>For example using values of:</p>
+<blockquote>
+<div><ul class="simple">
+<li>ProtectedMethodCase of <code class="docutils literal notranslate"><span class="pre">lower_case</span></code></li>
+<li>ProtectedMethodPrefix of <code class="docutils literal notranslate"><span class="pre">pre_</span></code></li>
+<li>ProtectedMethodSuffix of <code class="docutils literal notranslate"><span class="pre">_post</span></code></li>
+</ul>
+</div></blockquote>
+<p>Identifies and/or transforms protect method names as follows:</p>
+<p>Before:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">class</span> <span class="nc">Foo</span> <span class="p">{</span>
+<span class="k">protected</span><span class="o">:</span>
+ <span class="kt">int</span> <span class="n">Member_Method</span><span class="p">();</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+<p>After:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">class</span> <span class="nc">Foo</span> <span class="p">{</span>
+<span class="k">protected</span><span class="o">:</span>
+ <span class="kt">int</span> <span class="n">pre_member_method_post</span><span class="p">();</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+<dl class="option">
+<dt id="cmdoption-arg-publicmembercase">
+<code class="descname">PublicMemberCase</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-publicmembercase" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure public member names conform to the
+selected casing.</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-publicmemberprefix">
+<code class="descname">PublicMemberPrefix</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-publicmemberprefix" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure public member names will add the
+prefixed with the given value (regardless of casing).</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-publicmembersuffix">
+<code class="descname">PublicMemberSuffix</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-publicmembersuffix" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure public member names will add the
+suffix with the given value (regardless of casing).</p>
+</dd></dl>
+
+<p>For example using values of:</p>
+<blockquote>
+<div><ul class="simple">
+<li>PublicMemberCase of <code class="docutils literal notranslate"><span class="pre">lower_case</span></code></li>
+<li>PublicMemberPrefix of <code class="docutils literal notranslate"><span class="pre">pre_</span></code></li>
+<li>PublicMemberSuffix of <code class="docutils literal notranslate"><span class="pre">_post</span></code></li>
+</ul>
+</div></blockquote>
+<p>Identifies and/or transforms public member names as follows:</p>
+<p>Before:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">class</span> <span class="nc">Foo</span> <span class="p">{</span>
+<span class="k">public</span><span class="o">:</span>
+ <span class="kt">int</span> <span class="n">Member_Variable</span><span class="p">;</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+<p>After:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">class</span> <span class="nc">Foo</span> <span class="p">{</span>
+<span class="k">public</span><span class="o">:</span>
+ <span class="kt">int</span> <span class="n">pre_member_variable_post</span><span class="p">;</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+<dl class="option">
+<dt id="cmdoption-arg-publicmethodcase">
+<code class="descname">PublicMethodCase</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-publicmethodcase" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure public method names conform to the
+selected casing.</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-publicmethodprefix">
+<code class="descname">PublicMethodPrefix</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-publicmethodprefix" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure public method names will add the
+prefixed with the given value (regardless of casing).</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-publicmethodsuffix">
+<code class="descname">PublicMethodSuffix</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-publicmethodsuffix" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure public method names will add the
+suffix with the given value (regardless of casing).</p>
+</dd></dl>
+
+<p>For example using values of:</p>
+<blockquote>
+<div><ul class="simple">
+<li>PublicMethodCase of <code class="docutils literal notranslate"><span class="pre">lower_case</span></code></li>
+<li>PublicMethodPrefix of <code class="docutils literal notranslate"><span class="pre">pre_</span></code></li>
+<li>PublicMethodSuffix of <code class="docutils literal notranslate"><span class="pre">_post</span></code></li>
+</ul>
+</div></blockquote>
+<p>Identifies and/or transforms public method names as follows:</p>
+<p>Before:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">class</span> <span class="nc">Foo</span> <span class="p">{</span>
+<span class="k">public</span><span class="o">:</span>
+ <span class="kt">int</span> <span class="n">Member_Method</span><span class="p">();</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+<p>After:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">class</span> <span class="nc">Foo</span> <span class="p">{</span>
+<span class="k">public</span><span class="o">:</span>
+ <span class="kt">int</span> <span class="n">pre_member_method_post</span><span class="p">();</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+<dl class="option">
+<dt id="cmdoption-arg-staticconstantcase">
+<code class="descname">StaticConstantCase</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-staticconstantcase" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure static constant names conform to the
+selected casing.</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-staticconstantprefix">
+<code class="descname">StaticConstantPrefix</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-staticconstantprefix" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure static constant names will add the
+prefixed with the given value (regardless of casing).</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-staticconstantsuffix">
+<code class="descname">StaticConstantSuffix</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-staticconstantsuffix" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure static constant names will add the
+suffix with the given value (regardless of casing).</p>
+</dd></dl>
+
+<p>For example using values of:</p>
+<blockquote>
+<div><ul class="simple">
+<li>StaticConstantCase of <code class="docutils literal notranslate"><span class="pre">lower_case</span></code></li>
+<li>StaticConstantPrefix of <code class="docutils literal notranslate"><span class="pre">pre_</span></code></li>
+<li>StaticConstantSuffix of <code class="docutils literal notranslate"><span class="pre">_post</span></code></li>
+</ul>
+</div></blockquote>
+<p>Identifies and/or transforms static constant names as follows:</p>
+<p>Before:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">static</span> <span class="kt">unsigned</span> <span class="k">const</span> <span class="n">MyConstStatic_array</span><span class="p">[]</span> <span class="o">=</span> <span class="p">{</span><span class="mi">1</span><span class="p">,</span> <span class="mi">2</span><span class="p">,</span> <span class="mi">3</span><span class="p">};</span>
+</pre></div>
+</div>
+<p>After:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">static</span> <span class="kt">unsigned</span> <span class="k">const</span> <span class="n">pre_myconststatic_array_post</span><span class="p">[]</span> <span class="o">=</span> <span class="p">{</span><span class="mi">1</span><span class="p">,</span> <span class="mi">2</span><span class="p">,</span> <span class="mi">3</span><span class="p">};</span>
+</pre></div>
+</div>
+<dl class="option">
+<dt id="cmdoption-arg-staticvariablecase">
+<code class="descname">StaticVariableCase</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-staticvariablecase" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure static variable names conform to the
+selected casing.</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-staticvariableprefix">
+<code class="descname">StaticVariablePrefix</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-staticvariableprefix" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure static variable names will add the
+prefixed with the given value (regardless of casing).</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-staticvariablesuffix">
+<code class="descname">StaticVariableSuffix</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-staticvariablesuffix" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure static variable names will add the
+suffix with the given value (regardless of casing).</p>
+</dd></dl>
+
+<p>For example using values of:</p>
+<blockquote>
+<div><ul class="simple">
+<li>StaticVariableCase of <code class="docutils literal notranslate"><span class="pre">lower_case</span></code></li>
+<li>StaticVariablePrefix of <code class="docutils literal notranslate"><span class="pre">pre_</span></code></li>
+<li>StaticVariableSuffix of <code class="docutils literal notranslate"><span class="pre">_post</span></code></li>
+</ul>
+</div></blockquote>
+<p>Identifies and/or transforms static variable names as follows:</p>
+<p>Before:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">static</span> <span class="kt">unsigned</span> <span class="n">MyStatic_array</span><span class="p">[]</span> <span class="o">=</span> <span class="p">{</span><span class="mi">1</span><span class="p">,</span> <span class="mi">2</span><span class="p">,</span> <span class="mi">3</span><span class="p">};</span>
+</pre></div>
+</div>
+<p>After:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">static</span> <span class="kt">unsigned</span> <span class="n">pre_mystatic_array_post</span><span class="p">[]</span> <span class="o">=</span> <span class="p">{</span><span class="mi">1</span><span class="p">,</span> <span class="mi">2</span><span class="p">,</span> <span class="mi">3</span><span class="p">};</span>
+</pre></div>
+</div>
+<dl class="option">
+<dt id="cmdoption-arg-structcase">
+<code class="descname">StructCase</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-structcase" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure struct names conform to the
+selected casing.</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-structprefix">
+<code class="descname">StructPrefix</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-structprefix" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure struct names will add the
+prefixed with the given value (regardless of casing).</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-structsuffix">
+<code class="descname">StructSuffix</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-structsuffix" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure struct names will add the
+suffix with the given value (regardless of casing).</p>
+</dd></dl>
+
+<p>For example using values of:</p>
+<blockquote>
+<div><ul class="simple">
+<li>StructCase of <code class="docutils literal notranslate"><span class="pre">lower_case</span></code></li>
+<li>StructPrefix of <code class="docutils literal notranslate"><span class="pre">pre_</span></code></li>
+<li>StructSuffix of <code class="docutils literal notranslate"><span class="pre">_post</span></code></li>
+</ul>
+</div></blockquote>
+<p>Identifies and/or transforms struct names as follows:</p>
+<p>Before:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">struct</span> <span class="n">FOO</span> <span class="p">{</span>
+ <span class="n">FOO</span><span class="p">();</span>
+ <span class="o">~</span><span class="n">FOO</span><span class="p">();</span>
+<span class="p">};</span>
+</pre></div>
+</div>
+<p>After:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">struct</span> <span class="n">pre_foo_post</span> <span class="p">{</span>
+ <span class="n">pre_foo_post</span><span class="p">();</span>
+ <span class="o">~</span><span class="n">pre_foo_post</span><span class="p">();</span>
+<span class="p">};</span>
+</pre></div>
+</div>
+<dl class="option">
+<dt id="cmdoption-arg-templateparametercase">
+<code class="descname">TemplateParameterCase</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-templateparametercase" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure template parameter names conform to the
+selected casing.</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-templateparameterprefix">
+<code class="descname">TemplateParameterPrefix</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-templateparameterprefix" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure template parameter names will add the
+prefixed with the given value (regardless of casing).</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-templateparametersuffix">
+<code class="descname">TemplateParameterSuffix</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-templateparametersuffix" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure template parameter names will add the
+suffix with the given value (regardless of casing).</p>
+</dd></dl>
+
+<p>For example using values of:</p>
+<blockquote>
+<div><ul class="simple">
+<li>TemplateParameterCase of <code class="docutils literal notranslate"><span class="pre">lower_case</span></code></li>
+<li>TemplateParameterPrefix of <code class="docutils literal notranslate"><span class="pre">pre_</span></code></li>
+<li>TemplateParameterSuffix of <code class="docutils literal notranslate"><span class="pre">_post</span></code></li>
+</ul>
+</div></blockquote>
+<p>Identifies and/or transforms template parameter names as follows:</p>
+<p>Before:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">template</span> <span class="o"><</span><span class="k">typename</span> <span class="n">T</span><span class="o">></span> <span class="k">class</span> <span class="nc">Foo</span> <span class="p">{};</span>
+</pre></div>
+</div>
+<p>After:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">template</span> <span class="o"><</span><span class="k">typename</span> <span class="n">pre_t_post</span><span class="o">></span> <span class="k">class</span> <span class="nc">Foo</span> <span class="p">{};</span>
+</pre></div>
+</div>
+<dl class="option">
+<dt id="cmdoption-arg-templatetemplateparametercase">
+<code class="descname">TemplateTemplateParameterCase</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-templatetemplateparametercase" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure template template parameter names conform to the
+selected casing.</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-templatetemplateparameterprefix">
+<code class="descname">TemplateTemplateParameterPrefix</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-templatetemplateparameterprefix" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure template template parameter names will add the
+prefixed with the given value (regardless of casing).</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-templatetemplateparametersuffix">
+<code class="descname">TemplateTemplateParameterSuffix</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-templatetemplateparametersuffix" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure template template parameter names will add the
+suffix with the given value (regardless of casing).</p>
+</dd></dl>
+
+<p>For example using values of:</p>
+<blockquote>
+<div><ul class="simple">
+<li>TemplateTemplateParameterCase of <code class="docutils literal notranslate"><span class="pre">lower_case</span></code></li>
+<li>TemplateTemplateParameterPrefix of <code class="docutils literal notranslate"><span class="pre">pre_</span></code></li>
+<li>TemplateTemplateParameterSuffix of <code class="docutils literal notranslate"><span class="pre">_post</span></code></li>
+</ul>
+</div></blockquote>
+<p>Identifies and/or transforms template template parameter names as follows:</p>
+<p>Before:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">template</span> <span class="o"><</span><span class="k">template</span> <span class="o"><</span><span class="k">typename</span><span class="o">></span> <span class="k">class</span> <span class="nc">TPL_parameter</span><span class="p">,</span> <span class="kt">int</span> <span class="n">COUNT_params</span><span class="p">,</span>
+ <span class="k">typename</span><span class="p">...</span> <span class="n">TYPE_parameters</span><span class="o">></span>
+</pre></div>
+</div>
+<p>After:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">template</span> <span class="o"><</span><span class="k">template</span> <span class="o"><</span><span class="k">typename</span><span class="o">></span> <span class="k">class</span> <span class="nc">pre_tpl_parameter_post</span><span class="p">,</span> <span class="kt">int</span> <span class="n">COUNT_params</span><span class="p">,</span>
+ <span class="k">typename</span><span class="p">...</span> <span class="n">TYPE_parameters</span><span class="o">></span>
+</pre></div>
+</div>
+<dl class="option">
+<dt id="cmdoption-arg-typealiascase">
+<code class="descname">TypeAliasCase</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-typealiascase" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure type alias names conform to the
+selected casing.</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-typealiasprefix">
+<code class="descname">TypeAliasPrefix</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-typealiasprefix" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure type alias names will add the
+prefixed with the given value (regardless of casing).</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-typealiassuffix">
+<code class="descname">TypeAliasSuffix</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-typealiassuffix" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure type alias names will add the
+suffix with the given value (regardless of casing).</p>
+</dd></dl>
+
+<p>For example using values of:</p>
+<blockquote>
+<div><ul class="simple">
+<li>TypeAliasCase of <code class="docutils literal notranslate"><span class="pre">lower_case</span></code></li>
+<li>TypeAliasPrefix of <code class="docutils literal notranslate"><span class="pre">pre_</span></code></li>
+<li>TypeAliasSuffix of <code class="docutils literal notranslate"><span class="pre">_post</span></code></li>
+</ul>
+</div></blockquote>
+<p>Identifies and/or transforms type alias names as follows:</p>
+<p>Before:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">using</span> <span class="n">MY_STRUCT_TYPE</span> <span class="o">=</span> <span class="n">my_structure</span><span class="p">;</span>
+</pre></div>
+</div>
+<p>After:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">using</span> <span class="n">pre_my_struct_type_post</span> <span class="o">=</span> <span class="n">my_structure</span><span class="p">;</span>
+</pre></div>
+</div>
+<dl class="option">
+<dt id="cmdoption-arg-typedefcase">
+<code class="descname">TypedefCase</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-typedefcase" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure typedef names conform to the
+selected casing.</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-typedefprefix">
+<code class="descname">TypedefPrefix</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-typedefprefix" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure typedef names will add the
+prefixed with the given value (regardless of casing).</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-typedefsuffix">
+<code class="descname">TypedefSuffix</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-typedefsuffix" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure typedef names will add the
+suffix with the given value (regardless of casing).</p>
+</dd></dl>
+
+<p>For example using values of:</p>
+<blockquote>
+<div><ul class="simple">
+<li>TypedefCase of <code class="docutils literal notranslate"><span class="pre">lower_case</span></code></li>
+<li>TypedefPrefix of <code class="docutils literal notranslate"><span class="pre">pre_</span></code></li>
+<li>TypedefSuffix of <code class="docutils literal notranslate"><span class="pre">_post</span></code></li>
+</ul>
+</div></blockquote>
+<p>Identifies and/or transforms typedef names as follows:</p>
+<p>Before:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">typedef</span> <span class="kt">int</span> <span class="n">MYINT</span><span class="p">;</span>
+</pre></div>
+</div>
+<p>After:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">typedef</span> <span class="kt">int</span> <span class="n">pre_myint_post</span><span class="p">;</span>
+</pre></div>
+</div>
+<dl class="option">
+<dt id="cmdoption-arg-typetemplateparametercase">
+<code class="descname">TypeTemplateParameterCase</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-typetemplateparametercase" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure type template parameter names conform to the
+selected casing.</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-typetemplateparameterprefix">
+<code class="descname">TypeTemplateParameterPrefix</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-typetemplateparameterprefix" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure type template parameter names will add the
+prefixed with the given value (regardless of casing).</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-typetemplateparametersuffix">
+<code class="descname">TypeTemplateParameterSuffix</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-typetemplateparametersuffix" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure type template parameter names will add the
+suffix with the given value (regardless of casing).</p>
+</dd></dl>
+
+<p>For example using values of:</p>
+<blockquote>
+<div><ul class="simple">
+<li>TypeTemplateParameterCase of <code class="docutils literal notranslate"><span class="pre">lower_case</span></code></li>
+<li>TypeTemplateParameterPrefix of <code class="docutils literal notranslate"><span class="pre">pre_</span></code></li>
+<li>TypeTemplateParameterSuffix of <code class="docutils literal notranslate"><span class="pre">_post</span></code></li>
+</ul>
+</div></blockquote>
+<p>Identifies and/or transforms type template parameter names as follows:</p>
+<p>Before:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">template</span> <span class="o"><</span><span class="k">template</span> <span class="o"><</span><span class="k">typename</span><span class="o">></span> <span class="k">class</span> <span class="nc">TPL_parameter</span><span class="p">,</span> <span class="kt">int</span> <span class="n">COUNT_params</span><span class="p">,</span>
+ <span class="k">typename</span><span class="p">...</span> <span class="n">TYPE_parameters</span><span class="o">></span>
+</pre></div>
+</div>
+<p>After:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">template</span> <span class="o"><</span><span class="k">template</span> <span class="o"><</span><span class="k">typename</span><span class="o">></span> <span class="k">class</span> <span class="nc">TPL_parameter</span><span class="p">,</span> <span class="kt">int</span> <span class="n">COUNT_params</span><span class="p">,</span>
+ <span class="k">typename</span><span class="p">...</span> <span class="n">pre_type_parameters_post</span><span class="o">></span>
+</pre></div>
+</div>
+<dl class="option">
+<dt id="cmdoption-arg-unioncase">
+<code class="descname">UnionCase</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-unioncase" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure union names conform to the
+selected casing.</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-unionprefix">
+<code class="descname">UnionPrefix</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-unionprefix" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure union names will add the
+prefixed with the given value (regardless of casing).</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-unionsuffix">
+<code class="descname">UnionSuffix</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-unionsuffix" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure union names will add the
+suffix with the given value (regardless of casing).</p>
+</dd></dl>
+
+<p>For example using values of:</p>
+<blockquote>
+<div><ul class="simple">
+<li>UnionCase of <code class="docutils literal notranslate"><span class="pre">lower_case</span></code></li>
+<li>UnionPrefix of <code class="docutils literal notranslate"><span class="pre">pre_</span></code></li>
+<li>UnionSuffix of <code class="docutils literal notranslate"><span class="pre">_post</span></code></li>
+</ul>
+</div></blockquote>
+<p>Identifies and/or transforms union names as follows:</p>
+<p>Before:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">union</span> <span class="n">FOO</span> <span class="p">{</span>
+ <span class="kt">int</span> <span class="n">a</span><span class="p">;</span>
+ <span class="kt">char</span> <span class="n">b</span><span class="p">;</span>
+<span class="p">};</span>
+</pre></div>
+</div>
+<p>After:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">union</span> <span class="n">pre_foo_post</span> <span class="p">{</span>
+ <span class="kt">int</span> <span class="n">a</span><span class="p">;</span>
+ <span class="kt">char</span> <span class="n">b</span><span class="p">;</span>
+<span class="p">};</span>
+</pre></div>
+</div>
+<dl class="option">
+<dt id="cmdoption-arg-valuetemplateparametercase">
+<code class="descname">ValueTemplateParameterCase</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-valuetemplateparametercase" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure value template parameter names conform to the
+selected casing.</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-valuetemplateparameterprefix">
+<code class="descname">ValueTemplateParameterPrefix</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-valuetemplateparameterprefix" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure value template parameter names will add the
+prefixed with the given value (regardless of casing).</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-valuetemplateparametersuffix">
+<code class="descname">ValueTemplateParameterSuffix</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-valuetemplateparametersuffix" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure value template parameter names will add the
+suffix with the given value (regardless of casing).</p>
+</dd></dl>
+
+<p>For example using values of:</p>
+<blockquote>
+<div><ul class="simple">
+<li>ValueTemplateParameterCase of <code class="docutils literal notranslate"><span class="pre">lower_case</span></code></li>
+<li>ValueTemplateParameterPrefix of <code class="docutils literal notranslate"><span class="pre">pre_</span></code></li>
+<li>ValueTemplateParameterSuffix of <code class="docutils literal notranslate"><span class="pre">_post</span></code></li>
+</ul>
+</div></blockquote>
+<p>Identifies and/or transforms value template parameter names as follows:</p>
+<p>Before:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">template</span> <span class="o"><</span><span class="k">template</span> <span class="o"><</span><span class="k">typename</span><span class="o">></span> <span class="k">class</span> <span class="nc">TPL_parameter</span><span class="p">,</span> <span class="kt">int</span> <span class="n">COUNT_params</span><span class="p">,</span>
+ <span class="k">typename</span><span class="p">...</span> <span class="n">TYPE_parameters</span><span class="o">></span>
+</pre></div>
+</div>
+<p>After:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">template</span> <span class="o"><</span><span class="k">template</span> <span class="o"><</span><span class="k">typename</span><span class="o">></span> <span class="k">class</span> <span class="nc">TPL_parameter</span><span class="p">,</span> <span class="kt">int</span> <span class="n">pre_count_params_post</span><span class="p">,</span>
+ <span class="k">typename</span><span class="p">...</span> <span class="n">TYPE_parameters</span><span class="o">></span>
+</pre></div>
+</div>
+<dl class="option">
+<dt id="cmdoption-arg-variablecase">
+<code class="descname">VariableCase</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-variablecase" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure variable names conform to the
+selected casing.</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-variableprefix">
+<code class="descname">VariablePrefix</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-variableprefix" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure variable names will add the
+prefixed with the given value (regardless of casing).</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-variablesuffix">
+<code class="descname">VariableSuffix</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-variablesuffix" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure variable names will add the
+suffix with the given value (regardless of casing).</p>
+</dd></dl>
+
+<p>For example using values of:</p>
+<blockquote>
+<div><ul class="simple">
+<li>VariableCase of <code class="docutils literal notranslate"><span class="pre">lower_case</span></code></li>
+<li>VariablePrefix of <code class="docutils literal notranslate"><span class="pre">pre_</span></code></li>
+<li>VariableSuffix of <code class="docutils literal notranslate"><span class="pre">_post</span></code></li>
+</ul>
+</div></blockquote>
+<p>Identifies and/or transforms variable names as follows:</p>
+<p>Before:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="kt">unsigned</span> <span class="n">MyVariable</span><span class="p">;</span>
+</pre></div>
+</div>
+<p>After:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="kt">unsigned</span> <span class="n">pre_myvariable_post</span><span class="p">;</span>
+</pre></div>
+</div>
+<dl class="option">
+<dt id="cmdoption-arg-virtualmethodcase">
+<code class="descname">VirtualMethodCase</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-virtualmethodcase" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure virtual method names conform to the
+selected casing.</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-virtualmethodprefix">
+<code class="descname">VirtualMethodPrefix</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-virtualmethodprefix" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure virtual method names will add the
+prefixed with the given value (regardless of casing).</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-virtualmethodsuffix">
+<code class="descname">VirtualMethodSuffix</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-virtualmethodsuffix" title="Permalink to this definition">¶</a></dt>
+<dd><p>When defined, the check will ensure virtual method names will add the
+suffix with the given value (regardless of casing).</p>
+</dd></dl>
+
+<p>For example using values of:</p>
+<blockquote>
+<div><ul class="simple">
+<li>VirtualMethodCase of <code class="docutils literal notranslate"><span class="pre">lower_case</span></code></li>
+<li>VirtualMethodPrefix of <code class="docutils literal notranslate"><span class="pre">pre_</span></code></li>
+<li>VirtualMethodSuffix of <code class="docutils literal notranslate"><span class="pre">_post</span></code></li>
+</ul>
+</div></blockquote>
+<p>Identifies and/or transforms virtual method names as follows:</p>
+<p>Before:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">class</span> <span class="nc">Foo</span> <span class="p">{</span>
+<span class="k">public</span><span class="o">:</span>
+ <span class="k">virtual</span> <span class="kt">int</span> <span class="n">MemberFunction</span><span class="p">();</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+<p>After:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">class</span> <span class="nc">Foo</span> <span class="p">{</span>
+<span class="k">public</span><span class="o">:</span>
+ <span class="k">virtual</span> <span class="kt">int</span> <span class="n">pre_member_function_post</span><span class="p">();</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+</div>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="readability-function-size.html">readability-function-size</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="readability-implicit-bool-conversion.html">readability-implicit-bool-conversion</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/readability-implicit-bool-cast.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/readability-implicit-bool-cast.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/readability-implicit-bool-cast.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/readability-implicit-bool-cast.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,56 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><meta content="5;URL=readability-implicit-bool-conversion.html" http-equiv="refresh" />
+
+ <title>clang-tidy - readability-implicit-bool-cast — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - readability-implicit-bool-cast</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ <a class="uplink" href="../../index.html">Contents</a>
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="readability-implicit-bool-cast">
+<h1>readability-implicit-bool-cast<a class="headerlink" href="#readability-implicit-bool-cast" title="Permalink to this headline">¶</a></h1>
+<p>This check has been renamed to <a class="reference external" href="readability-implicit-bool-conversion.html">readability-implicit-bool-conversion</a>.</p>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ <a class="uplink" href="../../index.html">Contents</a>
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/readability-implicit-bool-conversion.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/readability-implicit-bool-conversion.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/readability-implicit-bool-conversion.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/readability-implicit-bool-conversion.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,185 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>clang-tidy - readability-implicit-bool-conversion — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="readability-inconsistent-declaration-parameter-name" href="readability-inconsistent-declaration-parameter-name.html" />
+ <link rel="prev" title="readability-identifier-naming" href="readability-identifier-naming.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - readability-implicit-bool-conversion</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="readability-identifier-naming.html">readability-identifier-naming</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="readability-inconsistent-declaration-parameter-name.html">readability-inconsistent-declaration-parameter-name</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="readability-implicit-bool-conversion">
+<h1>readability-implicit-bool-conversion<a class="headerlink" href="#readability-implicit-bool-conversion" title="Permalink to this headline">¶</a></h1>
+<p>This check can be used to find implicit conversions between built-in types and
+booleans. Depending on use case, it may simply help with readability of the code,
+or in some cases, point to potential bugs which remain unnoticed due to implicit
+conversions.</p>
+<p>The following is a real-world example of bug which was hiding behind implicit
+<code class="docutils literal notranslate"><span class="pre">bool</span></code> conversion:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">class</span> <span class="nc">Foo</span> <span class="p">{</span>
+ <span class="kt">int</span> <span class="n">m_foo</span><span class="p">;</span>
+
+<span class="k">public</span><span class="o">:</span>
+ <span class="kt">void</span> <span class="n">setFoo</span><span class="p">(</span><span class="kt">bool</span> <span class="n">foo</span><span class="p">)</span> <span class="p">{</span> <span class="n">m_foo</span> <span class="o">=</span> <span class="n">foo</span><span class="p">;</span> <span class="p">}</span> <span class="c1">// warning: implicit conversion bool -> int</span>
+ <span class="kt">int</span> <span class="n">getFoo</span><span class="p">()</span> <span class="p">{</span> <span class="k">return</span> <span class="n">m_foo</span><span class="p">;</span> <span class="p">}</span>
+<span class="p">};</span>
+
+<span class="kt">void</span> <span class="nf">use</span><span class="p">(</span><span class="n">Foo</span><span class="o">&</span> <span class="n">foo</span><span class="p">)</span> <span class="p">{</span>
+ <span class="kt">bool</span> <span class="n">value</span> <span class="o">=</span> <span class="n">foo</span><span class="p">.</span><span class="n">getFoo</span><span class="p">();</span> <span class="c1">// warning: implicit conversion int -> bool</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+<p>This code is the result of unsuccessful refactoring, where type of <code class="docutils literal notranslate"><span class="pre">m_foo</span></code>
+changed from <code class="docutils literal notranslate"><span class="pre">bool</span></code> to <code class="docutils literal notranslate"><span class="pre">int</span></code>. The programmer forgot to change all
+occurrences of <code class="docutils literal notranslate"><span class="pre">bool</span></code>, and the remaining code is no longer correct, yet it
+still compiles without any visible warnings.</p>
+<p>In addition to issuing warnings, fix-it hints are provided to help solve the
+reported issues. This can be used for improving readability of code, for
+example:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="kt">void</span> <span class="nf">conversionsToBool</span><span class="p">()</span> <span class="p">{</span>
+ <span class="kt">float</span> <span class="n">floating</span><span class="p">;</span>
+ <span class="kt">bool</span> <span class="n">boolean</span> <span class="o">=</span> <span class="n">floating</span><span class="p">;</span>
+ <span class="c1">// ^ propose replacement: bool boolean = floating != 0.0f;</span>
+
+ <span class="kt">int</span> <span class="n">integer</span><span class="p">;</span>
+ <span class="k">if</span> <span class="p">(</span><span class="n">integer</span><span class="p">)</span> <span class="p">{}</span>
+ <span class="c1">// ^ propose replacement: if (integer != 0) {}</span>
+
+ <span class="kt">int</span><span class="o">*</span> <span class="n">pointer</span><span class="p">;</span>
+ <span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="n">pointer</span><span class="p">)</span> <span class="p">{}</span>
+ <span class="c1">// ^ propose replacement: if (pointer == nullptr) {}</span>
+
+ <span class="k">while</span> <span class="p">(</span><span class="mi">1</span><span class="p">)</span> <span class="p">{}</span>
+ <span class="c1">// ^ propose replacement: while (true) {}</span>
+<span class="p">}</span>
+
+<span class="kt">void</span> <span class="nf">functionTakingInt</span><span class="p">(</span><span class="kt">int</span> <span class="n">param</span><span class="p">);</span>
+
+<span class="kt">void</span> <span class="nf">conversionsFromBool</span><span class="p">()</span> <span class="p">{</span>
+ <span class="kt">bool</span> <span class="n">boolean</span><span class="p">;</span>
+ <span class="n">functionTakingInt</span><span class="p">(</span><span class="n">boolean</span><span class="p">);</span>
+ <span class="c1">// ^ propose replacement: functionTakingInt(static_cast<int>(boolean));</span>
+
+ <span class="n">functionTakingInt</span><span class="p">(</span><span class="nb">true</span><span class="p">);</span>
+ <span class="c1">// ^ propose replacement: functionTakingInt(1);</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+<p>In general, the following conversion types are checked:</p>
+<ul class="simple">
+<li>integer expression/literal to boolean (conversion from a single bit bitfield
+to boolean is explicitly allowed, since thereâs no ambiguity / information
+loss in this case),</li>
+<li>floating expression/literal to boolean,</li>
+<li>pointer/pointer to member/<code class="docutils literal notranslate"><span class="pre">nullptr</span></code>/<code class="docutils literal notranslate"><span class="pre">NULL</span></code> to boolean,</li>
+<li>boolean expression/literal to integer (conversion from boolean to a single
+bit bitfield is explicitly allowed),</li>
+<li>boolean expression/literal to floating.</li>
+</ul>
+<p>The rules for generating fix-it hints are:</p>
+<ul class="simple">
+<li>in case of conversions from other built-in type to bool, an explicit
+comparison is proposed to make it clear what exaclty is being compared:<ul>
+<li><code class="docutils literal notranslate"><span class="pre">bool</span> <span class="pre">boolean</span> <span class="pre">=</span> <span class="pre">floating;</span></code> is changed to
+<code class="docutils literal notranslate"><span class="pre">bool</span> <span class="pre">boolean</span> <span class="pre">=</span> <span class="pre">floating</span> <span class="pre">==</span> <span class="pre">0.0f;</span></code>,</li>
+<li>for other types, appropriate literals are used (<code class="docutils literal notranslate"><span class="pre">0</span></code>, <code class="docutils literal notranslate"><span class="pre">0u</span></code>, <code class="docutils literal notranslate"><span class="pre">0.0f</span></code>,
+<code class="docutils literal notranslate"><span class="pre">0.0</span></code>, <code class="docutils literal notranslate"><span class="pre">nullptr</span></code>),</li>
+</ul>
+</li>
+<li>in case of negated expressions conversion to bool, the proposed replacement
+with comparison is simplified:<ul>
+<li><code class="docutils literal notranslate"><span class="pre">if</span> <span class="pre">(!pointer)</span></code> is changed to <code class="docutils literal notranslate"><span class="pre">if</span> <span class="pre">(pointer</span> <span class="pre">==</span> <span class="pre">nullptr)</span></code>,</li>
+</ul>
+</li>
+<li>in case of conversions from bool to other built-in types, an explicit
+<code class="docutils literal notranslate"><span class="pre">static_cast</span></code> is proposed to make it clear that a conversion is taking
+place:<ul>
+<li><code class="docutils literal notranslate"><span class="pre">int</span> <span class="pre">integer</span> <span class="pre">=</span> <span class="pre">boolean;</span></code> is changed to
+<code class="docutils literal notranslate"><span class="pre">int</span> <span class="pre">integer</span> <span class="pre">=</span> <span class="pre">static_cast<int>(boolean);</span></code>,</li>
+</ul>
+</li>
+<li>if the conversion is performed on type literals, an equivalent literal is
+proposed, according to what type is actually expected, for example:<ul>
+<li><code class="docutils literal notranslate"><span class="pre">functionTakingBool(0);</span></code> is changed to <code class="docutils literal notranslate"><span class="pre">functionTakingBool(false);</span></code>,</li>
+<li><code class="docutils literal notranslate"><span class="pre">functionTakingInt(true);</span></code> is changed to <code class="docutils literal notranslate"><span class="pre">functionTakingInt(1);</span></code>,</li>
+<li>for other types, appropriate literals are used (<code class="docutils literal notranslate"><span class="pre">false</span></code>, <code class="docutils literal notranslate"><span class="pre">true</span></code>, <code class="docutils literal notranslate"><span class="pre">0</span></code>,
+<code class="docutils literal notranslate"><span class="pre">1</span></code>, <code class="docutils literal notranslate"><span class="pre">0u</span></code>, <code class="docutils literal notranslate"><span class="pre">1u</span></code>, <code class="docutils literal notranslate"><span class="pre">0.0f</span></code>, <code class="docutils literal notranslate"><span class="pre">1.0f</span></code>, <code class="docutils literal notranslate"><span class="pre">0.0</span></code>, <code class="docutils literal notranslate"><span class="pre">1.0f</span></code>).</li>
+</ul>
+</li>
+</ul>
+<p>Some additional accommodations are made for pre-C++11 dialects:</p>
+<ul class="simple">
+<li><code class="docutils literal notranslate"><span class="pre">false</span></code> literal conversion to pointer is detected,</li>
+<li>instead of <code class="docutils literal notranslate"><span class="pre">nullptr</span></code> literal, <code class="docutils literal notranslate"><span class="pre">0</span></code> is proposed as replacement.</li>
+</ul>
+<p>Occurrences of implicit conversions inside macros and template instantiations
+are deliberately ignored, as it is not clear how to deal with such cases.</p>
+<div class="section" id="options">
+<h2>Options<a class="headerlink" href="#options" title="Permalink to this headline">¶</a></h2>
+<dl class="option">
+<dt id="cmdoption-arg-allowintegerconditions">
+<code class="descname">AllowIntegerConditions</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-allowintegerconditions" title="Permalink to this definition">¶</a></dt>
+<dd><p>When non-zero, the check will allow conditional integer conversions. Default
+is <cite>0</cite>.</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-allowpointerconditions">
+<code class="descname">AllowPointerConditions</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-allowpointerconditions" title="Permalink to this definition">¶</a></dt>
+<dd><p>When non-zero, the check will allow conditional pointer conversions. Default
+is <cite>0</cite>.</p>
+</dd></dl>
+
+</div>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="readability-identifier-naming.html">readability-identifier-naming</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="readability-inconsistent-declaration-parameter-name.html">readability-inconsistent-declaration-parameter-name</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/readability-inconsistent-declaration-parameter-name.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/readability-inconsistent-declaration-parameter-name.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/readability-inconsistent-declaration-parameter-name.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/readability-inconsistent-declaration-parameter-name.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,116 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>clang-tidy - readability-inconsistent-declaration-parameter-name — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="readability-isolate-declaration" href="readability-isolate-declaration.html" />
+ <link rel="prev" title="readability-implicit-bool-conversion" href="readability-implicit-bool-conversion.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - readability-inconsistent-declaration-parameter-name</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="readability-implicit-bool-conversion.html">readability-implicit-bool-conversion</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="readability-isolate-declaration.html">readability-isolate-declaration</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="readability-inconsistent-declaration-parameter-name">
+<h1>readability-inconsistent-declaration-parameter-name<a class="headerlink" href="#readability-inconsistent-declaration-parameter-name" title="Permalink to this headline">¶</a></h1>
+<p>Find function declarations which differ in parameter names.</p>
+<p>Example:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="c1">// in foo.hpp:</span>
+<span class="kt">void</span> <span class="nf">foo</span><span class="p">(</span><span class="kt">int</span> <span class="n">a</span><span class="p">,</span> <span class="kt">int</span> <span class="n">b</span><span class="p">,</span> <span class="kt">int</span> <span class="n">c</span><span class="p">);</span>
+
+<span class="c1">// in foo.cpp:</span>
+<span class="kt">void</span> <span class="nf">foo</span><span class="p">(</span><span class="kt">int</span> <span class="n">d</span><span class="p">,</span> <span class="kt">int</span> <span class="n">e</span><span class="p">,</span> <span class="kt">int</span> <span class="n">f</span><span class="p">);</span> <span class="c1">// warning</span>
+</pre></div>
+</div>
+<p>This check should help to enforce consistency in large projects, where it often
+happens that a definition of function is refactored, changing the parameter
+names, but its declaration in header file is not updated. With this check, we
+can easily find and correct such inconsistencies, keeping declaration and
+definition always in sync.</p>
+<p>Unnamed parameters are allowed and are not taken into account when comparing
+function declarations, for example:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="kt">void</span> <span class="nf">foo</span><span class="p">(</span><span class="kt">int</span> <span class="n">a</span><span class="p">);</span>
+<span class="kt">void</span> <span class="nf">foo</span><span class="p">(</span><span class="kt">int</span><span class="p">);</span> <span class="c1">// no warning</span>
+</pre></div>
+</div>
+<p>One name is also allowed to be a case-insensitive prefix/suffix of the other:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="kt">void</span> <span class="nf">foo</span><span class="p">(</span><span class="kt">int</span> <span class="n">count</span><span class="p">);</span>
+<span class="kt">void</span> <span class="nf">foo</span><span class="p">(</span><span class="kt">int</span> <span class="n">count_input</span><span class="p">)</span> <span class="p">{</span> <span class="c1">// no warning</span>
+ <span class="kt">int</span> <span class="n">count</span> <span class="o">=</span> <span class="n">adjustCount</span><span class="p">(</span><span class="n">count_input</span><span class="p">);</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+<p>To help with refactoring, in some cases fix-it hints are generated to align
+parameter names to a single naming convention. This works with the assumption
+that the function definition is the most up-to-date version, as it directly
+references parameter names in its body. Example:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="kt">void</span> <span class="nf">foo</span><span class="p">(</span><span class="kt">int</span> <span class="n">a</span><span class="p">);</span> <span class="c1">// warning and fix-it hint (replace "a" to "b")</span>
+<span class="kt">int</span> <span class="nf">foo</span><span class="p">(</span><span class="kt">int</span> <span class="n">b</span><span class="p">)</span> <span class="p">{</span> <span class="k">return</span> <span class="n">b</span> <span class="o">+</span> <span class="mi">2</span><span class="p">;</span> <span class="p">}</span> <span class="c1">// definition with use of "b"</span>
+</pre></div>
+</div>
+<p>In the case of multiple redeclarations or function template specializations,
+a warning is issued for every redeclaration or specialization inconsistent with
+the definition or the first declaration seen in a translation unit.</p>
+<dl class="option">
+<dt id="cmdoption-arg-ignoremacros">
+<code class="descname">IgnoreMacros</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-ignoremacros" title="Permalink to this definition">¶</a></dt>
+<dd><p>If this option is set to non-zero (default is <cite>1</cite>), the check will not warn
+about names declared inside macros.</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-strict">
+<code class="descname">Strict</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-strict" title="Permalink to this definition">¶</a></dt>
+<dd><p>If this option is set to non-zero (default is <cite>0</cite>), then names must match
+exactly (or be absent).</p>
+</dd></dl>
+
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="readability-implicit-bool-conversion.html">readability-implicit-bool-conversion</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="readability-isolate-declaration.html">readability-isolate-declaration</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/readability-isolate-declaration.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/readability-isolate-declaration.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/readability-isolate-declaration.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/readability-isolate-declaration.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,148 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>clang-tidy - readability-isolate-declaration — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="readability-magic-numbers" href="readability-magic-numbers.html" />
+ <link rel="prev" title="readability-inconsistent-declaration-parameter-name" href="readability-inconsistent-declaration-parameter-name.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - readability-isolate-declaration</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="readability-inconsistent-declaration-parameter-name.html">readability-inconsistent-declaration-parameter-name</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="readability-magic-numbers.html">readability-magic-numbers</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="readability-isolate-declaration">
+<h1>readability-isolate-declaration<a class="headerlink" href="#readability-isolate-declaration" title="Permalink to this headline">¶</a></h1>
+<p>Detects local variable declarations declaring more than one variable and
+tries to refactor the code to one statement per declaration.</p>
+<p>The automatic code-transformation will use the same indentation as the original
+for every created statement and add a line break after each statement.
+It keeps the order of the variable declarations consistent, too.</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="kt">void</span> <span class="nf">f</span><span class="p">()</span> <span class="p">{</span>
+ <span class="kt">int</span> <span class="o">*</span> <span class="n">pointer</span> <span class="o">=</span> <span class="k">nullptr</span><span class="p">,</span> <span class="n">value</span> <span class="o">=</span> <span class="mi">42</span><span class="p">,</span> <span class="o">*</span> <span class="k">const</span> <span class="n">const_ptr</span> <span class="o">=</span> <span class="o">&</span><span class="n">value</span><span class="p">;</span>
+ <span class="c1">// This declaration will be diagnosed and transformed into:</span>
+ <span class="c1">// int * pointer = nullptr;</span>
+ <span class="c1">// int value = 42;</span>
+ <span class="c1">// int * const const_ptr = &value;</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+<p>The check excludes places where it is necessary or common to declare
+multiple variables in one statement and there is no other way supported in the
+language. Please note that structured bindings are not considered.</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="c1">// It is not possible to transform this declaration and doing the declaration</span>
+<span class="c1">// before the loop will increase the scope of the variable 'Begin' and 'End'</span>
+<span class="c1">// which is undesirable.</span>
+<span class="k">for</span> <span class="p">(</span><span class="kt">int</span> <span class="n">Begin</span> <span class="o">=</span> <span class="mi">0</span><span class="p">,</span> <span class="n">End</span> <span class="o">=</span> <span class="mi">100</span><span class="p">;</span> <span class="n">Begin</span> <span class="o"><</span> <span class="n">End</span><span class="p">;</span> <span class="o">++</span><span class="n">Begin</span><span class="p">);</span>
+<span class="k">if</span> <span class="p">(</span><span class="kt">int</span> <span class="n">Begin</span> <span class="o">=</span> <span class="mi">42</span><span class="p">,</span> <span class="n">Result</span> <span class="o">=</span> <span class="n">some_function</span><span class="p">(</span><span class="n">Begin</span><span class="p">);</span> <span class="n">Begin</span> <span class="o">==</span> <span class="n">Result</span><span class="p">);</span>
+
+<span class="c1">// It is not possible to transform this declaration because the result is</span>
+<span class="c1">// not functionality preserving as 'j' and 'k' would not be part of the</span>
+<span class="c1">// 'if' statement anymore.</span>
+<span class="k">if</span> <span class="p">(</span><span class="n">SomeCondition</span><span class="p">())</span>
+ <span class="kt">int</span> <span class="n">i</span> <span class="o">=</span> <span class="mi">42</span><span class="p">,</span> <span class="n">j</span> <span class="o">=</span> <span class="mi">43</span><span class="p">,</span> <span class="n">k</span> <span class="o">=</span> <span class="n">function</span><span class="p">(</span><span class="n">i</span><span class="p">,</span><span class="n">j</span><span class="p">);</span>
+</pre></div>
+</div>
+<div class="section" id="limitations">
+<h2>Limitations<a class="headerlink" href="#limitations" title="Permalink to this headline">¶</a></h2>
+<p>Global variables and member variables are excluded.</p>
+<p>The check currently does not support the automatic transformation of
+member-pointer-types.</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">struct</span> <span class="n">S</span> <span class="p">{</span>
+ <span class="kt">int</span> <span class="n">a</span><span class="p">;</span>
+ <span class="k">const</span> <span class="kt">int</span> <span class="n">b</span><span class="p">;</span>
+ <span class="kt">void</span> <span class="nf">f</span><span class="p">()</span> <span class="p">{}</span>
+<span class="p">};</span>
+
+<span class="kt">void</span> <span class="nf">f</span><span class="p">()</span> <span class="p">{</span>
+ <span class="c1">// Only a diagnostic message is emitted</span>
+ <span class="kt">int</span> <span class="n">S</span><span class="o">::*</span><span class="n">p</span> <span class="o">=</span> <span class="o">&</span><span class="n">S</span><span class="o">::</span><span class="n">a</span><span class="p">,</span> <span class="n">S</span><span class="o">::*</span><span class="k">const</span> <span class="n">q</span> <span class="o">=</span> <span class="o">&</span><span class="n">S</span><span class="o">::</span><span class="n">a</span><span class="p">;</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+<p>Furthermore, the transformation is very cautious when it detects various kinds
+of macros or preprocessor directives in the range of the statement. In this
+case the transformation will not happen to avoid unexpected side-effects due to
+macros.</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="cp">#define NULL 0</span>
+<span class="cp">#define MY_NICE_TYPE int **</span>
+<span class="cp">#define VAR_NAME(name) name##__LINE__</span>
+<span class="cp">#define A_BUNCH_OF_VARIABLES int m1 = 42, m2 = 43, m3 = 44;</span>
+
+<span class="kt">void</span> <span class="nf">macros</span><span class="p">()</span> <span class="p">{</span>
+ <span class="kt">int</span> <span class="o">*</span><span class="n">p1</span> <span class="o">=</span> <span class="nb">NULL</span><span class="p">,</span> <span class="o">*</span><span class="n">p2</span> <span class="o">=</span> <span class="nb">NULL</span><span class="p">;</span>
+ <span class="c1">// Will be transformed to</span>
+ <span class="c1">// int *p1 = NULL;</span>
+ <span class="c1">// int *p2 = NULL;</span>
+
+ <span class="n">MY_NICE_TYPE</span> <span class="n">p3</span><span class="p">,</span> <span class="n">v1</span><span class="p">,</span> <span class="n">v2</span><span class="p">;</span>
+ <span class="c1">// Won't be transformed, but a diagnostic is emitted.</span>
+
+ <span class="kt">int</span> <span class="n">VAR_NAME</span><span class="p">(</span><span class="n">v3</span><span class="p">),</span>
+ <span class="n">VAR_NAME</span><span class="p">(</span><span class="n">v4</span><span class="p">),</span>
+ <span class="n">VAR_NAME</span><span class="p">(</span><span class="n">v5</span><span class="p">);</span>
+ <span class="c1">// Won't be transformed, but a diagnostic is emitted.</span>
+
+ <span class="n">A_BUNCH_OF_VARIABLES</span>
+ <span class="c1">// Won't be transformed, but a diagnostic is emitted.</span>
+
+ <span class="kt">int</span> <span class="n">Unconditional</span><span class="p">,</span>
+<span class="cp">#if CONFIGURATION</span>
+ <span class="n">IfConfigured</span> <span class="o">=</span> <span class="mi">42</span><span class="p">,</span>
+<span class="cp">#else</span>
+ <span class="n">IfConfigured</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span>
+<span class="cp">#endif</span>
+ <span class="c1">// Won't be transformed, but a diagnostic is emitted.</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+</div>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="readability-inconsistent-declaration-parameter-name.html">readability-inconsistent-declaration-parameter-name</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="readability-magic-numbers.html">readability-magic-numbers</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/readability-magic-numbers.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/readability-magic-numbers.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/readability-magic-numbers.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/readability-magic-numbers.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,170 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>clang-tidy - readability-magic-numbers — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="readability-misleading-indentation" href="readability-misleading-indentation.html" />
+ <link rel="prev" title="readability-isolate-declaration" href="readability-isolate-declaration.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - readability-magic-numbers</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="readability-isolate-declaration.html">readability-isolate-declaration</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="readability-misleading-indentation.html">readability-misleading-indentation</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="readability-magic-numbers">
+<h1>readability-magic-numbers<a class="headerlink" href="#readability-magic-numbers" title="Permalink to this headline">¶</a></h1>
+<p>Detects magic numbers, integer or floating point literals that are embedded in
+code and not introduced via constants or symbols.</p>
+<p>Many coding guidelines advise replacing the magic values with symbolic
+constants to improve readability. Here are a few references:</p>
+<blockquote>
+<div><ul class="simple">
+<li><a class="reference external" href="https://isocpp.github.io/CppCoreGuidelines/CppCoreGuidelines#Res-magic">Rule ES.45: Avoid âmagic constantsâ; use symbolic constants in C++ Core Guidelines</a></li>
+<li><a class="reference external" href="http://www.codingstandard.com/rule/5-1-1-use-symbolic-names-instead-of-literal-values-in-code/">Rule 5.1.1 Use symbolic names instead of literal values in code in High Integrity C++</a></li>
+<li>Item 17 in âC++ Coding Standards: 101 Rules, Guidelines and Best
+Practicesâ by Herb Sutter and Andrei Alexandrescu</li>
+<li>Chapter 17 in âClean Code - A handbook of agile software craftsmanship.â
+by Robert C. Martin</li>
+<li>Rule 20701 in âTRAIN REAL TIME DATA PROTOCOL Coding Rulesâ by Armin-Hagen
+Weiss, Bombardier</li>
+<li><a class="reference external" href="http://wiki.c2.com/?MagicNumber">http://wiki.c2.com/?MagicNumber</a></li>
+</ul>
+</div></blockquote>
+<p>Examples of magic values:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="kt">double</span> <span class="n">circleArea</span> <span class="o">=</span> <span class="mf">3.1415926535</span> <span class="o">*</span> <span class="n">radius</span> <span class="o">*</span> <span class="n">radius</span><span class="p">;</span>
+
+<span class="kt">double</span> <span class="n">totalCharge</span> <span class="o">=</span> <span class="mf">1.08</span> <span class="o">*</span> <span class="n">itemPrice</span><span class="p">;</span>
+
+<span class="kt">int</span> <span class="nf">getAnswer</span><span class="p">()</span> <span class="p">{</span>
+ <span class="k">return</span> <span class="o">-</span><span class="mi">3</span><span class="p">;</span> <span class="c1">// FILENOTFOUND</span>
+<span class="p">}</span>
+
+<span class="k">for</span> <span class="p">(</span><span class="kt">int</span> <span class="n">mm</span> <span class="o">=</span> <span class="mi">1</span><span class="p">;</span> <span class="n">mm</span> <span class="o"><=</span> <span class="mi">12</span><span class="p">;</span> <span class="o">++</span><span class="n">mm</span><span class="p">)</span> <span class="p">{</span>
+ <span class="n">std</span><span class="o">::</span><span class="n">cout</span> <span class="o"><<</span> <span class="n">month</span><span class="p">[</span><span class="n">mm</span><span class="p">]</span> <span class="o"><<</span> <span class="sc">'\n'</span><span class="p">;</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+<p>Example with magic values refactored:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="kt">double</span> <span class="n">circleArea</span> <span class="o">=</span> <span class="n">M_PI</span> <span class="o">*</span> <span class="n">radius</span> <span class="o">*</span> <span class="n">radius</span><span class="p">;</span>
+
+<span class="k">const</span> <span class="kt">double</span> <span class="n">TAX_RATE</span> <span class="o">=</span> <span class="mf">0.08</span><span class="p">;</span> <span class="c1">// or make it variable and read from a file</span>
+
+<span class="kt">double</span> <span class="n">totalCharge</span> <span class="o">=</span> <span class="p">(</span><span class="mf">1.0</span> <span class="o">+</span> <span class="n">TAX_RATE</span><span class="p">)</span> <span class="o">*</span> <span class="n">itemPrice</span><span class="p">;</span>
+
+<span class="kt">int</span> <span class="nf">getAnswer</span><span class="p">()</span> <span class="p">{</span>
+ <span class="k">return</span> <span class="n">E_FILE_NOT_FOUND</span><span class="p">;</span>
+<span class="p">}</span>
+
+<span class="k">for</span> <span class="p">(</span><span class="kt">int</span> <span class="n">mm</span> <span class="o">=</span> <span class="mi">1</span><span class="p">;</span> <span class="n">mm</span> <span class="o"><=</span> <span class="n">MONTHS_IN_A_YEAR</span><span class="p">;</span> <span class="o">++</span><span class="n">mm</span><span class="p">)</span> <span class="p">{</span>
+ <span class="n">std</span><span class="o">::</span><span class="n">cout</span> <span class="o"><<</span> <span class="n">month</span><span class="p">[</span><span class="n">mm</span><span class="p">]</span> <span class="o"><<</span> <span class="sc">'\n'</span><span class="p">;</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+<p>For integral literals by default only <cite>0</cite> and <cite>1</cite> (and <cite>-1</cite>) integer values
+are accepted without a warning. This can be overridden with the
+<a class="reference internal" href="#cmdoption-arg-ignoredintegervalues"><code class="xref std std-option docutils literal notranslate"><span class="pre">IgnoredIntegerValues</span></code></a> option. Negative values are accepted if their
+absolute value is present in the <a class="reference internal" href="#cmdoption-arg-ignoredintegervalues"><code class="xref std std-option docutils literal notranslate"><span class="pre">IgnoredIntegerValues</span></code></a> list.</p>
+<p>As a special case for integral values, all powers of two can be accepted
+without warning by enabling the <a class="reference internal" href="#cmdoption-arg-ignorepowersof2integervalues"><code class="xref std std-option docutils literal notranslate"><span class="pre">IgnorePowersOf2IntegerValues</span></code></a> option.</p>
+<p>For floating point literals by default the <cite>0.0</cite> floating point value is
+accepted without a warning. The set of ignored floating point literals can
+be configured using the <a class="reference internal" href="#cmdoption-arg-ignoredfloatingpointvalues"><code class="xref std std-option docutils literal notranslate"><span class="pre">IgnoredFloatingPointValues</span></code></a> option.
+For each value in that set, the given string value is converted to a
+floating-point value representation used by the target architecture. If a
+floating-point literal value compares equal to one of the converted values,
+then that literal is not diagnosed by this check. Because floating-point
+equality is used to determine whether to diagnose or not, the user needs to
+be aware of the details of floating-point representations for any values that
+cannot be precisely represented for their target architecture.</p>
+<p>For each value in the <a class="reference internal" href="#cmdoption-arg-ignoredfloatingpointvalues"><code class="xref std std-option docutils literal notranslate"><span class="pre">IgnoredFloatingPointValues</span></code></a> set, both the
+single-precision form and double-precision form are accepted (for example, if
+3.14 is in the set, neither 3.14f nor 3.14 will produce a warning).</p>
+<p>Scientific notation is supported for both source code input and option.
+Alternatively, the check for the floating point numbers can be disabled for
+all floating point values by enabling the
+<a class="reference internal" href="#cmdoption-arg-ignoreallfloatingpointvalues"><code class="xref std std-option docutils literal notranslate"><span class="pre">IgnoreAllFloatingPointValues</span></code></a> option.</p>
+<p>Since values <cite>0</cite> and <cite>0.0</cite> are so common as the base counter of loops,
+or initialization values for sums, they are always accepted without warning,
+even if not present in the respective ignored values list.</p>
+<div class="section" id="options">
+<h2>Options<a class="headerlink" href="#options" title="Permalink to this headline">¶</a></h2>
+<dl class="option">
+<dt id="cmdoption-arg-ignoredintegervalues">
+<code class="descname">IgnoredIntegerValues</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-ignoredintegervalues" title="Permalink to this definition">¶</a></dt>
+<dd><p>Semicolon-separated list of magic positive integers that will be accepted
+without a warning. Default values are <cite>{1, 2, 3, 4}</cite>, and <cite>0</cite> is accepted
+unconditionally.</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-ignorepowersof2integervalues">
+<code class="descname">IgnorePowersOf2IntegerValues</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-ignorepowersof2integervalues" title="Permalink to this definition">¶</a></dt>
+<dd><p>Boolean value indicating whether to accept all powers-of-two integer values
+without warning. Default value is <cite>false</cite>.</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-ignoredfloatingpointvalues">
+<code class="descname">IgnoredFloatingPointValues</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-ignoredfloatingpointvalues" title="Permalink to this definition">¶</a></dt>
+<dd><p>Semicolon-separated list of magic positive floating point values that will
+be accepted without a warning. Default values are <cite>{1.0, 100.0}</cite> and <cite>0.0</cite>
+is accepted unconditionally.</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-ignoreallfloatingpointvalues">
+<code class="descname">IgnoreAllFloatingPointValues</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-ignoreallfloatingpointvalues" title="Permalink to this definition">¶</a></dt>
+<dd><p>Boolean value indicating whether to accept all floating point values without
+warning. Default value is <cite>false</cite>.</p>
+</dd></dl>
+
+</div>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="readability-isolate-declaration.html">readability-isolate-declaration</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="readability-misleading-indentation.html">readability-misleading-indentation</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/readability-misleading-indentation.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/readability-misleading-indentation.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/readability-misleading-indentation.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/readability-misleading-indentation.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,92 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>clang-tidy - readability-misleading-indentation — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="readability-misplaced-array-index" href="readability-misplaced-array-index.html" />
+ <link rel="prev" title="readability-magic-numbers" href="readability-magic-numbers.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - readability-misleading-indentation</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="readability-magic-numbers.html">readability-magic-numbers</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="readability-misplaced-array-index.html">readability-misplaced-array-index</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="readability-misleading-indentation">
+<h1>readability-misleading-indentation<a class="headerlink" href="#readability-misleading-indentation" title="Permalink to this headline">¶</a></h1>
+<p>Correct indentation helps to understand code. Mismatch of the syntactical
+structure and the indentation of the code may hide serious problems.
+Missing braces can also make it significantly harder to read the code,
+therefore it is important to use braces.</p>
+<p>The way to avoid dangling else is to always check that an <code class="docutils literal notranslate"><span class="pre">else</span></code> belongs
+to the <code class="docutils literal notranslate"><span class="pre">if</span></code> that begins in the same column.</p>
+<p>You can omit braces when your inner part of e.g. an <code class="docutils literal notranslate"><span class="pre">if</span></code> statement has only
+one statement in it. Although in that case you should begin the next statement
+in the same column with the <code class="docutils literal notranslate"><span class="pre">if</span></code>.</p>
+<p>Examples:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="c1">// Dangling else:</span>
+<span class="k">if</span> <span class="p">(</span><span class="n">cond1</span><span class="p">)</span>
+ <span class="k">if</span> <span class="p">(</span><span class="n">cond2</span><span class="p">)</span>
+ <span class="n">foo1</span><span class="p">();</span>
+<span class="k">else</span>
+ <span class="nf">foo2</span><span class="p">();</span> <span class="c1">// Wrong indentation: else belongs to if(cond2) statement.</span>
+
+<span class="c1">// Missing braces:</span>
+<span class="k">if</span> <span class="p">(</span><span class="n">cond1</span><span class="p">)</span>
+ <span class="n">foo1</span><span class="p">();</span>
+ <span class="n">foo2</span><span class="p">();</span> <span class="c1">// Not guarded by if(cond1).</span>
+</pre></div>
+</div>
+<div class="section" id="limitations">
+<h2>Limitations<a class="headerlink" href="#limitations" title="Permalink to this headline">¶</a></h2>
+<p>Note that this check only works as expected when the tabs or spaces are used
+consistently and not mixed.</p>
+</div>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="readability-magic-numbers.html">readability-magic-numbers</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="readability-misplaced-array-index.html">readability-misplaced-array-index</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/readability-misplaced-array-index.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/readability-misplaced-array-index.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/readability-misplaced-array-index.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/readability-misplaced-array-index.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,85 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>clang-tidy - readability-misplaced-array-index — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="readability-named-parameter" href="readability-named-parameter.html" />
+ <link rel="prev" title="readability-misleading-indentation" href="readability-misleading-indentation.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - readability-misplaced-array-index</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="readability-misleading-indentation.html">readability-misleading-indentation</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="readability-named-parameter.html">readability-named-parameter</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="readability-misplaced-array-index">
+<h1>readability-misplaced-array-index<a class="headerlink" href="#readability-misplaced-array-index" title="Permalink to this headline">¶</a></h1>
+<p>This check warns for unusual array index syntax.</p>
+<p>The following code has unusual array index syntax:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="kt">void</span> <span class="nf">f</span><span class="p">(</span><span class="kt">int</span> <span class="o">*</span><span class="n">X</span><span class="p">,</span> <span class="kt">int</span> <span class="n">Y</span><span class="p">)</span> <span class="p">{</span>
+ <span class="n">Y</span><span class="p">[</span><span class="n">X</span><span class="p">]</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+<p>becomes</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="kt">void</span> <span class="nf">f</span><span class="p">(</span><span class="kt">int</span> <span class="o">*</span><span class="n">X</span><span class="p">,</span> <span class="kt">int</span> <span class="n">Y</span><span class="p">)</span> <span class="p">{</span>
+ <span class="n">X</span><span class="p">[</span><span class="n">Y</span><span class="p">]</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+<dl class="docutils">
+<dt>The check warns about such unusual syntax for readability reasons:</dt>
+<dd><ul class="first last simple">
+<li>There are programmers that are not familiar with this unusual syntax.</li>
+<li>It is possible that variables are mixed up.</li>
+</ul>
+</dd>
+</dl>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="readability-misleading-indentation.html">readability-misleading-indentation</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="readability-named-parameter.html">readability-named-parameter</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/readability-named-parameter.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/readability-named-parameter.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/readability-named-parameter.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/readability-named-parameter.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,71 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>clang-tidy - readability-named-parameter — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="readability-non-const-parameter" href="readability-non-const-parameter.html" />
+ <link rel="prev" title="readability-misplaced-array-index" href="readability-misplaced-array-index.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - readability-named-parameter</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="readability-misplaced-array-index.html">readability-misplaced-array-index</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="readability-non-const-parameter.html">readability-non-const-parameter</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="readability-named-parameter">
+<h1>readability-named-parameter<a class="headerlink" href="#readability-named-parameter" title="Permalink to this headline">¶</a></h1>
+<p>Find functions with unnamed arguments.</p>
+<p>The check implements the following rule originating in the Google C++ Style
+Guide:</p>
+<p><a class="reference external" href="https://google.github.io/styleguide/cppguide.html#Function_Declarations_and_Definitions">https://google.github.io/styleguide/cppguide.html#Function_Declarations_and_Definitions</a></p>
+<p>All parameters should be named, with identical names in the declaration and
+implementation.</p>
+<p>Corresponding cpplint.py check name: <cite>readability/function</cite>.</p>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="readability-misplaced-array-index.html">readability-misplaced-array-index</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="readability-non-const-parameter.html">readability-non-const-parameter</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
Added: www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/readability-non-const-parameter.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/readability-non-const-parameter.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/readability-non-const-parameter.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/readability-non-const-parameter.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,101 @@
+
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>clang-tidy - readability-non-const-parameter — Extra Clang Tools 9 documentation</title>
+ <link rel="stylesheet" href="../../_static/haiku.css" type="text/css" />
+ <link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
+ <link rel="stylesheet" type="text/css" href="../../_static/clang-tools-extra-styles.css" />
+ <script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
+ <script type="text/javascript" src="../../_static/jquery.js"></script>
+ <script type="text/javascript" src="../../_static/underscore.js"></script>
+ <script type="text/javascript" src="../../_static/doctools.js"></script>
+ <script type="text/javascript" src="../../_static/language_data.js"></script>
+ <link rel="index" title="Index" href="../../genindex.html" />
+ <link rel="search" title="Search" href="../../search.html" />
+ <link rel="next" title="readability-redundant-control-flow" href="readability-redundant-control-flow.html" />
+ <link rel="prev" title="readability-named-parameter" href="readability-named-parameter.html" />
+ </head><body>
+ <div class="header" role="banner"><h1 class="heading"><a href="../../index.html">
+ <span>Extra Clang Tools 9 documentation</span></a></h1>
+ <h2 class="heading"><span>clang-tidy - readability-non-const-parameter</span></h2>
+ </div>
+ <div class="topnav" role="navigation" aria-label="top navigation">
+
+ <p>
+ « <a href="readability-named-parameter.html">readability-named-parameter</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="readability-redundant-control-flow.html">readability-redundant-control-flow</a> »
+ </p>
+
+ </div>
+ <div class="content">
+
+
+ <div class="section" id="readability-non-const-parameter">
+<h1>readability-non-const-parameter<a class="headerlink" href="#readability-non-const-parameter" title="Permalink to this headline">¶</a></h1>
+<p>The check finds function parameters of a pointer type that could be changed to
+point to a constant type instead.</p>
+<p>When <code class="docutils literal notranslate"><span class="pre">const</span></code> is used properly, many mistakes can be avoided. Advantages when
+using <code class="docutils literal notranslate"><span class="pre">const</span></code> properly:</p>
+<ul class="simple">
+<li>prevent unintentional modification of data;</li>
+<li>get additional warnings such as using uninitialized data;</li>
+<li>make it easier for developers to see possible side effects.</li>
+</ul>
+<p>This check is not strict about constness, it only warns when the constness will
+make the function interface safer.</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="c1">// warning here; the declaration "const char *p" would make the function</span>
+<span class="c1">// interface safer.</span>
+<span class="kt">char</span> <span class="nf">f1</span><span class="p">(</span><span class="kt">char</span> <span class="o">*</span><span class="n">p</span><span class="p">)</span> <span class="p">{</span>
+ <span class="k">return</span> <span class="o">*</span><span class="n">p</span><span class="p">;</span>
+<span class="p">}</span>
+
+<span class="c1">// no warning; the declaration could be more const "const int * const p" but</span>
+<span class="c1">// that does not make the function interface safer.</span>
+<span class="kt">int</span> <span class="nf">f2</span><span class="p">(</span><span class="k">const</span> <span class="kt">int</span> <span class="o">*</span><span class="n">p</span><span class="p">)</span> <span class="p">{</span>
+ <span class="k">return</span> <span class="o">*</span><span class="n">p</span><span class="p">;</span>
+<span class="p">}</span>
+
+<span class="c1">// no warning; making x const does not make the function interface safer</span>
+<span class="kt">int</span> <span class="nf">f3</span><span class="p">(</span><span class="kt">int</span> <span class="n">x</span><span class="p">)</span> <span class="p">{</span>
+ <span class="k">return</span> <span class="n">x</span><span class="p">;</span>
+<span class="p">}</span>
+
+<span class="c1">// no warning; Technically, *p can be const ("const struct S *p"). But making</span>
+<span class="c1">// *p const could be misleading. People might think that it's safe to pass</span>
+<span class="c1">// const data to this function.</span>
+<span class="k">struct</span> <span class="n">S</span> <span class="p">{</span> <span class="kt">int</span> <span class="o">*</span><span class="n">a</span><span class="p">;</span> <span class="kt">int</span> <span class="o">*</span><span class="n">b</span><span class="p">;</span> <span class="p">};</span>
+<span class="kt">int</span> <span class="nf">f3</span><span class="p">(</span><span class="k">struct</span> <span class="n">S</span> <span class="o">*</span><span class="n">p</span><span class="p">)</span> <span class="p">{</span>
+ <span class="o">*</span><span class="p">(</span><span class="n">p</span><span class="o">-></span><span class="n">a</span><span class="p">)</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+</div>
+
+
+ </div>
+ <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+
+ <p>
+ « <a href="readability-named-parameter.html">readability-named-parameter</a>
+ ::
+ <a class="uplink" href="../../index.html">Contents</a>
+ ::
+ <a href="readability-redundant-control-flow.html">readability-redundant-control-flow</a> »
+ </p>
+
+ </div>
+
+ <div class="footer" role="contentinfo">
+ © Copyright 2007-2019, The Clang Team.
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.8.4.
+ </div>
+ </body>
+</html>
\ No newline at end of file
More information about the llvm-commits
mailing list