[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/Contributing.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/Contributing.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/Contributing.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/Contributing.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,487 @@
+
+<!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>Getting Involved — 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="Clang-Include-Fixer" href="../clang-include-fixer.html" />
+    <link rel="prev" title="Clang-tidy IDE/Editor Integrations" href="Integrations.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>Getting Involved</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="Integrations.html">Clang-tidy IDE/Editor Integrations</a>
+          ::  
+        <a class="uplink" href="../index.html">Contents</a>
+          ::  
+        <a href="../clang-include-fixer.html">Clang-Include-Fixer</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="getting-involved">
+<h1>Getting Involved<a class="headerlink" href="#getting-involved" title="Permalink to this headline">¶</a></h1>
+<p><strong class="program">clang-tidy</strong> has several own checks and can run Clang static analyzer
+checks, but its power is in the ability to easily write custom checks.</p>
+<p>Checks are organized in modules, which can be linked into <strong class="program">clang-tidy</strong>
+with minimal or no code changes in <strong class="program">clang-tidy</strong>.</p>
+<p>Checks can plug into the analysis on the preprocessor level using <a class="reference external" href="https://clang.llvm.org/doxygen/classclang_1_1PPCallbacks.html">PPCallbacks</a>
+or on the AST level using <a class="reference external" href="https://clang.llvm.org/docs/LibASTMatchers.html">AST Matchers</a>. When an error is found, checks can
+report them in a way similar to how Clang diagnostics work. A fix-it hint can be
+attached to a diagnostic message.</p>
+<p>The interface provided by <strong class="program">clang-tidy</strong> makes it easy to write useful
+and precise checks in just a few lines of code. If you have an idea for a good
+check, the rest of this document explains how to do this.</p>
+<dl class="docutils">
+<dt>There are a few tools particularly useful when developing clang-tidy checks:</dt>
+<dd><ul class="first last simple">
+<li><code class="docutils literal notranslate"><span class="pre">add_new_check.py</span></code> is a script to automate the process of adding a new
+check, it will create the check, update the CMake file and create a test;</li>
+<li><code class="docutils literal notranslate"><span class="pre">rename_check.py</span></code> does what the script name suggests, renames an existing
+check;</li>
+<li><strong class="program">clang-query</strong> is invaluable for interactive prototyping of AST
+matchers and exploration of the Clang AST;</li>
+<li><a class="reference external" href="https://clang.llvm.org/docs/ClangCheck.html">clang-check</a> with the <code class="docutils literal notranslate"><span class="pre">-ast-dump</span></code> (and optionally <code class="docutils literal notranslate"><span class="pre">-ast-dump-filter</span></code>)
+provides a convenient way to dump AST of a C++ program.</li>
+</ul>
+</dd>
+</dl>
+<p>If CMake is configured with <code class="docutils literal notranslate"><span class="pre">CLANG_ENABLE_STATIC_ANALYZER</span></code>,
+<strong class="program">clang-tidy</strong> will not be built with support for the
+<code class="docutils literal notranslate"><span class="pre">clang-analyzer-*</span></code> checks or the <code class="docutils literal notranslate"><span class="pre">mpi-*</span></code> checks.</p>
+<div class="section" id="choosing-the-right-place-for-your-check">
+<h2>Choosing the Right Place for your Check<a class="headerlink" href="#choosing-the-right-place-for-your-check" title="Permalink to this headline">¶</a></h2>
+<p>If you have an idea of a check, you should decide whether it should be
+implemented as a:</p>
+<ul class="simple">
+<li><em>Clang diagnostic</em>: if the check is generic enough, targets code patterns that
+most probably are bugs (rather than style or readability issues), can be
+implemented effectively and with extremely low false positive rate, it may
+make a good Clang diagnostic.</li>
+<li><em>Clang static analyzer check</em>: if the check requires some sort of control flow
+analysis, it should probably be implemented as a static analyzer check.</li>
+<li><em>clang-tidy check</em> is a good choice for linter-style checks, checks that are
+related to a certain coding style, checks that address code readability, etc.</li>
+</ul>
+</div>
+<div class="section" id="preparing-your-workspace">
+<h2>Preparing your Workspace<a class="headerlink" href="#preparing-your-workspace" title="Permalink to this headline">¶</a></h2>
+<p>If you are new to LLVM development, you should read the <a class="reference external" href="https://llvm.org/docs/GettingStarted.html">Getting Started with
+the LLVM System</a>, <a class="reference external" href="https://clang.llvm.org/docs/ClangTools.html">Using Clang Tools</a> and <a class="reference external" href="https://clang.llvm.org/docs/HowToSetupToolingForLLVM.html">How To Setup Clang Tooling For
+LLVM</a> documents to check out and build LLVM, Clang and Clang Extra Tools with
+CMake.</p>
+<p>Once you are done, change to the <code class="docutils literal notranslate"><span class="pre">llvm/tools/clang/tools/extra</span></code> directory, and
+let’s start!</p>
+</div>
+<div class="section" id="the-directory-structure">
+<h2>The Directory Structure<a class="headerlink" href="#the-directory-structure" title="Permalink to this headline">¶</a></h2>
+<p><strong class="program">clang-tidy</strong> source code resides in the
+<code class="docutils literal notranslate"><span class="pre">llvm/tools/clang/tools/extra</span></code> directory and is structured as follows:</p>
+<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="n">clang</span><span class="o">-</span><span class="n">tidy</span><span class="o">/</span>                       <span class="c1"># Clang-tidy core.</span>
+<span class="o">|--</span> <span class="n">ClangTidy</span><span class="o">.</span><span class="n">h</span>                   <span class="c1"># Interfaces for users.</span>
+<span class="o">|--</span> <span class="n">ClangTidyCheck</span><span class="o">.</span><span class="n">h</span>              <span class="c1"># Interfaces for checks.</span>
+<span class="o">|--</span> <span class="n">ClangTidyModule</span><span class="o">.</span><span class="n">h</span>             <span class="c1"># Interface for clang-tidy modules.</span>
+<span class="o">|--</span> <span class="n">ClangTidyModuleRegistry</span><span class="o">.</span><span class="n">h</span>     <span class="c1"># Interface for registering of modules.</span>
+   <span class="o">...</span>
+<span class="o">|--</span> <span class="n">google</span><span class="o">/</span>                       <span class="c1"># Google clang-tidy module.</span>
+<span class="o">|-+</span>
+  <span class="o">|--</span> <span class="n">GoogleTidyModule</span><span class="o">.</span><span class="n">cpp</span>
+  <span class="o">|--</span> <span class="n">GoogleTidyModule</span><span class="o">.</span><span class="n">h</span>
+        <span class="o">...</span>
+<span class="o">|--</span> <span class="n">llvm</span><span class="o">/</span>                         <span class="c1"># LLVM clang-tidy module.</span>
+<span class="o">|-+</span>
+  <span class="o">|--</span> <span class="n">LLVMTidyModule</span><span class="o">.</span><span class="n">cpp</span>
+  <span class="o">|--</span> <span class="n">LLVMTidyModule</span><span class="o">.</span><span class="n">h</span>
+        <span class="o">...</span>
+<span class="o">|--</span> <span class="n">objc</span><span class="o">/</span>                         <span class="c1"># Objective-C clang-tidy module.</span>
+<span class="o">|-+</span>
+  <span class="o">|--</span> <span class="n">ObjCTidyModule</span><span class="o">.</span><span class="n">cpp</span>
+  <span class="o">|--</span> <span class="n">ObjCTidyModule</span><span class="o">.</span><span class="n">h</span>
+        <span class="o">...</span>
+<span class="o">|--</span> <span class="n">tool</span><span class="o">/</span>                         <span class="c1"># Sources of the clang-tidy binary.</span>
+        <span class="o">...</span>
+<span class="n">test</span><span class="o">/</span><span class="n">clang</span><span class="o">-</span><span class="n">tidy</span><span class="o">/</span>                  <span class="c1"># Integration tests.</span>
+    <span class="o">...</span>
+<span class="n">unittests</span><span class="o">/</span><span class="n">clang</span><span class="o">-</span><span class="n">tidy</span><span class="o">/</span>             <span class="c1"># Unit tests.</span>
+<span class="o">|--</span> <span class="n">ClangTidyTest</span><span class="o">.</span><span class="n">h</span>
+<span class="o">|--</span> <span class="n">GoogleModuleTest</span><span class="o">.</span><span class="n">cpp</span>
+<span class="o">|--</span> <span class="n">LLVMModuleTest</span><span class="o">.</span><span class="n">cpp</span>
+<span class="o">|--</span> <span class="n">ObjCModuleTest</span><span class="o">.</span><span class="n">cpp</span>
+    <span class="o">...</span>
+</pre></div>
+</div>
+</div>
+<div class="section" id="writing-a-clang-tidy-check">
+<h2>Writing a clang-tidy Check<a class="headerlink" href="#writing-a-clang-tidy-check" title="Permalink to this headline">¶</a></h2>
+<p>So you have an idea of a useful check for <strong class="program">clang-tidy</strong>.</p>
+<p>First, if you’re not familiar with LLVM development, read through the <a class="reference external" href="https://llvm.org/docs/GettingStarted.html">Getting
+Started with LLVM</a> document for instructions on setting up your workflow and
+the <a class="reference external" href="https://llvm.org/docs/CodingStandards.html">LLVM Coding Standards</a> document to familiarize yourself with the coding
+style used in the project. For code reviews we mostly use <a class="reference external" href="https://llvm.org/docs/Phabricator.html">LLVM Phabricator</a>.</p>
+<p>Next, you need to decide which module the check belongs to. Modules
+are located in subdirectories of <a class="reference external" href="https://github.com/llvm/llvm-project/tree/master/clang-tools-extra/clang-tidy/">clang-tidy/</a>
+and contain checks targeting a certain aspect of code quality (performance,
+readability, etc.), certain coding style or standard (Google, LLVM, CERT, etc.)
+or a widely used API (e.g. MPI). Their names are same as user-facing check
+groups names described <a class="reference internal" href="index.html#checks-groups-table"><span class="std std-ref">above</span></a>.</p>
+<p>After choosing the module and the name for the check, run the
+<code class="docutils literal notranslate"><span class="pre">clang-tidy/add_new_check.py</span></code> script to create the skeleton of the check and
+plug it to <strong class="program">clang-tidy</strong>. It’s the recommended way of adding new checks.</p>
+<p>If we want to create a <cite>readability-awesome-function-names</cite>, we would run:</p>
+<div class="highlight-console notranslate"><div class="highlight"><pre><span></span><span class="gp">$</span> clang-tidy/add_new_check.py readability awesome-function-names
+</pre></div>
+</div>
+<dl class="docutils">
+<dt>The <code class="docutils literal notranslate"><span class="pre">add_new_check.py</span></code> script will:</dt>
+<dd><ul class="first last simple">
+<li>create the class for your check inside the specified module’s directory and
+register it in the module and in the build system;</li>
+<li>create a lit test file in the <code class="docutils literal notranslate"><span class="pre">test/clang-tidy/</span></code> directory;</li>
+<li>create a documentation file and include it into the
+<code class="docutils literal notranslate"><span class="pre">docs/clang-tidy/checks/list.rst</span></code>.</li>
+</ul>
+</dd>
+</dl>
+<p>Let’s see in more detail at the check class definition:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="p">...</span>
+
+<span class="cp">#include</span> <span class="cpf">"../ClangTidyCheck.h"</span><span class="cp"></span>
+
+<span class="k">namespace</span> <span class="n">clang</span> <span class="p">{</span>
+<span class="k">namespace</span> <span class="n">tidy</span> <span class="p">{</span>
+<span class="k">namespace</span> <span class="n">readability</span> <span class="p">{</span>
+
+<span class="p">...</span>
+<span class="k">class</span> <span class="nc">AwesomeFunctionNamesCheck</span> <span class="o">:</span> <span class="k">public</span> <span class="n">ClangTidyCheck</span> <span class="p">{</span>
+<span class="k">public</span><span class="o">:</span>
+  <span class="n">AwesomeFunctionNamesCheck</span><span class="p">(</span><span class="n">StringRef</span> <span class="n">Name</span><span class="p">,</span> <span class="n">ClangTidyContext</span> <span class="o">*</span><span class="n">Context</span><span class="p">)</span>
+      <span class="o">:</span> <span class="n">ClangTidyCheck</span><span class="p">(</span><span class="n">Name</span><span class="p">,</span> <span class="n">Context</span><span class="p">)</span> <span class="p">{}</span>
+  <span class="kt">void</span> <span class="n">registerMatchers</span><span class="p">(</span><span class="n">ast_matchers</span><span class="o">::</span><span class="n">MatchFinder</span> <span class="o">*</span><span class="n">Finder</span><span class="p">)</span> <span class="k">override</span><span class="p">;</span>
+  <span class="kt">void</span> <span class="nf">check</span><span class="p">(</span><span class="k">const</span> <span class="n">ast_matchers</span><span class="o">::</span><span class="n">MatchFinder</span><span class="o">::</span><span class="n">MatchResult</span> <span class="o">&</span><span class="n">Result</span><span class="p">)</span> <span class="k">override</span><span class="p">;</span>
+<span class="p">};</span>
+
+<span class="p">}</span> <span class="c1">// namespace readability</span>
+<span class="p">}</span> <span class="c1">// namespace tidy</span>
+<span class="p">}</span> <span class="c1">// namespace clang</span>
+
+<span class="p">...</span>
+</pre></div>
+</div>
+<p>Constructor of the check receives the <code class="docutils literal notranslate"><span class="pre">Name</span></code> and <code class="docutils literal notranslate"><span class="pre">Context</span></code> parameters, and
+must forward them to the <code class="docutils literal notranslate"><span class="pre">ClangTidyCheck</span></code> constructor.</p>
+<p>In our case the check needs to operate on the AST level and it overrides the
+<code class="docutils literal notranslate"><span class="pre">registerMatchers</span></code> and <code class="docutils literal notranslate"><span class="pre">check</span></code> methods. If we wanted to analyze code on the
+preprocessor level, we’d need instead to override the <code class="docutils literal notranslate"><span class="pre">registerPPCallbacks</span></code>
+method.</p>
+<p>In the <code class="docutils literal notranslate"><span class="pre">registerMatchers</span></code> method we create an AST Matcher (see <a class="reference external" href="https://clang.llvm.org/docs/LibASTMatchers.html">AST Matchers</a>
+for more information) that will find the pattern in the AST that we want to
+inspect. The results of the matching are passed to the <code class="docutils literal notranslate"><span class="pre">check</span></code> method, which
+can further inspect them and report diagnostics.</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">using</span> <span class="k">namespace</span> <span class="n">ast_matchers</span><span class="p">;</span>
+
+<span class="kt">void</span> <span class="n">AwesomeFunctionNamesCheck</span><span class="o">::</span><span class="n">registerMatchers</span><span class="p">(</span><span class="n">MatchFinder</span> <span class="o">*</span><span class="n">Finder</span><span class="p">)</span> <span class="p">{</span>
+  <span class="n">Finder</span><span class="o">-></span><span class="n">addMatcher</span><span class="p">(</span><span class="n">functionDecl</span><span class="p">().</span><span class="n">bind</span><span class="p">(</span><span class="s">"x"</span><span class="p">),</span> <span class="k">this</span><span class="p">);</span>
+<span class="p">}</span>
+
+<span class="kt">void</span> <span class="n">AwesomeFunctionNamesCheck</span><span class="o">::</span><span class="n">check</span><span class="p">(</span><span class="k">const</span> <span class="n">MatchFinder</span><span class="o">::</span><span class="n">MatchResult</span> <span class="o">&</span><span class="n">Result</span><span class="p">)</span> <span class="p">{</span>
+  <span class="k">const</span> <span class="k">auto</span> <span class="o">*</span><span class="n">MatchedDecl</span> <span class="o">=</span> <span class="n">Result</span><span class="p">.</span><span class="n">Nodes</span><span class="p">.</span><span class="n">getNodeAs</span><span class="o"><</span><span class="n">FunctionDecl</span><span class="o">></span><span class="p">(</span><span class="s">"x"</span><span class="p">);</span>
+  <span class="k">if</span> <span class="p">(</span><span class="n">MatchedDecl</span><span class="o">-></span><span class="n">getName</span><span class="p">().</span><span class="n">startswith</span><span class="p">(</span><span class="s">"awesome_"</span><span class="p">))</span>
+    <span class="k">return</span><span class="p">;</span>
+  <span class="n">diag</span><span class="p">(</span><span class="n">MatchedDecl</span><span class="o">-></span><span class="n">getLocation</span><span class="p">(),</span> <span class="s">"function %0 is insufficiently awesome"</span><span class="p">)</span>
+      <span class="o"><<</span> <span class="n">MatchedDecl</span>
+      <span class="o"><<</span> <span class="n">FixItHint</span><span class="o">::</span><span class="n">CreateInsertion</span><span class="p">(</span><span class="n">MatchedDecl</span><span class="o">-></span><span class="n">getLocation</span><span class="p">(),</span> <span class="s">"awesome_"</span><span class="p">);</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+<p>(If you want to see an example of a useful check, look at
+<a class="reference external" href="https://github.com/llvm/llvm-project/blob/master/clang-tools-extra/clang-tidy/google/ExplicitConstructorCheck.h">clang-tidy/google/ExplicitConstructorCheck.h</a>
+and <a class="reference external" href="https://reviews.llvm.org/diffusion/L/browse/clang-tools-extra/trunk/clang-tidy/google/ExplicitConstructorCheck.cpp">clang-tidy/google/ExplicitConstructorCheck.cpp</a>).</p>
+</div>
+<div class="section" id="registering-your-check">
+<h2>Registering your Check<a class="headerlink" href="#registering-your-check" title="Permalink to this headline">¶</a></h2>
+<p>(The <code class="docutils literal notranslate"><span class="pre">add_new_check.py</span></code> takes care of registering the check in an existing
+module. If you want to create a new module or know the details, read on.)</p>
+<p>The check should be registered in the corresponding module with a distinct name:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">class</span> <span class="nc">MyModule</span> <span class="o">:</span> <span class="k">public</span> <span class="n">ClangTidyModule</span> <span class="p">{</span>
+ <span class="k">public</span><span class="o">:</span>
+  <span class="kt">void</span> <span class="n">addCheckFactories</span><span class="p">(</span><span class="n">ClangTidyCheckFactories</span> <span class="o">&</span><span class="n">CheckFactories</span><span class="p">)</span> <span class="k">override</span> <span class="p">{</span>
+    <span class="n">CheckFactories</span><span class="p">.</span><span class="n">registerCheck</span><span class="o"><</span><span class="n">ExplicitConstructorCheck</span><span class="o">></span><span class="p">(</span>
+        <span class="s">"my-explicit-constructor"</span><span class="p">);</span>
+  <span class="p">}</span>
+<span class="p">};</span>
+</pre></div>
+</div>
+<p>Now we need to register the module in the <code class="docutils literal notranslate"><span class="pre">ClangTidyModuleRegistry</span></code> using a
+statically initialized variable:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">static</span> <span class="n">ClangTidyModuleRegistry</span><span class="o">::</span><span class="n">Add</span><span class="o"><</span><span class="n">MyModule</span><span class="o">></span> <span class="n">X</span><span class="p">(</span><span class="s">"my-module"</span><span class="p">,</span>
+                                                <span class="s">"Adds my lint checks."</span><span class="p">);</span>
+</pre></div>
+</div>
+<p>When using LLVM build system, we need to use the following hack to ensure the
+module is linked into the <strong class="program">clang-tidy</strong> binary:</p>
+<p>Add this near the <code class="docutils literal notranslate"><span class="pre">ClangTidyModuleRegistry::Add<MyModule></span></code> variable:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="c1">// This anchor is used to force the linker to link in the generated object file</span>
+<span class="c1">// and thus register the MyModule.</span>
+<span class="k">volatile</span> <span class="kt">int</span> <span class="n">MyModuleAnchorSource</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span>
+</pre></div>
+</div>
+<p>And this to the main translation unit of the <strong class="program">clang-tidy</strong> binary (or
+the binary you link the <code class="docutils literal notranslate"><span class="pre">clang-tidy</span></code> library in)
+<code class="docutils literal notranslate"><span class="pre">clang-tidy/tool/ClangTidyMain.cpp</span></code>:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="c1">// This anchor is used to force the linker to link the MyModule.</span>
+<span class="k">extern</span> <span class="k">volatile</span> <span class="kt">int</span> <span class="n">MyModuleAnchorSource</span><span class="p">;</span>
+<span class="k">static</span> <span class="kt">int</span> <span class="n">MyModuleAnchorDestination</span> <span class="o">=</span> <span class="n">MyModuleAnchorSource</span><span class="p">;</span>
+</pre></div>
+</div>
+</div>
+<div class="section" id="configuring-checks">
+<h2>Configuring Checks<a class="headerlink" href="#configuring-checks" title="Permalink to this headline">¶</a></h2>
+<p>If a check needs configuration options, it can access check-specific options
+using the <code class="docutils literal notranslate"><span class="pre">Options.get<Type>("SomeOption",</span> <span class="pre">DefaultValue)</span></code> call in the check
+constructor. In this case the check should also override the
+<code class="docutils literal notranslate"><span class="pre">ClangTidyCheck::storeOptions</span></code> method to make the options provided by the
+check discoverable. This method lets <strong class="program">clang-tidy</strong> know which options
+the check implements and what the current values are (e.g. for the
+<code class="docutils literal notranslate"><span class="pre">-dump-config</span></code> command line option).</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">class</span> <span class="nc">MyCheck</span> <span class="o">:</span> <span class="k">public</span> <span class="n">ClangTidyCheck</span> <span class="p">{</span>
+  <span class="k">const</span> <span class="kt">unsigned</span> <span class="n">SomeOption1</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="n">SomeOption2</span><span class="p">;</span>
+
+<span class="k">public</span><span class="o">:</span>
+  <span class="n">MyCheck</span><span class="p">(</span><span class="n">StringRef</span> <span class="n">Name</span><span class="p">,</span> <span class="n">ClangTidyContext</span> <span class="o">*</span><span class="n">Context</span><span class="p">)</span>
+    <span class="o">:</span> <span class="n">ClangTidyCheck</span><span class="p">(</span><span class="n">Name</span><span class="p">,</span> <span class="n">Context</span><span class="p">),</span>
+      <span class="n">SomeOption</span><span class="p">(</span><span class="n">Options</span><span class="p">.</span><span class="n">get</span><span class="p">(</span><span class="s">"SomeOption1"</span><span class="p">,</span> <span class="o">-</span><span class="mi">1U</span><span class="p">)),</span>
+      <span class="n">SomeOption</span><span class="p">(</span><span class="n">Options</span><span class="p">.</span><span class="n">get</span><span class="p">(</span><span class="s">"SomeOption2"</span><span class="p">,</span> <span class="s">"some default"</span><span class="p">))</span> <span class="p">{}</span>
+
+  <span class="kt">void</span> <span class="n">storeOptions</span><span class="p">(</span><span class="n">ClangTidyOptions</span><span class="o">::</span><span class="n">OptionMap</span> <span class="o">&</span><span class="n">Opts</span><span class="p">)</span> <span class="k">override</span> <span class="p">{</span>
+    <span class="n">Options</span><span class="p">.</span><span class="n">store</span><span class="p">(</span><span class="n">Opts</span><span class="p">,</span> <span class="s">"SomeOption1"</span><span class="p">,</span> <span class="n">SomeOption1</span><span class="p">);</span>
+    <span class="n">Options</span><span class="p">.</span><span class="n">store</span><span class="p">(</span><span class="n">Opts</span><span class="p">,</span> <span class="s">"SomeOption2"</span><span class="p">,</span> <span class="n">SomeOption2</span><span class="p">);</span>
+  <span class="p">}</span>
+  <span class="p">...</span>
+</pre></div>
+</div>
+<p>Assuming the check is registered with the name “my-check”, the option can then
+be set in a <code class="docutils literal notranslate"><span class="pre">.clang-tidy</span></code> file in the following way:</p>
+<div class="highlight-yaml notranslate"><div class="highlight"><pre><span></span><span class="nt">CheckOptions</span><span class="p">:</span>
+  <span class="p p-Indicator">-</span> <span class="nt">key</span><span class="p">:</span> <span class="l l-Scalar l-Scalar-Plain">my-check.SomeOption1</span>
+    <span class="nt">value</span><span class="p">:</span> <span class="l l-Scalar l-Scalar-Plain">123</span>
+  <span class="p p-Indicator">-</span> <span class="nt">key</span><span class="p">:</span> <span class="l l-Scalar l-Scalar-Plain">my-check.SomeOption2</span>
+    <span class="nt">value</span><span class="p">:</span> <span class="s">'some</span><span class="nv"> </span><span class="s">other</span><span class="nv"> </span><span class="s">value'</span>
+</pre></div>
+</div>
+<p>If you need to specify check options on a command line, you can use the inline
+YAML format:</p>
+<div class="highlight-console notranslate"><div class="highlight"><pre><span></span><span class="gp">$</span> clang-tidy -config<span class="o">=</span><span class="s2">"{CheckOptions: [{key: a, value: b}, {key: x, value: y}]}"</span> ...
+</pre></div>
+</div>
+</div>
+<div class="section" id="testing-checks">
+<h2>Testing Checks<a class="headerlink" href="#testing-checks" title="Permalink to this headline">¶</a></h2>
+<p>To run tests for <strong class="program">clang-tidy</strong> use the command:</p>
+<div class="highlight-console notranslate"><div class="highlight"><pre><span></span><span class="gp">$</span> ninja check-clang-tools
+</pre></div>
+</div>
+<p><strong class="program">clang-tidy</strong> checks can be tested using either unit tests or
+<a class="reference external" href="https://llvm.org/docs/CommandGuide/lit.html">lit</a> tests. Unit tests may be more convenient to test complex replacements
+with strict checks. <a class="reference external" href="https://llvm.org/docs/CommandGuide/lit.html">Lit</a> tests allow using partial text matching and regular
+expressions which makes them more suitable for writing compact tests for
+diagnostic messages.</p>
+<p>The <code class="docutils literal notranslate"><span class="pre">check_clang_tidy.py</span></code> script provides an easy way to test both
+diagnostic messages and fix-its. It filters out <code class="docutils literal notranslate"><span class="pre">CHECK</span></code> lines from the test
+file, runs <strong class="program">clang-tidy</strong> and verifies messages and fixes with two
+separate <a class="reference external" href="https://llvm.org/docs/CommandGuide/FileCheck.html">FileCheck</a> invocations: once with FileCheck’s directive
+prefix set to <code class="docutils literal notranslate"><span class="pre">CHECK-MESSAGES</span></code>, validating the diagnostic messages,
+and once with the directive prefix set to <code class="docutils literal notranslate"><span class="pre">CHECK-FIXES</span></code>, running
+against the fixed code (i.e., the code after generated fix-its are
+applied). In particular, <code class="docutils literal notranslate"><span class="pre">CHECK-FIXES:</span></code> can be used to check
+that code was not modified by fix-its, by checking that it is present
+unchanged in the fixed code. The full set of <a class="reference external" href="https://llvm.org/docs/CommandGuide/FileCheck.html">FileCheck</a> directives
+is available (e.g., <code class="docutils literal notranslate"><span class="pre">CHECK-MESSAGES-SAME:</span></code>, <code class="docutils literal notranslate"><span class="pre">CHECK-MESSAGES-NOT:</span></code>), though
+typically the basic <code class="docutils literal notranslate"><span class="pre">CHECK</span></code> forms (<code class="docutils literal notranslate"><span class="pre">CHECK-MESSAGES</span></code> and <code class="docutils literal notranslate"><span class="pre">CHECK-FIXES</span></code>)
+are sufficient for clang-tidy tests. Note that the <a class="reference external" href="https://llvm.org/docs/CommandGuide/FileCheck.html">FileCheck</a>
+documentation mostly assumes the default prefix (<code class="docutils literal notranslate"><span class="pre">CHECK</span></code>), and hence
+describes the directive as <code class="docutils literal notranslate"><span class="pre">CHECK:</span></code>, <code class="docutils literal notranslate"><span class="pre">CHECK-SAME:</span></code>, <code class="docutils literal notranslate"><span class="pre">CHECK-NOT:</span></code>, etc.
+Replace <code class="docutils literal notranslate"><span class="pre">CHECK</span></code> by either <code class="docutils literal notranslate"><span class="pre">CHECK-FIXES</span></code> or <code class="docutils literal notranslate"><span class="pre">CHECK-MESSAGES</span></code> for
+clang-tidy tests.</p>
+<p>An additional check enabled by <code class="docutils literal notranslate"><span class="pre">check_clang_tidy.py</span></code> ensures that
+if <cite>CHECK-MESSAGES:</cite> is used in a file then every warning or error
+must have an associated CHECK in that file. Or, you can use <code class="docutils literal notranslate"><span class="pre">CHECK-NOTES:</span></code>
+instead, if you want to <strong>also</strong> ensure that all the notes are checked.</p>
+<p>To use the <code class="docutils literal notranslate"><span class="pre">check_clang_tidy.py</span></code> script, put a .cpp file with the
+appropriate <code class="docutils literal notranslate"><span class="pre">RUN</span></code> line in the <code class="docutils literal notranslate"><span class="pre">test/clang-tidy</span></code> directory. Use
+<code class="docutils literal notranslate"><span class="pre">CHECK-MESSAGES:</span></code> and <code class="docutils literal notranslate"><span class="pre">CHECK-FIXES:</span></code> lines to write checks against
+diagnostic messages and fixed code.</p>
+<p>It’s advised to make the checks as specific as possible to avoid checks matching
+to incorrect parts of the input. Use <code class="docutils literal notranslate"><span class="pre">[[@LINE+X]]</span></code>/<code class="docutils literal notranslate"><span class="pre">[[@LINE-X]]</span></code>
+substitutions and distinct function and variable names in the test code.</p>
+<p>Here’s an example of a test using the <code class="docutils literal notranslate"><span class="pre">check_clang_tidy.py</span></code> script (the full
+source code is at <a class="reference external" href="https://reviews.llvm.org/diffusion/L/browse/clang-tools-extra/trunk/test/clang-tidy/google-readability-casting.cpp">test/clang-tidy/google-readability-casting.cpp</a>):</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="c1">// RUN: %check_clang_tidy %s google-readability-casting %t</span>
+
+<span class="kt">void</span> <span class="nf">f</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="kt">int</span> <span class="n">b</span> <span class="o">=</span> <span class="p">(</span><span class="kt">int</span><span class="p">)</span><span class="n">a</span><span class="p">;</span>
+  <span class="c1">// CHECK-MESSAGES: :[[@LINE-1]]:11: warning: redundant cast to the same type [google-readability-casting]</span>
+  <span class="c1">// CHECK-FIXES: int b = a;</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+<p>To check more than one scenario in the same test file use
+<code class="docutils literal notranslate"><span class="pre">-check-suffix=SUFFIX-NAME</span></code> on <code class="docutils literal notranslate"><span class="pre">check_clang_tidy.py</span></code> command line or
+<code class="docutils literal notranslate"><span class="pre">-check-suffixes=SUFFIX-NAME-1,SUFFIX-NAME-2,...</span></code>.
+With <code class="docutils literal notranslate"><span class="pre">-check-suffix[es]=SUFFIX-NAME</span></code> you need to replace your <code class="docutils literal notranslate"><span class="pre">CHECK-*</span></code>
+directives with <code class="docutils literal notranslate"><span class="pre">CHECK-MESSAGES-SUFFIX-NAME</span></code> and <code class="docutils literal notranslate"><span class="pre">CHECK-FIXES-SUFFIX-NAME</span></code>.</p>
+<p>Here’s an example:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="c1">// RUN: %check_clang_tidy -check-suffix=USING-A %s misc-unused-using-decls %t -- -- -DUSING_A</span>
+<span class="c1">// RUN: %check_clang_tidy -check-suffix=USING-B %s misc-unused-using-decls %t -- -- -DUSING_B</span>
+<span class="c1">// RUN: %check_clang_tidy %s misc-unused-using-decls %t</span>
+<span class="p">...</span>
+<span class="c1">// CHECK-MESSAGES-USING-A: :[[@LINE-8]]:10: warning: using decl 'A' {{.*}}</span>
+<span class="c1">// CHECK-MESSAGES-USING-B: :[[@LINE-7]]:10: warning: using decl 'B' {{.*}}</span>
+<span class="c1">// CHECK-MESSAGES: :[[@LINE-6]]:10: warning: using decl 'C' {{.*}}</span>
+<span class="c1">// CHECK-FIXES-USING-A-NOT: using a::A;$</span>
+<span class="c1">// CHECK-FIXES-USING-B-NOT: using a::B;$</span>
+<span class="c1">// CHECK-FIXES-NOT: using a::C;$</span>
+</pre></div>
+</div>
+<p>There are many dark corners in the C++ language, and it may be difficult to make
+your check work perfectly in all cases, especially if it issues fix-it hints. The
+most frequent pitfalls are macros and templates:</p>
+<ol class="arabic simple">
+<li>code written in a macro body/template definition may have a different meaning
+depending on the macro expansion/template instantiation;</li>
+<li>multiple macro expansions/template instantiations may result in the same code
+being inspected by the check multiple times (possibly, with different
+meanings, see 1), and the same warning (or a slightly different one) may be
+issued by the check multiple times; <strong class="program">clang-tidy</strong> will deduplicate
+_identical_ warnings, but if the warnings are slightly different, all of them
+will be shown to the user (and used for applying fixes, if any);</li>
+<li>making replacements to a macro body/template definition may be fine for some
+macro expansions/template instantiations, but easily break some other
+expansions/instantiations.</li>
+</ol>
+</div>
+<div class="section" id="running-clang-tidy-on-llvm">
+<h2>Running clang-tidy on LLVM<a class="headerlink" href="#running-clang-tidy-on-llvm" title="Permalink to this headline">¶</a></h2>
+<p>To test a check it’s best to try it out on a larger code base. LLVM and Clang
+are the natural targets as you already have the source code around. The most
+convenient way to run <strong class="program">clang-tidy</strong> is with a compile command database;
+CMake can automatically generate one, for a description of how to enable it see
+<a class="reference external" href="https://clang.llvm.org/docs/HowToSetupToolingForLLVM.html">How To Setup Clang Tooling For LLVM</a>. Once <code class="docutils literal notranslate"><span class="pre">compile_commands.json</span></code> is in
+place and a working version of <strong class="program">clang-tidy</strong> is in <code class="docutils literal notranslate"><span class="pre">PATH</span></code> the entire
+code base can be analyzed with <code class="docutils literal notranslate"><span class="pre">clang-tidy/tool/run-clang-tidy.py</span></code>. The script
+executes <strong class="program">clang-tidy</strong> with the default set of checks on every
+translation unit in the compile command database and displays the resulting
+warnings and errors. The script provides multiple configuration flags.</p>
+<ul class="simple">
+<li>The default set of checks can be overridden using the <code class="docutils literal notranslate"><span class="pre">-checks</span></code> argument,
+taking the identical format as <strong class="program">clang-tidy</strong> does. For example
+<code class="docutils literal notranslate"><span class="pre">-checks=-*,modernize-use-override</span></code> will run the <code class="docutils literal notranslate"><span class="pre">modernize-use-override</span></code>
+check only.</li>
+<li>To restrict the files examined you can provide one or more regex arguments
+that the file names are matched against.
+<code class="docutils literal notranslate"><span class="pre">run-clang-tidy.py</span> <span class="pre">clang-tidy/.*Check\.cpp</span></code> will only analyze clang-tidy
+checks. It may also be necessary to restrict the header files warnings are
+displayed from using the <code class="docutils literal notranslate"><span class="pre">-header-filter</span></code> flag. It has the same behavior
+as the corresponding <strong class="program">clang-tidy</strong> flag.</li>
+<li>To apply suggested fixes <code class="docutils literal notranslate"><span class="pre">-fix</span></code> can be passed as an argument. This gathers
+all changes in a temporary directory and applies them. Passing <code class="docutils literal notranslate"><span class="pre">-format</span></code>
+will run clang-format over changed lines.</li>
+</ul>
+</div>
+<div class="section" id="on-checks-profiling">
+<h2>On checks profiling<a class="headerlink" href="#on-checks-profiling" title="Permalink to this headline">¶</a></h2>
+<p><strong class="program">clang-tidy</strong> can collect per-check profiling info, and output it
+for each processed source file (translation unit).</p>
+<p>To enable profiling info collection, use the <code class="docutils literal notranslate"><span class="pre">-enable-check-profile</span></code> argument.
+The timings will be output to <code class="docutils literal notranslate"><span class="pre">stderr</span></code> as a table. Example output:</p>
+<div class="highlight-console notranslate"><div class="highlight"><pre><span></span><span class="gp">$</span> clang-tidy -enable-check-profile -checks<span class="o">=</span>-*,readability-function-size source.cpp
+<span class="go">===-------------------------------------------------------------------------===</span>
+<span class="go">                          clang-tidy checks profiling</span>
+<span class="go">===-------------------------------------------------------------------------===</span>
+<span class="go">  Total Execution Time: 1.0282 seconds (1.0258 wall clock)</span>
+
+<span class="go">   ---User Time---   --System Time--   --User+System--   ---Wall Time---  --- Name ---</span>
+<span class="go">   0.9136 (100.0%)   0.1146 (100.0%)   1.0282 (100.0%)   1.0258 (100.0%)  readability-function-size</span>
+<span class="go">   0.9136 (100.0%)   0.1146 (100.0%)   1.0282 (100.0%)   1.0258 (100.0%)  Total</span>
+</pre></div>
+</div>
+<p>It can also store that data as JSON files for further processing. Example output:</p>
+<div class="highlight-console notranslate"><div class="highlight"><pre><span></span><span class="gp">$</span> clang-tidy -enable-check-profile -store-check-profile<span class="o">=</span>.  -checks<span class="o">=</span>-*,readability-function-size source.cpp
+<span class="gp">$</span> <span class="c1"># Note that there won't be timings table printed to the console.</span>
+<span class="gp">$</span> ls /tmp/out/
+<span class="go">20180516161318717446360-source.cpp.json</span>
+<span class="gp">$</span> cat <span class="m">20180516161318717446360</span>-source.cpp.json
+<span class="go">{</span>
+<span class="go">"file": "/path/to/source.cpp",</span>
+<span class="go">"timestamp": "2018-05-16 16:13:18.717446360",</span>
+<span class="go">"profile": {</span>
+<span class="go">  "time.clang-tidy.readability-function-size.wall": 1.0421266555786133e+00,</span>
+<span class="go">  "time.clang-tidy.readability-function-size.user": 9.2088400000005421e-01,</span>
+<span class="go">  "time.clang-tidy.readability-function-size.sys": 1.2418899999999974e-01</span>
+<span class="go">}</span>
+<span class="go">}</span>
+</pre></div>
+</div>
+<p>There is only one argument that controls profile storage:</p>
+<ul>
+<li><p class="first"><code class="docutils literal notranslate"><span class="pre">-store-check-profile=<prefix></span></code></p>
+<p>By default reports are printed in tabulated format to stderr. When this option
+is passed, these per-TU profiles are instead stored as JSON.
+If the prefix is not an absolute path, it is considered to be relative to the
+directory from where you have run <strong class="program">clang-tidy</strong>. All <code class="docutils literal notranslate"><span class="pre">.</span></code> and <code class="docutils literal notranslate"><span class="pre">..</span></code>
+patterns in the path are collapsed, and symlinks are resolved.</p>
+<p>Example:
+Let’s suppose you have a source file named <code class="docutils literal notranslate"><span class="pre">example.cpp</span></code>, located in the
+<code class="docutils literal notranslate"><span class="pre">/source</span></code> directory. Only the input filename is used, not the full path
+to the source file. Additionally, it is prefixed with the current timestamp.</p>
+<ul class="simple">
+<li>If you specify <code class="docutils literal notranslate"><span class="pre">-store-check-profile=/tmp</span></code>, then the profile will be saved
+to <code class="docutils literal notranslate"><span class="pre">/tmp/<ISO8601-like</span> <span class="pre">timestamp>-example.cpp.json</span></code></li>
+<li>If you run <strong class="program">clang-tidy</strong> from within <code class="docutils literal notranslate"><span class="pre">/foo</span></code> directory, and specify
+<code class="docutils literal notranslate"><span class="pre">-store-check-profile=.</span></code>, then the profile will still be saved to
+<code class="docutils literal notranslate"><span class="pre">/foo/<ISO8601-like</span> <span class="pre">timestamp>-example.cpp.json</span></code></li>
+</ul>
+</li>
+</ul>
+</div>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="Integrations.html">Clang-tidy IDE/Editor Integrations</a>
+          ::  
+        <a class="uplink" href="../index.html">Contents</a>
+          ::  
+        <a href="../clang-include-fixer.html">Clang-Include-Fixer</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/Integrations.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/Integrations.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/Integrations.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/Integrations.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,224 @@
+
+<!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 IDE/Editor Integrations — 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="Getting Involved" href="Contributing.html" />
+    <link rel="prev" title="zircon-temporary-objects" href="checks/zircon-temporary-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 IDE/Editor Integrations</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="checks/zircon-temporary-objects.html">zircon-temporary-objects</a>
+          ::  
+        <a class="uplink" href="../index.html">Contents</a>
+          ::  
+        <a href="Contributing.html">Getting Involved</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="clang-tidy-ide-editor-integrations">
+<h1>Clang-tidy IDE/Editor Integrations<a class="headerlink" href="#clang-tidy-ide-editor-integrations" title="Permalink to this headline">¶</a></h1>
+<p>Apart from being a standalone tool, <strong class="program">clang-tidy</strong> is integrated into
+various IDEs, code analyzers, and editors. Besides, it is currently being
+integrated into <a class="reference external" href="https://clang.llvm.org/extra/clangd.html">Clangd</a>. The following table shows the most
+well-known <strong class="program">clang-tidy</strong> integrations in detail.</p>
+<table border="1" class="docutils">
+<colgroup>
+<col width="20%" />
+<col width="13%" />
+<col width="18%" />
+<col width="14%" />
+<col width="22%" />
+<col width="14%" />
+</colgroup>
+<thead valign="bottom">
+<tr class="row-odd"><th class="head"> </th>
+<th class="head" colspan="5">Feature</th>
+</tr>
+</thead>
+<tbody valign="top">
+<tr class="row-even"><td><strong>Tool</strong></td>
+<td>On-the-fly inspection</td>
+<td>Check list configuration (GUI)</td>
+<td>Options to checks (GUI)</td>
+<td>Configuration via <code class="docutils literal notranslate"><span class="pre">.clang-tidy</span></code> files</td>
+<td>Custom clang-tidy binary</td>
+</tr>
+<tr class="row-odd"><td>A.L.E. for Vim</td>
+<td>+</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+<td>+</td>
+</tr>
+<tr class="row-even"><td>Clang Power Tools for Visual Studio</td>
+<td>-</td>
+<td>+</td>
+<td>-</td>
+<td>+</td>
+<td>-</td>
+</tr>
+<tr class="row-odd"><td>Clangd</td>
+<td>+</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+</tr>
+<tr class="row-even"><td>CLion IDE</td>
+<td>+</td>
+<td>+</td>
+<td>+</td>
+<td>+</td>
+<td>+</td>
+</tr>
+<tr class="row-odd"><td>CodeChecker</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+<td>+</td>
+</tr>
+<tr class="row-even"><td>CPPCheck</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+</tr>
+<tr class="row-odd"><td>CPPDepend</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+</tr>
+<tr class="row-even"><td>Flycheck for Emacs</td>
+<td>+</td>
+<td>-</td>
+<td>-</td>
+<td>+</td>
+<td>+</td>
+</tr>
+<tr class="row-odd"><td>KDevelop IDE</td>
+<td>-</td>
+<td>+</td>
+<td>+</td>
+<td>+</td>
+<td>+</td>
+</tr>
+<tr class="row-even"><td>Qt Creator IDE</td>
+<td>+</td>
+<td>+</td>
+<td>-</td>
+<td>+</td>
+<td>+</td>
+</tr>
+<tr class="row-odd"><td>ReSharper C++ for Visual Studio</td>
+<td>+</td>
+<td>+</td>
+<td>-</td>
+<td>+</td>
+<td>+</td>
+</tr>
+<tr class="row-even"><td>Syntastic for Vim</td>
+<td>+</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+<td>+</td>
+</tr>
+<tr class="row-odd"><td>Visual Assist for Visual Studio</td>
+<td>+</td>
+<td>+</td>
+<td>-</td>
+<td>-</td>
+<td>-</td>
+</tr>
+</tbody>
+</table>
+<p><strong>IDEs</strong></p>
+<p><a class="reference external" href="https://www.jetbrains.com/clion/">CLion</a> 2017.2 and later <a class="reference external" href="https://www.jetbrains.com/help/clion/clang-tidy-checks-support.html">integrates clang-tidy</a> as an extension to the
+built-in code analyzer. Starting from 2018.2 EAP, CLion allows using
+<strong class="program">clang-tidy</strong> via Clangd. Inspections and applicable quick-fixes are
+performed on the fly, and checks can be configured in standard command line
+format. In this integration, you can switch to the <strong class="program">clang-tidy</strong>
+binary different from the bundled one, pass the configuration in
+<code class="docutils literal notranslate"><span class="pre">.clang-tidy</span></code> files instead of using the IDE settings, and configure
+options for particular checks.</p>
+<p><a class="reference external" href="https://www.kdevelop.org/">KDevelop</a> with the <a class="reference external" href="https://github.com/KDE/kdev-clang-tidy/">kdev-clang-tidy</a> plugin, starting from version 5.1, performs
+static analysis using <strong class="program">clang-tidy</strong>. The plugin launches the
+<strong class="program">clang-tidy</strong> binary from the specified location and parses its
+output to provide a list of issues.</p>
+<p><a class="reference external" href="https://www.qt.io/">QtCreator</a> 4.6 integrates <strong class="program">clang-tidy</strong> warnings into the editor
+diagnostics under the <a class="reference external" href="https://doc.qt.io/qtcreator/creator-clang-codemodel.html">Clang Code Model</a>. To employ <strong class="program">clang-tidy</strong>
+inspection in QtCreator, you need to create a copy of one of the presets and
+choose the checks to be performed. Since QtCreator 4.7 project-wide analysis is
+possible with the <a class="reference external" href="https://doc.qt.io/qtcreator/creator-clang-tools.html">Clang Tools</a> analyzer.</p>
+<p><a class="reference external" href="https://visualstudio.microsoft.com/">MS Visual Studio</a> has a native <a class="reference external" href="https://github.com/llvm/llvm-project/tree/master/clang-tools-extra/clang-tidy-vs">clang-tidy-vs</a> plugin and also can integrate
+<strong class="program">clang-tidy</strong> by means of three other tools. The <a class="reference external" href="https://www.jetbrains.com/help/resharper/Clang_Tidy_Integration.html">ReSharper C++</a>
+extension, version 2017.3 and later, provides seamless <strong class="program">clang-tidy</strong>
+integration: checks and quick-fixes run alongside native inspections. Apart
+from that, ReSharper C++ incorporates <strong class="program">clang-tidy</strong> as a separate
+step of its code clean-up process. <a class="reference external" href="https://docs.wholetomato.com/default.asp?W761">Visual Assist</a> build 2210 includes a
+subset of <strong class="program">clang-tidy</strong> checklist to inspect the code as you edit.
+Another way to bring <strong class="program">clang-tidy</strong> functionality to Visual Studio is
+the <a class="reference external" href="https://marketplace.visualstudio.com/items?itemName=caphyon.ClangPowerTools">Clang Power Tools</a> plugin, which includes most of the
+<strong class="program">clang-tidy</strong> checks and runs them during compilation or as a separate
+step of code analysis.</p>
+<p><strong>Editors</strong></p>
+<p><a class="reference external" href="https://www.gnu.org/s/emacs/">Emacs24</a>, when expanded with the <a class="reference external" href="https://github.com/ch1bo/flycheck-clang-tidy">Flycheck</a> plugin, incorporates the
+<strong class="program">clang-tidy</strong> inspection into the syntax analyzer. For <a class="reference external" href="https://www.vim.org/">Vim</a>, you can
+use <a class="reference external" href="https://github.com/vim-syntastic/syntastic">Syntastic</a>, which includes <strong class="program">clang-tidy</strong>, or <a class="reference external" href="https://github.com/w0rp/ale">A.L.E.</a>,
+a lint engine that applies <strong class="program">clang-tidy</strong> along with other linters.</p>
+<p><strong>Analyzers</strong></p>
+<p><strong class="program">clang-tidy</strong> is integrated in <a class="reference external" href="https://www.cppdepend.com/cppdependv2018">CPPDepend</a> starting from version 2018.1
+and <a class="reference external" href="https://sourceforge.net/p/cppcheck/news/">CPPCheck</a> 1.82. CPPCheck integration lets you import Visual Studio
+solutions and run the <strong class="program">clang-tidy</strong> inspection on them. The
+<a class="reference external" href="https://github.com/Ericsson/codechecker">CodeChecker</a> application of version 5.3 or later, which also comes as a <a class="reference external" href="https://github.com/Ericsson/CodeCheckerEclipsePlugin">plugin</a>
+for Eclipse, supports <strong class="program">clang-tidy</strong> as a static analysis instrument and
+allows to use a custom <strong class="program">clang-tidy</strong> binary.</p>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="checks/zircon-temporary-objects.html">zircon-temporary-objects</a>
+          ::  
+        <a class="uplink" href="../index.html">Contents</a>
+          ::  
+        <a href="Contributing.html">Getting Involved</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/abseil-duration-addition.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/abseil-duration-addition.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/abseil-duration-addition.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/abseil-duration-addition.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 - abseil-duration-addition — 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-comparison" href="abseil-duration-comparison.html" />
+    <link rel="prev" title="Clang-Tidy Checks" href="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 - abseil-duration-addition</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="list.html">Clang-Tidy Checks</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="abseil-duration-comparison.html">abseil-duration-comparison</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="abseil-duration-addition">
+<h1>abseil-duration-addition<a class="headerlink" href="#abseil-duration-addition" title="Permalink to this headline">¶</a></h1>
+<p>Check for cases where addition should be performed in the <code class="docutils literal notranslate"><span class="pre">absl::Time</span></code> domain.
+When adding two values, and one is known to be an <code class="docutils literal notranslate"><span class="pre">absl::Time</span></code>, we can infer
+that the other should be interpreted as an <code class="docutils literal notranslate"><span class="pre">absl::Duration</span></code> of a similar
+scale, and make that inference explicit.</p>
+<p>Examples:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="c1">// Original - Addition in the integer domain</span>
+<span class="kt">int</span> <span class="n">x</span><span class="p">;</span>
+<span class="n">absl</span><span class="o">::</span><span class="n">Time</span> <span class="n">t</span><span class="p">;</span>
+<span class="kt">int</span> <span class="n">result</span> <span class="o">=</span> <span class="n">absl</span><span class="o">::</span><span class="n">ToUnixSeconds</span><span class="p">(</span><span class="n">t</span><span class="p">)</span> <span class="o">+</span> <span class="n">x</span><span class="p">;</span>
+
+<span class="c1">// Suggestion - Addition in the absl::Time domain</span>
+<span class="kt">int</span> <span class="n">result</span> <span class="o">=</span> <span class="n">absl</span><span class="o">::</span><span class="n">ToUnixSeconds</span><span class="p">(</span><span class="n">t</span> <span class="o">+</span> <span class="n">absl</span><span class="o">::</span><span class="n">Seconds</span><span class="p">(</span><span class="n">x</span><span class="p">));</span>
+</pre></div>
+</div>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="list.html">Clang-Tidy Checks</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="abseil-duration-comparison.html">abseil-duration-comparison</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/abseil-duration-comparison.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/abseil-duration-comparison.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/abseil-duration-comparison.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/abseil-duration-comparison.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 - abseil-duration-comparison — 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-conversion-cast" href="abseil-duration-conversion-cast.html" />
+    <link rel="prev" title="abseil-duration-addition" href="abseil-duration-addition.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 - abseil-duration-comparison</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="abseil-duration-addition.html">abseil-duration-addition</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="abseil-duration-conversion-cast.html">abseil-duration-conversion-cast</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="abseil-duration-comparison">
+<h1>abseil-duration-comparison<a class="headerlink" href="#abseil-duration-comparison" title="Permalink to this headline">¶</a></h1>
+<p>Checks for comparisons which should be in the <code class="docutils literal notranslate"><span class="pre">absl::Duration</span></code> domain instead
+of the floating point or integer domains.</p>
+<p>N.B.: In cases where a <code class="docutils literal notranslate"><span class="pre">Duration</span></code> was being converted to an integer and then
+compared against a floating-point value, truncation during the <code class="docutils literal notranslate"><span class="pre">Duration</span></code>
+conversion might yield a different result. In practice this is very rare, and
+still indicates a bug which should be fixed.</p>
+<p>Examples:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="c1">// Original - Comparison in the floating point domain</span>
+<span class="kt">double</span> <span class="n">x</span><span class="p">;</span>
+<span class="n">absl</span><span class="o">::</span><span class="n">Duration</span> <span class="n">d</span><span class="p">;</span>
+<span class="k">if</span> <span class="p">(</span><span class="n">x</span> <span class="o"><</span> <span class="n">absl</span><span class="o">::</span><span class="n">ToDoubleSeconds</span><span class="p">(</span><span class="n">d</span><span class="p">))</span> <span class="p">...</span>
+
+<span class="c1">// Suggested - Compare in the absl::Duration domain instead</span>
+<span class="k">if</span> <span class="p">(</span><span class="n">absl</span><span class="o">::</span><span class="n">Seconds</span><span class="p">(</span><span class="n">x</span><span class="p">)</span> <span class="o"><</span> <span class="n">d</span><span class="p">)</span> <span class="p">...</span>
+
+
+<span class="c1">// Original - Comparison in the integer domain</span>
+<span class="kt">int</span> <span class="n">x</span><span class="p">;</span>
+<span class="n">absl</span><span class="o">::</span><span class="n">Duration</span> <span class="n">d</span><span class="p">;</span>
+<span class="k">if</span> <span class="p">(</span><span class="n">x</span> <span class="o"><</span> <span class="n">absl</span><span class="o">::</span><span class="n">ToInt64Microseconds</span><span class="p">(</span><span class="n">d</span><span class="p">))</span> <span class="p">...</span>
+
+<span class="c1">// Suggested - Compare in the absl::Duration domain instead</span>
+<span class="k">if</span> <span class="p">(</span><span class="n">absl</span><span class="o">::</span><span class="n">Microseconds</span><span class="p">(</span><span class="n">x</span><span class="p">)</span> <span class="o"><</span> <span class="n">d</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="abseil-duration-addition.html">abseil-duration-addition</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="abseil-duration-conversion-cast.html">abseil-duration-conversion-cast</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/abseil-duration-conversion-cast.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/abseil-duration-conversion-cast.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/abseil-duration-conversion-cast.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/abseil-duration-conversion-cast.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 - abseil-duration-conversion-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" />
+    <link rel="next" title="abseil-duration-division" href="abseil-duration-division.html" />
+    <link rel="prev" title="abseil-duration-comparison" href="abseil-duration-comparison.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 - abseil-duration-conversion-cast</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="abseil-duration-comparison.html">abseil-duration-comparison</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="abseil-duration-division.html">abseil-duration-division</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="abseil-duration-conversion-cast">
+<h1>abseil-duration-conversion-cast<a class="headerlink" href="#abseil-duration-conversion-cast" title="Permalink to this headline">¶</a></h1>
+<p>Checks for casts of <code class="docutils literal notranslate"><span class="pre">absl::Duration</span></code> conversion functions, and recommends
+the right conversion function instead.</p>
+<p>Examples:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="c1">// Original - Cast from a double to an integer</span>
+<span class="n">absl</span><span class="o">::</span><span class="n">Duration</span> <span class="n">d</span><span class="p">;</span>
+<span class="kt">int</span> <span class="n">i</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">absl</span><span class="o">::</span><span class="n">ToDoubleSeconds</span><span class="p">(</span><span class="n">d</span><span class="p">));</span>
+
+<span class="c1">// Suggested - Use the integer conversion function directly.</span>
+<span class="kt">int</span> <span class="n">i</span> <span class="o">=</span> <span class="n">absl</span><span class="o">::</span><span class="n">ToInt64Seconds</span><span class="p">(</span><span class="n">d</span><span class="p">);</span>
+
+
+<span class="c1">// Original - Cast from a double to an integer</span>
+<span class="n">absl</span><span class="o">::</span><span class="n">Duration</span> <span class="n">d</span><span class="p">;</span>
+<span class="kt">double</span> <span class="n">x</span> <span class="o">=</span> <span class="k">static_cast</span><span class="o"><</span><span class="kt">double</span><span class="o">></span><span class="p">(</span><span class="n">absl</span><span class="o">::</span><span class="n">ToInt64Seconds</span><span class="p">(</span><span class="n">d</span><span class="p">));</span>
+
+<span class="c1">// Suggested - Use the integer conversion function directly.</span>
+<span class="kt">double</span> <span class="n">x</span> <span class="o">=</span> <span class="n">absl</span><span class="o">::</span><span class="n">ToDoubleSeconds</span><span class="p">(</span><span class="n">d</span><span class="p">);</span>
+</pre></div>
+</div>
+<p>Note: In the second example, the suggested fix could yield a different result,
+as the conversion to integer could truncate.  In practice, this is very rare,
+and you should use <code class="docutils literal notranslate"><span class="pre">absl::Trunc</span></code> to perform this operation explicitly instead.</p>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="abseil-duration-comparison.html">abseil-duration-comparison</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="abseil-duration-division.html">abseil-duration-division</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/abseil-duration-division.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/abseil-duration-division.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/abseil-duration-division.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/abseil-duration-division.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 - abseil-duration-division — 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-factory-float" href="abseil-duration-factory-float.html" />
+    <link rel="prev" title="abseil-duration-conversion-cast" href="abseil-duration-conversion-cast.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 - abseil-duration-division</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="abseil-duration-conversion-cast.html">abseil-duration-conversion-cast</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="abseil-duration-factory-float.html">abseil-duration-factory-float</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="abseil-duration-division">
+<h1>abseil-duration-division<a class="headerlink" href="#abseil-duration-division" title="Permalink to this headline">¶</a></h1>
+<p><code class="docutils literal notranslate"><span class="pre">absl::Duration</span></code> arithmetic works like it does with integers. That means that
+division of two <code class="docutils literal notranslate"><span class="pre">absl::Duration</span></code> objects returns an <code class="docutils literal notranslate"><span class="pre">int64</span></code> with any fractional
+component truncated toward 0. See <a class="reference external" href="https://github.com/abseil/abseil-cpp/blob/29ff6d4860070bf8fcbd39c8805d0c32d56628a3/absl/time/time.h#L137">this link</a> for more information on arithmetic with <code class="docutils literal notranslate"><span class="pre">absl::Duration</span></code>.</p>
+<p>For example:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="n">absl</span><span class="o">::</span><span class="n">Duration</span> <span class="n">d</span> <span class="o">=</span> <span class="n">absl</span><span class="o">::</span><span class="n">Seconds</span><span class="p">(</span><span class="mf">3.5</span><span class="p">);</span>
+<span class="n">int64</span> <span class="n">sec1</span> <span class="o">=</span> <span class="n">d</span> <span class="o">/</span> <span class="n">absl</span><span class="o">::</span><span class="n">Seconds</span><span class="p">(</span><span class="mi">1</span><span class="p">);</span>     <span class="c1">// Truncates toward 0.</span>
+<span class="n">int64</span> <span class="n">sec2</span> <span class="o">=</span> <span class="n">absl</span><span class="o">::</span><span class="n">ToInt64Seconds</span><span class="p">(</span><span class="n">d</span><span class="p">);</span>  <span class="c1">// Equivalent to division.</span>
+<span class="n">assert</span><span class="p">(</span><span class="n">sec1</span> <span class="o">==</span> <span class="mi">3</span> <span class="o">&&</span> <span class="n">sec2</span> <span class="o">==</span> <span class="mi">3</span><span class="p">);</span>
+
+<span class="kt">double</span> <span class="n">dsec</span> <span class="o">=</span> <span class="n">d</span> <span class="o">/</span> <span class="n">absl</span><span class="o">::</span><span class="n">Seconds</span><span class="p">(</span><span class="mi">1</span><span class="p">);</span>  <span class="c1">// WRONG: Still truncates toward 0.</span>
+<span class="n">assert</span><span class="p">(</span><span class="n">dsec</span> <span class="o">==</span> <span class="mf">3.0</span><span class="p">);</span>
+</pre></div>
+</div>
+<p>If you want floating-point division, you should use either the
+<code class="docutils literal notranslate"><span class="pre">absl::FDivDuration()</span></code> function, or one of the unit conversion functions such
+as <code class="docutils literal notranslate"><span class="pre">absl::ToDoubleSeconds()</span></code>. For example:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="n">absl</span><span class="o">::</span><span class="n">Duration</span> <span class="n">d</span> <span class="o">=</span> <span class="n">absl</span><span class="o">::</span><span class="n">Seconds</span><span class="p">(</span><span class="mf">3.5</span><span class="p">);</span>
+<span class="kt">double</span> <span class="n">dsec1</span> <span class="o">=</span> <span class="n">absl</span><span class="o">::</span><span class="n">FDivDuration</span><span class="p">(</span><span class="n">d</span><span class="p">,</span> <span class="n">absl</span><span class="o">::</span><span class="n">Seconds</span><span class="p">(</span><span class="mi">1</span><span class="p">));</span>  <span class="c1">// GOOD: No truncation.</span>
+<span class="kt">double</span> <span class="n">dsec2</span> <span class="o">=</span> <span class="n">absl</span><span class="o">::</span><span class="n">ToDoubleSeconds</span><span class="p">(</span><span class="n">d</span><span class="p">);</span>                 <span class="c1">// GOOD: No truncation.</span>
+<span class="n">assert</span><span class="p">(</span><span class="n">dsec1</span> <span class="o">==</span> <span class="mf">3.5</span> <span class="o">&&</span> <span class="n">dsec2</span> <span class="o">==</span> <span class="mf">3.5</span><span class="p">);</span>
+</pre></div>
+</div>
+<p>This check looks for uses of <code class="docutils literal notranslate"><span class="pre">absl::Duration</span></code> division that is done in a
+floating-point context, and recommends the use of a function that returns a
+floating-point value.</p>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="abseil-duration-conversion-cast.html">abseil-duration-conversion-cast</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="abseil-duration-factory-float.html">abseil-duration-factory-float</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/abseil-duration-factory-float.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/abseil-duration-factory-float.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/abseil-duration-factory-float.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/abseil-duration-factory-float.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 - abseil-duration-factory-float — 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-factory-scale" href="abseil-duration-factory-scale.html" />
+    <link rel="prev" title="abseil-duration-division" href="abseil-duration-division.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 - abseil-duration-factory-float</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="abseil-duration-division.html">abseil-duration-division</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="abseil-duration-factory-scale.html">abseil-duration-factory-scale</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="abseil-duration-factory-float">
+<h1>abseil-duration-factory-float<a class="headerlink" href="#abseil-duration-factory-float" title="Permalink to this headline">¶</a></h1>
+<p>Checks for cases where the floating-point overloads of various
+<code class="docutils literal notranslate"><span class="pre">absl::Duration</span></code> factory functions are called when the more-efficient
+integer versions could be used instead.</p>
+<p>This check will not suggest fixes for literals which contain fractional
+floating point values or non-literals. It will suggest removing
+superfluous casts.</p>
+<p>Examples:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="c1">// Original - Providing a floating-point literal.</span>
+<span class="n">absl</span><span class="o">::</span><span class="n">Duration</span> <span class="n">d</span> <span class="o">=</span> <span class="n">absl</span><span class="o">::</span><span class="n">Seconds</span><span class="p">(</span><span class="mf">10.0</span><span class="p">);</span>
+
+<span class="c1">// Suggested - Use an integer instead.</span>
+<span class="n">absl</span><span class="o">::</span><span class="n">Duration</span> <span class="n">d</span> <span class="o">=</span> <span class="n">absl</span><span class="o">::</span><span class="n">Seconds</span><span class="p">(</span><span class="mi">10</span><span class="p">);</span>
+
+
+<span class="c1">// Original - Explicitly casting to a floating-point type.</span>
+<span class="n">absl</span><span class="o">::</span><span class="n">Duration</span> <span class="n">d</span> <span class="o">=</span> <span class="n">absl</span><span class="o">::</span><span class="n">Seconds</span><span class="p">(</span><span class="k">static_cast</span><span class="o"><</span><span class="kt">double</span><span class="o">></span><span class="p">(</span><span class="mi">10</span><span class="p">));</span>
+
+<span class="c1">// Suggested - Remove the explicit cast</span>
+<span class="n">absl</span><span class="o">::</span><span class="n">Duration</span> <span class="n">d</span> <span class="o">=</span> <span class="n">absl</span><span class="o">::</span><span class="n">Seconds</span><span class="p">(</span><span class="mi">10</span><span class="p">);</span>
+</pre></div>
+</div>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="abseil-duration-division.html">abseil-duration-division</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="abseil-duration-factory-scale.html">abseil-duration-factory-scale</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/abseil-duration-factory-scale.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/abseil-duration-factory-scale.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/abseil-duration-factory-scale.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/abseil-duration-factory-scale.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 - abseil-duration-factory-scale — 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-subtraction" href="abseil-duration-subtraction.html" />
+    <link rel="prev" title="abseil-duration-factory-float" href="abseil-duration-factory-float.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 - abseil-duration-factory-scale</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="abseil-duration-factory-float.html">abseil-duration-factory-float</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="abseil-duration-subtraction.html">abseil-duration-subtraction</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="abseil-duration-factory-scale">
+<h1>abseil-duration-factory-scale<a class="headerlink" href="#abseil-duration-factory-scale" title="Permalink to this headline">¶</a></h1>
+<p>Checks for cases where arguments to <code class="docutils literal notranslate"><span class="pre">absl::Duration</span></code> factory functions are
+scaled internally and could be changed to a different factory function. This
+check also looks for arguements with a zero value and suggests using
+<code class="docutils literal notranslate"><span class="pre">absl::ZeroDuration()</span></code> instead.</p>
+<p>Examples:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="c1">// Original - Internal multiplication.</span>
+<span class="kt">int</span> <span class="n">x</span><span class="p">;</span>
+<span class="n">absl</span><span class="o">::</span><span class="n">Duration</span> <span class="n">d</span> <span class="o">=</span> <span class="n">absl</span><span class="o">::</span><span class="n">Seconds</span><span class="p">(</span><span class="mi">60</span> <span class="o">*</span> <span class="n">x</span><span class="p">);</span>
+
+<span class="c1">// Suggested - Use absl::Minutes instead.</span>
+<span class="n">absl</span><span class="o">::</span><span class="n">Duration</span> <span class="n">d</span> <span class="o">=</span> <span class="n">absl</span><span class="o">::</span><span class="n">Minutes</span><span class="p">(</span><span class="n">x</span><span class="p">);</span>
+
+
+<span class="c1">// Original - Internal division.</span>
+<span class="kt">int</span> <span class="n">y</span><span class="p">;</span>
+<span class="n">absl</span><span class="o">::</span><span class="n">Duration</span> <span class="n">d</span> <span class="o">=</span> <span class="n">absl</span><span class="o">::</span><span class="n">Milliseconds</span><span class="p">(</span><span class="n">y</span> <span class="o">/</span> <span class="mf">1000.</span><span class="p">);</span>
+
+<span class="c1">// Suggested - Use absl:::Seconds instead.</span>
+<span class="n">absl</span><span class="o">::</span><span class="n">Duration</span> <span class="n">d</span> <span class="o">=</span> <span class="n">absl</span><span class="o">::</span><span class="n">Seconds</span><span class="p">(</span><span class="n">y</span><span class="p">);</span>
+
+
+<span class="c1">// Original - Zero-value argument.</span>
+<span class="n">absl</span><span class="o">::</span><span class="n">Duration</span> <span class="n">d</span> <span class="o">=</span> <span class="n">absl</span><span class="o">::</span><span class="n">Hours</span><span class="p">(</span><span class="mi">0</span><span class="p">);</span>
+
+<span class="c1">// Suggested = Use absl::ZeroDuration instead</span>
+<span class="n">absl</span><span class="o">::</span><span class="n">Duration</span> <span class="n">d</span> <span class="o">=</span> <span class="n">absl</span><span class="o">::</span><span class="n">ZeroDuration</span><span class="p">();</span>
+</pre></div>
+</div>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="abseil-duration-factory-float.html">abseil-duration-factory-float</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="abseil-duration-subtraction.html">abseil-duration-subtraction</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/abseil-duration-subtraction.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/abseil-duration-subtraction.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/abseil-duration-subtraction.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/abseil-duration-subtraction.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,91 @@
+
+<!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 - abseil-duration-subtraction — 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-unnecessary-conversion" href="abseil-duration-unnecessary-conversion.html" />
+    <link rel="prev" title="abseil-duration-factory-scale" href="abseil-duration-factory-scale.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 - abseil-duration-subtraction</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="abseil-duration-factory-scale.html">abseil-duration-factory-scale</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="abseil-duration-unnecessary-conversion.html">abseil-duration-unnecessary-conversion</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="abseil-duration-subtraction">
+<h1>abseil-duration-subtraction<a class="headerlink" href="#abseil-duration-subtraction" title="Permalink to this headline">¶</a></h1>
+<p>Checks for cases where subtraction should be performed in the
+<code class="docutils literal notranslate"><span class="pre">absl::Duration</span></code> domain. When subtracting two values, and the first one is
+known to be a conversion from <code class="docutils literal notranslate"><span class="pre">absl::Duration</span></code>, we can infer that the second
+should also be interpreted as an <code class="docutils literal notranslate"><span class="pre">absl::Duration</span></code>, and make that inference
+explicit.</p>
+<p>Examples:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="c1">// Original - Subtraction in the double domain</span>
+<span class="kt">double</span> <span class="n">x</span><span class="p">;</span>
+<span class="n">absl</span><span class="o">::</span><span class="n">Duration</span> <span class="n">d</span><span class="p">;</span>
+<span class="kt">double</span> <span class="n">result</span> <span class="o">=</span> <span class="n">absl</span><span class="o">::</span><span class="n">ToDoubleSeconds</span><span class="p">(</span><span class="n">d</span><span class="p">)</span> <span class="o">-</span> <span class="n">x</span><span class="p">;</span>
+
+<span class="c1">// Suggestion - Subtraction in the absl::Duration domain instead</span>
+<span class="kt">double</span> <span class="n">result</span> <span class="o">=</span> <span class="n">absl</span><span class="o">::</span><span class="n">ToDoubleSeconds</span><span class="p">(</span><span class="n">d</span> <span class="o">-</span> <span class="n">absl</span><span class="o">::</span><span class="n">Seconds</span><span class="p">(</span><span class="n">x</span><span class="p">));</span>
+
+<span class="c1">// Original - Subtraction of two Durations in the double domain</span>
+<span class="n">absl</span><span class="o">::</span><span class="n">Duration</span> <span class="n">d1</span><span class="p">,</span> <span class="n">d2</span><span class="p">;</span>
+<span class="kt">double</span> <span class="n">result</span> <span class="o">=</span> <span class="n">absl</span><span class="o">::</span><span class="n">ToDoubleSeconds</span><span class="p">(</span><span class="n">d1</span><span class="p">)</span> <span class="o">-</span> <span class="n">absl</span><span class="o">::</span><span class="n">ToDoubleSeconds</span><span class="p">(</span><span class="n">d2</span><span class="p">);</span>
+
+<span class="c1">// Suggestion - Subtraction in the absl::Duration domain instead</span>
+<span class="kt">double</span> <span class="n">result</span> <span class="o">=</span> <span class="n">absl</span><span class="o">::</span><span class="n">ToDoubleSeconds</span><span class="p">(</span><span class="n">d1</span> <span class="o">-</span> <span class="n">d2</span><span class="p">);</span>
+</pre></div>
+</div>
+<p>Note: As with other <code class="docutils literal notranslate"><span class="pre">clang-tidy</span></code> checks, it is possible that multiple fixes
+may overlap (as in the case of nested expressions), so not all occurences can
+be transformed in one run. In particular, this may occur for nested subtraction
+expressions. Running <code class="docutils literal notranslate"><span class="pre">clang-tidy</span></code> multiple times will find and fix these
+overlaps.</p>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="abseil-duration-factory-scale.html">abseil-duration-factory-scale</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="abseil-duration-unnecessary-conversion.html">abseil-duration-unnecessary-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/abseil-duration-unnecessary-conversion.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/abseil-duration-unnecessary-conversion.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/abseil-duration-unnecessary-conversion.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/abseil-duration-unnecessary-conversion.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 - abseil-duration-unnecessary-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="abseil-faster-strsplit-delimiter" href="abseil-faster-strsplit-delimiter.html" />
+    <link rel="prev" title="abseil-duration-subtraction" href="abseil-duration-subtraction.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 - abseil-duration-unnecessary-conversion</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="abseil-duration-subtraction.html">abseil-duration-subtraction</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="abseil-faster-strsplit-delimiter.html">abseil-faster-strsplit-delimiter</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="abseil-duration-unnecessary-conversion">
+<h1>abseil-duration-unnecessary-conversion<a class="headerlink" href="#abseil-duration-unnecessary-conversion" title="Permalink to this headline">¶</a></h1>
+<p>Finds and fixes cases where <code class="docutils literal notranslate"><span class="pre">absl::Duration</span></code> values are being converted to
+numeric types and back again.</p>
+<p>Floating-point examples:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="c1">// Original - Conversion to double and back again</span>
+<span class="n">absl</span><span class="o">::</span><span class="n">Duration</span> <span class="n">d1</span><span class="p">;</span>
+<span class="n">absl</span><span class="o">::</span><span class="n">Duration</span> <span class="n">d2</span> <span class="o">=</span> <span class="n">absl</span><span class="o">::</span><span class="n">Seconds</span><span class="p">(</span><span class="n">absl</span><span class="o">::</span><span class="n">ToDoubleSeconds</span><span class="p">(</span><span class="n">d1</span><span class="p">));</span>
+
+<span class="c1">// Suggestion - Remove unnecessary conversions</span>
+<span class="n">absl</span><span class="o">::</span><span class="n">Duration</span> <span class="n">d2</span> <span class="o">=</span> <span class="n">d1</span><span class="p">;</span>
+
+<span class="c1">// Original - Division to convert to double and back again</span>
+<span class="n">absl</span><span class="o">::</span><span class="n">Duration</span> <span class="n">d2</span> <span class="o">=</span> <span class="n">absl</span><span class="o">::</span><span class="n">Seconds</span><span class="p">(</span><span class="n">absl</span><span class="o">::</span><span class="n">FDivDuration</span><span class="p">(</span><span class="n">d1</span><span class="p">,</span> <span class="n">absl</span><span class="o">::</span><span class="n">Seconds</span><span class="p">(</span><span class="mi">1</span><span class="p">)));</span>
+
+<span class="c1">// Suggestion - Remove division and conversion</span>
+<span class="n">absl</span><span class="o">::</span><span class="n">Duration</span> <span class="n">d2</span> <span class="o">=</span> <span class="n">d1</span><span class="p">;</span>
+</pre></div>
+</div>
+<p>Integer examples:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="c1">// Original - Conversion to integer and back again</span>
+<span class="n">absl</span><span class="o">::</span><span class="n">Duration</span> <span class="n">d1</span><span class="p">;</span>
+<span class="n">absl</span><span class="o">::</span><span class="n">Duration</span> <span class="n">d2</span> <span class="o">=</span> <span class="n">absl</span><span class="o">::</span><span class="n">Hours</span><span class="p">(</span><span class="n">absl</span><span class="o">::</span><span class="n">ToInt64Hours</span><span class="p">(</span><span class="n">d1</span><span class="p">));</span>
+
+<span class="c1">// Suggestion - Remove unnecessary conversions</span>
+<span class="n">absl</span><span class="o">::</span><span class="n">Duration</span> <span class="n">d2</span> <span class="o">=</span> <span class="n">d1</span><span class="p">;</span>
+
+<span class="c1">// Original - Integer division followed by conversion</span>
+<span class="n">absl</span><span class="o">::</span><span class="n">Duration</span> <span class="n">d2</span> <span class="o">=</span> <span class="n">absl</span><span class="o">::</span><span class="n">Seconds</span><span class="p">(</span><span class="n">d1</span> <span class="o">/</span> <span class="n">absl</span><span class="o">::</span><span class="n">Seconds</span><span class="p">(</span><span class="mi">1</span><span class="p">));</span>
+
+<span class="c1">// Suggestion - Remove division and conversion</span>
+<span class="n">absl</span><span class="o">::</span><span class="n">Duration</span> <span class="n">d2</span> <span class="o">=</span> <span class="n">d1</span><span class="p">;</span>
+</pre></div>
+</div>
+<p>Note: Converting to an integer and back to an <code class="docutils literal notranslate"><span class="pre">absl::Duration</span></code> might be a
+truncating operation if the value is not aligned to the scale of conversion.
+In the rare case where this is the intended result, callers should use
+<code class="docutils literal notranslate"><span class="pre">absl::Trunc</span></code> to truncate explicitly.</p>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="abseil-duration-subtraction.html">abseil-duration-subtraction</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="abseil-faster-strsplit-delimiter.html">abseil-faster-strsplit-delimiter</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/abseil-faster-strsplit-delimiter.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/abseil-faster-strsplit-delimiter.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/abseil-faster-strsplit-delimiter.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/abseil-faster-strsplit-delimiter.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 - abseil-faster-strsplit-delimiter — 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-no-internal-dependencies" href="abseil-no-internal-dependencies.html" />
+    <link rel="prev" title="abseil-duration-unnecessary-conversion" href="abseil-duration-unnecessary-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 - abseil-faster-strsplit-delimiter</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="abseil-duration-unnecessary-conversion.html">abseil-duration-unnecessary-conversion</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="abseil-no-internal-dependencies.html">abseil-no-internal-dependencies</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="abseil-faster-strsplit-delimiter">
+<h1>abseil-faster-strsplit-delimiter<a class="headerlink" href="#abseil-faster-strsplit-delimiter" title="Permalink to this headline">¶</a></h1>
+<p>Finds instances of <code class="docutils literal notranslate"><span class="pre">absl::StrSplit()</span></code> or <code class="docutils literal notranslate"><span class="pre">absl::MaxSplits()</span></code> where the
+delimiter is a single character string literal and replaces with a character.
+The check will offer a suggestion to change the string literal into a character.
+It will also catch code using <code class="docutils literal notranslate"><span class="pre">absl::ByAnyChar()</span></code> for just a single character
+and will transform that into a single character as well.</p>
+<p>These changes will give the same result, but using characters rather than
+single character string literals is more efficient and readable.</p>
+<p>Examples:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="c1">// Original - the argument is a string literal.</span>
+<span class="k">for</span> <span class="p">(</span><span class="k">auto</span> <span class="nl">piece</span> <span class="p">:</span> <span class="n">absl</span><span class="o">::</span><span class="n">StrSplit</span><span class="p">(</span><span class="n">str</span><span class="p">,</span> <span class="s">"B"</span><span class="p">))</span> <span class="p">{</span>
+
+<span class="c1">// Suggested - the argument is a character, which causes the more efficient</span>
+<span class="c1">// overload of absl::StrSplit() to be used.</span>
+<span class="k">for</span> <span class="p">(</span><span class="k">auto</span> <span class="nl">piece</span> <span class="p">:</span> <span class="n">absl</span><span class="o">::</span><span class="n">StrSplit</span><span class="p">(</span><span class="n">str</span><span class="p">,</span> <span class="sc">'B'</span><span class="p">))</span> <span class="p">{</span>
+
+
+<span class="c1">// Original - the argument is a string literal inside absl::ByAnyChar call.</span>
+<span class="k">for</span> <span class="p">(</span><span class="k">auto</span> <span class="nl">piece</span> <span class="p">:</span> <span class="n">absl</span><span class="o">::</span><span class="n">StrSplit</span><span class="p">(</span><span class="n">str</span><span class="p">,</span> <span class="n">absl</span><span class="o">::</span><span class="n">ByAnyChar</span><span class="p">(</span><span class="s">"B"</span><span class="p">)))</span> <span class="p">{</span>
+
+<span class="c1">// Suggested - the argument is a character, which causes the more efficient</span>
+<span class="c1">// overload of absl::StrSplit() to be used and we do not need absl::ByAnyChar</span>
+<span class="c1">// anymore.</span>
+<span class="k">for</span> <span class="p">(</span><span class="k">auto</span> <span class="nl">piece</span> <span class="p">:</span> <span class="n">absl</span><span class="o">::</span><span class="n">StrSplit</span><span class="p">(</span><span class="n">str</span><span class="p">,</span> <span class="sc">'B'</span><span class="p">))</span> <span class="p">{</span>
+
+
+<span class="c1">// Original - the argument is a string literal inside absl::MaxSplits call.</span>
+<span class="k">for</span> <span class="p">(</span><span class="k">auto</span> <span class="nl">piece</span> <span class="p">:</span> <span class="n">absl</span><span class="o">::</span><span class="n">StrSplit</span><span class="p">(</span><span class="n">str</span><span class="p">,</span> <span class="n">absl</span><span class="o">::</span><span class="n">MaxSplits</span><span class="p">(</span><span class="s">"B"</span><span class="p">,</span> <span class="mi">1</span><span class="p">)))</span> <span class="p">{</span>
+
+<span class="c1">// Suggested - the argument is a character, which causes the more efficient</span>
+<span class="c1">// overload of absl::StrSplit() to be used.</span>
+<span class="k">for</span> <span class="p">(</span><span class="k">auto</span> <span class="nl">piece</span> <span class="p">:</span> <span class="n">absl</span><span class="o">::</span><span class="n">StrSplit</span><span class="p">(</span><span class="n">str</span><span class="p">,</span> <span class="n">absl</span><span class="o">::</span><span class="n">MaxSplits</span><span class="p">(</span><span class="sc">'B'</span><span class="p">,</span> <span class="mi">1</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="abseil-duration-unnecessary-conversion.html">abseil-duration-unnecessary-conversion</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="abseil-no-internal-dependencies.html">abseil-no-internal-dependencies</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/abseil-no-internal-dependencies.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/abseil-no-internal-dependencies.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/abseil-no-internal-dependencies.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/abseil-no-internal-dependencies.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" />
+    <title>abseil-no-internal-dependencies — 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-no-namespace" href="abseil-no-namespace.html" />
+    <link rel="prev" title="abseil-faster-strsplit-delimiter" href="abseil-faster-strsplit-delimiter.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>abseil-no-internal-dependencies</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="abseil-faster-strsplit-delimiter.html">abseil-faster-strsplit-delimiter</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="abseil-no-namespace.html">abseil-no-namespace</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <p>subl.. title:: clang-tidy - abseil-no-internal-dependencies</p>
+<div class="section" id="abseil-no-internal-dependencies">
+<h1>abseil-no-internal-dependencies<a class="headerlink" href="#abseil-no-internal-dependencies" title="Permalink to this headline">¶</a></h1>
+<p>Warns if code using Abseil depends on internal details. If something is in a
+namespace that includes the word “internal”, code is not allowed to depend upon
+it beaucse it’s an implementation detail. They cannot friend it, include it,
+you mention it or refer to it in any way. Doing so violates Abseil’s
+compatibility guidelines and may result in breakage. See
+<a class="reference external" href="https://abseil.io/about/compatibility">https://abseil.io/about/compatibility</a> for more information.</p>
+<p>The following cases will result in warnings:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="n">absl</span><span class="o">::</span><span class="n">strings_internal</span><span class="o">::</span><span class="n">foo</span><span class="p">();</span>
+<span class="c1">// warning triggered on this line</span>
+<span class="k">class</span> <span class="nc">foo</span> <span class="p">{</span>
+  <span class="k">friend</span> <span class="k">struct</span> <span class="n">absl</span><span class="o">::</span><span class="n">container_internal</span><span class="o">::</span><span class="n">faa</span><span class="p">;</span>
+  <span class="c1">// warning triggered on this line</span>
+<span class="p">};</span>
+<span class="n">absl</span><span class="o">::</span><span class="n">memory_internal</span><span class="o">::</span><span class="n">MakeUniqueResult</span><span class="p">();</span>
+<span class="c1">// warning triggered on this line</span>
+</pre></div>
+</div>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="abseil-faster-strsplit-delimiter.html">abseil-faster-strsplit-delimiter</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="abseil-no-namespace.html">abseil-no-namespace</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/abseil-no-namespace.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/abseil-no-namespace.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/abseil-no-namespace.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/abseil-no-namespace.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,75 @@
+
+<!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 - abseil-no-namespace — 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-redundant-strcat-calls" href="abseil-redundant-strcat-calls.html" />
+    <link rel="prev" title="abseil-no-internal-dependencies" href="abseil-no-internal-dependencies.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 - abseil-no-namespace</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="abseil-no-internal-dependencies.html">abseil-no-internal-dependencies</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="abseil-redundant-strcat-calls.html">abseil-redundant-strcat-calls</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="abseil-no-namespace">
+<h1>abseil-no-namespace<a class="headerlink" href="#abseil-no-namespace" title="Permalink to this headline">¶</a></h1>
+<p>Ensures code does not open <code class="docutils literal notranslate"><span class="pre">namespace</span> <span class="pre">absl</span></code> as that violates Abseil’s
+compatibility guidelines. Code should not open <code class="docutils literal notranslate"><span class="pre">namespace</span> <span class="pre">absl</span></code> as that
+conflicts with Abseil’s compatibility guidelines and may result in breakage.</p>
+<p>Any code that uses:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">namespace</span> <span class="n">absl</span> <span class="p">{</span>
+ <span class="p">...</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+<p>will be prompted with a warning.</p>
+<p>See <a class="reference external" href="https://abseil.io/about/compatibility">the full Abseil compatibility guidelines</a> for more information.</p>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="abseil-no-internal-dependencies.html">abseil-no-internal-dependencies</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="abseil-redundant-strcat-calls.html">abseil-redundant-strcat-calls</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/abseil-redundant-strcat-calls.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/abseil-redundant-strcat-calls.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/abseil-redundant-strcat-calls.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/abseil-redundant-strcat-calls.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" />
+    <title>clang-tidy - abseil-redundant-strcat-calls — 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-str-cat-append" href="abseil-str-cat-append.html" />
+    <link rel="prev" title="abseil-no-namespace" href="abseil-no-namespace.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 - abseil-redundant-strcat-calls</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="abseil-no-namespace.html">abseil-no-namespace</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="abseil-str-cat-append.html">abseil-str-cat-append</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="abseil-redundant-strcat-calls">
+<h1>abseil-redundant-strcat-calls<a class="headerlink" href="#abseil-redundant-strcat-calls" title="Permalink to this headline">¶</a></h1>
+<p>Suggests removal of unnecessary calls to <code class="docutils literal notranslate"><span class="pre">absl::StrCat</span></code> when the result is
+being passed to another call to <code class="docutils literal notranslate"><span class="pre">absl::StrCat</span></code> or <code class="docutils literal notranslate"><span class="pre">absl::StrAppend</span></code>.</p>
+<p>The extra calls cause unnecessary temporary strings to be constructed. Removing
+them makes the code smaller and faster.</p>
+<p>Examples:</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="o">=</span> <span class="n">absl</span><span class="o">::</span><span class="n">StrCat</span><span class="p">(</span><span class="s">"A"</span><span class="p">,</span> <span class="n">absl</span><span class="o">::</span><span class="n">StrCat</span><span class="p">(</span><span class="s">"B"</span><span class="p">,</span> <span class="n">absl</span><span class="o">::</span><span class="n">StrCat</span><span class="p">(</span><span class="s">"C"</span><span class="p">,</span> <span class="s">"D"</span><span class="p">)));</span>
+<span class="c1">//before</span>
+
+<span class="n">std</span><span class="o">::</span><span class="n">string</span> <span class="n">s</span> <span class="o">=</span> <span class="n">absl</span><span class="o">::</span><span class="n">StrCat</span><span class="p">(</span><span class="s">"A"</span><span class="p">,</span> <span class="s">"B"</span><span class="p">,</span> <span class="s">"C"</span><span class="p">,</span> <span class="s">"D"</span><span class="p">);</span>
+<span class="c1">//after</span>
+
+<span class="n">absl</span><span class="o">::</span><span class="n">StrAppend</span><span class="p">(</span><span class="o">&</span><span class="n">s</span><span class="p">,</span> <span class="n">absl</span><span class="o">::</span><span class="n">StrCat</span><span class="p">(</span><span class="s">"E"</span><span class="p">,</span> <span class="s">"F"</span><span class="p">,</span> <span class="s">"G"</span><span class="p">));</span>
+<span class="c1">//before</span>
+
+<span class="n">absl</span><span class="o">::</span><span class="n">StrAppend</span><span class="p">(</span><span class="o">&</span><span class="n">s</span><span class="p">,</span> <span class="s">"E"</span><span class="p">,</span> <span class="s">"F"</span><span class="p">,</span> <span class="s">"G"</span><span class="p">);</span>
+<span class="c1">//after</span>
+</pre></div>
+</div>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="abseil-no-namespace.html">abseil-no-namespace</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="abseil-str-cat-append.html">abseil-str-cat-append</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/abseil-str-cat-append.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/abseil-str-cat-append.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/abseil-str-cat-append.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/abseil-str-cat-append.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 - abseil-str-cat-append — 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-string-find-startswith" href="abseil-string-find-startswith.html" />
+    <link rel="prev" title="abseil-redundant-strcat-calls" href="abseil-redundant-strcat-calls.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 - abseil-str-cat-append</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="abseil-redundant-strcat-calls.html">abseil-redundant-strcat-calls</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="abseil-string-find-startswith.html">abseil-string-find-startswith</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="abseil-str-cat-append">
+<h1>abseil-str-cat-append<a class="headerlink" href="#abseil-str-cat-append" title="Permalink to this headline">¶</a></h1>
+<p>Flags uses of <code class="docutils literal notranslate"><span class="pre">absl::StrCat()</span></code> to append to a <code class="docutils literal notranslate"><span class="pre">std::string</span></code>. Suggests
+<code class="docutils literal notranslate"><span class="pre">absl::StrAppend()</span></code> should be used instead.</p>
+<p>The extra calls cause unnecessary temporary strings to be constructed. Removing
+them makes the code smaller and faster.</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="n">a</span> <span class="o">=</span> <span class="n">absl</span><span class="o">::</span><span class="n">StrCat</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">// Use absl::StrAppend(&a, b) instead.</span>
+</pre></div>
+</div>
+<p>Does not diagnose cases where <code class="docutils literal notranslate"><span class="pre">absl::StrCat()</span></code> is used as a template
+argument for a functor.</p>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="abseil-redundant-strcat-calls.html">abseil-redundant-strcat-calls</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="abseil-string-find-startswith.html">abseil-string-find-startswith</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/abseil-string-find-startswith.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/abseil-string-find-startswith.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/abseil-string-find-startswith.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/abseil-string-find-startswith.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 - abseil-string-find-startswith — 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-time-comparison" href="abseil-time-comparison.html" />
+    <link rel="prev" title="abseil-str-cat-append" href="abseil-str-cat-append.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 - abseil-string-find-startswith</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="abseil-str-cat-append.html">abseil-str-cat-append</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="abseil-time-comparison.html">abseil-time-comparison</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="abseil-string-find-startswith">
+<h1>abseil-string-find-startswith<a class="headerlink" href="#abseil-string-find-startswith" title="Permalink to this headline">¶</a></h1>
+<p>Checks whether a <code class="docutils literal notranslate"><span class="pre">std::string::find()</span></code> result is compared with 0, and
+suggests replacing with <code class="docutils literal notranslate"><span class="pre">absl::StartsWith()</span></code>. This is both a readability and
+performance issue.</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="n">string</span> <span class="n">s</span> <span class="o">=</span> <span class="s">"..."</span><span class="p">;</span>
+<span class="k">if</span> <span class="p">(</span><span class="n">s</span><span class="p">.</span><span class="n">find</span><span class="p">(</span><span class="s">"Hello World"</span><span class="p">)</span> <span class="o">==</span> <span class="mi">0</span><span class="p">)</span> <span class="p">{</span> <span class="cm">/* do something */</span> <span class="p">}</span>
+</pre></div>
+</div>
+<p>becomes</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="n">string</span> <span class="n">s</span> <span class="o">=</span> <span class="s">"..."</span><span class="p">;</span>
+<span class="k">if</span> <span class="p">(</span><span class="n">absl</span><span class="o">::</span><span class="n">StartsWith</span><span class="p">(</span><span class="n">s</span><span class="p">,</span> <span class="s">"Hello World"</span><span class="p">))</span> <span class="p">{</span> <span class="cm">/* do something */</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 considered is
+fixed.</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-abseilstringsmatchheader">
+<code class="descname">AbseilStringsMatchHeader</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-abseilstringsmatchheader" title="Permalink to this definition">¶</a></dt>
+<dd><p>The location of Abseil’s <code class="docutils literal notranslate"><span class="pre">strings/match.h</span></code>. Defaults to
+<code class="docutils literal notranslate"><span class="pre">absl/strings/match.h</span></code>.</p>
+</dd></dl>
+
+</div>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="abseil-str-cat-append.html">abseil-str-cat-append</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="abseil-time-comparison.html">abseil-time-comparison</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/abseil-time-comparison.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/abseil-time-comparison.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/abseil-time-comparison.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/abseil-time-comparison.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 - abseil-time-comparison — 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-time-subtraction" href="abseil-time-subtraction.html" />
+    <link rel="prev" title="abseil-string-find-startswith" href="abseil-string-find-startswith.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 - abseil-time-comparison</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="abseil-string-find-startswith.html">abseil-string-find-startswith</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="abseil-time-subtraction.html">abseil-time-subtraction</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="abseil-time-comparison">
+<h1>abseil-time-comparison<a class="headerlink" href="#abseil-time-comparison" title="Permalink to this headline">¶</a></h1>
+<p>Prefer comparisons in the <code class="docutils literal notranslate"><span class="pre">absl::Time</span></code> domain instead of the integer domain.</p>
+<p>N.B.: In cases where an <code class="docutils literal notranslate"><span class="pre">absl::Time</span></code> is being converted to an integer,
+alignment may occur. If the comparison depends on this alignment, doing the
+comparison in the <code class="docutils literal notranslate"><span class="pre">absl::Time</span></code> domain may yield a different result. In
+practice this is very rare, and still indicates a bug which should be fixed.</p>
+<p>Examples:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="c1">// Original - Comparison in the integer domain</span>
+<span class="kt">int</span> <span class="n">x</span><span class="p">;</span>
+<span class="n">absl</span><span class="o">::</span><span class="n">Time</span> <span class="n">t</span><span class="p">;</span>
+<span class="k">if</span> <span class="p">(</span><span class="n">x</span> <span class="o"><</span> <span class="n">absl</span><span class="o">::</span><span class="n">ToUnixSeconds</span><span class="p">(</span><span class="n">t</span><span class="p">))</span> <span class="p">...</span>
+
+<span class="c1">// Suggested - Compare in the absl::Time domain instead</span>
+<span class="k">if</span> <span class="p">(</span><span class="n">absl</span><span class="o">::</span><span class="n">FromUnixSeconds</span><span class="p">(</span><span class="n">x</span><span class="p">)</span> <span class="o"><</span> <span class="n">t</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="abseil-string-find-startswith.html">abseil-string-find-startswith</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="abseil-time-subtraction.html">abseil-time-subtraction</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/abseil-time-subtraction.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/abseil-time-subtraction.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/abseil-time-subtraction.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/abseil-time-subtraction.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,95 @@
+
+<!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 - abseil-time-subtraction — 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-upgrade-duration-conversions" href="abseil-upgrade-duration-conversions.html" />
+    <link rel="prev" title="abseil-time-comparison" href="abseil-time-comparison.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 - abseil-time-subtraction</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="abseil-time-comparison.html">abseil-time-comparison</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="abseil-upgrade-duration-conversions.html">abseil-upgrade-duration-conversions</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="abseil-time-subtraction">
+<h1>abseil-time-subtraction<a class="headerlink" href="#abseil-time-subtraction" title="Permalink to this headline">¶</a></h1>
+<p>Finds and fixes <code class="docutils literal notranslate"><span class="pre">absl::Time</span></code> subtraction expressions to do subtraction
+in the Time domain instead of the numeric domain.</p>
+<p>There are two cases of Time subtraction in which deduce additional type
+information:</p>
+<ul class="simple">
+<li>When the result is an <code class="docutils literal notranslate"><span class="pre">absl::Duration</span></code> and the first argument is an
+<code class="docutils literal notranslate"><span class="pre">absl::Time</span></code>.</li>
+<li>When the second argument is a <code class="docutils literal notranslate"><span class="pre">absl::Time</span></code>.</li>
+</ul>
+<p>In the first case, we must know the result of the operation, since without that
+the second operand could be either an <code class="docutils literal notranslate"><span class="pre">absl::Time</span></code> or an <code class="docutils literal notranslate"><span class="pre">absl::Duration</span></code>.
+In the second case, the first operand <em>must</em> be an <code class="docutils literal notranslate"><span class="pre">absl::Time</span></code>, because
+subtracting an <code class="docutils literal notranslate"><span class="pre">absl::Time</span></code> from an <code class="docutils literal notranslate"><span class="pre">absl::Duration</span></code> is not defined.</p>
+<p>Examples:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="kt">int</span> <span class="n">x</span><span class="p">;</span>
+<span class="n">absl</span><span class="o">::</span><span class="n">Time</span> <span class="n">t</span><span class="p">;</span>
+
+<span class="c1">// Original - absl::Duration result and first operand is a absl::Time.</span>
+<span class="n">absl</span><span class="o">::</span><span class="n">Duration</span> <span class="n">d</span> <span class="o">=</span> <span class="n">absl</span><span class="o">::</span><span class="n">Seconds</span><span class="p">(</span><span class="n">absl</span><span class="o">::</span><span class="n">ToUnixSeconds</span><span class="p">(</span><span class="n">t</span><span class="p">)</span> <span class="o">-</span> <span class="n">x</span><span class="p">);</span>
+
+<span class="c1">// Suggestion - Perform subtraction in the Time domain instead.</span>
+<span class="n">absl</span><span class="o">::</span><span class="n">Duration</span> <span class="n">d</span> <span class="o">=</span> <span class="n">t</span> <span class="o">-</span> <span class="n">absl</span><span class="o">::</span><span class="n">FromUnixSeconds</span><span class="p">(</span><span class="n">x</span><span class="p">);</span>
+
+
+<span class="c1">// Original - Second operand is an absl::Time.</span>
+<span class="kt">int</span> <span class="n">i</span> <span class="o">=</span> <span class="n">x</span> <span class="o">-</span> <span class="n">absl</span><span class="o">::</span><span class="n">ToUnixSeconds</span><span class="p">(</span><span class="n">t</span><span class="p">);</span>
+
+<span class="c1">// Suggestion - Perform subtraction in the Time domain instead.</span>
+<span class="kt">int</span> <span class="n">i</span> <span class="o">=</span> <span class="n">absl</span><span class="o">::</span><span class="n">ToInt64Seconds</span><span class="p">(</span><span class="n">absl</span><span class="o">::</span><span class="n">FromUnixSeconds</span><span class="p">(</span><span class="n">x</span><span class="p">)</span> <span class="o">-</span> <span class="n">t</span><span class="p">);</span>
+</pre></div>
+</div>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="abseil-time-comparison.html">abseil-time-comparison</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="abseil-upgrade-duration-conversions.html">abseil-upgrade-duration-conversions</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/abseil-upgrade-duration-conversions.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/abseil-upgrade-duration-conversions.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/abseil-upgrade-duration-conversions.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/abseil-upgrade-duration-conversions.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 - abseil-upgrade-duration-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="android-cloexec-accept" href="android-cloexec-accept.html" />
+    <link rel="prev" title="abseil-time-subtraction" href="abseil-time-subtraction.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 - abseil-upgrade-duration-conversions</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="abseil-time-subtraction.html">abseil-time-subtraction</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="android-cloexec-accept.html">android-cloexec-accept</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="abseil-upgrade-duration-conversions">
+<h1>abseil-upgrade-duration-conversions<a class="headerlink" href="#abseil-upgrade-duration-conversions" title="Permalink to this headline">¶</a></h1>
+<p>Finds calls to <code class="docutils literal notranslate"><span class="pre">absl::Duration</span></code> arithmetic operators and factories whose
+argument needs an explicit cast to continue compiling after upcoming API
+changes.</p>
+<p>The operators <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 <code class="docutils literal notranslate"><span class="pre">/</span></code> for <code class="docutils literal notranslate"><span class="pre">absl::Duration</span></code> currently
+accept an argument of class type that is convertible to an arithmetic type. Such
+a call currently converts the value to an <code class="docutils literal notranslate"><span class="pre">int64_t</span></code>, even in a case such as
+<code class="docutils literal notranslate"><span class="pre">std::atomic<float></span></code> that would result in lossy conversion.</p>
+<p>Additionally, the <code class="docutils literal notranslate"><span class="pre">absl::Duration</span></code> factory functions (<code class="docutils literal notranslate"><span class="pre">absl::Hours</span></code>,
+<code class="docutils literal notranslate"><span class="pre">absl::Minutes</span></code>, etc) currently accept an <code class="docutils literal notranslate"><span class="pre">int64_t</span></code> or a floating-point
+type. Similar to the arithmetic operators, calls with an argument of class type
+that is convertible to an arithmetic type go through the <code class="docutils literal notranslate"><span class="pre">int64_t</span></code> path.</p>
+<p>These operators and factories will be changed to only accept arithmetic types to
+prevent unintended behavior. After these changes are released, passing an
+argument of class type will no longer compile, even if the type is implicitly
+convertible to an arithmetic type.</p>
+<p>Here are example fixes created by this check:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="n">std</span><span class="o">::</span><span class="n">atomic</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">absl</span><span class="o">::</span><span class="n">Duration</span> <span class="n">d</span> <span class="o">=</span> <span class="n">absl</span><span class="o">::</span><span class="n">Milliseconds</span><span class="p">(</span><span class="n">a</span><span class="p">);</span>
+<span class="n">d</span> <span class="o">*=</span> <span class="n">a</span><span class="p">;</span>
+</pre></div>
+</div>
+<p>becomes</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="n">std</span><span class="o">::</span><span class="n">atomic</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">absl</span><span class="o">::</span><span class="n">Duration</span> <span class="n">d</span> <span class="o">=</span> <span class="n">absl</span><span class="o">::</span><span class="n">Milliseconds</span><span class="p">(</span><span class="k">static_cast</span><span class="o"><</span><span class="kt">int64_t</span><span class="o">></span><span class="p">(</span><span class="n">a</span><span class="p">));</span>
+<span class="n">d</span> <span class="o">*=</span> <span class="k">static_cast</span><span class="o"><</span><span class="kt">int64_t</span><span class="o">></span><span class="p">(</span><span class="n">a</span><span class="p">);</span>
+</pre></div>
+</div>
+<p>Note that this check always adds a cast to <code class="docutils literal notranslate"><span class="pre">int64_t</span></code> in order to preserve the
+current behavior of user code. It is possible that this uncovers unintended
+behavior due to types implicitly convertible to a floating-point type.</p>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="abseil-time-subtraction.html">abseil-time-subtraction</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="android-cloexec-accept.html">android-cloexec-accept</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/android-cloexec-accept.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/android-cloexec-accept.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/android-cloexec-accept.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/android-cloexec-accept.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,75 @@
+
+<!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 - android-cloexec-accept — 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="android-cloexec-accept4" href="android-cloexec-accept4.html" />
+    <link rel="prev" title="abseil-upgrade-duration-conversions" href="abseil-upgrade-duration-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 - android-cloexec-accept</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="abseil-upgrade-duration-conversions.html">abseil-upgrade-duration-conversions</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="android-cloexec-accept4.html">android-cloexec-accept4</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="android-cloexec-accept">
+<h1>android-cloexec-accept<a class="headerlink" href="#android-cloexec-accept" title="Permalink to this headline">¶</a></h1>
+<p>The usage of <code class="docutils literal notranslate"><span class="pre">accept()</span></code> is not recommended, it’s better to use <code class="docutils literal notranslate"><span class="pre">accept4()</span></code>.
+Without this flag, an opened sensitive file descriptor would remain open across
+a fork+exec to a lower-privileged SELinux domain.</p>
+<p>Examples:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="n">accept</span><span class="p">(</span><span class="n">sockfd</span><span class="p">,</span> <span class="n">addr</span><span class="p">,</span> <span class="n">addrlen</span><span class="p">);</span>
+
+<span class="c1">// becomes</span>
+
+<span class="n">accept4</span><span class="p">(</span><span class="n">sockfd</span><span class="p">,</span> <span class="n">addr</span><span class="p">,</span> <span class="n">addrlen</span><span class="p">,</span> <span class="n">SOCK_CLOEXEC</span><span class="p">);</span>
+</pre></div>
+</div>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="abseil-upgrade-duration-conversions.html">abseil-upgrade-duration-conversions</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="android-cloexec-accept4.html">android-cloexec-accept4</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/android-cloexec-accept4.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/android-cloexec-accept4.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/android-cloexec-accept4.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/android-cloexec-accept4.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,75 @@
+
+<!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 - android-cloexec-accept4 — 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="android-cloexec-creat" href="android-cloexec-creat.html" />
+    <link rel="prev" title="android-cloexec-accept" href="android-cloexec-accept.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 - android-cloexec-accept4</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="android-cloexec-accept.html">android-cloexec-accept</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="android-cloexec-creat.html">android-cloexec-creat</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="android-cloexec-accept4">
+<h1>android-cloexec-accept4<a class="headerlink" href="#android-cloexec-accept4" title="Permalink to this headline">¶</a></h1>
+<p><code class="docutils literal notranslate"><span class="pre">accept4()</span></code> should include <code class="docutils literal notranslate"><span class="pre">SOCK_CLOEXEC</span></code> in its type argument to avoid the
+file descriptor leakage. Without this flag, an opened sensitive file would
+remain open across a fork+exec to a lower-privileged SELinux domain.</p>
+<p>Examples:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="n">accept4</span><span class="p">(</span><span class="n">sockfd</span><span class="p">,</span> <span class="n">addr</span><span class="p">,</span> <span class="n">addrlen</span><span class="p">,</span> <span class="n">SOCK_NONBLOCK</span><span class="p">);</span>
+
+<span class="c1">// becomes</span>
+
+<span class="n">accept4</span><span class="p">(</span><span class="n">sockfd</span><span class="p">,</span> <span class="n">addr</span><span class="p">,</span> <span class="n">addrlen</span><span class="p">,</span> <span class="n">SOCK_NONBLOCK</span> <span class="o">|</span> <span class="n">SOCK_CLOEXEC</span><span class="p">);</span>
+</pre></div>
+</div>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="android-cloexec-accept.html">android-cloexec-accept</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="android-cloexec-creat.html">android-cloexec-creat</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/android-cloexec-creat.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/android-cloexec-creat.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/android-cloexec-creat.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/android-cloexec-creat.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 - android-cloexec-creat — 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="android-cloexec-dup" href="android-cloexec-dup.html" />
+    <link rel="prev" title="android-cloexec-accept4" href="android-cloexec-accept4.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 - android-cloexec-creat</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="android-cloexec-accept4.html">android-cloexec-accept4</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="android-cloexec-dup.html">android-cloexec-dup</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="android-cloexec-creat">
+<h1>android-cloexec-creat<a class="headerlink" href="#android-cloexec-creat" title="Permalink to this headline">¶</a></h1>
+<p>The usage of <code class="docutils literal notranslate"><span class="pre">creat()</span></code> is not recommended, it’s better to use <code class="docutils literal notranslate"><span class="pre">open()</span></code>.</p>
+<p>Examples:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="kt">int</span> <span class="n">fd</span> <span class="o">=</span> <span class="n">creat</span><span class="p">(</span><span class="n">path</span><span class="p">,</span> <span class="n">mode</span><span class="p">);</span>
+
+<span class="c1">// becomes</span>
+
+<span class="kt">int</span> <span class="n">fd</span> <span class="o">=</span> <span class="n">open</span><span class="p">(</span><span class="n">path</span><span class="p">,</span> <span class="n">O_WRONLY</span> <span class="o">|</span> <span class="n">O_CREAT</span> <span class="o">|</span> <span class="n">O_TRUNC</span> <span class="o">|</span> <span class="n">O_CLOEXEC</span><span class="p">,</span> <span class="n">mode</span><span class="p">);</span>
+</pre></div>
+</div>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="android-cloexec-accept4.html">android-cloexec-accept4</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="android-cloexec-dup.html">android-cloexec-dup</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/android-cloexec-dup.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/android-cloexec-dup.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/android-cloexec-dup.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/android-cloexec-dup.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,75 @@
+
+<!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 - android-cloexec-dup — 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="android-cloexec-epoll-create" href="android-cloexec-epoll-create.html" />
+    <link rel="prev" title="android-cloexec-creat" href="android-cloexec-creat.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 - android-cloexec-dup</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="android-cloexec-creat.html">android-cloexec-creat</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="android-cloexec-epoll-create.html">android-cloexec-epoll-create</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="android-cloexec-dup">
+<h1>android-cloexec-dup<a class="headerlink" href="#android-cloexec-dup" title="Permalink to this headline">¶</a></h1>
+<p>The usage of <code class="docutils literal notranslate"><span class="pre">dup()</span></code> is not recommended, it’s better to use <code class="docutils literal notranslate"><span class="pre">fcntl()</span></code>,
+which can set the close-on-exec flag. Otherwise, an opened sensitive file would
+remain open across a fork+exec to a lower-privileged SELinux domain.</p>
+<p>Examples:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="kt">int</span> <span class="n">fd</span> <span class="o">=</span> <span class="n">dup</span><span class="p">(</span><span class="n">oldfd</span><span class="p">);</span>
+
+<span class="c1">// becomes</span>
+
+<span class="kt">int</span> <span class="n">fd</span> <span class="o">=</span> <span class="n">fcntl</span><span class="p">(</span><span class="n">oldfd</span><span class="p">,</span> <span class="n">F_DUPFD_CLOEXEC</span><span class="p">);</span>
+</pre></div>
+</div>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="android-cloexec-creat.html">android-cloexec-creat</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="android-cloexec-epoll-create.html">android-cloexec-epoll-create</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/android-cloexec-epoll-create.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/android-cloexec-epoll-create.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/android-cloexec-epoll-create.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/android-cloexec-epoll-create.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 - android-cloexec-epoll-create — 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="android-cloexec-epoll-create1" href="android-cloexec-epoll-create1.html" />
+    <link rel="prev" title="android-cloexec-dup" href="android-cloexec-dup.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 - android-cloexec-epoll-create</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="android-cloexec-dup.html">android-cloexec-dup</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="android-cloexec-epoll-create1.html">android-cloexec-epoll-create1</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="android-cloexec-epoll-create">
+<h1>android-cloexec-epoll-create<a class="headerlink" href="#android-cloexec-epoll-create" title="Permalink to this headline">¶</a></h1>
+<p>The usage of <code class="docutils literal notranslate"><span class="pre">epoll_create()</span></code> is not recommended, it’s better to use
+<code class="docutils literal notranslate"><span class="pre">epoll_create1()</span></code>, which allows close-on-exec.</p>
+<p>Examples:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="n">epoll_create</span><span class="p">(</span><span class="n">size</span><span class="p">);</span>
+
+<span class="c1">// becomes</span>
+
+<span class="n">epoll_create1</span><span class="p">(</span><span class="n">EPOLL_CLOEXEC</span><span class="p">);</span>
+</pre></div>
+</div>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="android-cloexec-dup.html">android-cloexec-dup</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="android-cloexec-epoll-create1.html">android-cloexec-epoll-create1</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/android-cloexec-epoll-create1.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/android-cloexec-epoll-create1.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/android-cloexec-epoll-create1.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/android-cloexec-epoll-create1.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,75 @@
+
+<!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 - android-cloexec-epoll-create1 — 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="android-cloexec-fopen" href="android-cloexec-fopen.html" />
+    <link rel="prev" title="android-cloexec-epoll-create" href="android-cloexec-epoll-create.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 - android-cloexec-epoll-create1</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="android-cloexec-epoll-create.html">android-cloexec-epoll-create</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="android-cloexec-fopen.html">android-cloexec-fopen</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="android-cloexec-epoll-create1">
+<h1>android-cloexec-epoll-create1<a class="headerlink" href="#android-cloexec-epoll-create1" title="Permalink to this headline">¶</a></h1>
+<p><code class="docutils literal notranslate"><span class="pre">epoll_create1()</span></code> should include <code class="docutils literal notranslate"><span class="pre">EPOLL_CLOEXEC</span></code> in its type argument to
+avoid the file descriptor leakage. Without this flag, an opened sensitive file
+would remain open across a fork+exec to a lower-privileged SELinux domain.</p>
+<p>Examples:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="n">epoll_create1</span><span class="p">(</span><span class="mi">0</span><span class="p">);</span>
+
+<span class="c1">// becomes</span>
+
+<span class="n">epoll_create1</span><span class="p">(</span><span class="n">EPOLL_CLOEXEC</span><span class="p">);</span>
+</pre></div>
+</div>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="android-cloexec-epoll-create.html">android-cloexec-epoll-create</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="android-cloexec-fopen.html">android-cloexec-fopen</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/android-cloexec-fopen.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/android-cloexec-fopen.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/android-cloexec-fopen.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/android-cloexec-fopen.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 - android-cloexec-fopen — 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="android-cloexec-inotify-init" href="android-cloexec-inotify-init.html" />
+    <link rel="prev" title="android-cloexec-epoll-create1" href="android-cloexec-epoll-create1.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 - android-cloexec-fopen</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="android-cloexec-epoll-create1.html">android-cloexec-epoll-create1</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="android-cloexec-inotify-init.html">android-cloexec-inotify-init</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="android-cloexec-fopen">
+<h1>android-cloexec-fopen<a class="headerlink" href="#android-cloexec-fopen" title="Permalink to this headline">¶</a></h1>
+<p><code class="docutils literal notranslate"><span class="pre">fopen()</span></code> should include <code class="docutils literal notranslate"><span class="pre">e</span></code> in their mode string; so <code class="docutils literal notranslate"><span class="pre">re</span></code> would be
+valid. This is equivalent to having set <code class="docutils literal notranslate"><span class="pre">FD_CLOEXEC</span> <span class="pre">on</span></code> that descriptor.</p>
+<p>Examples:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="n">fopen</span><span class="p">(</span><span class="s">"fn"</span><span class="p">,</span> <span class="s">"r"</span><span class="p">);</span>
+
+<span class="c1">// becomes</span>
+
+<span class="n">fopen</span><span class="p">(</span><span class="s">"fn"</span><span class="p">,</span> <span class="s">"re"</span><span class="p">);</span>
+</pre></div>
+</div>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="android-cloexec-epoll-create1.html">android-cloexec-epoll-create1</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="android-cloexec-inotify-init.html">android-cloexec-inotify-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/android-cloexec-inotify-init.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/android-cloexec-inotify-init.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/android-cloexec-inotify-init.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/android-cloexec-inotify-init.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 - android-cloexec-inotify-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="android-cloexec-inotify-init1" href="android-cloexec-inotify-init1.html" />
+    <link rel="prev" title="android-cloexec-fopen" href="android-cloexec-fopen.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 - android-cloexec-inotify-init</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="android-cloexec-fopen.html">android-cloexec-fopen</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="android-cloexec-inotify-init1.html">android-cloexec-inotify-init1</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="android-cloexec-inotify-init">
+<h1>android-cloexec-inotify-init<a class="headerlink" href="#android-cloexec-inotify-init" title="Permalink to this headline">¶</a></h1>
+<p>The usage of <code class="docutils literal notranslate"><span class="pre">inotify_init()</span></code> is not recommended, it’s better to use
+<code class="docutils literal notranslate"><span class="pre">inotify_init1()</span></code>.</p>
+<p>Examples:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="n">inotify_init</span><span class="p">();</span>
+
+<span class="c1">// becomes</span>
+
+<span class="n">inotify_init1</span><span class="p">(</span><span class="n">IN_CLOEXEC</span><span class="p">);</span>
+</pre></div>
+</div>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="android-cloexec-fopen.html">android-cloexec-fopen</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="android-cloexec-inotify-init1.html">android-cloexec-inotify-init1</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/android-cloexec-inotify-init1.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/android-cloexec-inotify-init1.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/android-cloexec-inotify-init1.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/android-cloexec-inotify-init1.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,75 @@
+
+<!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 - android-cloexec-inotify-init1 — 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="android-cloexec-memfd-create" href="android-cloexec-memfd-create.html" />
+    <link rel="prev" title="android-cloexec-inotify-init" href="android-cloexec-inotify-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 - android-cloexec-inotify-init1</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="android-cloexec-inotify-init.html">android-cloexec-inotify-init</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="android-cloexec-memfd-create.html">android-cloexec-memfd-create</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="android-cloexec-inotify-init1">
+<h1>android-cloexec-inotify-init1<a class="headerlink" href="#android-cloexec-inotify-init1" title="Permalink to this headline">¶</a></h1>
+<p><code class="docutils literal notranslate"><span class="pre">inotify_init1()</span></code> should include <code class="docutils literal notranslate"><span class="pre">IN_CLOEXEC</span></code> in its type argument to avoid the
+file descriptor leakage. Without this flag, an opened sensitive file would
+remain open across a fork+exec to a lower-privileged SELinux domain.</p>
+<p>Examples:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="n">inotify_init1</span><span class="p">(</span><span class="n">IN_NONBLOCK</span><span class="p">);</span>
+
+<span class="c1">// becomes</span>
+
+<span class="n">inotify_init1</span><span class="p">(</span><span class="n">IN_NONBLOCK</span> <span class="o">|</span> <span class="n">IN_CLOEXEC</span><span class="p">);</span>
+</pre></div>
+</div>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="android-cloexec-inotify-init.html">android-cloexec-inotify-init</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="android-cloexec-memfd-create.html">android-cloexec-memfd-create</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/android-cloexec-memfd-create.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/android-cloexec-memfd-create.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/android-cloexec-memfd-create.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/android-cloexec-memfd-create.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,75 @@
+
+<!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 - android-cloexec-memfd-create — 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="android-cloexec-open" href="android-cloexec-open.html" />
+    <link rel="prev" title="android-cloexec-inotify-init1" href="android-cloexec-inotify-init1.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 - android-cloexec-memfd-create</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="android-cloexec-inotify-init1.html">android-cloexec-inotify-init1</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="android-cloexec-open.html">android-cloexec-open</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="android-cloexec-memfd-create">
+<h1>android-cloexec-memfd-create<a class="headerlink" href="#android-cloexec-memfd-create" title="Permalink to this headline">¶</a></h1>
+<p><code class="docutils literal notranslate"><span class="pre">memfd_create()</span></code> should include <code class="docutils literal notranslate"><span class="pre">MFD_CLOEXEC</span></code> in its type argument to avoid
+the file descriptor leakage. Without this flag, an opened sensitive file would
+remain open across a fork+exec to a lower-privileged SELinux domain.</p>
+<p>Examples:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="n">memfd_create</span><span class="p">(</span><span class="n">name</span><span class="p">,</span> <span class="n">MFD_ALLOW_SEALING</span><span class="p">);</span>
+
+<span class="c1">// becomes</span>
+
+<span class="n">memfd_create</span><span class="p">(</span><span class="n">name</span><span class="p">,</span> <span class="n">MFD_ALLOW_SEALING</span> <span class="o">|</span> <span class="n">MFD_CLOEXEC</span><span class="p">);</span>
+</pre></div>
+</div>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="android-cloexec-inotify-init1.html">android-cloexec-inotify-init1</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="android-cloexec-open.html">android-cloexec-open</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/android-cloexec-open.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/android-cloexec-open.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/android-cloexec-open.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/android-cloexec-open.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 - android-cloexec-open — 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="android-cloexec-pipe" href="android-cloexec-pipe.html" />
+    <link rel="prev" title="android-cloexec-memfd-create" href="android-cloexec-memfd-create.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 - android-cloexec-open</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="android-cloexec-memfd-create.html">android-cloexec-memfd-create</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="android-cloexec-pipe.html">android-cloexec-pipe</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="android-cloexec-open">
+<h1>android-cloexec-open<a class="headerlink" href="#android-cloexec-open" title="Permalink to this headline">¶</a></h1>
+<p>A common source of security bugs is code that opens a file without using the
+<code class="docutils literal notranslate"><span class="pre">O_CLOEXEC</span></code> flag.  Without that flag, an opened sensitive file would remain
+open across a fork+exec to a lower-privileged SELinux domain, leaking that
+sensitive data. Open-like functions including <code class="docutils literal notranslate"><span class="pre">open()</span></code>, <code class="docutils literal notranslate"><span class="pre">openat()</span></code>, and
+<code class="docutils literal notranslate"><span class="pre">open64()</span></code> should include <code class="docutils literal notranslate"><span class="pre">O_CLOEXEC</span></code> in their flags argument.</p>
+<p>Examples:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="n">open</span><span class="p">(</span><span class="s">"filename"</span><span class="p">,</span> <span class="n">O_RDWR</span><span class="p">);</span>
+<span class="n">open64</span><span class="p">(</span><span class="s">"filename"</span><span class="p">,</span> <span class="n">O_RDWR</span><span class="p">);</span>
+<span class="n">openat</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="s">"filename"</span><span class="p">,</span> <span class="n">O_RDWR</span><span class="p">);</span>
+
+<span class="c1">// becomes</span>
+
+<span class="n">open</span><span class="p">(</span><span class="s">"filename"</span><span class="p">,</span> <span class="n">O_RDWR</span> <span class="o">|</span> <span class="n">O_CLOEXEC</span><span class="p">);</span>
+<span class="n">open64</span><span class="p">(</span><span class="s">"filename"</span><span class="p">,</span> <span class="n">O_RDWR</span> <span class="o">|</span> <span class="n">O_CLOEXEC</span><span class="p">);</span>
+<span class="n">openat</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="s">"filename"</span><span class="p">,</span> <span class="n">O_RDWR</span> <span class="o">|</span> <span class="n">O_CLOEXEC</span><span class="p">);</span>
+</pre></div>
+</div>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="android-cloexec-memfd-create.html">android-cloexec-memfd-create</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="android-cloexec-pipe.html">android-cloexec-pipe</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/android-cloexec-pipe.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/android-cloexec-pipe.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/android-cloexec-pipe.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/android-cloexec-pipe.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" />
+    <title>clang-tidy - android-cloexec-pipe — 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="android-cloexec-pipe2" href="android-cloexec-pipe2.html" />
+    <link rel="prev" title="android-cloexec-open" href="android-cloexec-open.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 - android-cloexec-pipe</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="android-cloexec-open.html">android-cloexec-open</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="android-cloexec-pipe2.html">android-cloexec-pipe2</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="android-cloexec-pipe">
+<h1>android-cloexec-pipe<a class="headerlink" href="#android-cloexec-pipe" title="Permalink to this headline">¶</a></h1>
+<p>This check detects usage of <code class="docutils literal notranslate"><span class="pre">pipe()</span></code>. Using <code class="docutils literal notranslate"><span class="pre">pipe()</span></code> is not recommended, <code class="docutils literal notranslate"><span class="pre">pipe2()</span></code> is the
+suggested replacement. The check also adds the O_CLOEXEC flag that marks the file descriptor to
+be closed in child processes. Without this flag a sensitive file descriptor can be leaked to a
+child process, potentially into a lower-privileged SELinux domain.</p>
+<p>Examples:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="n">pipe</span><span class="p">(</span><span class="n">pipefd</span><span class="p">);</span>
+</pre></div>
+</div>
+<p>Suggested replacement:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="n">pipe2</span><span class="p">(</span><span class="n">pipefd</span><span class="p">,</span> <span class="n">O_CLOEXEC</span><span class="p">);</span>
+</pre></div>
+</div>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="android-cloexec-open.html">android-cloexec-open</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="android-cloexec-pipe2.html">android-cloexec-pipe2</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/android-cloexec-pipe2.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/android-cloexec-pipe2.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/android-cloexec-pipe2.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/android-cloexec-pipe2.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" />
+    <title>clang-tidy - android-cloexec-pipe2 — 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="android-cloexec-socket" href="android-cloexec-socket.html" />
+    <link rel="prev" title="android-cloexec-pipe" href="android-cloexec-pipe.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 - android-cloexec-pipe2</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="android-cloexec-pipe.html">android-cloexec-pipe</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="android-cloexec-socket.html">android-cloexec-socket</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="android-cloexec-pipe2">
+<h1>android-cloexec-pipe2<a class="headerlink" href="#android-cloexec-pipe2" title="Permalink to this headline">¶</a></h1>
+<p>This checks ensures that pipe2() is called with the O_CLOEXEC flag. The check also
+adds the O_CLOEXEC flag that marks the file descriptor to be closed in child processes.
+Without this flag a sensitive file descriptor can be leaked to a child process,
+potentially into a lower-privileged SELinux domain.</p>
+<p>Examples:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="n">pipe2</span><span class="p">(</span><span class="n">pipefd</span><span class="p">,</span> <span class="n">O_NONBLOCK</span><span class="p">);</span>
+</pre></div>
+</div>
+<p>Suggested replacement:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="n">pipe2</span><span class="p">(</span><span class="n">pipefd</span><span class="p">,</span> <span class="n">O_NONBLOCK</span> <span class="o">|</span> <span class="n">O_CLOEXEC</span><span class="p">);</span>
+</pre></div>
+</div>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="android-cloexec-pipe.html">android-cloexec-pipe</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="android-cloexec-socket.html">android-cloexec-socket</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/android-cloexec-socket.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/android-cloexec-socket.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/android-cloexec-socket.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/android-cloexec-socket.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,75 @@
+
+<!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 - android-cloexec-socket — 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="android-comparison-in-temp-failure-retry" href="android-comparison-in-temp-failure-retry.html" />
+    <link rel="prev" title="android-cloexec-pipe2" href="android-cloexec-pipe2.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 - android-cloexec-socket</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="android-cloexec-pipe2.html">android-cloexec-pipe2</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="android-comparison-in-temp-failure-retry.html">android-comparison-in-temp-failure-retry</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="android-cloexec-socket">
+<h1>android-cloexec-socket<a class="headerlink" href="#android-cloexec-socket" title="Permalink to this headline">¶</a></h1>
+<p><code class="docutils literal notranslate"><span class="pre">socket()</span></code> should include <code class="docutils literal notranslate"><span class="pre">SOCK_CLOEXEC</span></code> in its type argument to avoid the
+file descriptor leakage. Without this flag, an opened sensitive file would
+remain open across a fork+exec to a lower-privileged SELinux domain.</p>
+<p>Examples:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="n">socket</span><span class="p">(</span><span class="n">domain</span><span class="p">,</span> <span class="n">type</span><span class="p">,</span> <span class="n">SOCK_STREAM</span><span class="p">);</span>
+
+<span class="c1">// becomes</span>
+
+<span class="n">socket</span><span class="p">(</span><span class="n">domain</span><span class="p">,</span> <span class="n">type</span><span class="p">,</span> <span class="n">SOCK_STREAM</span> <span class="o">|</span> <span class="n">SOCK_CLOEXEC</span><span class="p">);</span>
+</pre></div>
+</div>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="android-cloexec-pipe2.html">android-cloexec-pipe2</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="android-comparison-in-temp-failure-retry.html">android-comparison-in-temp-failure-retry</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/android-comparison-in-temp-failure-retry.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/android-comparison-in-temp-failure-retry.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/android-comparison-in-temp-failure-retry.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/android-comparison-in-temp-failure-retry.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 - android-comparison-in-temp-failure-retry — 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="boost-use-to-string" href="boost-use-to-string.html" />
+    <link rel="prev" title="android-cloexec-socket" href="android-cloexec-socket.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 - android-comparison-in-temp-failure-retry</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="android-cloexec-socket.html">android-cloexec-socket</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="boost-use-to-string.html">boost-use-to-string</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="android-comparison-in-temp-failure-retry">
+<h1>android-comparison-in-temp-failure-retry<a class="headerlink" href="#android-comparison-in-temp-failure-retry" title="Permalink to this headline">¶</a></h1>
+<p>Diagnoses comparisons that appear to be incorrectly placed in the argument to
+the <code class="docutils literal notranslate"><span class="pre">TEMP_FAILURE_RETRY</span></code> macro. Having such a use is incorrect in the vast
+majority of cases, and will often silently defeat the purpose of the
+<code class="docutils literal notranslate"><span class="pre">TEMP_FAILURE_RETRY</span></code> macro.</p>
+<p>For context, <code class="docutils literal notranslate"><span class="pre">TEMP_FAILURE_RETRY</span></code> is <a class="reference external" href="https://www.gnu.org/software/libc/manual/html_node/Interrupted-Primitives.html">a convenience macro</a>
+provided by both glibc and Bionic. Its purpose is to repeatedly run a syscall
+until it either succeeds, or fails for reasons other than being interrupted.</p>
+<p>Example buggy usage looks like:</p>
+<div class="highlight-c notranslate"><div class="highlight"><pre><span></span><span class="kt">char</span> <span class="n">cs</span><span class="p">[</span><span class="mi">1</span><span class="p">];</span>
+<span class="k">while</span> <span class="p">(</span><span class="n">TEMP_FAILURE_RETRY</span><span class="p">(</span><span class="n">read</span><span class="p">(</span><span class="n">STDIN_FILENO</span><span class="p">,</span> <span class="n">cs</span><span class="p">,</span> <span class="k">sizeof</span><span class="p">(</span><span class="n">cs</span><span class="p">))</span> <span class="o">!=</span> <span class="mi">0</span><span class="p">))</span> <span class="p">{</span>
+  <span class="c1">// Do something with cs.</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+<p>Because TEMP_FAILURE_RETRY will check for whether the result <em>of the comparison</em>
+is <code class="docutils literal notranslate"><span class="pre">-1</span></code>, and retry if so.</p>
+<p>If you encounter this, the fix is simple: lift the comparison out of the
+<code class="docutils literal notranslate"><span class="pre">TEMP_FAILURE_RETRY</span></code> argument, like so:</p>
+<div class="highlight-c notranslate"><div class="highlight"><pre><span></span><span class="kt">char</span> <span class="n">cs</span><span class="p">[</span><span class="mi">1</span><span class="p">];</span>
+<span class="k">while</span> <span class="p">(</span><span class="n">TEMP_FAILURE_RETRY</span><span class="p">(</span><span class="n">read</span><span class="p">(</span><span class="n">STDIN_FILENO</span><span class="p">,</span> <span class="n">cs</span><span class="p">,</span> <span class="k">sizeof</span><span class="p">(</span><span class="n">cs</span><span class="p">)))</span> <span class="o">!=</span> <span class="mi">0</span><span class="p">)</span> <span class="p">{</span>
+  <span class="c1">// Do something with cs.</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="android-cloexec-socket.html">android-cloexec-socket</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="boost-use-to-string.html">boost-use-to-string</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/boost-use-to-string.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/boost-use-to-string.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/boost-use-to-string.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/boost-use-to-string.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 - boost-use-to-string — 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="bugprone-argument-comment" href="bugprone-argument-comment.html" />
+    <link rel="prev" title="android-comparison-in-temp-failure-retry" href="android-comparison-in-temp-failure-retry.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 - boost-use-to-string</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="android-comparison-in-temp-failure-retry.html">android-comparison-in-temp-failure-retry</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="bugprone-argument-comment.html">bugprone-argument-comment</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="boost-use-to-string">
+<h1>boost-use-to-string<a class="headerlink" href="#boost-use-to-string" title="Permalink to this headline">¶</a></h1>
+<p>This check finds conversion from integer type like <code class="docutils literal notranslate"><span class="pre">int</span></code> to <code class="docutils literal notranslate"><span class="pre">std::string</span></code> or
+<code class="docutils literal notranslate"><span class="pre">std::wstring</span></code> using <code class="docutils literal notranslate"><span class="pre">boost::lexical_cast</span></code>, and replace it with calls to
+<code class="docutils literal notranslate"><span class="pre">std::to_string</span></code> and <code class="docutils literal notranslate"><span class="pre">std::to_wstring</span></code>.</p>
+<p>It doesn’t replace conversion from floating points despite the <code class="docutils literal notranslate"><span class="pre">to_string</span></code>
+overloads, because it would change the behaviour.</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">auto</span> <span class="n">str</span> <span class="o">=</span> <span class="n">boost</span><span class="o">::</span><span class="n">lexical_cast</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="p">(</span><span class="mi">42</span><span class="p">);</span>
+<span class="k">auto</span> <span class="n">wstr</span> <span class="o">=</span> <span class="n">boost</span><span class="o">::</span><span class="n">lexical_cast</span><span class="o"><</span><span class="n">std</span><span class="o">::</span><span class="n">wstring</span><span class="o">></span><span class="p">(</span><span class="mi">2137LL</span><span class="p">);</span>
+
+<span class="c1">// Will be changed to</span>
+<span class="k">auto</span> <span class="n">str</span> <span class="o">=</span> <span class="n">std</span><span class="o">::</span><span class="n">to_string</span><span class="p">(</span><span class="mi">42</span><span class="p">);</span>
+<span class="k">auto</span> <span class="n">wstr</span> <span class="o">=</span> <span class="n">std</span><span class="o">::</span><span class="n">to_wstring</span><span class="p">(</span><span class="mi">2137LL</span><span class="p">);</span>
+</pre></div>
+</div>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="android-comparison-in-temp-failure-retry.html">android-comparison-in-temp-failure-retry</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="bugprone-argument-comment.html">bugprone-argument-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/bugprone-argument-comment.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-argument-comment.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-argument-comment.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-argument-comment.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,228 @@
+
+<!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 - bugprone-argument-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="bugprone-assert-side-effect" href="bugprone-assert-side-effect.html" />
+    <link rel="prev" title="boost-use-to-string" href="boost-use-to-string.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 - bugprone-argument-comment</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="boost-use-to-string.html">boost-use-to-string</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="bugprone-assert-side-effect.html">bugprone-assert-side-effect</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="bugprone-argument-comment">
+<h1>bugprone-argument-comment<a class="headerlink" href="#bugprone-argument-comment" title="Permalink to this headline">¶</a></h1>
+<p>Checks that argument comments match parameter names.</p>
+<p>The check understands argument comments in the form <code class="docutils literal notranslate"><span class="pre">/*parameter_name=*/</span></code>
+that are placed right before the argument.</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">bool</span> <span class="n">foo</span><span class="p">);</span>
+
+<span class="p">...</span>
+
+<span class="n">f</span><span class="p">(</span><span class="cm">/*bar=*/</span><span class="nb">true</span><span class="p">);</span>
+<span class="c1">// warning: argument name 'bar' in comment does not match parameter name 'foo'</span>
+</pre></div>
+</div>
+<p>The check tries to detect typos and suggest automated fixes for them.</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-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 leading and trailing
+underscores and case when comparing names – otherwise they are taken into
+account.</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-commentboolliterals">
+<code class="descname">CommentBoolLiterals</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-commentboolliterals" title="Permalink to this definition">¶</a></dt>
+<dd><p>When true, the check will add argument comments in the format
+<code class="docutils literal notranslate"><span class="pre">/*ParameterName=*/</span></code> right before the boolean literal argument.</p>
+</dd></dl>
+
+<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="kt">bool</span> <span class="n">TurnKey</span><span class="p">,</span> <span class="kt">bool</span> <span class="n">PressButton</span><span class="p">);</span>
+
+<span class="n">foo</span><span class="p">(</span><span class="nb">true</span><span class="p">,</span> <span class="nb">false</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="kt">bool</span> <span class="n">TurnKey</span><span class="p">,</span> <span class="kt">bool</span> <span class="n">PressButton</span><span class="p">);</span>
+
+<span class="n">foo</span><span class="p">(</span><span class="cm">/*TurnKey=*/</span><span class="nb">true</span><span class="p">,</span> <span class="cm">/*PressButton=*/</span><span class="nb">false</span><span class="p">);</span>
+</pre></div>
+</div>
+<dl class="option">
+<dt id="cmdoption-arg-commentintegerliterals">
+<code class="descname">CommentIntegerLiterals</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-commentintegerliterals" title="Permalink to this definition">¶</a></dt>
+<dd><p>When true, the check will add argument comments in the format
+<code class="docutils literal notranslate"><span class="pre">/*ParameterName=*/</span></code> right before the integer literal argument.</p>
+</dd></dl>
+
+<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="kt">int</span> <span class="n">MeaningOfLife</span><span class="p">);</span>
+
+<span class="n">foo</span><span class="p">(</span><span class="mi">42</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="kt">int</span> <span class="n">MeaningOfLife</span><span class="p">);</span>
+
+<span class="n">foo</span><span class="p">(</span><span class="cm">/*MeaningOfLife=*/</span><span class="mi">42</span><span class="p">);</span>
+</pre></div>
+</div>
+<dl class="option">
+<dt id="cmdoption-arg-commentfloatliterals">
+<code class="descname">CommentFloatLiterals</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-commentfloatliterals" title="Permalink to this definition">¶</a></dt>
+<dd><p>When true, the check will add argument comments in the format
+<code class="docutils literal notranslate"><span class="pre">/*ParameterName=*/</span></code> right before the float/double literal argument.</p>
+</dd></dl>
+
+<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="kt">float</span> <span class="n">Pi</span><span class="p">);</span>
+
+<span class="n">foo</span><span class="p">(</span><span class="mf">3.14159</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="kt">float</span> <span class="n">Pi</span><span class="p">);</span>
+
+<span class="n">foo</span><span class="p">(</span><span class="cm">/*Pi=*/</span><span class="mf">3.14159</span><span class="p">);</span>
+</pre></div>
+</div>
+<dl class="option">
+<dt id="cmdoption-arg-commentstringliterals">
+<code class="descname">CommentStringLiterals</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-commentstringliterals" title="Permalink to this definition">¶</a></dt>
+<dd><p>When true, the check will add argument comments in the format
+<code class="docutils literal notranslate"><span class="pre">/*ParameterName=*/</span></code> right before the string literal argument.</p>
+</dd></dl>
+
+<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="k">const</span> <span class="kt">char</span> <span class="o">*</span><span class="n">String</span><span class="p">);</span>
+<span class="kt">void</span> <span class="nf">foo</span><span class="p">(</span><span class="k">const</span> <span class="kt">wchar_t</span> <span class="o">*</span><span class="n">WideString</span><span class="p">);</span>
+
+<span class="n">foo</span><span class="p">(</span><span class="s">"Hello World"</span><span class="p">);</span>
+<span class="n">foo</span><span class="p">(</span><span class="sa">L</span><span class="s">"Hello World"</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="k">const</span> <span class="kt">char</span> <span class="o">*</span><span class="n">String</span><span class="p">);</span>
+<span class="kt">void</span> <span class="nf">foo</span><span class="p">(</span><span class="k">const</span> <span class="kt">wchar_t</span> <span class="o">*</span><span class="n">WideString</span><span class="p">);</span>
+
+<span class="n">foo</span><span class="p">(</span><span class="cm">/*String=*/</span><span class="s">"Hello World"</span><span class="p">);</span>
+<span class="n">foo</span><span class="p">(</span><span class="cm">/*WideString=*/</span><span class="sa">L</span><span class="s">"Hello World"</span><span class="p">);</span>
+</pre></div>
+</div>
+<dl class="option">
+<dt id="cmdoption-arg-commentcharacterliterals">
+<code class="descname">CommentCharacterLiterals</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-commentcharacterliterals" title="Permalink to this definition">¶</a></dt>
+<dd><p>When true, the check will add argument comments in the format
+<code class="docutils literal notranslate"><span class="pre">/*ParameterName=*/</span></code> right before the character literal argument.</p>
+</dd></dl>
+
+<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="kt">char</span> <span class="o">*</span><span class="n">Character</span><span class="p">);</span>
+
+<span class="n">foo</span><span class="p">(</span><span class="sc">'A'</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="kt">char</span> <span class="o">*</span><span class="n">Character</span><span class="p">);</span>
+
+<span class="n">foo</span><span class="p">(</span><span class="cm">/*Character=*/</span><span class="sc">'A'</span><span class="p">);</span>
+</pre></div>
+</div>
+<dl class="option">
+<dt id="cmdoption-arg-commentuserdefinedliterals">
+<code class="descname">CommentUserDefinedLiterals</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-commentuserdefinedliterals" title="Permalink to this definition">¶</a></dt>
+<dd><p>When true, the check will add argument comments in the format
+<code class="docutils literal notranslate"><span class="pre">/*ParameterName=*/</span></code> right before the user defined literal argument.</p>
+</dd></dl>
+
+<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="kt">double</span> <span class="n">Distance</span><span class="p">);</span>
+
+<span class="kt">double</span> <span class="k">operator</span><span class="s">""</span> <span class="n">_km</span><span class="p">(</span><span class="kt">long</span> <span class="kt">double</span><span class="p">);</span>
+
+<span class="n">foo</span><span class="p">(</span><span class="mf">402.0</span><span class="n">_km</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="kt">double</span> <span class="n">Distance</span><span class="p">);</span>
+
+<span class="kt">double</span> <span class="k">operator</span><span class="s">""</span> <span class="n">_km</span><span class="p">(</span><span class="kt">long</span> <span class="kt">double</span><span class="p">);</span>
+
+<span class="n">foo</span><span class="p">(</span><span class="cm">/*Distance=*/</span><span class="mf">402.0</span><span class="n">_km</span><span class="p">);</span>
+</pre></div>
+</div>
+<dl class="option">
+<dt id="cmdoption-arg-commentnullptrs">
+<code class="descname">CommentNullPtrs</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-commentnullptrs" title="Permalink to this definition">¶</a></dt>
+<dd><p>When true, the check will add argument comments in the format
+<code class="docutils literal notranslate"><span class="pre">/*ParameterName=*/</span></code> right before the nullptr literal argument.</p>
+</dd></dl>
+
+<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="n">A</span><span class="o">*</span> <span class="n">Value</span><span class="p">);</span>
+
+<span class="n">foo</span><span class="p">(</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">void</span> <span class="nf">foo</span><span class="p">(</span><span class="n">A</span><span class="o">*</span> <span class="n">Value</span><span class="p">);</span>
+
+<span class="n">foo</span><span class="p">(</span><span class="cm">/*Value=*/</span><span class="k">nullptr</span><span class="p">);</span>
+</pre></div>
+</div>
+</div>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="boost-use-to-string.html">boost-use-to-string</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="bugprone-assert-side-effect.html">bugprone-assert-side-effect</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/bugprone-assert-side-effect.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-assert-side-effect.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-assert-side-effect.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-assert-side-effect.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 - bugprone-assert-side-effect — 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="bugprone-bool-pointer-implicit-conversion" href="bugprone-bool-pointer-implicit-conversion.html" />
+    <link rel="prev" title="bugprone-argument-comment" href="bugprone-argument-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 - bugprone-assert-side-effect</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="bugprone-argument-comment.html">bugprone-argument-comment</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="bugprone-bool-pointer-implicit-conversion.html">bugprone-bool-pointer-implicit-conversion</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="bugprone-assert-side-effect">
+<h1>bugprone-assert-side-effect<a class="headerlink" href="#bugprone-assert-side-effect" title="Permalink to this headline">¶</a></h1>
+<p>Finds <code class="docutils literal notranslate"><span class="pre">assert()</span></code> with side effect.</p>
+<p>The condition of <code class="docutils literal notranslate"><span class="pre">assert()</span></code> is evaluated only in debug builds so a
+condition with side effect can cause different behavior in debug / release
+builds.</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-assertmacros">
+<code class="descname">AssertMacros</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-assertmacros" title="Permalink to this definition">¶</a></dt>
+<dd><p>A comma-separated list of the names of assert macros to be checked.</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-checkfunctioncalls">
+<code class="descname">CheckFunctionCalls</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-checkfunctioncalls" title="Permalink to this definition">¶</a></dt>
+<dd><p>Whether to treat non-const member and non-member functions as they produce
+side effects. Disabled by default because it can increase the number of false
+positive warnings.</p>
+</dd></dl>
+
+</div>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="bugprone-argument-comment.html">bugprone-argument-comment</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="bugprone-bool-pointer-implicit-conversion.html">bugprone-bool-pointer-implicit-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/bugprone-bool-pointer-implicit-conversion.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-bool-pointer-implicit-conversion.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-bool-pointer-implicit-conversion.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-bool-pointer-implicit-conversion.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 - bugprone-bool-pointer-implicit-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="bugprone-branch-clone" href="bugprone-branch-clone.html" />
+    <link rel="prev" title="bugprone-assert-side-effect" href="bugprone-assert-side-effect.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 - bugprone-bool-pointer-implicit-conversion</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="bugprone-assert-side-effect.html">bugprone-assert-side-effect</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="bugprone-branch-clone.html">bugprone-branch-clone</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="bugprone-bool-pointer-implicit-conversion">
+<h1>bugprone-bool-pointer-implicit-conversion<a class="headerlink" href="#bugprone-bool-pointer-implicit-conversion" title="Permalink to this headline">¶</a></h1>
+<p>Checks for conditions based on implicit conversion from a <code class="docutils literal notranslate"><span class="pre">bool</span></code> pointer to
+<code class="docutils literal notranslate"><span class="pre">bool</span></code>.</p>
+<p>Example:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="kt">bool</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="p">{</span>
+  <span class="c1">// Never used in a pointer-specific way.</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="bugprone-assert-side-effect.html">bugprone-assert-side-effect</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="bugprone-branch-clone.html">bugprone-branch-clone</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/bugprone-branch-clone.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-branch-clone.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-branch-clone.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-branch-clone.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,134 @@
+
+<!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 - bugprone-branch-clone — 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="bugprone-copy-constructor-init" href="bugprone-copy-constructor-init.html" />
+    <link rel="prev" title="bugprone-bool-pointer-implicit-conversion" href="bugprone-bool-pointer-implicit-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 - bugprone-branch-clone</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="bugprone-bool-pointer-implicit-conversion.html">bugprone-bool-pointer-implicit-conversion</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="bugprone-copy-constructor-init.html">bugprone-copy-constructor-init</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="bugprone-branch-clone">
+<h1>bugprone-branch-clone<a class="headerlink" href="#bugprone-branch-clone" title="Permalink to this headline">¶</a></h1>
+<p>Checks for repeated branches in <code class="docutils literal notranslate"><span class="pre">if/else</span> <span class="pre">if/else</span></code> chains, consecutive
+repeated branches in <code class="docutils literal notranslate"><span class="pre">switch</span></code> statements and indentical true and false
+branches in conditional operators.</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">if</span> <span class="p">(</span><span class="n">test_value</span><span class="p">(</span><span class="n">x</span><span class="p">))</span> <span class="p">{</span>
+  <span class="n">y</span><span class="o">++</span><span class="p">;</span>
+  <span class="n">do_something</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="p">}</span> <span class="k">else</span> <span class="p">{</span>
+  <span class="n">y</span><span class="o">++</span><span class="p">;</span>
+  <span class="n">do_something</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="p">}</span>
+</pre></div>
+</div>
+<p>In this simple example (which could arise e.g. as a copy-paste error) the
+<code class="docutils literal notranslate"><span class="pre">then</span></code> and <code class="docutils literal notranslate"><span class="pre">else</span></code> branches are identical and the code is equivalent the
+following shorter and cleaner code:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="n">test_value</span><span class="p">(</span><span class="n">x</span><span class="p">);</span> <span class="c1">// can be omitted unless it has side effects</span>
+<span class="n">y</span><span class="o">++</span><span class="p">;</span>
+<span class="n">do_something</span><span class="p">(</span><span class="n">x</span><span class="p">,</span> <span class="n">y</span><span class="p">);</span>
+</pre></div>
+</div>
+<p>If this is the inteded behavior, then there is no reason to use a conditional
+statement; otherwise the issue can be solved by fixing the branch that is
+handled incorrectly.</p>
+<p>The check also detects repeated branches in longer <code class="docutils literal notranslate"><span class="pre">if/else</span> <span class="pre">if/else</span></code> chains
+where it would be even harder to notice the problem.</p>
+<p>In <code class="docutils literal notranslate"><span class="pre">switch</span></code> statements the check only reports repeated branches when they are
+consecutive, because it is relatively common that the <code class="docutils literal notranslate"><span class="pre">case:</span></code> labels have
+some natural ordering and rearranging them would decrease the readability of
+the code. For example:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">switch</span> <span class="p">(</span><span class="n">ch</span><span class="p">)</span> <span class="p">{</span>
+<span class="k">case</span> <span class="sc">'a'</span><span class="o">:</span>
+  <span class="k">return</span> <span class="mi">10</span><span class="p">;</span>
+<span class="k">case</span> <span class="sc">'A'</span><span class="o">:</span>
+  <span class="k">return</span> <span class="mi">10</span><span class="p">;</span>
+<span class="k">case</span> <span class="sc">'b'</span><span class="o">:</span>
+  <span class="k">return</span> <span class="mi">11</span><span class="p">;</span>
+<span class="k">case</span> <span class="sc">'B'</span><span class="o">:</span>
+  <span class="k">return</span> <span class="mi">11</span><span class="p">;</span>
+<span class="k">default</span><span class="o">:</span>
+  <span class="k">return</span> <span class="mi">10</span><span class="p">;</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+<p>Here the check reports that the <code class="docutils literal notranslate"><span class="pre">'a'</span></code> and <code class="docutils literal notranslate"><span class="pre">'A'</span></code> branches are identical
+(and that the <code class="docutils literal notranslate"><span class="pre">'b'</span></code> and <code class="docutils literal notranslate"><span class="pre">'B'</span></code> branches are also identical), but does not
+report that the <code class="docutils literal notranslate"><span class="pre">default:</span></code> branch is also idenical to the first two branches.
+If this is indeed the correct behavior, then it could be implemented as:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">switch</span> <span class="p">(</span><span class="n">ch</span><span class="p">)</span> <span class="p">{</span>
+<span class="k">case</span> <span class="sc">'a'</span><span class="o">:</span>
+<span class="k">case</span> <span class="sc">'A'</span><span class="o">:</span>
+  <span class="k">return</span> <span class="mi">10</span><span class="p">;</span>
+<span class="k">case</span> <span class="sc">'b'</span><span class="o">:</span>
+<span class="k">case</span> <span class="sc">'B'</span><span class="o">:</span>
+  <span class="k">return</span> <span class="mi">11</span><span class="p">;</span>
+<span class="k">default</span><span class="o">:</span>
+  <span class="k">return</span> <span class="mi">10</span><span class="p">;</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+<p>Here the check does not warn for the repeated <code class="docutils literal notranslate"><span class="pre">return</span> <span class="pre">10;</span></code>, which is good if
+we want to preserve that <code class="docutils literal notranslate"><span class="pre">'a'</span></code> is before <code class="docutils literal notranslate"><span class="pre">'b'</span></code> and <code class="docutils literal notranslate"><span class="pre">default:</span></code> is the last
+branch.</p>
+<p>Finally, the check also examines conditional operators and reports code like:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">return</span> <span class="nf">test_value</span><span class="p">(</span><span class="n">x</span><span class="p">)</span> <span class="o">?</span> <span class="nl">x</span> <span class="p">:</span> <span class="n">x</span><span class="p">;</span>
+</pre></div>
+</div>
+<p>Unlike if statements, the check does not detect chains of conditional
+operators.</p>
+<p>Note: This check also reports situations where branches become identical only
+after preprocession.</p>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="bugprone-bool-pointer-implicit-conversion.html">bugprone-bool-pointer-implicit-conversion</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="bugprone-copy-constructor-init.html">bugprone-copy-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/bugprone-copy-constructor-init.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-copy-constructor-init.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-copy-constructor-init.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-copy-constructor-init.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 - bugprone-copy-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="bugprone-dangling-handle" href="bugprone-dangling-handle.html" />
+    <link rel="prev" title="bugprone-branch-clone" href="bugprone-branch-clone.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 - bugprone-copy-constructor-init</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="bugprone-branch-clone.html">bugprone-branch-clone</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="bugprone-dangling-handle.html">bugprone-dangling-handle</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="bugprone-copy-constructor-init">
+<h1>bugprone-copy-constructor-init<a class="headerlink" href="#bugprone-copy-constructor-init" title="Permalink to this headline">¶</a></h1>
+<p>Finds copy constructors where the constructor doesn’t call
+the copy constructor of the base class.</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">class</span> <span class="nc">Copyable</span> <span class="p">{</span>
+<span class="k">public</span><span class="o">:</span>
+  <span class="n">Copyable</span><span class="p">()</span> <span class="o">=</span> <span class="k">default</span><span class="p">;</span>
+  <span class="n">Copyable</span><span class="p">(</span><span class="k">const</span> <span class="n">Copyable</span> <span class="o">&</span><span class="p">)</span> <span class="o">=</span> <span class="k">default</span><span class="p">;</span>
+<span class="p">};</span>
+<span class="k">class</span> <span class="nc">X2</span> <span class="o">:</span> <span class="k">public</span> <span class="n">Copyable</span> <span class="p">{</span>
+  <span class="n">X2</span><span class="p">(</span><span class="k">const</span> <span class="n">X2</span> <span class="o">&</span><span class="n">other</span><span class="p">)</span> <span class="p">{}</span> <span class="c1">// Copyable(other) is missing</span>
+<span class="p">};</span>
+</pre></div>
+</div>
+<p>Also finds copy constructors where the constructor of
+the base class don’t have parameter.</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">class</span> <span class="nc">X4</span> <span class="o">:</span> <span class="k">public</span> <span class="n">Copyable</span> <span class="p">{</span>
+  <span class="n">X4</span><span class="p">(</span><span class="k">const</span> <span class="n">X4</span> <span class="o">&</span><span class="n">other</span><span class="p">)</span> <span class="o">:</span> <span class="n">Copyable</span><span class="p">()</span> <span class="p">{}</span> <span class="c1">// other is missing</span>
+<span class="p">};</span>
+</pre></div>
+</div>
+<p>The check also suggests a fix-its in some cases.</p>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="bugprone-branch-clone.html">bugprone-branch-clone</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="bugprone-dangling-handle.html">bugprone-dangling-handle</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/bugprone-dangling-handle.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-dangling-handle.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-dangling-handle.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-dangling-handle.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 - bugprone-dangling-handle — 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="bugprone-exception-escape" href="bugprone-exception-escape.html" />
+    <link rel="prev" title="bugprone-copy-constructor-init" href="bugprone-copy-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 - bugprone-dangling-handle</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="bugprone-copy-constructor-init.html">bugprone-copy-constructor-init</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="bugprone-exception-escape.html">bugprone-exception-escape</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="bugprone-dangling-handle">
+<h1>bugprone-dangling-handle<a class="headerlink" href="#bugprone-dangling-handle" title="Permalink to this headline">¶</a></h1>
+<p>Detect dangling references in value handles like
+<code class="docutils literal notranslate"><span class="pre">std::experimental::string_view</span></code>.
+These dangling references can be a result of constructing handles from temporary
+values, where the temporary is destroyed soon after the handle is created.</p>
+<p>Examples:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="n">string_view</span> <span class="n">View</span> <span class="o">=</span> <span class="n">string</span><span class="p">();</span>  <span class="c1">// View will dangle.</span>
+<span class="n">string</span> <span class="n">A</span><span class="p">;</span>
+<span class="n">View</span> <span class="o">=</span> <span class="n">A</span> <span class="o">+</span> <span class="s">"A"</span><span class="p">;</span>  <span class="c1">// still dangle.</span>
+
+<span class="n">vector</span><span class="o"><</span><span class="n">string_view</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">string</span><span class="p">());</span>  <span class="c1">// V[0] is dangling.</span>
+<span class="n">V</span><span class="p">.</span><span class="n">resize</span><span class="p">(</span><span class="mi">3</span><span class="p">,</span> <span class="n">string</span><span class="p">());</span>  <span class="c1">// V[1] and V[2] will also dangle.</span>
+
+<span class="n">string_view</span> <span class="nf">f</span><span class="p">()</span> <span class="p">{</span>
+  <span class="c1">// All these return values will dangle.</span>
+  <span class="k">return</span> <span class="n">string</span><span class="p">();</span>
+  <span class="n">string</span> <span class="n">S</span><span class="p">;</span>
+  <span class="k">return</span> <span class="n">S</span><span class="p">;</span>
+  <span class="kt">char</span> <span class="n">Array</span><span class="p">[</span><span class="mi">10</span><span class="p">]{};</span>
+  <span class="k">return</span> <span class="n">Array</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-handleclasses">
+<code class="descname">HandleClasses</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-handleclasses" title="Permalink to this definition">¶</a></dt>
+<dd><p>A semicolon-separated list of class names that should be treated as handles.
+By default only <code class="docutils literal notranslate"><span class="pre">std::experimental::basic_string_view</span></code> is considered.</p>
+</dd></dl>
+
+</div>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="bugprone-copy-constructor-init.html">bugprone-copy-constructor-init</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="bugprone-exception-escape.html">bugprone-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/bugprone-exception-escape.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-exception-escape.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-exception-escape.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-exception-escape.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 - bugprone-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="bugprone-fold-init-type" href="bugprone-fold-init-type.html" />
+    <link rel="prev" title="bugprone-dangling-handle" href="bugprone-dangling-handle.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 - bugprone-exception-escape</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="bugprone-dangling-handle.html">bugprone-dangling-handle</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="bugprone-fold-init-type.html">bugprone-fold-init-type</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="bugprone-exception-escape">
+<h1>bugprone-exception-escape<a class="headerlink" href="#bugprone-exception-escape" title="Permalink to this headline">¶</a></h1>
+<p>Finds functions which may throw an exception directly or indirectly, but they
+should not. The functions which should not throw exceptions are the following:
+* Destructors
+* Move constructors
+* Move assignment operators
+* The <code class="docutils literal notranslate"><span class="pre">main()</span></code> functions
+* <code class="docutils literal notranslate"><span class="pre">swap()</span></code> functions
+* Functions marked with <code class="docutils literal notranslate"><span class="pre">throw()</span></code> or <code class="docutils literal notranslate"><span class="pre">noexcept</span></code>
+* Other functions given as option</p>
+<p>A destructor throwing an exception may result in undefined behavior, resource
+leaks or unexpected termination of the program. Throwing move constructor or
+move assignment also may result in undefined behavior or resource leak. The
+<code class="docutils literal notranslate"><span class="pre">swap()</span></code> operations expected to be non throwing most of the cases and they
+are always possible to implement in a non throwing way. Non throwing <code class="docutils literal notranslate"><span class="pre">swap()</span></code>
+operations are also used to create move operations. A throwing <code class="docutils literal notranslate"><span class="pre">main()</span></code>
+function also results in unexpected termination.</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-functionsthatshouldnotthrow">
+<code class="descname">FunctionsThatShouldNotThrow</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-functionsthatshouldnotthrow" title="Permalink to this definition">¶</a></dt>
+<dd><p>Comma separated list containing function names which should not throw. An
+example value for this parameter can be <code class="docutils literal notranslate"><span class="pre">WinMain</span></code> which adds function
+<code class="docutils literal notranslate"><span class="pre">WinMain()</span></code> in the Windows API to the list of the funcions which should
+not throw. Default value is an empty string.</p>
+</dd></dl>
+
+<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="bugprone-dangling-handle.html">bugprone-dangling-handle</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="bugprone-fold-init-type.html">bugprone-fold-init-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/bugprone-fold-init-type.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-fold-init-type.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-fold-init-type.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-fold-init-type.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 - bugprone-fold-init-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="bugprone-forward-declaration-namespace" href="bugprone-forward-declaration-namespace.html" />
+    <link rel="prev" title="bugprone-exception-escape" href="bugprone-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 - bugprone-fold-init-type</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="bugprone-exception-escape.html">bugprone-exception-escape</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="bugprone-forward-declaration-namespace.html">bugprone-forward-declaration-namespace</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="bugprone-fold-init-type">
+<h1>bugprone-fold-init-type<a class="headerlink" href="#bugprone-fold-init-type" title="Permalink to this headline">¶</a></h1>
+<p>The check flags type mismatches in
+<a class="reference external" href="https://en.wikipedia.org/wiki/Fold_(higher-order_function)">folds</a>
+like <code class="docutils literal notranslate"><span class="pre">std::accumulate</span></code> that might result in loss of precision.
+<code class="docutils literal notranslate"><span class="pre">std::accumulate</span></code> folds an input range into an initial value using the type of
+the latter, with <code class="docutils literal notranslate"><span class="pre">operator+</span></code> by default. This can cause loss of precision
+through:</p>
+<ul class="simple">
+<li>Truncation: The following code uses a floating point range and an int
+initial value, so trucation wil happen at every application of <code class="docutils literal notranslate"><span class="pre">operator+</span></code>
+and the result will be <cite>0</cite>, which might not be what the user expected.</li>
+</ul>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">auto</span> <span class="n">a</span> <span class="o">=</span> <span class="p">{</span><span class="mf">0.5f</span><span class="p">,</span> <span class="mf">0.5f</span><span class="p">,</span> <span class="mf">0.5f</span><span class="p">,</span> <span class="mf">0.5f</span><span class="p">};</span>
+<span class="k">return</span> <span class="n">std</span><span class="o">::</span><span class="n">accumulate</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">a</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">a</span><span class="p">),</span> <span class="mi">0</span><span class="p">);</span>
+</pre></div>
+</div>
+<ul class="simple">
+<li>Overflow: The following code also returns <cite>0</cite>.</li>
+</ul>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">auto</span> <span class="n">a</span> <span class="o">=</span> <span class="p">{</span><span class="mi">65536LL</span> <span class="o">*</span> <span class="mi">65536</span> <span class="o">*</span> <span class="mi">65536</span><span class="p">};</span>
+<span class="k">return</span> <span class="n">std</span><span class="o">::</span><span class="n">accumulate</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">a</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">a</span><span class="p">),</span> <span class="mi">0</span><span class="p">);</span>
+</pre></div>
+</div>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="bugprone-exception-escape.html">bugprone-exception-escape</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="bugprone-forward-declaration-namespace.html">bugprone-forward-declaration-namespace</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/bugprone-forward-declaration-namespace.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-forward-declaration-namespace.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-forward-declaration-namespace.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-forward-declaration-namespace.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" />
+    <title>clang-tidy - bugprone-forward-declaration-namespace — 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="bugprone-forwarding-reference-overload" href="bugprone-forwarding-reference-overload.html" />
+    <link rel="prev" title="bugprone-fold-init-type" href="bugprone-fold-init-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 - bugprone-forward-declaration-namespace</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="bugprone-fold-init-type.html">bugprone-fold-init-type</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="bugprone-forwarding-reference-overload.html">bugprone-forwarding-reference-overload</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="bugprone-forward-declaration-namespace">
+<h1>bugprone-forward-declaration-namespace<a class="headerlink" href="#bugprone-forward-declaration-namespace" title="Permalink to this headline">¶</a></h1>
+<p>Checks if an unused forward declaration is in a wrong namespace.</p>
+<p>The check inspects all unused forward declarations and checks if there is any
+declaration/definition with the same name existing, which could indicate that
+the forward declaration is in a potentially wrong namespace.</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">namespace</span> <span class="n">na</span> <span class="p">{</span> <span class="k">struct</span> <span class="n">A</span><span class="p">;</span> <span class="p">}</span>
+<span class="k">namespace</span> <span class="n">nb</span> <span class="p">{</span> <span class="k">struct</span> <span class="n">A</span> <span class="p">{};</span> <span class="p">}</span>
+<span class="n">nb</span><span class="o">::</span><span class="n">A</span> <span class="n">a</span><span class="p">;</span>
+<span class="c1">// warning : no definition found for 'A', but a definition with the same name</span>
+<span class="c1">// 'A' found in another namespace 'nb::'</span>
+</pre></div>
+</div>
+<p>This check can only generate warnings, but it can’t suggest a fix at this point.</p>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="bugprone-fold-init-type.html">bugprone-fold-init-type</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="bugprone-forwarding-reference-overload.html">bugprone-forwarding-reference-overload</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/bugprone-forwarding-reference-overload.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-forwarding-reference-overload.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-forwarding-reference-overload.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-forwarding-reference-overload.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,104 @@
+
+<!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 - bugprone-forwarding-reference-overload — 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="bugprone-inaccurate-erase" href="bugprone-inaccurate-erase.html" />
+    <link rel="prev" title="bugprone-forward-declaration-namespace" href="bugprone-forward-declaration-namespace.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 - bugprone-forwarding-reference-overload</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="bugprone-forward-declaration-namespace.html">bugprone-forward-declaration-namespace</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="bugprone-inaccurate-erase.html">bugprone-inaccurate-erase</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="bugprone-forwarding-reference-overload">
+<h1>bugprone-forwarding-reference-overload<a class="headerlink" href="#bugprone-forwarding-reference-overload" title="Permalink to this headline">¶</a></h1>
+<p>The check looks for perfect forwarding constructors that can hide copy or move
+constructors. If a non const lvalue reference is passed to the constructor, the
+forwarding reference parameter will be a better match than the const reference
+parameter of the copy constructor, so the perfect forwarding constructor will be
+called, which can be confusing.
+For detailed description of this issue see: Scott Meyers, Effective Modern C++,
+Item 26.</p>
+<p>Consider the following example:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">class</span> <span class="nc">Person</span> <span class="p">{</span>
+<span class="k">public</span><span class="o">:</span>
+  <span class="c1">// C1: perfect forwarding ctor</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">explicit</span> <span class="n">Person</span><span class="p">(</span><span class="n">T</span><span class="o">&&</span> <span class="n">n</span><span class="p">)</span> <span class="p">{}</span>
+
+  <span class="c1">// C2: perfect forwarding ctor with parameter default value</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">explicit</span> <span class="n">Person</span><span class="p">(</span><span class="n">T</span><span class="o">&&</span> <span class="n">n</span><span class="p">,</span> <span class="kt">int</span> <span class="n">x</span> <span class="o">=</span> <span class="mi">1</span><span class="p">)</span> <span class="p">{}</span>
+
+  <span class="c1">// C3: perfect forwarding ctor guarded with enable_if</span>
+  <span class="k">template</span><span class="o"><</span><span class="k">typename</span> <span class="n">T</span><span class="p">,</span> <span class="k">typename</span> <span class="n">X</span> <span class="o">=</span> <span class="n">enable_if_t</span><span class="o"><</span><span class="n">is_special</span><span class="o"><</span><span class="n">T</span><span class="o">></span><span class="p">,</span><span class="kt">void</span><span class="o">>></span>
+  <span class="k">explicit</span> <span class="n">Person</span><span class="p">(</span><span class="n">T</span><span class="o">&&</span> <span class="n">n</span><span class="p">)</span> <span class="p">{}</span>
+
+  <span class="c1">// (possibly compiler generated) copy ctor</span>
+  <span class="n">Person</span><span class="p">(</span><span class="k">const</span> <span class="n">Person</span><span class="o">&</span> <span class="n">rhs</span><span class="p">);</span>
+<span class="p">};</span>
+</pre></div>
+</div>
+<p>The check warns for constructors C1 and C2, because those can hide copy and move
+constructors. We suppress warnings if the copy and the move constructors are both
+disabled (deleted or private), because there is nothing the perfect forwarding
+constructor could hide in this case. We also suppress warnings for constructors
+like C3 that are guarded with an enable_if, assuming the programmer was aware of
+the possible hiding.</p>
+<div class="section" id="background">
+<h2>Background<a class="headerlink" href="#background" title="Permalink to this headline">¶</a></h2>
+<p>For deciding whether a constructor is guarded with enable_if, we consider the
+default values of the type parameters and the types of the constructor
+parameters. If any part of these types is std::enable_if or std::enable_if_t, we
+assume the constructor is guarded.</p>
+</div>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="bugprone-forward-declaration-namespace.html">bugprone-forward-declaration-namespace</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="bugprone-inaccurate-erase.html">bugprone-inaccurate-erase</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/bugprone-inaccurate-erase.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-inaccurate-erase.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-inaccurate-erase.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-inaccurate-erase.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" />
+    <title>clang-tidy - bugprone-inaccurate-erase — 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="bugprone-incorrect-roundings" href="bugprone-incorrect-roundings.html" />
+    <link rel="prev" title="bugprone-forwarding-reference-overload" href="bugprone-forwarding-reference-overload.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 - bugprone-inaccurate-erase</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="bugprone-forwarding-reference-overload.html">bugprone-forwarding-reference-overload</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="bugprone-incorrect-roundings.html">bugprone-incorrect-roundings</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="bugprone-inaccurate-erase">
+<h1>bugprone-inaccurate-erase<a class="headerlink" href="#bugprone-inaccurate-erase" title="Permalink to this headline">¶</a></h1>
+<p>Checks for inaccurate use of the <code class="docutils literal notranslate"><span class="pre">erase()</span></code> method.</p>
+<p>Algorithms like <code class="docutils literal notranslate"><span class="pre">remove()</span></code> do not actually remove any element from the
+container but return an iterator to the first redundant element at the end
+of the container. These redundant elements must be removed using the
+<code class="docutils literal notranslate"><span class="pre">erase()</span></code> method. This check warns when not all of the elements will be
+removed due to using an inappropriate overload.</p>
+<p>For example, the following code erases only one element:</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">xs</span><span class="p">;</span>
+<span class="p">...</span>
+<span class="n">xs</span><span class="p">.</span><span class="n">erase</span><span class="p">(</span><span class="n">std</span><span class="o">::</span><span class="n">remove</span><span class="p">(</span><span class="n">xs</span><span class="p">.</span><span class="n">begin</span><span class="p">(),</span> <span class="n">xs</span><span class="p">.</span><span class="n">end</span><span class="p">(),</span> <span class="mi">10</span><span class="p">));</span>
+</pre></div>
+</div>
+<p>Call the two-argument overload of <code class="docutils literal notranslate"><span class="pre">erase()</span></code> to remove the subrange:</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">xs</span><span class="p">;</span>
+<span class="p">...</span>
+<span class="n">xs</span><span class="p">.</span><span class="n">erase</span><span class="p">(</span><span class="n">std</span><span class="o">::</span><span class="n">remove</span><span class="p">(</span><span class="n">xs</span><span class="p">.</span><span class="n">begin</span><span class="p">(),</span> <span class="n">xs</span><span class="p">.</span><span class="n">end</span><span class="p">(),</span> <span class="mi">10</span><span class="p">),</span> <span class="n">xs</span><span class="p">.</span><span class="n">end</span><span class="p">());</span>
+</pre></div>
+</div>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="bugprone-forwarding-reference-overload.html">bugprone-forwarding-reference-overload</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="bugprone-incorrect-roundings.html">bugprone-incorrect-roundings</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/bugprone-incorrect-roundings.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-incorrect-roundings.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-incorrect-roundings.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-incorrect-roundings.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" />
+    <title>clang-tidy - bugprone-incorrect-roundings — 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="bugprone-integer-division" href="bugprone-integer-division.html" />
+    <link rel="prev" title="bugprone-inaccurate-erase" href="bugprone-inaccurate-erase.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 - bugprone-incorrect-roundings</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="bugprone-inaccurate-erase.html">bugprone-inaccurate-erase</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="bugprone-integer-division.html">bugprone-integer-division</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="bugprone-incorrect-roundings">
+<h1>bugprone-incorrect-roundings<a class="headerlink" href="#bugprone-incorrect-roundings" title="Permalink to this headline">¶</a></h1>
+<p>Checks the usage of patterns known to produce incorrect rounding.
+Programmers often use:</p>
+<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="p">(</span><span class="nb">int</span><span class="p">)(</span><span class="n">double_expression</span> <span class="o">+</span> <span class="mf">0.5</span><span class="p">)</span>
+</pre></div>
+</div>
+<p>to round the double expression to an integer. The problem with this:</p>
+<ol class="arabic simple">
+<li>It is unnecessarily slow.</li>
+<li>It is incorrect. The number 0.499999975 (smallest representable float
+number below 0.5) rounds to 1.0. Even worse behavior for negative
+numbers where both -0.5f and -1.4f both round to 0.0.</li>
+</ol>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="bugprone-inaccurate-erase.html">bugprone-inaccurate-erase</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="bugprone-integer-division.html">bugprone-integer-division</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/bugprone-integer-division.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-integer-division.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-integer-division.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-integer-division.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,95 @@
+
+<!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 - bugprone-integer-division — 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="bugprone-lambda-function-name" href="bugprone-lambda-function-name.html" />
+    <link rel="prev" title="bugprone-incorrect-roundings" href="bugprone-incorrect-roundings.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 - bugprone-integer-division</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="bugprone-incorrect-roundings.html">bugprone-incorrect-roundings</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="bugprone-lambda-function-name.html">bugprone-lambda-function-name</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="bugprone-integer-division">
+<h1>bugprone-integer-division<a class="headerlink" href="#bugprone-integer-division" title="Permalink to this headline">¶</a></h1>
+<p>Finds cases where integer division in a floating point context is likely to
+cause unintended loss of precision.</p>
+<p>No reports are made if divisions are part of the following expressions:</p>
+<ul class="simple">
+<li>operands of operators expecting integral or bool types,</li>
+<li>call expressions of integral or bool types, and</li>
+<li>explicit cast expressions to integral or bool types,</li>
+</ul>
+<p>as these are interpreted as signs of deliberateness from the programmer.</p>
+<p>Examples:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="kt">float</span> <span class="nf">floatFunc</span><span class="p">(</span><span class="kt">float</span><span class="p">);</span>
+<span class="kt">int</span> <span class="nf">intFunc</span><span class="p">(</span><span class="kt">int</span><span class="p">);</span>
+<span class="kt">double</span> <span class="n">d</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="c1">// Warn, floating-point values expected.</span>
+<span class="n">d</span> <span class="o">=</span> <span class="mi">32</span> <span class="o">*</span> <span class="mi">8</span> <span class="o">/</span> <span class="p">(</span><span class="mi">2</span> <span class="o">+</span> <span class="n">i</span><span class="p">);</span>
+<span class="n">d</span> <span class="o">=</span> <span class="mi">8</span> <span class="o">*</span> <span class="n">floatFunc</span><span class="p">(</span><span class="mi">1</span> <span class="o">+</span> <span class="mi">7</span> <span class="o">/</span> <span class="mi">2</span><span class="p">);</span>
+<span class="n">d</span> <span class="o">=</span> <span class="n">i</span> <span class="o">/</span> <span class="p">(</span><span class="mi">1</span> <span class="o"><<</span> <span class="mi">4</span><span class="p">);</span>
+
+<span class="c1">// OK, no integer division.</span>
+<span class="n">d</span> <span class="o">=</span> <span class="mi">32</span> <span class="o">*</span> <span class="mf">8.0</span> <span class="o">/</span> <span class="p">(</span><span class="mi">2</span> <span class="o">+</span> <span class="n">i</span><span class="p">);</span>
+<span class="n">d</span> <span class="o">=</span> <span class="mi">8</span> <span class="o">*</span> <span class="n">floatFunc</span><span class="p">(</span><span class="mi">1</span> <span class="o">+</span> <span class="mf">7.0</span> <span class="o">/</span> <span class="mi">2</span><span class="p">);</span>
+<span class="n">d</span> <span class="o">=</span> <span class="p">(</span><span class="kt">double</span><span class="p">)</span><span class="n">i</span> <span class="o">/</span> <span class="p">(</span><span class="mi">1</span> <span class="o"><<</span> <span class="mi">4</span><span class="p">);</span>
+
+<span class="c1">// OK, there are signs of deliberateness.</span>
+<span class="n">d</span> <span class="o">=</span> <span class="mi">1</span> <span class="o"><<</span> <span class="p">(</span><span class="n">i</span> <span class="o">/</span> <span class="mi">2</span><span class="p">);</span>
+<span class="n">d</span> <span class="o">=</span> <span class="mi">9</span> <span class="o">+</span> <span class="n">intFunc</span><span class="p">(</span><span class="mi">6</span> <span class="o">*</span> <span class="n">i</span> <span class="o">/</span> <span class="mi">32</span><span class="p">);</span>
+<span class="n">d</span> <span class="o">=</span> <span class="p">(</span><span class="kt">int</span><span class="p">)(</span><span class="n">i</span> <span class="o">/</span> <span class="mi">32</span><span class="p">)</span> <span class="o">-</span> <span class="mi">8</span><span class="p">;</span>
+</pre></div>
+</div>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="bugprone-incorrect-roundings.html">bugprone-incorrect-roundings</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="bugprone-lambda-function-name.html">bugprone-lambda-function-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/bugprone-lambda-function-name.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-lambda-function-name.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-lambda-function-name.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-lambda-function-name.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 - bugprone-lambda-function-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="bugprone-macro-parentheses" href="bugprone-macro-parentheses.html" />
+    <link rel="prev" title="bugprone-integer-division" href="bugprone-integer-division.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 - bugprone-lambda-function-name</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="bugprone-integer-division.html">bugprone-integer-division</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="bugprone-macro-parentheses.html">bugprone-macro-parentheses</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="bugprone-lambda-function-name">
+<h1>bugprone-lambda-function-name<a class="headerlink" href="#bugprone-lambda-function-name" title="Permalink to this headline">¶</a></h1>
+<p>Checks for attempts to get the name of a function from within a lambda
+expression. The name of a lambda is always something like <code class="docutils literal notranslate"><span class="pre">operator()</span></code>, which
+is almost never what was intended.</p>
+<p>Example:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="kt">void</span> <span class="nf">FancyFunction</span><span class="p">()</span> <span class="p">{</span>
+  <span class="p">[]</span> <span class="p">{</span> <span class="n">printf</span><span class="p">(</span><span class="s">"Called from %s</span><span class="se">\n</span><span class="s">"</span><span class="p">,</span> <span class="n">__func__</span><span class="p">);</span> <span class="p">}();</span>
+  <span class="p">[]</span> <span class="p">{</span> <span class="n">printf</span><span class="p">(</span><span class="s">"Now called from %s</span><span class="se">\n</span><span class="s">"</span><span class="p">,</span> <span class="n">__FUNCTION__</span><span class="p">);</span> <span class="p">}();</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+<p>Output:</p>
+<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="n">Called</span> <span class="kn">from</span> <span class="nn">operator</span><span class="p">()</span>
+<span class="n">Now</span> <span class="n">called</span> <span class="kn">from</span> <span class="nn">operator</span><span class="p">()</span>
+</pre></div>
+</div>
+<p>Likely intended output:</p>
+<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="n">Called</span> <span class="kn">from</span> <span class="nn">FancyFunction</span>
+<span class="n">Now</span> <span class="n">called</span> <span class="kn">from</span> <span class="nn">FancyFunction</span>
+</pre></div>
+</div>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="bugprone-integer-division.html">bugprone-integer-division</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="bugprone-macro-parentheses.html">bugprone-macro-parentheses</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/bugprone-macro-parentheses.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-macro-parentheses.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-macro-parentheses.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-macro-parentheses.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 - bugprone-macro-parentheses — 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="bugprone-macro-repeated-side-effects" href="bugprone-macro-repeated-side-effects.html" />
+    <link rel="prev" title="bugprone-lambda-function-name" href="bugprone-lambda-function-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 - bugprone-macro-parentheses</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="bugprone-lambda-function-name.html">bugprone-lambda-function-name</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="bugprone-macro-repeated-side-effects.html">bugprone-macro-repeated-side-effects</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="bugprone-macro-parentheses">
+<h1>bugprone-macro-parentheses<a class="headerlink" href="#bugprone-macro-parentheses" title="Permalink to this headline">¶</a></h1>
+<p>Finds macros that can have unexpected behaviour due to missing parentheses.</p>
+<p>Macros are expanded by the preprocessor as-is. As a result, there can be
+unexpected behaviour; operators may be evaluated in unexpected order and
+unary operators may become binary operators, etc.</p>
+<p>When the replacement list has an expression, it is recommended to surround
+it with parentheses. This ensures that the macro result is evaluated
+completely before it is used.</p>
+<p>It is also recommended to surround macro arguments in the replacement list
+with parentheses. This ensures that the argument value is calculated
+properly.</p>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="bugprone-lambda-function-name.html">bugprone-lambda-function-name</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="bugprone-macro-repeated-side-effects.html">bugprone-macro-repeated-side-effects</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/bugprone-macro-repeated-side-effects.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-macro-repeated-side-effects.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-macro-repeated-side-effects.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-macro-repeated-side-effects.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 - bugprone-macro-repeated-side-effects — 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="bugprone-misplaced-operator-in-strlen-in-alloc" href="bugprone-misplaced-operator-in-strlen-in-alloc.html" />
+    <link rel="prev" title="bugprone-macro-parentheses" href="bugprone-macro-parentheses.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 - bugprone-macro-repeated-side-effects</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="bugprone-macro-parentheses.html">bugprone-macro-parentheses</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="bugprone-misplaced-operator-in-strlen-in-alloc.html">bugprone-misplaced-operator-in-strlen-in-alloc</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="bugprone-macro-repeated-side-effects">
+<h1>bugprone-macro-repeated-side-effects<a class="headerlink" href="#bugprone-macro-repeated-side-effects" title="Permalink to this headline">¶</a></h1>
+<p>Checks for repeated argument with side effects in macros.</p>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="bugprone-macro-parentheses.html">bugprone-macro-parentheses</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="bugprone-misplaced-operator-in-strlen-in-alloc.html">bugprone-misplaced-operator-in-strlen-in-alloc</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/bugprone-misplaced-operator-in-strlen-in-alloc.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-misplaced-operator-in-strlen-in-alloc.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-misplaced-operator-in-strlen-in-alloc.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-misplaced-operator-in-strlen-in-alloc.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,102 @@
+
+<!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 - bugprone-misplaced-operator-in-strlen-in-alloc — 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="bugprone-misplaced-widening-cast" href="bugprone-misplaced-widening-cast.html" />
+    <link rel="prev" title="bugprone-macro-repeated-side-effects" href="bugprone-macro-repeated-side-effects.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 - bugprone-misplaced-operator-in-strlen-in-alloc</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="bugprone-macro-repeated-side-effects.html">bugprone-macro-repeated-side-effects</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="bugprone-misplaced-widening-cast.html">bugprone-misplaced-widening-cast</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="bugprone-misplaced-operator-in-strlen-in-alloc">
+<h1>bugprone-misplaced-operator-in-strlen-in-alloc<a class="headerlink" href="#bugprone-misplaced-operator-in-strlen-in-alloc" title="Permalink to this headline">¶</a></h1>
+<p>Finds cases where <code class="docutils literal notranslate"><span class="pre">1</span></code> is added to the string in the argument to <code class="docutils literal notranslate"><span class="pre">strlen()</span></code>,
+<code class="docutils literal notranslate"><span class="pre">strnlen()</span></code>, <code class="docutils literal notranslate"><span class="pre">strnlen_s()</span></code>, <code class="docutils literal notranslate"><span class="pre">wcslen()</span></code>, <code class="docutils literal notranslate"><span class="pre">wcsnlen()</span></code>, and <code class="docutils literal notranslate"><span class="pre">wcsnlen_s()</span></code>
+instead of the result and the value is used as an argument to a memory
+allocation function (<code class="docutils literal notranslate"><span class="pre">malloc()</span></code>, <code class="docutils literal notranslate"><span class="pre">calloc()</span></code>, <code class="docutils literal notranslate"><span class="pre">realloc()</span></code>, <code class="docutils literal notranslate"><span class="pre">alloca()</span></code>) or
+the <code class="docutils literal notranslate"><span class="pre">new[]</span></code> operator in <cite>C++</cite>. The check detects error cases even if one of
+these functions (except the <code class="docutils literal notranslate"><span class="pre">new[]</span></code> operator) is called by a constant function
+pointer.  Cases where <code class="docutils literal notranslate"><span class="pre">1</span></code> is added both to the parameter and the result of the
+<code class="docutils literal notranslate"><span class="pre">strlen()</span></code>-like function are ignored, as are cases where the whole addition is
+surrounded by extra parentheses.</p>
+<p><cite>C</cite> example code:</p>
+<div class="highlight-c notranslate"><div class="highlight"><pre><span></span><span class="kt">void</span> <span class="nf">bad_malloc</span><span class="p">(</span><span class="kt">char</span> <span class="o">*</span><span class="n">str</span><span class="p">)</span> <span class="p">{</span>
+  <span class="kt">char</span> <span class="o">*</span><span class="n">c</span> <span class="o">=</span> <span class="p">(</span><span class="kt">char</span><span class="o">*</span><span class="p">)</span> <span class="n">malloc</span><span class="p">(</span><span class="n">strlen</span><span class="p">(</span><span class="n">str</span> <span class="o">+</span> <span class="mi">1</span><span class="p">));</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+<p>The suggested fix is to add <code class="docutils literal notranslate"><span class="pre">1</span></code> to the return value of <code class="docutils literal notranslate"><span class="pre">strlen()</span></code> and not
+to its argument. In the example above the fix would be</p>
+<div class="highlight-c notranslate"><div class="highlight"><pre><span></span><span class="kt">char</span> <span class="o">*</span><span class="n">c</span> <span class="o">=</span> <span class="p">(</span><span class="kt">char</span><span class="o">*</span><span class="p">)</span> <span class="n">malloc</span><span class="p">(</span><span class="n">strlen</span><span class="p">(</span><span class="n">str</span><span class="p">)</span> <span class="o">+</span> <span class="mi">1</span><span class="p">);</span>
+</pre></div>
+</div>
+<p><cite>C++</cite> example code:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="kt">void</span> <span class="nf">bad_new</span><span class="p">(</span><span class="kt">char</span> <span class="o">*</span><span class="n">str</span><span class="p">)</span> <span class="p">{</span>
+  <span class="kt">char</span> <span class="o">*</span><span class="n">c</span> <span class="o">=</span> <span class="k">new</span> <span class="kt">char</span><span class="p">[</span><span class="n">strlen</span><span class="p">(</span><span class="n">str</span> <span class="o">+</span> <span class="mi">1</span><span class="p">)];</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+<p>As in the <cite>C</cite> code with the <code class="docutils literal notranslate"><span class="pre">malloc()</span></code> function, the suggested fix is to
+add <code class="docutils literal notranslate"><span class="pre">1</span></code> to the return value of <code class="docutils literal notranslate"><span class="pre">strlen()</span></code> and not to its argument. In the
+example above the fix would be</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="kt">char</span> <span class="o">*</span><span class="n">c</span> <span class="o">=</span> <span class="k">new</span> <span class="kt">char</span><span class="p">[</span><span class="n">strlen</span><span class="p">(</span><span class="n">str</span><span class="p">)</span> <span class="o">+</span> <span class="mi">1</span><span class="p">];</span>
+</pre></div>
+</div>
+<p>Example for silencing the diagnostic:</p>
+<div class="highlight-c notranslate"><div class="highlight"><pre><span></span><span class="kt">void</span> <span class="nf">bad_malloc</span><span class="p">(</span><span class="kt">char</span> <span class="o">*</span><span class="n">str</span><span class="p">)</span> <span class="p">{</span>
+  <span class="kt">char</span> <span class="o">*</span><span class="n">c</span> <span class="o">=</span> <span class="p">(</span><span class="kt">char</span><span class="o">*</span><span class="p">)</span> <span class="n">malloc</span><span class="p">(</span><span class="n">strlen</span><span class="p">((</span><span class="n">str</span> <span class="o">+</span> <span class="mi">1</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="bugprone-macro-repeated-side-effects.html">bugprone-macro-repeated-side-effects</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="bugprone-misplaced-widening-cast.html">bugprone-misplaced-widening-cast</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/bugprone-misplaced-widening-cast.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-misplaced-widening-cast.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-misplaced-widening-cast.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-misplaced-widening-cast.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 - bugprone-misplaced-widening-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" />
+    <link rel="next" title="bugprone-move-forwarding-reference" href="bugprone-move-forwarding-reference.html" />
+    <link rel="prev" title="bugprone-misplaced-operator-in-strlen-in-alloc" href="bugprone-misplaced-operator-in-strlen-in-alloc.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 - bugprone-misplaced-widening-cast</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="bugprone-misplaced-operator-in-strlen-in-alloc.html">bugprone-misplaced-operator-in-strlen-in-alloc</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="bugprone-move-forwarding-reference.html">bugprone-move-forwarding-reference</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="bugprone-misplaced-widening-cast">
+<h1>bugprone-misplaced-widening-cast<a class="headerlink" href="#bugprone-misplaced-widening-cast" title="Permalink to this headline">¶</a></h1>
+<p>This check will warn when there is a cast of a calculation result to a bigger
+type. If the intention of the cast is to avoid loss of precision then the cast
+is misplaced, and there can be loss of precision. Otherwise the cast is
+ineffective.</p>
+<p>Example code:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="kt">long</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="k">return</span> <span class="p">(</span><span class="kt">long</span><span class="p">)(</span><span class="n">x</span> <span class="o">*</span> <span class="mi">1000</span><span class="p">);</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+<p>The result <code class="docutils literal notranslate"><span class="pre">x</span> <span class="pre">*</span> <span class="pre">1000</span></code> is first calculated using <code class="docutils literal notranslate"><span class="pre">int</span></code> precision. If the
+result exceeds <code class="docutils literal notranslate"><span class="pre">int</span></code> precision there is loss of precision. Then the result is
+casted to <code class="docutils literal notranslate"><span class="pre">long</span></code>.</p>
+<p>If there is no loss of precision then the cast can be removed or you can
+explicitly cast to <code class="docutils literal notranslate"><span class="pre">int</span></code> instead.</p>
+<p>If you want to avoid loss of precision then put the cast in a proper location,
+for instance:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="kt">long</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="k">return</span> <span class="p">(</span><span class="kt">long</span><span class="p">)</span><span class="n">x</span> <span class="o">*</span> <span class="mi">1000</span><span class="p">;</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+<div class="section" id="implicit-casts">
+<h2>Implicit casts<a class="headerlink" href="#implicit-casts" title="Permalink to this headline">¶</a></h2>
+<p>Forgetting to place the cast at all is at least as dangerous and at least as
+common as misplacing it. If <a class="reference internal" href="#cmdoption-arg-checkimplicitcasts"><code class="xref std std-option docutils literal notranslate"><span class="pre">CheckImplicitCasts</span></code></a> is enabled the check
+also detects these cases, for instance:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="kt">long</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="k">return</span> <span class="n">x</span> <span class="o">*</span> <span class="mi">1000</span><span class="p">;</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+</div>
+<div class="section" id="floating-point">
+<h2>Floating point<a class="headerlink" href="#floating-point" title="Permalink to this headline">¶</a></h2>
+<p>Currently warnings are only written for integer conversion. No warning is
+written for this code:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="kt">double</span> <span class="nf">f</span><span class="p">(</span><span class="kt">float</span> <span class="n">x</span><span class="p">)</span> <span class="p">{</span>
+    <span class="k">return</span> <span class="p">(</span><span class="kt">double</span><span class="p">)(</span><span class="n">x</span> <span class="o">*</span> <span class="mf">10.0f</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-checkimplicitcasts">
+<code class="descname">CheckImplicitCasts</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-checkimplicitcasts" title="Permalink to this definition">¶</a></dt>
+<dd><p>If non-zero, enables detection of implicit casts. Default is non-zero.</p>
+</dd></dl>
+
+</div>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="bugprone-misplaced-operator-in-strlen-in-alloc.html">bugprone-misplaced-operator-in-strlen-in-alloc</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="bugprone-move-forwarding-reference.html">bugprone-move-forwarding-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/bugprone-move-forwarding-reference.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-move-forwarding-reference.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-move-forwarding-reference.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-move-forwarding-reference.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 - bugprone-move-forwarding-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="bugprone-multiple-statement-macro" href="bugprone-multiple-statement-macro.html" />
+    <link rel="prev" title="bugprone-misplaced-widening-cast" href="bugprone-misplaced-widening-cast.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 - bugprone-move-forwarding-reference</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="bugprone-misplaced-widening-cast.html">bugprone-misplaced-widening-cast</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="bugprone-multiple-statement-macro.html">bugprone-multiple-statement-macro</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="bugprone-move-forwarding-reference">
+<h1>bugprone-move-forwarding-reference<a class="headerlink" href="#bugprone-move-forwarding-reference" title="Permalink to this headline">¶</a></h1>
+<p>Warns if <code class="docutils literal notranslate"><span class="pre">std::move</span></code> is called on a forwarding reference, for 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="kt">void</span> <span class="n">foo</span><span class="p">(</span><span class="n">T</span><span class="o">&&</span> <span class="n">t</span><span class="p">)</span> <span class="p">{</span>
+  <span class="n">bar</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">t</span><span class="p">));</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+<p><a class="reference external" href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2014/n4164.pdf">Forwarding references</a> should
+typically be passed to <code class="docutils literal notranslate"><span class="pre">std::forward</span></code> instead of <code class="docutils literal notranslate"><span class="pre">std::move</span></code>, and this is
+the fix that will be suggested.</p>
+<p>(A forwarding reference is an rvalue reference of a type that is a deduced
+function template argument.)</p>
+<p>In this example, the suggested fix would be</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="n">bar</span><span class="p">(</span><span class="n">std</span><span class="o">::</span><span class="n">forward</span><span class="o"><</span><span class="n">T</span><span class="o">></span><span class="p">(</span><span class="n">t</span><span class="p">));</span>
+</pre></div>
+</div>
+<div class="section" id="background">
+<h2>Background<a class="headerlink" href="#background" title="Permalink to this headline">¶</a></h2>
+<p>Code like the example above is sometimes written with the expectation that
+<code class="docutils literal notranslate"><span class="pre">T&&</span></code> will always end up being an rvalue reference, no matter what type is
+deduced for <code class="docutils literal notranslate"><span class="pre">T</span></code>, and that it is therefore not possible to pass an lvalue to
+<code class="docutils literal notranslate"><span class="pre">foo()</span></code>. However, this is not true. Consider this 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="o">=</span> <span class="s">"Hello, world"</span><span class="p">;</span>
+<span class="n">foo</span><span class="p">(</span><span class="n">s</span><span class="p">);</span>
+</pre></div>
+</div>
+<p>This code compiles and, after the call to <code class="docutils literal notranslate"><span class="pre">foo()</span></code>, <code class="docutils literal notranslate"><span class="pre">s</span></code> is left in an
+indeterminate state because it has been moved from. This may be surprising to
+the caller of <code class="docutils literal notranslate"><span class="pre">foo()</span></code> because no <code class="docutils literal notranslate"><span class="pre">std::move</span></code> was used when calling
+<code class="docutils literal notranslate"><span class="pre">foo()</span></code>.</p>
+<p>The reason for this behavior lies in the special rule for template argument
+deduction on function templates like <code class="docutils literal notranslate"><span class="pre">foo()</span></code> – i.e. on function templates
+that take an rvalue reference argument of a type that is a deduced function
+template argument. (See section [temp.deduct.call]/3 in the C++11 standard.)</p>
+<p>If <code class="docutils literal notranslate"><span class="pre">foo()</span></code> is called on an lvalue (as in the example above), then <code class="docutils literal notranslate"><span class="pre">T</span></code> is
+deduced to be an lvalue reference. In the example, <code class="docutils literal notranslate"><span class="pre">T</span></code> is deduced to be
+<code class="docutils literal notranslate"><span class="pre">std::string</span> <span class="pre">&</span></code>. The type of the argument <code class="docutils literal notranslate"><span class="pre">t</span></code> therefore becomes
+<code class="docutils literal notranslate"><span class="pre">std::string&</span> <span class="pre">&&</span></code>; by the reference collapsing rules, this collapses to
+<code class="docutils literal notranslate"><span class="pre">std::string&</span></code>.</p>
+<p>This means that the <code class="docutils literal notranslate"><span class="pre">foo(s)</span></code> call passes <code class="docutils literal notranslate"><span class="pre">s</span></code> as an lvalue reference, and
+<code class="docutils literal notranslate"><span class="pre">foo()</span></code> ends up moving <code class="docutils literal notranslate"><span class="pre">s</span></code> and thereby placing it into an indeterminate
+state.</p>
+</div>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="bugprone-misplaced-widening-cast.html">bugprone-misplaced-widening-cast</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="bugprone-multiple-statement-macro.html">bugprone-multiple-statement-macro</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/bugprone-multiple-statement-macro.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-multiple-statement-macro.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-multiple-statement-macro.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-multiple-statement-macro.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 - bugprone-multiple-statement-macro — 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="bugprone-parent-virtual-call" href="bugprone-parent-virtual-call.html" />
+    <link rel="prev" title="bugprone-move-forwarding-reference" href="bugprone-move-forwarding-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 - bugprone-multiple-statement-macro</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="bugprone-move-forwarding-reference.html">bugprone-move-forwarding-reference</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="bugprone-parent-virtual-call.html">bugprone-parent-virtual-call</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="bugprone-multiple-statement-macro">
+<h1>bugprone-multiple-statement-macro<a class="headerlink" href="#bugprone-multiple-statement-macro" title="Permalink to this headline">¶</a></h1>
+<p>Detect multiple statement macros that are used in unbraced conditionals. Only
+the first statement of the macro will be inside the conditional and the other
+ones will be executed unconditionally.</p>
+<p>Example:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="cp">#define INCREMENT_TWO(x, y) (x)++; (y)++</span>
+<span class="k">if</span> <span class="p">(</span><span class="n">do_increment</span><span class="p">)</span>
+  <span class="n">INCREMENT_TWO</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">// (b)++ will be executed unconditionally.</span>
+</pre></div>
+</div>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="bugprone-move-forwarding-reference.html">bugprone-move-forwarding-reference</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="bugprone-parent-virtual-call.html">bugprone-parent-virtual-call</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/bugprone-parent-virtual-call.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-parent-virtual-call.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-parent-virtual-call.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-parent-virtual-call.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 - bugprone-parent-virtual-call — 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="bugprone-posix-return" href="bugprone-posix-return.html" />
+    <link rel="prev" title="bugprone-multiple-statement-macro" href="bugprone-multiple-statement-macro.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 - bugprone-parent-virtual-call</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="bugprone-multiple-statement-macro.html">bugprone-multiple-statement-macro</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="bugprone-posix-return.html">bugprone-posix-return</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="bugprone-parent-virtual-call">
+<h1>bugprone-parent-virtual-call<a class="headerlink" href="#bugprone-parent-virtual-call" title="Permalink to this headline">¶</a></h1>
+<p>Detects and fixes calls to grand-…parent virtual methods instead of calls
+to overridden parent’s virtual methods.</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="kt">int</span> <span class="k">virtual</span> <span class="n">foo</span><span class="p">()</span> <span class="p">{...}</span>
+<span class="p">};</span>
+
+<span class="k">struct</span> <span class="nl">B</span><span class="p">:</span> <span class="k">public</span> <span class="n">A</span> <span class="p">{</span>
+  <span class="kt">int</span> <span class="n">foo</span><span class="p">()</span> <span class="k">override</span> <span class="p">{...}</span>
+<span class="p">};</span>
+
+<span class="k">struct</span> <span class="nl">C</span><span class="p">:</span> <span class="k">public</span> <span class="n">B</span> <span class="p">{</span>
+  <span class="kt">int</span> <span class="n">foo</span><span class="p">()</span> <span class="k">override</span> <span class="p">{</span> <span class="n">A</span><span class="o">::</span><span class="n">foo</span><span class="p">();</span> <span class="p">}</span>
+<span class="c1">//                     ^^^^^^^^</span>
+<span class="c1">// warning: qualified name A::foo refers to a member overridden in subclass; did you mean 'B'?  [bugprone-parent-virtual-call]</span>
+<span class="p">};</span>
+</pre></div>
+</div>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="bugprone-multiple-statement-macro.html">bugprone-multiple-statement-macro</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="bugprone-posix-return.html">bugprone-posix-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/bugprone-posix-return.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-posix-return.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-posix-return.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-posix-return.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,75 @@
+
+<!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 - bugprone-posix-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="bugprone-sizeof-container" href="bugprone-sizeof-container.html" />
+    <link rel="prev" title="bugprone-parent-virtual-call" href="bugprone-parent-virtual-call.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 - bugprone-posix-return</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="bugprone-parent-virtual-call.html">bugprone-parent-virtual-call</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="bugprone-sizeof-container.html">bugprone-sizeof-container</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="bugprone-posix-return">
+<h1>bugprone-posix-return<a class="headerlink" href="#bugprone-posix-return" title="Permalink to this headline">¶</a></h1>
+<p>Checks if any calls to POSIX functions (except <code class="docutils literal notranslate"><span class="pre">posix_openpt</span></code>) expect negative
+return values. These functions return either <code class="docutils literal notranslate"><span class="pre">0</span></code> on success or an <code class="docutils literal notranslate"><span class="pre">errno</span></code> on failure,
+which is positive only.</p>
+<p>Example buggy usage looks like:</p>
+<div class="highlight-c notranslate"><div class="highlight"><pre><span></span><span class="k">if</span> <span class="p">(</span><span class="n">posix_fadvise</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>This will never happen as the return value is always non-negative. A simple fix could be:</p>
+<div class="highlight-c notranslate"><div class="highlight"><pre><span></span><span class="k">if</span> <span class="p">(</span><span class="n">posix_fadvise</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="bugprone-parent-virtual-call.html">bugprone-parent-virtual-call</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="bugprone-sizeof-container.html">bugprone-sizeof-container</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/bugprone-sizeof-container.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-sizeof-container.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-sizeof-container.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-sizeof-container.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" />
+    <title>clang-tidy - bugprone-sizeof-container — 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="bugprone-sizeof-expression" href="bugprone-sizeof-expression.html" />
+    <link rel="prev" title="bugprone-posix-return" href="bugprone-posix-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 - bugprone-sizeof-container</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="bugprone-posix-return.html">bugprone-posix-return</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="bugprone-sizeof-expression.html">bugprone-sizeof-expression</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="bugprone-sizeof-container">
+<h1>bugprone-sizeof-container<a class="headerlink" href="#bugprone-sizeof-container" title="Permalink to this headline">¶</a></h1>
+<p>The check finds usages of <code class="docutils literal notranslate"><span class="pre">sizeof</span></code> on expressions of STL container types. Most
+likely the user wanted to use <code class="docutils literal notranslate"><span class="pre">.size()</span></code> instead.</p>
+<p>All class/struct types declared in namespace <code class="docutils literal notranslate"><span class="pre">std::</span></code> having a const <code class="docutils literal notranslate"><span class="pre">size()</span></code>
+method are considered containers, with the exception of <code class="docutils literal notranslate"><span class="pre">std::bitset</span></code> and
+<code class="docutils literal notranslate"><span class="pre">std::array</span></code>.</p>
+<p>Examples:</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="kt">int</span> <span class="n">a</span> <span class="o">=</span> <span class="mi">47</span> <span class="o">+</span> <span class="k">sizeof</span><span class="p">(</span><span class="n">s</span><span class="p">);</span> <span class="c1">// warning: sizeof() doesn't return the size of the container. Did you mean .size()?</span>
+
+<span class="kt">int</span> <span class="n">b</span> <span class="o">=</span> <span class="k">sizeof</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="c1">// no warning, probably intended.</span>
+
+<span class="n">std</span><span class="o">::</span><span class="n">string</span> <span class="n">array_of_strings</span><span class="p">[</span><span class="mi">10</span><span class="p">];</span>
+<span class="kt">int</span> <span class="n">c</span> <span class="o">=</span> <span class="k">sizeof</span><span class="p">(</span><span class="n">array_of_strings</span><span class="p">)</span> <span class="o">/</span> <span class="k">sizeof</span><span class="p">(</span><span class="n">array_of_strings</span><span class="p">[</span><span class="mi">0</span><span class="p">]);</span> <span class="c1">// no warning, definitely intended.</span>
+
+<span class="n">std</span><span class="o">::</span><span class="n">array</span><span class="o"><</span><span class="kt">int</span><span class="p">,</span> <span class="mi">3</span><span class="o">></span> <span class="n">std_array</span><span class="p">;</span>
+<span class="kt">int</span> <span class="n">d</span> <span class="o">=</span> <span class="k">sizeof</span><span class="p">(</span><span class="n">std_array</span><span class="p">);</span> <span class="c1">// no warning, probably intended.</span>
+</pre></div>
+</div>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="bugprone-posix-return.html">bugprone-posix-return</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="bugprone-sizeof-expression.html">bugprone-sizeof-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/bugprone-sizeof-expression.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-sizeof-expression.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-sizeof-expression.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-sizeof-expression.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,233 @@
+
+<!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 - bugprone-sizeof-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="bugprone-string-constructor" href="bugprone-string-constructor.html" />
+    <link rel="prev" title="bugprone-sizeof-container" href="bugprone-sizeof-container.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 - bugprone-sizeof-expression</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="bugprone-sizeof-container.html">bugprone-sizeof-container</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="bugprone-string-constructor.html">bugprone-string-constructor</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="bugprone-sizeof-expression">
+<h1>bugprone-sizeof-expression<a class="headerlink" href="#bugprone-sizeof-expression" title="Permalink to this headline">¶</a></h1>
+<p>The check finds usages of <code class="docutils literal notranslate"><span class="pre">sizeof</span></code> expressions which are most likely errors.</p>
+<p>The <code class="docutils literal notranslate"><span class="pre">sizeof</span></code> operator yields the size (in bytes) of its operand, which may be
+an expression or the parenthesized name of a type. Misuse of this operator may
+be leading to errors and possible software vulnerabilities.</p>
+<div class="section" id="suspicious-usage-of-sizeof-k">
+<h2>Suspicious usage of ‘sizeof(K)’<a class="headerlink" href="#suspicious-usage-of-sizeof-k" title="Permalink to this headline">¶</a></h2>
+<p>A common mistake is to query the <code class="docutils literal notranslate"><span class="pre">sizeof</span></code> of an integer literal. This is
+equivalent to query the size of its type (probably <code class="docutils literal notranslate"><span class="pre">int</span></code>). The intent of the
+programmer was probably to simply get the integer and not its size.</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="cp">#define BUFLEN 42</span>
+<span class="kt">char</span> <span class="n">buf</span><span class="p">[</span><span class="n">BUFLEN</span><span class="p">];</span>
+<span class="n">memset</span><span class="p">(</span><span class="n">buf</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="k">sizeof</span><span class="p">(</span><span class="n">BUFLEN</span><span class="p">));</span>  <span class="c1">// sizeof(42) ==> sizeof(int)</span>
+</pre></div>
+</div>
+</div>
+<div class="section" id="suspicious-usage-of-sizeof-expr">
+<h2>Suspicious usage of ‘sizeof(expr)’<a class="headerlink" href="#suspicious-usage-of-sizeof-expr" title="Permalink to this headline">¶</a></h2>
+<p>In cases, where there is an enum or integer to represent a type, a common
+mistake is to query the <code class="docutils literal notranslate"><span class="pre">sizeof</span></code> on the integer or enum that represents the
+type that should be used by <code class="docutils literal notranslate"><span class="pre">sizeof</span></code>. This results in the size of the integer
+and not of the type the integer represents:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">enum</span> <span class="n">data_type</span> <span class="p">{</span>
+  <span class="n">FLOAT_TYPE</span><span class="p">,</span>
+  <span class="n">DOUBLE_TYPE</span>
+<span class="p">};</span>
+
+<span class="k">struct</span> <span class="n">data</span> <span class="p">{</span>
+  <span class="n">data_type</span> <span class="n">type</span><span class="p">;</span>
+  <span class="kt">void</span><span class="o">*</span> <span class="n">buffer</span><span class="p">;</span>
+  <span class="n">data_type</span> <span class="nf">get_type</span><span class="p">()</span> <span class="p">{</span>
+    <span class="k">return</span> <span class="n">type</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="n">data</span> <span class="n">d</span><span class="p">,</span> <span class="kt">int</span> <span class="n">numElements</span><span class="p">)</span> <span class="p">{</span>
+  <span class="c1">// should be sizeof(float) or sizeof(double), depending on d.get_type()</span>
+  <span class="kt">int</span> <span class="n">numBytes</span> <span class="o">=</span> <span class="n">numElements</span> <span class="o">*</span> <span class="k">sizeof</span><span class="p">(</span><span class="n">d</span><span class="p">.</span><span class="n">get_type</span><span class="p">());</span>
+  <span class="p">...</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+</div>
+<div class="section" id="suspicious-usage-of-sizeof-this">
+<h2>Suspicious usage of ‘sizeof(this)’<a class="headerlink" href="#suspicious-usage-of-sizeof-this" title="Permalink to this headline">¶</a></h2>
+<p>The <code class="docutils literal notranslate"><span class="pre">this</span></code> keyword is evaluated to a pointer to an object of a given type.
+The expression <code class="docutils literal notranslate"><span class="pre">sizeof(this)</span></code> is returning the size of a pointer. The
+programmer most likely wanted the size of the object and not the size of the
+pointer.</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">class</span> <span class="nc">Point</span> <span class="p">{</span>
+  <span class="p">[...]</span>
+  <span class="kt">size_t</span> <span class="n">size</span><span class="p">()</span> <span class="p">{</span> <span class="k">return</span> <span class="k">sizeof</span><span class="p">(</span><span class="k">this</span><span class="p">);</span> <span class="p">}</span>  <span class="c1">// should probably be sizeof(*this)</span>
+  <span class="p">[...]</span>
+<span class="p">};</span>
+</pre></div>
+</div>
+</div>
+<div class="section" id="suspicious-usage-of-sizeof-char">
+<h2>Suspicious usage of ‘sizeof(char*)’<a class="headerlink" href="#suspicious-usage-of-sizeof-char" title="Permalink to this headline">¶</a></h2>
+<p>There is a subtle difference between declaring a string literal with
+<code class="docutils literal notranslate"><span class="pre">char*</span> <span class="pre">A</span> <span class="pre">=</span> <span class="pre">""</span></code> and <code class="docutils literal notranslate"><span class="pre">char</span> <span class="pre">A[]</span> <span class="pre">=</span> <span class="pre">""</span></code>. The first case has the type <code class="docutils literal notranslate"><span class="pre">char*</span></code>
+instead of the aggregate type <code class="docutils literal notranslate"><span class="pre">char[]</span></code>. Using <code class="docutils literal notranslate"><span class="pre">sizeof</span></code> on an object declared
+with <code class="docutils literal notranslate"><span class="pre">char*</span></code> type is returning the size of a pointer instead of the number of
+characters (bytes) in the string literal.</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="n">kMessage</span> <span class="o">=</span> <span class="s">"Hello World!"</span><span class="p">;</span>      <span class="c1">// const char kMessage[] = "...";</span>
+<span class="kt">void</span> <span class="nf">getMessage</span><span class="p">(</span><span class="kt">char</span><span class="o">*</span> <span class="n">buf</span><span class="p">)</span> <span class="p">{</span>
+  <span class="n">memcpy</span><span class="p">(</span><span class="n">buf</span><span class="p">,</span> <span class="n">kMessage</span><span class="p">,</span> <span class="k">sizeof</span><span class="p">(</span><span class="n">kMessage</span><span class="p">));</span>  <span class="c1">// sizeof(char*)</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+</div>
+<div class="section" id="suspicious-usage-of-sizeof-a">
+<h2>Suspicious usage of ‘sizeof(A*)’<a class="headerlink" href="#suspicious-usage-of-sizeof-a" title="Permalink to this headline">¶</a></h2>
+<p>A common mistake is to compute the size of a pointer instead of its pointee.
+These cases may occur because of explicit cast or implicit conversion.</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="kt">int</span> <span class="n">A</span><span class="p">[</span><span class="mi">10</span><span class="p">];</span>
+<span class="n">memset</span><span class="p">(</span><span class="n">A</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="k">sizeof</span><span class="p">(</span><span class="n">A</span> <span class="o">+</span> <span class="mi">0</span><span class="p">));</span>
+
+<span class="k">struct</span> <span class="n">Point</span> <span class="n">point</span><span class="p">;</span>
+<span class="n">memset</span><span class="p">(</span><span class="n">point</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="k">sizeof</span><span class="p">(</span><span class="o">&</span><span class="n">point</span><span class="p">));</span>
+</pre></div>
+</div>
+</div>
+<div class="section" id="suspicious-usage-of-sizeof-sizeof">
+<h2>Suspicious usage of ‘sizeof(…)/sizeof(…)’<a class="headerlink" href="#suspicious-usage-of-sizeof-sizeof" title="Permalink to this headline">¶</a></h2>
+<p>Dividing <code class="docutils literal notranslate"><span class="pre">sizeof</span></code> expressions is typically used to retrieve the number of
+elements of an aggregate. This check warns on incompatible or suspicious cases.</p>
+<p>In the following example, the entity has 10-bytes and is incompatible with the
+type <code class="docutils literal notranslate"><span class="pre">int</span></code> which has 4 bytes.</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="kt">char</span> <span class="n">buf</span><span class="p">[]</span> <span class="o">=</span> <span class="p">{</span> <span class="mi">0</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="mi">6</span><span class="p">,</span> <span class="mi">7</span><span class="p">,</span> <span class="mi">8</span><span class="p">,</span> <span class="mi">9</span> <span class="p">};</span>  <span class="c1">// sizeof(buf) => 10</span>
+<span class="kt">void</span> <span class="nf">getMessage</span><span class="p">(</span><span class="kt">char</span><span class="o">*</span> <span class="n">dst</span><span class="p">)</span> <span class="p">{</span>
+  <span class="n">memcpy</span><span class="p">(</span><span class="n">dst</span><span class="p">,</span> <span class="n">buf</span><span class="p">,</span> <span class="k">sizeof</span><span class="p">(</span><span class="n">buf</span><span class="p">)</span> <span class="o">/</span> <span class="k">sizeof</span><span class="p">(</span><span class="kt">int</span><span class="p">));</span>  <span class="c1">// sizeof(int) => 4  [incompatible sizes]</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+<p>In the following example, the expression <code class="docutils literal notranslate"><span class="pre">sizeof(Values)</span></code> is returning the
+size of <code class="docutils literal notranslate"><span class="pre">char*</span></code>. One can easily be fooled by its declaration, but in parameter
+declaration the size ‘10’ is ignored and the function is receiving a <code class="docutils literal notranslate"><span class="pre">char*</span></code>.</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="kt">char</span> <span class="n">OrderedValues</span><span class="p">[</span><span class="mi">10</span><span class="p">]</span> <span class="o">=</span> <span class="p">{</span> <span class="mi">0</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="mi">6</span><span class="p">,</span> <span class="mi">7</span><span class="p">,</span> <span class="mi">8</span><span class="p">,</span> <span class="mi">9</span> <span class="p">};</span>
+<span class="k">return</span> <span class="nf">CompareArray</span><span class="p">(</span><span class="kt">char</span> <span class="n">Values</span><span class="p">[</span><span class="mi">10</span><span class="p">])</span> <span class="p">{</span>
+  <span class="k">return</span> <span class="n">memcmp</span><span class="p">(</span><span class="n">OrderedValues</span><span class="p">,</span> <span class="n">Values</span><span class="p">,</span> <span class="k">sizeof</span><span class="p">(</span><span class="n">Values</span><span class="p">))</span> <span class="o">==</span> <span class="mi">0</span><span class="p">;</span>  <span class="c1">// sizeof(Values) ==> sizeof(char*) [implicit cast to char*]</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+</div>
+<div class="section" id="suspicious-sizeof-by-sizeof-expression">
+<h2>Suspicious ‘sizeof’ by ‘sizeof’ expression<a class="headerlink" href="#suspicious-sizeof-by-sizeof-expression" title="Permalink to this headline">¶</a></h2>
+<p>Multiplying <code class="docutils literal notranslate"><span class="pre">sizeof</span></code> expressions typically makes no sense and is probably a
+logic error. In the following example, the programmer used <code class="docutils literal notranslate"><span class="pre">*</span></code> instead of
+<code class="docutils literal notranslate"><span class="pre">/</span></code>.</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">const</span> <span class="kt">char</span> <span class="n">kMessage</span><span class="p">[]</span> <span class="o">=</span> <span class="s">"Hello World!"</span><span class="p">;</span>
+<span class="kt">void</span> <span class="nf">getMessage</span><span class="p">(</span><span class="kt">char</span><span class="o">*</span> <span class="n">buf</span><span class="p">)</span> <span class="p">{</span>
+  <span class="n">memcpy</span><span class="p">(</span><span class="n">buf</span><span class="p">,</span> <span class="n">kMessage</span><span class="p">,</span> <span class="k">sizeof</span><span class="p">(</span><span class="n">kMessage</span><span class="p">)</span> <span class="o">*</span> <span class="k">sizeof</span><span class="p">(</span><span class="kt">char</span><span class="p">));</span>  <span class="c1">//  sizeof(kMessage) / sizeof(char)</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+<p>This check may trigger on code using the arraysize macro. The following code is
+working correctly but should be simplified by using only the <code class="docutils literal notranslate"><span class="pre">sizeof</span></code>
+operator.</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">extern</span> <span class="n">Object</span> <span class="n">objects</span><span class="p">[</span><span class="mi">100</span><span class="p">];</span>
+<span class="kt">void</span> <span class="nf">InitializeObjects</span><span class="p">()</span> <span class="p">{</span>
+  <span class="n">memset</span><span class="p">(</span><span class="n">objects</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="n">arraysize</span><span class="p">(</span><span class="n">objects</span><span class="p">)</span> <span class="o">*</span> <span class="k">sizeof</span><span class="p">(</span><span class="n">Object</span><span class="p">));</span>  <span class="c1">// sizeof(objects)</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+</div>
+<div class="section" id="id1">
+<h2>Suspicious usage of ‘sizeof(sizeof(…))’<a class="headerlink" href="#id1" title="Permalink to this headline">¶</a></h2>
+<p>Getting the <code class="docutils literal notranslate"><span class="pre">sizeof</span></code> of a <code class="docutils literal notranslate"><span class="pre">sizeof</span></code> makes no sense and is typically an error
+hidden through macros.</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="cp">#define INT_SZ sizeof(int)</span>
+<span class="kt">int</span> <span class="n">buf</span><span class="p">[]</span> <span class="o">=</span> <span class="p">{</span> <span class="mi">42</span> <span class="p">};</span>
+<span class="kt">void</span> <span class="nf">getInt</span><span class="p">(</span><span class="kt">int</span><span class="o">*</span> <span class="n">dst</span><span class="p">)</span> <span class="p">{</span>
+  <span class="n">memcpy</span><span class="p">(</span><span class="n">dst</span><span class="p">,</span> <span class="n">buf</span><span class="p">,</span> <span class="k">sizeof</span><span class="p">(</span><span class="n">INT_SZ</span><span class="p">));</span>  <span class="c1">// sizeof(sizeof(int)) is suspicious.</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-warnonsizeofconstant">
+<code class="descname">WarnOnSizeOfConstant</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-warnonsizeofconstant" title="Permalink to this definition">¶</a></dt>
+<dd><p>When non-zero, the check will warn on an expression like
+<code class="docutils literal notranslate"><span class="pre">sizeof(CONSTANT)</span></code>. Default is <cite>1</cite>.</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-warnonsizeofintegerexpression">
+<code class="descname">WarnOnSizeOfIntegerExpression</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-warnonsizeofintegerexpression" title="Permalink to this definition">¶</a></dt>
+<dd><p>When non-zero, the check will warn on an expression like <code class="docutils literal notranslate"><span class="pre">sizeof(expr)</span></code>
+where the expression results in an integer. Default is <cite>0</cite>.</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-warnonsizeofthis">
+<code class="descname">WarnOnSizeOfThis</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-warnonsizeofthis" title="Permalink to this definition">¶</a></dt>
+<dd><p>When non-zero, the check will warn on an expression like <code class="docutils literal notranslate"><span class="pre">sizeof(this)</span></code>.
+Default is <cite>1</cite>.</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-warnonsizeofcomparetoconstant">
+<code class="descname">WarnOnSizeOfCompareToConstant</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-warnonsizeofcomparetoconstant" title="Permalink to this definition">¶</a></dt>
+<dd><p>When non-zero, the check will warn on an expression like
+<code class="docutils literal notranslate"><span class="pre">sizeof(epxr)</span> <span class="pre"><=</span> <span class="pre">k</span></code> for a suspicious constant <cite>k</cite> while <cite>k</cite> is <cite>0</cite> or
+greater than <cite>0x8000</cite>. Default is <cite>1</cite>.</p>
+</dd></dl>
+
+</div>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="bugprone-sizeof-container.html">bugprone-sizeof-container</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="bugprone-string-constructor.html">bugprone-string-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/bugprone-string-constructor.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-string-constructor.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-string-constructor.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-string-constructor.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 - bugprone-string-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="bugprone-string-integer-assignment" href="bugprone-string-integer-assignment.html" />
+    <link rel="prev" title="bugprone-sizeof-expression" href="bugprone-sizeof-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 - bugprone-string-constructor</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="bugprone-sizeof-expression.html">bugprone-sizeof-expression</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="bugprone-string-integer-assignment.html">bugprone-string-integer-assignment</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="bugprone-string-constructor">
+<h1>bugprone-string-constructor<a class="headerlink" href="#bugprone-string-constructor" title="Permalink to this headline">¶</a></h1>
+<p>Finds string constructors that are suspicious and probably errors.</p>
+<p>A common mistake is to swap parameters to the ‘fill’ string-constructor.</p>
+<p>Examples:</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">str</span><span class="p">(</span><span class="sc">'x'</span><span class="p">,</span> <span class="mi">50</span><span class="p">);</span> <span class="c1">// should be str(50, 'x')</span>
+</pre></div>
+</div>
+<p>Calling the string-literal constructor with a length bigger than the literal is
+suspicious and adds extra random characters to the string.</p>
+<p>Examples:</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="p">(</span><span class="s">"test"</span><span class="p">,</span> <span class="mi">200</span><span class="p">);</span>   <span class="c1">// Will include random characters after "test".</span>
+</pre></div>
+</div>
+<p>Creating an empty string from constructors with parameters is considered
+suspicious. The programmer should use the empty constructor instead.</p>
+<p>Examples:</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="p">(</span><span class="s">"test"</span><span class="p">,</span> <span class="mi">0</span><span class="p">);</span>   <span class="c1">// Creation of an empty string.</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-warnonlargelength">
+<code class="descname">WarnOnLargeLength</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-warnonlargelength" title="Permalink to this definition">¶</a></dt>
+<dd><p>When non-zero, the check will warn on a string with a length greater than
+<cite>LargeLengthThreshold</cite>. Default is <cite>1</cite>.</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-largelengththreshold">
+<code class="descname">LargeLengthThreshold</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-largelengththreshold" title="Permalink to this definition">¶</a></dt>
+<dd><p>An integer specifying the large length threshold. Default is <cite>0x800000</cite>.</p>
+</dd></dl>
+
+</div>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="bugprone-sizeof-expression.html">bugprone-sizeof-expression</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="bugprone-string-integer-assignment.html">bugprone-string-integer-assignment</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/bugprone-string-integer-assignment.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-string-integer-assignment.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-string-integer-assignment.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-string-integer-assignment.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 - bugprone-string-integer-assignment — 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="bugprone-string-literal-with-embedded-nul" href="bugprone-string-literal-with-embedded-nul.html" />
+    <link rel="prev" title="bugprone-string-constructor" href="bugprone-string-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 - bugprone-string-integer-assignment</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="bugprone-string-constructor.html">bugprone-string-constructor</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="bugprone-string-literal-with-embedded-nul.html">bugprone-string-literal-with-embedded-nul</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="bugprone-string-integer-assignment">
+<h1>bugprone-string-integer-assignment<a class="headerlink" href="#bugprone-string-integer-assignment" title="Permalink to this headline">¶</a></h1>
+<p>The check finds assignments of an integer to <code class="docutils literal notranslate"><span class="pre">std::basic_string<CharT></span></code>
+(<code class="docutils literal notranslate"><span class="pre">std::string</span></code>, <code class="docutils literal notranslate"><span class="pre">std::wstring</span></code>, etc.). The source of the problem is the
+following assignment operator of <code class="docutils literal notranslate"><span class="pre">std::basic_string<CharT></span></code>:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="n">basic_string</span><span class="o">&</span> <span class="k">operator</span><span class="o">=</span><span class="p">(</span> <span class="n">CharT</span> <span class="n">ch</span> <span class="p">);</span>
+</pre></div>
+</div>
+<p>Numeric types can be implicitly casted to character types.</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="kt">int</span> <span class="n">x</span> <span class="o">=</span> <span class="mi">5965</span><span class="p">;</span>
+<span class="n">s</span> <span class="o">=</span> <span class="mi">6</span><span class="p">;</span>
+<span class="n">s</span> <span class="o">=</span> <span class="n">x</span><span class="p">;</span>
+</pre></div>
+</div>
+<p>Use the appropriate conversion functions or character literals.</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="kt">int</span> <span class="n">x</span> <span class="o">=</span> <span class="mi">5965</span><span class="p">;</span>
+<span class="n">s</span> <span class="o">=</span> <span class="sc">'6'</span><span class="p">;</span>
+<span class="n">s</span> <span class="o">=</span> <span class="n">std</span><span class="o">::</span><span class="n">to_string</span><span class="p">(</span><span class="n">x</span><span class="p">);</span>
+</pre></div>
+</div>
+<p>In order to suppress false positives, use an explicit cast.</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="n">s</span> <span class="o">=</span> <span class="k">static_cast</span><span class="o"><</span><span class="kt">char</span><span class="o">></span><span class="p">(</span><span class="mi">6</span><span class="p">);</span>
+</pre></div>
+</div>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="bugprone-string-constructor.html">bugprone-string-constructor</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="bugprone-string-literal-with-embedded-nul.html">bugprone-string-literal-with-embedded-nul</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/bugprone-string-literal-with-embedded-nul.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-string-literal-with-embedded-nul.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-string-literal-with-embedded-nul.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-string-literal-with-embedded-nul.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 - bugprone-string-literal-with-embedded-nul — 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="bugprone-suspicious-enum-usage" href="bugprone-suspicious-enum-usage.html" />
+    <link rel="prev" title="bugprone-string-integer-assignment" href="bugprone-string-integer-assignment.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 - bugprone-string-literal-with-embedded-nul</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="bugprone-string-integer-assignment.html">bugprone-string-integer-assignment</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="bugprone-suspicious-enum-usage.html">bugprone-suspicious-enum-usage</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="bugprone-string-literal-with-embedded-nul">
+<h1>bugprone-string-literal-with-embedded-nul<a class="headerlink" href="#bugprone-string-literal-with-embedded-nul" title="Permalink to this headline">¶</a></h1>
+<p>Finds occurrences of string literal with embedded NUL character and validates
+their usage.</p>
+<div class="section" id="invalid-escaping">
+<h2>Invalid escaping<a class="headerlink" href="#invalid-escaping" title="Permalink to this headline">¶</a></h2>
+<p>Special characters can be escaped within a string literal by using their
+hexadecimal encoding like <code class="docutils literal notranslate"><span class="pre">\x42</span></code>. A common mistake is to escape them
+like this <code class="docutils literal notranslate"><span class="pre">\0x42</span></code> where the <code class="docutils literal notranslate"><span class="pre">\0</span></code> stands for the NUL character.</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="n">Example</span><span class="p">[]</span> <span class="o">=</span> <span class="s">"Invalid character: </span><span class="se">\0</span><span class="s">x12 should be </span><span class="se">\x12</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="n">Bytes</span><span class="p">[]</span> <span class="o">=</span> <span class="s">"</span><span class="se">\x03\0</span><span class="s">x02</span><span class="se">\0</span><span class="s">x01</span><span class="se">\0</span><span class="s">x00</span><span class="se">\0</span><span class="s">xFF</span><span class="se">\0</span><span class="s">xFF</span><span class="se">\0</span><span class="s">xFF"</span><span class="p">;</span>
+</pre></div>
+</div>
+</div>
+<div class="section" id="truncated-literal">
+<h2>Truncated literal<a class="headerlink" href="#truncated-literal" title="Permalink to this headline">¶</a></h2>
+<p>String-like classes can manipulate strings with embedded NUL as they are keeping
+track of the bytes and the length. This is not the case for a <code class="docutils literal notranslate"><span class="pre">char*</span></code>
+(NUL-terminated) string.</p>
+<p>A common mistake is to pass a string-literal with embedded NUL to a string
+constructor expecting a NUL-terminated string. The bytes after the first NUL
+character are truncated.</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">str</span><span class="p">(</span><span class="s">"abc</span><span class="se">\0</span><span class="s">def"</span><span class="p">);</span>  <span class="c1">// "def" is truncated</span>
+<span class="n">str</span> <span class="o">+=</span> <span class="s">"</span><span class="se">\0</span><span class="s">"</span><span class="p">;</span>                  <span class="c1">// This statement is doing nothing</span>
+<span class="k">if</span> <span class="p">(</span><span class="n">str</span> <span class="o">==</span> <span class="s">"</span><span class="se">\0</span><span class="s">abc"</span><span class="p">)</span> <span class="k">return</span><span class="p">;</span>   <span class="c1">// This expression is always true</span>
+</pre></div>
+</div>
+</div>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="bugprone-string-integer-assignment.html">bugprone-string-integer-assignment</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="bugprone-suspicious-enum-usage.html">bugprone-suspicious-enum-usage</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/bugprone-suspicious-enum-usage.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-suspicious-enum-usage.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-suspicious-enum-usage.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-suspicious-enum-usage.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,139 @@
+
+<!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 - bugprone-suspicious-enum-usage — 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="bugprone-suspicious-memset-usage" href="bugprone-suspicious-memset-usage.html" />
+    <link rel="prev" title="bugprone-string-literal-with-embedded-nul" href="bugprone-string-literal-with-embedded-nul.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 - bugprone-suspicious-enum-usage</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="bugprone-string-literal-with-embedded-nul.html">bugprone-string-literal-with-embedded-nul</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="bugprone-suspicious-memset-usage.html">bugprone-suspicious-memset-usage</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="bugprone-suspicious-enum-usage">
+<h1>bugprone-suspicious-enum-usage<a class="headerlink" href="#bugprone-suspicious-enum-usage" title="Permalink to this headline">¶</a></h1>
+<p>The checker detects various cases when an enum is probably misused (as a bitmask
+).</p>
+<ol class="arabic simple">
+<li>When “ADD” or “bitwise OR” is used between two enum which come from different
+types and these types value ranges are not disjoint.</li>
+</ol>
+<p>The following cases will be investigated only using <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>. We
+regard the enum as a (suspicious)
+bitmask if the three conditions below are true at the same time:</p>
+<ul class="simple">
+<li>at most half of the elements of the enum are non pow-of-2 numbers (because of
+short enumerations)</li>
+<li>there is another non pow-of-2 number than the enum constant representing all
+choices (the result “bitwise OR” operation of all enum elements)</li>
+<li>enum type variable/enumconstant is used as an argument of a <cite>+</cite> or “bitwise OR
+” operator</li>
+</ul>
+<p>So whenever the non pow-of-2 element is used as a bitmask element we diagnose a
+misuse and give a warning.</p>
+<ol class="arabic simple" start="2">
+<li>Investigating the right hand side of <cite>+=</cite> and <cite>|=</cite> operator.</li>
+<li>Check only the enum value side of a <cite>|</cite> and <cite>+</cite> operator if one of them is not
+enum val.</li>
+<li>Check both side of <cite>|</cite> or <cite>+</cite> operator where the enum values are from the
+same enum type.</li>
+</ol>
+<p>Examples:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">enum</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="n">C</span> <span class="p">};</span>
+<span class="k">enum</span> <span class="p">{</span> <span class="n">D</span><span class="p">,</span> <span class="n">E</span><span class="p">,</span> <span class="n">F</span> <span class="o">=</span> <span class="mi">5</span> <span class="p">};</span>
+<span class="k">enum</span> <span class="p">{</span> <span class="n">G</span> <span class="o">=</span> <span class="mi">10</span><span class="p">,</span> <span class="n">H</span> <span class="o">=</span> <span class="mi">11</span><span class="p">,</span> <span class="n">I</span> <span class="o">=</span> <span class="mi">12</span> <span class="p">};</span>
+
+<span class="kt">unsigned</span> <span class="n">flag</span><span class="p">;</span>
+<span class="n">flag</span> <span class="o">=</span>
+    <span class="n">A</span> <span class="o">|</span>
+    <span class="n">H</span><span class="p">;</span> <span class="c1">// OK, disjoint value intervalls in the enum types ->probably good use.</span>
+<span class="n">flag</span> <span class="o">=</span> <span class="n">B</span> <span class="o">|</span> <span class="n">F</span><span class="p">;</span> <span class="c1">// Warning, have common values so they are probably misused.</span>
+
+<span class="c1">// Case 2:</span>
+<span class="k">enum</span> <span class="n">Bitmask</span> <span class="p">{</span>
+  <span class="n">A</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="mi">1</span><span class="p">,</span>
+  <span class="n">C</span> <span class="o">=</span> <span class="mi">2</span><span class="p">,</span>
+  <span class="n">D</span> <span class="o">=</span> <span class="mi">4</span><span class="p">,</span>
+  <span class="n">E</span> <span class="o">=</span> <span class="mi">8</span><span class="p">,</span>
+  <span class="n">F</span> <span class="o">=</span> <span class="mi">16</span><span class="p">,</span>
+  <span class="n">G</span> <span class="o">=</span> <span class="mi">31</span> <span class="c1">// OK, real bitmask.</span>
+<span class="p">};</span>
+
+<span class="k">enum</span> <span class="n">Almostbitmask</span> <span class="p">{</span>
+  <span class="n">AA</span> <span class="o">=</span> <span class="mi">0</span><span class="p">,</span>
+  <span class="n">BB</span> <span class="o">=</span> <span class="mi">1</span><span class="p">,</span>
+  <span class="n">CC</span> <span class="o">=</span> <span class="mi">2</span><span class="p">,</span>
+  <span class="n">DD</span> <span class="o">=</span> <span class="mi">4</span><span class="p">,</span>
+  <span class="n">EE</span> <span class="o">=</span> <span class="mi">8</span><span class="p">,</span>
+  <span class="n">FF</span> <span class="o">=</span> <span class="mi">16</span><span class="p">,</span>
+  <span class="n">GG</span> <span class="c1">// Problem, forgot to initialize.</span>
+<span class="p">};</span>
+
+<span class="kt">unsigned</span> <span class="n">flag</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span>
+<span class="n">flag</span> <span class="o">|=</span> <span class="n">E</span><span class="p">;</span> <span class="c1">// OK.</span>
+<span class="n">flag</span> <span class="o">|=</span>
+    <span class="n">EE</span><span class="p">;</span> <span class="c1">// Warning at the decl, and note that it was used here as a bitmask.</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>Default value: 0.
+When non-null the suspicious bitmask usage will be investigated additionally
+to the different enum usage check.</p>
+</dd></dl>
+
+</div>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="bugprone-string-literal-with-embedded-nul.html">bugprone-string-literal-with-embedded-nul</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="bugprone-suspicious-memset-usage.html">bugprone-suspicious-memset-usage</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/bugprone-suspicious-memset-usage.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-suspicious-memset-usage.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-suspicious-memset-usage.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-suspicious-memset-usage.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 - bugprone-suspicious-memset-usage — 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="bugprone-suspicious-missing-comma" href="bugprone-suspicious-missing-comma.html" />
+    <link rel="prev" title="bugprone-suspicious-enum-usage" href="bugprone-suspicious-enum-usage.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 - bugprone-suspicious-memset-usage</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="bugprone-suspicious-enum-usage.html">bugprone-suspicious-enum-usage</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="bugprone-suspicious-missing-comma.html">bugprone-suspicious-missing-comma</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="bugprone-suspicious-memset-usage">
+<h1>bugprone-suspicious-memset-usage<a class="headerlink" href="#bugprone-suspicious-memset-usage" title="Permalink to this headline">¶</a></h1>
+<p>This check finds <code class="docutils literal notranslate"><span class="pre">memset()</span></code> calls with potential mistakes in their arguments.
+Considering the function as <code class="docutils literal notranslate"><span class="pre">void*</span> <span class="pre">memset(void*</span> <span class="pre">destination,</span> <span class="pre">int</span> <span class="pre">fill_value,</span>
+<span class="pre">size_t</span> <span class="pre">byte_count)</span></code>, the following cases are covered:</p>
+<p><strong>Case 1: Fill value is a character ``‘0’``</strong></p>
+<p>Filling up a memory area with ASCII code 48 characters is not customary,
+possibly integer zeroes were intended instead.
+The check offers a replacement of <code class="docutils literal notranslate"><span class="pre">'0'</span></code> with <code class="docutils literal notranslate"><span class="pre">0</span></code>. Memsetting character
+pointers with <code class="docutils literal notranslate"><span class="pre">'0'</span></code> is allowed.</p>
+<p><strong>Case 2: Fill value is truncated</strong></p>
+<p>Memset converts <code class="docutils literal notranslate"><span class="pre">fill_value</span></code> to <code class="docutils literal notranslate"><span class="pre">unsigned</span> <span class="pre">char</span></code> before using it. If
+<code class="docutils literal notranslate"><span class="pre">fill_value</span></code> is out of unsigned character range, it gets truncated
+and memory will not contain the desired pattern.</p>
+<p><strong>Case 3: Byte count is zero</strong></p>
+<p>Calling memset with a literal zero in its <code class="docutils literal notranslate"><span class="pre">byte_count</span></code> argument is likely
+to be unintended and swapped with <code class="docutils literal notranslate"><span class="pre">fill_value</span></code>. The check offers to swap
+these two arguments.</p>
+<p>Corresponding cpplint.py check name: <code class="docutils literal notranslate"><span class="pre">runtime/memset</span></code>.</p>
+<p>Examples:</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">i</span><span class="p">[</span><span class="mi">5</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="kt">int</span> <span class="o">*</span><span class="n">ip</span> <span class="o">=</span> <span class="n">i</span><span class="p">;</span>
+  <span class="kt">char</span> <span class="n">c</span> <span class="o">=</span> <span class="sc">'1'</span><span class="p">;</span>
+  <span class="kt">char</span> <span class="o">*</span><span class="n">cp</span> <span class="o">=</span> <span class="o">&</span><span class="n">c</span><span class="p">;</span>
+  <span class="kt">int</span> <span class="n">v</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span>
+
+  <span class="c1">// Case 1</span>
+  <span class="n">memset</span><span class="p">(</span><span class="n">ip</span><span class="p">,</span> <span class="sc">'0'</span><span class="p">,</span> <span class="mi">1</span><span class="p">);</span> <span class="c1">// suspicious</span>
+  <span class="n">memset</span><span class="p">(</span><span class="n">cp</span><span class="p">,</span> <span class="sc">'0'</span><span class="p">,</span> <span class="mi">1</span><span class="p">);</span> <span class="c1">// OK</span>
+
+  <span class="c1">// Case 2</span>
+  <span class="n">memset</span><span class="p">(</span><span class="n">ip</span><span class="p">,</span> <span class="mh">0xabcd</span><span class="p">,</span> <span class="mi">1</span><span class="p">);</span> <span class="c1">// fill value gets truncated</span>
+  <span class="n">memset</span><span class="p">(</span><span class="n">ip</span><span class="p">,</span> <span class="mh">0x00</span><span class="p">,</span> <span class="mi">1</span><span class="p">);</span>   <span class="c1">// OK</span>
+
+  <span class="c1">// Case 3</span>
+  <span class="n">memset</span><span class="p">(</span><span class="n">ip</span><span class="p">,</span> <span class="k">sizeof</span><span class="p">(</span><span class="kt">int</span><span class="p">),</span> <span class="n">v</span><span class="p">);</span> <span class="c1">// zero length, potentially swapped</span>
+  <span class="n">memset</span><span class="p">(</span><span class="n">ip</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">1</span><span class="p">);</span>           <span class="c1">// OK</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="bugprone-suspicious-enum-usage.html">bugprone-suspicious-enum-usage</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="bugprone-suspicious-missing-comma.html">bugprone-suspicious-missing-comma</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/bugprone-suspicious-missing-comma.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-suspicious-missing-comma.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-suspicious-missing-comma.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-suspicious-missing-comma.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 - bugprone-suspicious-missing-comma — 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="bugprone-suspicious-semicolon" href="bugprone-suspicious-semicolon.html" />
+    <link rel="prev" title="bugprone-suspicious-memset-usage" href="bugprone-suspicious-memset-usage.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 - bugprone-suspicious-missing-comma</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="bugprone-suspicious-memset-usage.html">bugprone-suspicious-memset-usage</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="bugprone-suspicious-semicolon.html">bugprone-suspicious-semicolon</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="bugprone-suspicious-missing-comma">
+<h1>bugprone-suspicious-missing-comma<a class="headerlink" href="#bugprone-suspicious-missing-comma" title="Permalink to this headline">¶</a></h1>
+<p>String literals placed side-by-side are concatenated at translation phase 6
+(after the preprocessor). This feature is used to represent long string
+literal on multiple lines.</p>
+<p>For instance, the following declarations are equivalent:</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="n">A</span><span class="p">[]</span> <span class="o">=</span> <span class="s">"This is a test"</span><span class="p">;</span>
+<span class="k">const</span> <span class="kt">char</span><span class="o">*</span> <span class="n">B</span><span class="p">[]</span> <span class="o">=</span> <span class="s">"This"</span> <span class="s">" is a "</span>    <span class="s">"test"</span><span class="p">;</span>
+</pre></div>
+</div>
+<p>A common mistake done by programmers is to forget a comma between two string
+literals in an array initializer list.</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="n">Test</span><span class="p">[]</span> <span class="o">=</span> <span class="p">{</span>
+  <span class="s">"line 1"</span><span class="p">,</span>
+  <span class="s">"line 2"</span>     <span class="c1">// Missing comma!</span>
+  <span class="s">"line 3"</span><span class="p">,</span>
+  <span class="s">"line 4"</span><span class="p">,</span>
+  <span class="s">"line 5"</span>
+<span class="p">};</span>
+</pre></div>
+</div>
+<p>The array contains the string “line 2line3” at offset 1 (i.e. Test[1]). Clang
+won’t generate warnings at compile time.</p>
+<p>This check may warn incorrectly on cases like:</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="n">SupportedFormat</span><span class="p">[]</span> <span class="o">=</span> <span class="p">{</span>
+  <span class="s">"Error %s"</span><span class="p">,</span>
+  <span class="s">"Code "</span> <span class="n">PRIu64</span><span class="p">,</span>   <span class="c1">// May warn here.</span>
+  <span class="s">"Warning %s"</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-sizethreshold">
+<code class="descname">SizeThreshold</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-sizethreshold" title="Permalink to this definition">¶</a></dt>
+<dd><p>An unsigned integer specifying the minimum size of a string literal to be
+considered by the check. Default is <cite>5U</cite>.</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-ratiothreshold">
+<code class="descname">RatioThreshold</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-ratiothreshold" title="Permalink to this definition">¶</a></dt>
+<dd><p>A string specifying the maximum threshold ratio [0, 1.0] of suspicious string
+literals to be considered. Default is <cite>“.2”</cite>.</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-maxconcatenatedtokens">
+<code class="descname">MaxConcatenatedTokens</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-maxconcatenatedtokens" title="Permalink to this definition">¶</a></dt>
+<dd><p>An unsigned integer specifying the maximum number of concatenated tokens.
+Default is <cite>5U</cite>.</p>
+</dd></dl>
+
+</div>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="bugprone-suspicious-memset-usage.html">bugprone-suspicious-memset-usage</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="bugprone-suspicious-semicolon.html">bugprone-suspicious-semicolon</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/bugprone-suspicious-semicolon.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-suspicious-semicolon.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-suspicious-semicolon.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-suspicious-semicolon.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 - bugprone-suspicious-semicolon — 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="bugprone-suspicious-string-compare" href="bugprone-suspicious-string-compare.html" />
+    <link rel="prev" title="bugprone-suspicious-missing-comma" href="bugprone-suspicious-missing-comma.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 - bugprone-suspicious-semicolon</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="bugprone-suspicious-missing-comma.html">bugprone-suspicious-missing-comma</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="bugprone-suspicious-string-compare.html">bugprone-suspicious-string-compare</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="bugprone-suspicious-semicolon">
+<h1>bugprone-suspicious-semicolon<a class="headerlink" href="#bugprone-suspicious-semicolon" title="Permalink to this headline">¶</a></h1>
+<p>Finds most instances of stray semicolons that unexpectedly alter the meaning of
+the code. More specifically, it looks for <code class="docutils literal notranslate"><span class="pre">if</span></code>, <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 whose body is a single semicolon, and then analyzes the
+context of the code (e.g. indentation) in an attempt to determine whether that
+is intentional.</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">if</span> <span class="p">(</span><span class="n">x</span> <span class="o"><</span> <span class="n">y</span><span class="p">);</span>
+<span class="p">{</span>
+  <span class="n">x</span><span class="o">++</span><span class="p">;</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+<p>Here the body of the <code class="docutils literal notranslate"><span class="pre">if</span></code> statement consists of only the semicolon at the end
+of the first line, and <cite>x</cite> will be incremented regardless of the condition.</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">while</span> <span class="p">((</span><span class="n">line</span> <span class="o">=</span> <span class="n">readLine</span><span class="p">(</span><span class="n">file</span><span class="p">))</span> <span class="o">!=</span> <span class="nb">NULL</span><span class="p">);</span>
+  <span class="n">processLine</span><span class="p">(</span><span class="n">line</span><span class="p">);</span>
+</pre></div>
+</div>
+<p>As a result of this code, <cite>processLine()</cite> will only be called once, when the
+<code class="docutils literal notranslate"><span class="pre">while</span></code> loop with the empty body exits with <cite>line == NULL</cite>. The indentation of
+the code indicates the intention of the programmer.</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">if</span> <span class="p">(</span><span class="n">x</span> <span class="o">>=</span> <span class="n">y</span><span class="p">);</span>
+<span class="n">x</span> <span class="o">-=</span> <span class="n">y</span><span class="p">;</span>
+</pre></div>
+</div>
+<p>While the indentation does not imply any nesting, there is simply no valid
+reason to have an <cite>if</cite> statement with an empty body (but it can make sense for
+a loop). So this check issues a warning for the code above.</p>
+<p>To solve the issue remove the stray semicolon or in case the empty body is
+intentional, reflect this using code indentation or put the semicolon in a new
+line. For example:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">while</span> <span class="p">(</span><span class="n">readWhitespace</span><span class="p">());</span>
+  <span class="n">Token</span> <span class="n">t</span> <span class="o">=</span> <span class="n">readNextToken</span><span class="p">();</span>
+</pre></div>
+</div>
+<p>Here the second line is indented in a way that suggests that it is meant to be
+the body of the <cite>while</cite> loop - whose body is in fact empty, because of the
+semicolon at the end of the first line.</p>
+<p>Either remove the indentation from the second line:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">while</span> <span class="p">(</span><span class="n">readWhitespace</span><span class="p">());</span>
+<span class="n">Token</span> <span class="n">t</span> <span class="o">=</span> <span class="n">readNextToken</span><span class="p">();</span>
+</pre></div>
+</div>
+<p>… or move the semicolon from the end of the first line to a new line:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">while</span> <span class="p">(</span><span class="n">readWhitespace</span><span class="p">())</span>
+  <span class="p">;</span>
+
+  <span class="n">Token</span> <span class="n">t</span> <span class="o">=</span> <span class="n">readNextToken</span><span class="p">();</span>
+</pre></div>
+</div>
+<p>In this case the check will assume that you know what you are doing, and will
+not raise a warning.</p>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="bugprone-suspicious-missing-comma.html">bugprone-suspicious-missing-comma</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="bugprone-suspicious-string-compare.html">bugprone-suspicious-string-compare</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/bugprone-suspicious-string-compare.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-suspicious-string-compare.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-suspicious-string-compare.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-suspicious-string-compare.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,121 @@
+
+<!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 - bugprone-suspicious-string-compare — 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="bugprone-swapped-arguments" href="bugprone-swapped-arguments.html" />
+    <link rel="prev" title="bugprone-suspicious-semicolon" href="bugprone-suspicious-semicolon.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 - bugprone-suspicious-string-compare</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="bugprone-suspicious-semicolon.html">bugprone-suspicious-semicolon</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="bugprone-swapped-arguments.html">bugprone-swapped-arguments</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="bugprone-suspicious-string-compare">
+<h1>bugprone-suspicious-string-compare<a class="headerlink" href="#bugprone-suspicious-string-compare" title="Permalink to this headline">¶</a></h1>
+<p>Find suspicious usage of runtime string comparison functions.
+This check is valid in C and C++.</p>
+<p>Checks for calls with implicit comparator and proposed to explicitly add it.</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">if</span> <span class="p">(</span><span class="n">strcmp</span><span class="p">(...))</span>       <span class="c1">// Implicitly compare to zero</span>
+<span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="n">strcmp</span><span class="p">(...))</span>      <span class="c1">// Won't warn</span>
+<span class="k">if</span> <span class="p">(</span><span class="n">strcmp</span><span class="p">(...)</span> <span class="o">!=</span> <span class="mi">0</span><span class="p">)</span>  <span class="c1">// Won't warn</span>
+</pre></div>
+</div>
+<p>Checks that compare function results (i,e, <code class="docutils literal notranslate"><span class="pre">strcmp</span></code>) are compared to valid
+constant. The resulting value is</p>
+<div class="code highlight-default notranslate"><div class="highlight"><pre><span></span><span class="o"><</span>  <span class="mi">0</span>    <span class="n">when</span> <span class="n">lower</span> <span class="n">than</span><span class="p">,</span>
+<span class="o">></span>  <span class="mi">0</span>    <span class="n">when</span> <span class="n">greater</span> <span class="n">than</span><span class="p">,</span>
+<span class="o">==</span> <span class="mi">0</span>    <span class="n">when</span> <span class="n">equals</span><span class="o">.</span>
+</pre></div>
+</div>
+<p>A common mistake is to compare the result to <cite>1</cite> or <cite>-1</cite>.</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">if</span> <span class="p">(</span><span class="n">strcmp</span><span class="p">(...)</span> <span class="o">==</span> <span class="o">-</span><span class="mi">1</span><span class="p">)</span>  <span class="c1">// Incorrect usage of the returned value.</span>
+</pre></div>
+</div>
+<p>Additionally, the check warns if the results value is implicitly cast to a
+<em>suspicious</em> non-integer type. It’s happening when the returned value is used in
+a wrong context.</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">if</span> <span class="p">(</span><span class="n">strcmp</span><span class="p">(...)</span> <span class="o"><</span> <span class="mf">0.</span><span class="p">)</span>  <span class="c1">// Incorrect usage of the returned value.</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-warnonimplicitcomparison">
+<code class="descname">WarnOnImplicitComparison</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-warnonimplicitcomparison" title="Permalink to this definition">¶</a></dt>
+<dd><p>When non-zero, the check will warn on implicit comparison. <cite>1</cite> by default.</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-warnonlogicalnotcomparison">
+<code class="descname">WarnOnLogicalNotComparison</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-warnonlogicalnotcomparison" title="Permalink to this definition">¶</a></dt>
+<dd><p>When non-zero, the check will warn on logical not comparison. <cite>0</cite> by default.</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-stringcomparelikefunctions">
+<code class="descname">StringCompareLikeFunctions</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-stringcomparelikefunctions" title="Permalink to this definition">¶</a></dt>
+<dd><p>A string specifying the comma-separated names of the extra string comparison
+functions. Default is an empty string.
+The check will detect the following string comparison functions:
+<cite>__builtin_memcmp</cite>, <cite>__builtin_strcasecmp</cite>, <cite>__builtin_strcmp</cite>,
+<cite>__builtin_strncasecmp</cite>, <cite>__builtin_strncmp</cite>, <cite>_mbscmp</cite>, <cite>_mbscmp_l</cite>,
+<cite>_mbsicmp</cite>, <cite>_mbsicmp_l</cite>, <cite>_mbsnbcmp</cite>, <cite>_mbsnbcmp_l</cite>, <cite>_mbsnbicmp</cite>,
+<cite>_mbsnbicmp_l</cite>, <cite>_mbsncmp</cite>, <cite>_mbsncmp_l</cite>, <cite>_mbsnicmp</cite>, <cite>_mbsnicmp_l</cite>,
+<cite>_memicmp</cite>, <cite>_memicmp_l</cite>, <cite>_stricmp</cite>, <cite>_stricmp_l</cite>, <cite>_strnicmp</cite>,
+<cite>_strnicmp_l</cite>, <cite>_wcsicmp</cite>, <cite>_wcsicmp_l</cite>, <cite>_wcsnicmp</cite>, <cite>_wcsnicmp_l</cite>,
+<cite>lstrcmp</cite>, <cite>lstrcmpi</cite>, <cite>memcmp</cite>, <cite>memicmp</cite>, <cite>strcasecmp</cite>, <cite>strcmp</cite>,
+<cite>strcmpi</cite>, <cite>stricmp</cite>, <cite>strncasecmp</cite>, <cite>strncmp</cite>, <cite>strnicmp</cite>, <cite>wcscasecmp</cite>,
+<cite>wcscmp</cite>, <cite>wcsicmp</cite>, <cite>wcsncmp</cite>, <cite>wcsnicmp</cite>, <cite>wmemcmp</cite>.</p>
+</dd></dl>
+
+</div>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="bugprone-suspicious-semicolon.html">bugprone-suspicious-semicolon</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="bugprone-swapped-arguments.html">bugprone-swapped-arguments</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/bugprone-swapped-arguments.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-swapped-arguments.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-swapped-arguments.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-swapped-arguments.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 - bugprone-swapped-arguments — 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="bugprone-terminating-continue" href="bugprone-terminating-continue.html" />
+    <link rel="prev" title="bugprone-suspicious-string-compare" href="bugprone-suspicious-string-compare.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 - bugprone-swapped-arguments</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="bugprone-suspicious-string-compare.html">bugprone-suspicious-string-compare</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="bugprone-terminating-continue.html">bugprone-terminating-continue</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="bugprone-swapped-arguments">
+<h1>bugprone-swapped-arguments<a class="headerlink" href="#bugprone-swapped-arguments" title="Permalink to this headline">¶</a></h1>
+<p>Finds potentially swapped arguments by looking at implicit conversions.</p>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="bugprone-suspicious-string-compare.html">bugprone-suspicious-string-compare</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="bugprone-terminating-continue.html">bugprone-terminating-continue</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/bugprone-terminating-continue.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-terminating-continue.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-terminating-continue.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-terminating-continue.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,75 @@
+
+<!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 - bugprone-terminating-continue — 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="bugprone-throw-keyword-missing" href="bugprone-throw-keyword-missing.html" />
+    <link rel="prev" title="bugprone-swapped-arguments" href="bugprone-swapped-arguments.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 - bugprone-terminating-continue</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="bugprone-swapped-arguments.html">bugprone-swapped-arguments</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="bugprone-throw-keyword-missing.html">bugprone-throw-keyword-missing</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="bugprone-terminating-continue">
+<h1>bugprone-terminating-continue<a class="headerlink" href="#bugprone-terminating-continue" title="Permalink to this headline">¶</a></h1>
+<p>Detects <cite>do while</cite> loops with a condition always evaluating to false that
+have a <cite>continue</cite> statement, as this <cite>continue</cite> terminates the loop
+effectively.</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="k">do</span> <span class="p">{</span>
+      <span class="c1">// some code</span>
+  <span class="k">continue</span><span class="p">;</span> <span class="c1">// terminating continue</span>
+  <span class="c1">// some other code</span>
+<span class="p">}</span> <span class="k">while</span><span class="p">(</span><span class="nb">false</span><span class="p">);</span>
+</pre></div>
+</div>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="bugprone-swapped-arguments.html">bugprone-swapped-arguments</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="bugprone-throw-keyword-missing.html">bugprone-throw-keyword-missing</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/bugprone-throw-keyword-missing.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-throw-keyword-missing.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-throw-keyword-missing.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-throw-keyword-missing.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" />
+    <title>clang-tidy - bugprone-throw-keyword-missing — 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="bugprone-too-small-loop-variable" href="bugprone-too-small-loop-variable.html" />
+    <link rel="prev" title="bugprone-terminating-continue" href="bugprone-terminating-continue.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 - bugprone-throw-keyword-missing</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="bugprone-terminating-continue.html">bugprone-terminating-continue</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="bugprone-too-small-loop-variable.html">bugprone-too-small-loop-variable</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="bugprone-throw-keyword-missing">
+<h1>bugprone-throw-keyword-missing<a class="headerlink" href="#bugprone-throw-keyword-missing" title="Permalink to this headline">¶</a></h1>
+<p>Warns about a potentially missing <code class="docutils literal notranslate"><span class="pre">throw</span></code> keyword. If a temporary object is created, but the
+object’s type derives from (or is the same as) a class that has ‘EXCEPTION’, ‘Exception’ or
+‘exception’ in its name, we can assume that the programmer’s intention was to throw that object.</p>
+<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="kt">int</span> <span class="n">i</span><span class="p">)</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">// Exception is created but is not thrown.</span>
+    <span class="n">std</span><span class="o">::</span><span class="n">runtime_error</span><span class="p">(</span><span class="s">"Unexpected argument"</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="bugprone-terminating-continue.html">bugprone-terminating-continue</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="bugprone-too-small-loop-variable.html">bugprone-too-small-loop-variable</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/bugprone-too-small-loop-variable.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-too-small-loop-variable.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-too-small-loop-variable.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-too-small-loop-variable.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 - bugprone-too-small-loop-variable — 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="bugprone-undefined-memory-manipulation" href="bugprone-undefined-memory-manipulation.html" />
+    <link rel="prev" title="bugprone-throw-keyword-missing" href="bugprone-throw-keyword-missing.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 - bugprone-too-small-loop-variable</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="bugprone-throw-keyword-missing.html">bugprone-throw-keyword-missing</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="bugprone-undefined-memory-manipulation.html">bugprone-undefined-memory-manipulation</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="bugprone-too-small-loop-variable">
+<h1>bugprone-too-small-loop-variable<a class="headerlink" href="#bugprone-too-small-loop-variable" title="Permalink to this headline">¶</a></h1>
+<p>Detects those <code class="docutils literal notranslate"><span class="pre">for</span></code> loops that have a loop variable with a “too small” type
+which means this type can’t represent all values which are part of the
+iteration range.</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="kt">int</span> <span class="nf">main</span><span class="p">()</span> <span class="p">{</span>
+  <span class="kt">long</span> <span class="n">size</span> <span class="o">=</span> <span class="mi">294967296l</span><span class="p">;</span>
+  <span class="k">for</span> <span class="p">(</span><span class="kt">short</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">size</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>This <code class="docutils literal notranslate"><span class="pre">for</span></code> loop is an infinite loop because the <code class="docutils literal notranslate"><span class="pre">short</span></code> type can’t represent
+all values in the <code class="docutils literal notranslate"><span class="pre">[0..size]</span></code> interval.</p>
+<p>In a real use case size means a container’s size which depends on the user input.</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="kt">int</span> <span class="nf">doSomething</span><span class="p">(</span><span class="k">const</span> <span class="n">std</span><span class="o">::</span><span class="n">vector</span><span class="o">&</span> <span class="n">items</span><span class="p">)</span> <span class="p">{</span>
+  <span class="k">for</span> <span class="p">(</span><span class="kt">short</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">items</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="p">{}</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+<p>This algorithm works for small amount of objects, but will lead to freeze for a
+a larger user input.</p>
+<dl class="option">
+<dt id="cmdoption-arg-magnitudebitsupperlimit">
+<code class="descname">MagnitudeBitsUpperLimit</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-magnitudebitsupperlimit" title="Permalink to this definition">¶</a></dt>
+<dd><p>Upper limit for the magnitude bits of the loop variable. If it’s set the check
+filters out those catches in which the loop variable’s type has more magnitude
+bits as the specified upper limit. The default value is 16.
+For example, if the user sets this option to 31 (bits), then a 32-bit <code class="docutils literal notranslate"><span class="pre">unsigend</span> <span class="pre">int</span></code>
+is ignored by the check, however a 32-bit <code class="docutils literal notranslate"><span class="pre">int</span></code> is not (A 32-bit <code class="docutils literal notranslate"><span class="pre">signed</span> <span class="pre">int</span></code>
+has 31 magnitude bits).</p>
+</dd></dl>
+
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="kt">int</span> <span class="nf">main</span><span class="p">()</span> <span class="p">{</span>
+  <span class="kt">long</span> <span class="n">size</span> <span class="o">=</span> <span class="mi">294967296l</span><span class="p">;</span>
+  <span class="k">for</span> <span class="p">(</span><span class="kt">unsigned</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">size</span><span class="p">;</span> <span class="o">++</span><span class="n">i</span><span class="p">)</span> <span class="p">{}</span> <span class="c1">// no warning with MagnitudeBitsUpperLimit = 31 on a system where unsigned is 32-bit</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">size</span><span class="p">;</span> <span class="o">++</span><span class="n">i</span><span class="p">)</span> <span class="p">{}</span> <span class="c1">// warning with MagnitudeBitsUpperLimit = 31 on a system where int is 32-bit</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="bugprone-throw-keyword-missing.html">bugprone-throw-keyword-missing</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="bugprone-undefined-memory-manipulation.html">bugprone-undefined-memory-manipulation</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/bugprone-undefined-memory-manipulation.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-undefined-memory-manipulation.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-undefined-memory-manipulation.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-undefined-memory-manipulation.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 - bugprone-undefined-memory-manipulation — 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="bugprone-undelegated-constructor" href="bugprone-undelegated-constructor.html" />
+    <link rel="prev" title="bugprone-too-small-loop-variable" href="bugprone-too-small-loop-variable.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 - bugprone-undefined-memory-manipulation</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="bugprone-too-small-loop-variable.html">bugprone-too-small-loop-variable</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="bugprone-undelegated-constructor.html">bugprone-undelegated-constructor</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="bugprone-undefined-memory-manipulation">
+<h1>bugprone-undefined-memory-manipulation<a class="headerlink" href="#bugprone-undefined-memory-manipulation" title="Permalink to this headline">¶</a></h1>
+<p>Finds calls of memory manipulation functions <code class="docutils literal notranslate"><span class="pre">memset()</span></code>, <code class="docutils literal notranslate"><span class="pre">memcpy()</span></code> and
+<code class="docutils literal notranslate"><span class="pre">memmove()</span></code> on not TriviallyCopyable objects resulting in undefined behavior.</p>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="bugprone-too-small-loop-variable.html">bugprone-too-small-loop-variable</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="bugprone-undelegated-constructor.html">bugprone-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/bugprone-undelegated-constructor.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-undelegated-constructor.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-undelegated-constructor.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-undelegated-constructor.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" />
+    <title>clang-tidy - bugprone-undelegated-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="bugprone-unhandled-self-assignment" href="bugprone-unhandled-self-assignment.html" />
+    <link rel="prev" title="bugprone-undefined-memory-manipulation" href="bugprone-undefined-memory-manipulation.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 - bugprone-undelegated-constructor</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="bugprone-undefined-memory-manipulation.html">bugprone-undefined-memory-manipulation</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="bugprone-unhandled-self-assignment.html">bugprone-unhandled-self-assignment</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="bugprone-undelegated-constructor">
+<h1>bugprone-undelegated-constructor<a class="headerlink" href="#bugprone-undelegated-constructor" title="Permalink to this headline">¶</a></h1>
+<p>Finds creation of temporary objects in constructors that look like a
+function call to another constructor of the same class.</p>
+<p>The user most likely meant to use a delegating constructor or base class
+initializer.</p>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="bugprone-undefined-memory-manipulation.html">bugprone-undefined-memory-manipulation</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="bugprone-unhandled-self-assignment.html">bugprone-unhandled-self-assignment</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/bugprone-unhandled-self-assignment.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-unhandled-self-assignment.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-unhandled-self-assignment.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-unhandled-self-assignment.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,173 @@
+
+<!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 - bugprone-unhandled-self-assignment — 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="bugprone-unused-raii" href="bugprone-unused-raii.html" />
+    <link rel="prev" title="bugprone-undelegated-constructor" href="bugprone-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 - bugprone-unhandled-self-assignment</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="bugprone-undelegated-constructor.html">bugprone-undelegated-constructor</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="bugprone-unused-raii.html">bugprone-unused-raii</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="bugprone-unhandled-self-assignment">
+<h1>bugprone-unhandled-self-assignment<a class="headerlink" href="#bugprone-unhandled-self-assignment" title="Permalink to this headline">¶</a></h1>
+<p><cite>cert-oop54-cpp</cite> redirects here as an alias for this check. For the CERT alias,
+the <cite>WarnOnlyIfThisHasSuspiciousField</cite> option is set to <cite>0</cite>.</p>
+<p>Finds user-defined copy assignment operators which do not protect the code
+against self-assignment either by checking self-assignment explicitly or
+using the copy-and-swap or the copy-and-move method.</p>
+<p>By default, this check searches only those classes which have any pointer or C array field
+to avoid false positives. In case of a pointer or a C array, it’s likely that self-copy
+assignment breaks the object if the copy assignment operator was not written with care.</p>
+<p>See also:
+<a class="reference external" href="https://wiki.sei.cmu.edu/confluence/display/cplusplus/OOP54-CPP.+Gracefully+handle+self-copy+assignment">OOP54-CPP. Gracefully handle self-copy assignment</a></p>
+<p>A copy assignment operator must prevent that self-copy assignment ruins the
+object state. A typical use case is when the class has a pointer field
+and the copy assignment operator first releases the pointed object and
+then tries to assign it:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">class</span> <span class="nc">T</span> <span class="p">{</span>
+<span class="kt">int</span><span class="o">*</span> <span class="n">p</span><span class="p">;</span>
+
+<span class="k">public</span><span class="o">:</span>
+  <span class="n">T</span><span class="p">(</span><span class="k">const</span> <span class="n">T</span> <span class="o">&</span><span class="n">rhs</span><span class="p">)</span> <span class="o">:</span> <span class="n">p</span><span class="p">(</span><span class="n">rhs</span><span class="p">.</span><span class="n">p</span> <span class="o">?</span> <span class="k">new</span> <span class="kt">int</span><span class="p">(</span><span class="o">*</span><span class="n">rhs</span><span class="p">.</span><span class="n">p</span><span class="p">)</span> <span class="o">:</span> <span class="k">nullptr</span><span class="p">)</span> <span class="p">{}</span>
+  <span class="o">~</span><span class="n">T</span><span class="p">()</span> <span class="p">{</span> <span class="k">delete</span> <span class="n">p</span><span class="p">;</span> <span class="p">}</span>
+
+  <span class="c1">// ...</span>
+
+  <span class="n">T</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">T</span> <span class="o">&</span><span class="n">rhs</span><span class="p">)</span> <span class="p">{</span>
+    <span class="k">delete</span> <span class="n">p</span><span class="p">;</span>
+    <span class="n">p</span> <span class="o">=</span> <span class="k">new</span> <span class="kt">int</span><span class="p">(</span><span class="o">*</span><span class="n">rhs</span><span class="p">.</span><span class="n">p</span><span class="p">);</span>
+    <span class="k">return</span> <span class="o">*</span><span class="k">this</span><span class="p">;</span>
+  <span class="p">}</span>
+<span class="p">};</span>
+</pre></div>
+</div>
+<p>There are two common C++ patterns to avoid this problem. The first is
+the self-assignment check:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">class</span> <span class="nc">T</span> <span class="p">{</span>
+<span class="kt">int</span><span class="o">*</span> <span class="n">p</span><span class="p">;</span>
+
+<span class="k">public</span><span class="o">:</span>
+  <span class="n">T</span><span class="p">(</span><span class="k">const</span> <span class="n">T</span> <span class="o">&</span><span class="n">rhs</span><span class="p">)</span> <span class="o">:</span> <span class="n">p</span><span class="p">(</span><span class="n">rhs</span><span class="p">.</span><span class="n">p</span> <span class="o">?</span> <span class="k">new</span> <span class="kt">int</span><span class="p">(</span><span class="o">*</span><span class="n">rhs</span><span class="p">.</span><span class="n">p</span><span class="p">)</span> <span class="o">:</span> <span class="k">nullptr</span><span class="p">)</span> <span class="p">{}</span>
+  <span class="o">~</span><span class="n">T</span><span class="p">()</span> <span class="p">{</span> <span class="k">delete</span> <span class="n">p</span><span class="p">;</span> <span class="p">}</span>
+
+  <span class="c1">// ...</span>
+
+  <span class="n">T</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">T</span> <span class="o">&</span><span class="n">rhs</span><span class="p">)</span> <span class="p">{</span>
+    <span class="k">if</span><span class="p">(</span><span class="k">this</span> <span class="o">==</span> <span class="o">&</span><span class="n">rhs</span><span class="p">)</span>
+      <span class="k">return</span> <span class="o">*</span><span class="k">this</span><span class="p">;</span>
+
+    <span class="k">delete</span> <span class="n">p</span><span class="p">;</span>
+    <span class="n">p</span> <span class="o">=</span> <span class="k">new</span> <span class="kt">int</span><span class="p">(</span><span class="o">*</span><span class="n">rhs</span><span class="p">.</span><span class="n">p</span><span class="p">);</span>
+    <span class="k">return</span> <span class="o">*</span><span class="k">this</span><span class="p">;</span>
+  <span class="p">}</span>
+<span class="p">};</span>
+</pre></div>
+</div>
+<p>The second one is the copy-and-swap method when we create a temporary copy
+(using the copy constructor) and then swap this temporary object with <code class="docutils literal notranslate"><span class="pre">this</span></code>:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">class</span> <span class="nc">T</span> <span class="p">{</span>
+<span class="kt">int</span><span class="o">*</span> <span class="n">p</span><span class="p">;</span>
+
+<span class="k">public</span><span class="o">:</span>
+  <span class="n">T</span><span class="p">(</span><span class="k">const</span> <span class="n">T</span> <span class="o">&</span><span class="n">rhs</span><span class="p">)</span> <span class="o">:</span> <span class="n">p</span><span class="p">(</span><span class="n">rhs</span><span class="p">.</span><span class="n">p</span> <span class="o">?</span> <span class="k">new</span> <span class="kt">int</span><span class="p">(</span><span class="o">*</span><span class="n">rhs</span><span class="p">.</span><span class="n">p</span><span class="p">)</span> <span class="o">:</span> <span class="k">nullptr</span><span class="p">)</span> <span class="p">{}</span>
+  <span class="o">~</span><span class="n">T</span><span class="p">()</span> <span class="p">{</span> <span class="k">delete</span> <span class="n">p</span><span class="p">;</span> <span class="p">}</span>
+
+  <span class="c1">// ...</span>
+
+  <span class="kt">void</span> <span class="n">swap</span><span class="p">(</span><span class="n">T</span> <span class="o">&</span><span class="n">rhs</span><span class="p">)</span> <span class="p">{</span>
+    <span class="k">using</span> <span class="n">std</span><span class="o">::</span><span class="n">swap</span><span class="p">;</span>
+    <span class="n">swap</span><span class="p">(</span><span class="n">p</span><span class="p">,</span> <span class="n">rhs</span><span class="p">.</span><span class="n">p</span><span class="p">);</span>
+  <span class="p">}</span>
+
+  <span class="n">T</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">T</span> <span class="o">&</span><span class="n">rhs</span><span class="p">)</span> <span class="p">{</span>
+    <span class="n">T</span><span class="p">(</span><span class="n">rhs</span><span class="p">).</span><span class="n">swap</span><span class="p">(</span><span class="o">*</span><span class="k">this</span><span class="p">);</span>
+    <span class="k">return</span> <span class="o">*</span><span class="k">this</span><span class="p">;</span>
+  <span class="p">}</span>
+<span class="p">};</span>
+</pre></div>
+</div>
+<p>There is a third pattern which is less common. Let’s call it the copy-and-move method
+when we create a temporary copy (using the copy constructor) and then move this
+temporary object into <code class="docutils literal notranslate"><span class="pre">this</span></code> (needs a move assignment operator):</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">class</span> <span class="nc">T</span> <span class="p">{</span>
+<span class="kt">int</span><span class="o">*</span> <span class="n">p</span><span class="p">;</span>
+
+<span class="k">public</span><span class="o">:</span>
+  <span class="n">T</span><span class="p">(</span><span class="k">const</span> <span class="n">T</span> <span class="o">&</span><span class="n">rhs</span><span class="p">)</span> <span class="o">:</span> <span class="n">p</span><span class="p">(</span><span class="n">rhs</span><span class="p">.</span><span class="n">p</span> <span class="o">?</span> <span class="k">new</span> <span class="kt">int</span><span class="p">(</span><span class="o">*</span><span class="n">rhs</span><span class="p">.</span><span class="n">p</span><span class="p">)</span> <span class="o">:</span> <span class="k">nullptr</span><span class="p">)</span> <span class="p">{}</span>
+  <span class="o">~</span><span class="n">T</span><span class="p">()</span> <span class="p">{</span> <span class="k">delete</span> <span class="n">p</span><span class="p">;</span> <span class="p">}</span>
+
+  <span class="c1">// ...</span>
+
+  <span class="n">T</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">T</span> <span class="o">&</span><span class="n">rhs</span><span class="p">)</span> <span class="p">{</span>
+    <span class="n">T</span> <span class="n">t</span> <span class="o">=</span> <span class="n">rhs</span><span class="p">;</span>
+    <span class="o">*</span><span class="k">this</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">t</span><span class="p">);</span>
+    <span class="k">return</span> <span class="o">*</span><span class="k">this</span><span class="p">;</span>
+  <span class="p">}</span>
+
+  <span class="n">T</span><span class="o">&</span> <span class="k">operator</span><span class="o">=</span><span class="p">(</span><span class="n">T</span> <span class="o">&&</span><span class="n">rhs</span><span class="p">)</span> <span class="p">{</span>
+    <span class="n">p</span> <span class="o">=</span> <span class="n">rhs</span><span class="p">.</span><span class="n">p</span><span class="p">;</span>
+    <span class="n">rhs</span><span class="p">.</span><span class="n">p</span> <span class="o">=</span> <span class="k">nullptr</span><span class="p">;</span>
+    <span class="k">return</span> <span class="o">*</span><span class="k">this</span><span class="p">;</span>
+  <span class="p">}</span>
+<span class="p">};</span>
+</pre></div>
+</div>
+<dl class="option">
+<dt id="cmdoption-arg-warnonlyifthishassuspiciousfield">
+<code class="descname">WarnOnlyIfThisHasSuspiciousField</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-warnonlyifthishassuspiciousfield" title="Permalink to this definition">¶</a></dt>
+<dd><p>When non-zero, the check will warn only if the container class of the copy assignment operator
+has any suspicious fields (pointer or C array). This option is set to <cite>1</cite> by default.</p>
+</dd></dl>
+
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="bugprone-undelegated-constructor.html">bugprone-undelegated-constructor</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="bugprone-unused-raii.html">bugprone-unused-raii</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/bugprone-unused-raii.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-unused-raii.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-unused-raii.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-unused-raii.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 - bugprone-unused-raii — 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="bugprone-unused-return-value" href="bugprone-unused-return-value.html" />
+    <link rel="prev" title="bugprone-unhandled-self-assignment" href="bugprone-unhandled-self-assignment.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 - bugprone-unused-raii</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="bugprone-unhandled-self-assignment.html">bugprone-unhandled-self-assignment</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="bugprone-unused-return-value.html">bugprone-unused-return-value</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="bugprone-unused-raii">
+<h1>bugprone-unused-raii<a class="headerlink" href="#bugprone-unused-raii" title="Permalink to this headline">¶</a></h1>
+<p>Finds temporaries that look like RAII objects.</p>
+<p>The canonical example for this is a scoped lock.</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="p">{</span>
+  <span class="n">scoped_lock</span><span class="p">(</span><span class="o">&</span><span class="n">global_mutex</span><span class="p">);</span>
+  <span class="n">critical_section</span><span class="p">();</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+<p>The destructor of the scoped_lock is called before the <code class="docutils literal notranslate"><span class="pre">critical_section</span></code> is
+entered, leaving it unprotected.</p>
+<p>We apply a number of heuristics to reduce the false positive count of this
+check:</p>
+<ul class="simple">
+<li>Ignore code expanded from macros. Testing frameworks make heavy use of this.</li>
+<li>Ignore types with trivial destructors. They are very unlikely to be RAII
+objects and there’s no difference when they are deleted.</li>
+<li>Ignore objects at the end of a compound statement (doesn’t change behavior).</li>
+<li>Ignore objects returned from a call.</li>
+</ul>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="bugprone-unhandled-self-assignment.html">bugprone-unhandled-self-assignment</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="bugprone-unused-return-value.html">bugprone-unused-return-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/bugprone-unused-return-value.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-unused-return-value.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-unused-return-value.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-unused-return-value.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 - bugprone-unused-return-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="bugprone-use-after-move" href="bugprone-use-after-move.html" />
+    <link rel="prev" title="bugprone-unused-raii" href="bugprone-unused-raii.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 - bugprone-unused-return-value</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="bugprone-unused-raii.html">bugprone-unused-raii</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="bugprone-use-after-move.html">bugprone-use-after-move</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="bugprone-unused-return-value">
+<h1>bugprone-unused-return-value<a class="headerlink" href="#bugprone-unused-return-value" title="Permalink to this headline">¶</a></h1>
+<p>Warns on unused function return values. The checked funtions can be configured.</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-checkedfunctions">
+<code class="descname">CheckedFunctions</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-checkedfunctions" title="Permalink to this definition">¶</a></dt>
+<dd><p>Semicolon-separated list of functions to check. Defaults to
+<code class="docutils literal notranslate"><span class="pre">::std::async;::std::launder;::std::remove;::std::remove_if;::std::unique;::std::unique_ptr::release;::std::basic_string::empty;::std::vector::empty</span></code>.
+This means that the calls to following functions are checked by default:</p>
+<ul class="simple">
+<li><code class="docutils literal notranslate"><span class="pre">std::async()</span></code>. Not using the return value makes the call synchronous.</li>
+<li><code class="docutils literal notranslate"><span class="pre">std::launder()</span></code>. Not using the return value usually means that the
+function interface was misunderstood by the programmer. Only the returned
+pointer is “laundered”, not the argument.</li>
+<li><code class="docutils literal notranslate"><span class="pre">std::remove()</span></code>, <code class="docutils literal notranslate"><span class="pre">std::remove_if()</span></code> and <code class="docutils literal notranslate"><span class="pre">std::unique()</span></code>. The returned
+iterator indicates the boundary between elements to keep and elements to be
+removed. Not using the return value means that the information about which
+elements to remove is lost.</li>
+<li><code class="docutils literal notranslate"><span class="pre">std::unique_ptr::release()</span></code>. Not using the return value can lead to
+resource leaks if the same pointer isn’t stored anywhere else. Often,
+ignoring the <code class="docutils literal notranslate"><span class="pre">release()</span></code> return value indicates that the programmer
+confused the function with <code class="docutils literal notranslate"><span class="pre">reset()</span></code>.</li>
+<li><code class="docutils literal notranslate"><span class="pre">std::basic_string::empty()</span></code> and <code class="docutils literal notranslate"><span class="pre">std::vector::empty()</span></code>. Not using the
+return value often indicates that the programmer confused the function with
+<code class="docutils literal notranslate"><span class="pre">clear()</span></code>.</li>
+</ul>
+</dd></dl>
+
+</div>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="bugprone-unused-raii.html">bugprone-unused-raii</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="bugprone-use-after-move.html">bugprone-use-after-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/bugprone-use-after-move.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-use-after-move.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-use-after-move.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-use-after-move.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,231 @@
+
+<!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 - bugprone-use-after-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="bugprone-virtual-near-miss" href="bugprone-virtual-near-miss.html" />
+    <link rel="prev" title="bugprone-unused-return-value" href="bugprone-unused-return-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 - bugprone-use-after-move</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="bugprone-unused-return-value.html">bugprone-unused-return-value</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="bugprone-virtual-near-miss.html">bugprone-virtual-near-miss</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="bugprone-use-after-move">
+<h1>bugprone-use-after-move<a class="headerlink" href="#bugprone-use-after-move" title="Permalink to this headline">¶</a></h1>
+<p>Warns if an object is used after it has been moved, 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">string</span> <span class="n">str</span> <span class="o">=</span> <span class="s">"Hello, world!</span><span class="se">\n</span><span class="s">"</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">string</span><span class="o">></span> <span class="n">messages</span><span class="p">;</span>
+<span class="n">messages</span><span class="p">.</span><span class="n">emplace_back</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">str</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">str</span><span class="p">;</span>
+</pre></div>
+</div>
+<p>The last line will trigger a warning that <code class="docutils literal notranslate"><span class="pre">str</span></code> is used after it has been
+moved.</p>
+<p>The check does not trigger a warning if the object is reinitialized after the
+move and before the use. For example, no warning will be output for this code:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="n">messages</span><span class="p">.</span><span class="n">emplace_back</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">str</span><span class="p">));</span>
+<span class="n">str</span> <span class="o">=</span> <span class="s">"Greetings, stranger!</span><span class="se">\n</span><span class="s">"</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">str</span><span class="p">;</span>
+</pre></div>
+</div>
+<p>The check takes control flow into account. A warning is only emitted if the use
+can be reached from the move. This means that the following code does not
+produce a warning:</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">messages</span><span class="p">.</span><span class="n">emplace_back</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">str</span><span class="p">));</span>
+<span class="p">}</span> <span class="k">else</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">str</span><span class="p">;</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+<p>On the other hand, the following code does produce a warning:</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="mi">10</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">std</span><span class="o">::</span><span class="n">cout</span> <span class="o"><<</span> <span class="n">str</span><span class="p">;</span>
+  <span class="n">messages</span><span class="p">.</span><span class="n">emplace_back</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">str</span><span class="p">));</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+<p>(The use-after-move happens on the second iteration of the loop.)</p>
+<p>In some cases, the check may not be able to detect that two branches are
+mutually exclusive. For example (assuming that <code class="docutils literal notranslate"><span class="pre">i</span></code> is an int):</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></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="n">messages</span><span class="p">.</span><span class="n">emplace_back</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">str</span><span class="p">));</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">2</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">str</span><span class="p">;</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+<p>In this case, the check will erroneously produce a warning, even though it is
+not possible for both the move and the use to be executed.</p>
+<p>An erroneous warning can be silenced by reinitializing the object after the
+move:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></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="n">messages</span><span class="p">.</span><span class="n">emplace_back</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">str</span><span class="p">));</span>
+  <span class="n">str</span> <span class="o">=</span> <span class="s">""</span><span class="p">;</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">2</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">str</span><span class="p">;</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+<p>Subsections below explain more precisely what exactly the check considers to be
+a move, use, and reinitialization.</p>
+<div class="section" id="unsequenced-moves-uses-and-reinitializations">
+<h2>Unsequenced moves, uses, and reinitializations<a class="headerlink" href="#unsequenced-moves-uses-and-reinitializations" title="Permalink to this headline">¶</a></h2>
+<p>In many cases, C++ does not make any guarantees about the order in which
+sub-expressions of a statement are evaluated. This means that in code like the
+following, it is not guaranteed whether the use will happen before or after the
+move:</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="n">i</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="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="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="n">f</span><span class="p">(</span><span class="n">v</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">move</span><span class="p">(</span><span class="n">v</span><span class="p">));</span>
+</pre></div>
+</div>
+<p>In this kind of situation, the check will note that the use and move are
+unsequenced.</p>
+<p>The check will also take sequencing rules into account when reinitializations
+occur in the same statement as moves or uses. A reinitialization is only
+considered to reinitialize a variable if it is guaranteed to be evaluated after
+the move and before the use.</p>
+</div>
+<div class="section" id="move">
+<h2>Move<a class="headerlink" href="#move" title="Permalink to this headline">¶</a></h2>
+<p>The check currently only considers calls of <code class="docutils literal notranslate"><span class="pre">std::move</span></code> on local variables or
+function parameters. It does not check moves of member variables or global
+variables.</p>
+<p>Any call of <code class="docutils literal notranslate"><span class="pre">std::move</span></code> on a variable is considered to cause a move of that
+variable, even if the result of <code class="docutils literal notranslate"><span class="pre">std::move</span></code> is not passed to an rvalue
+reference parameter.</p>
+<p>This means that the check will flag a use-after-move even on a type that does
+not define a move constructor or move assignment operator. This is intentional.
+Developers may use <code class="docutils literal notranslate"><span class="pre">std::move</span></code> on such a type in the expectation that the type
+will add move semantics in the future. If such a <code class="docutils literal notranslate"><span class="pre">std::move</span></code> has the potential
+to cause a use-after-move, we want to warn about it even if the type does not
+implement move semantics yet.</p>
+<p>Furthermore, if the result of <code class="docutils literal notranslate"><span class="pre">std::move</span></code> <em>is</em> passed to an rvalue reference
+parameter, this will always be considered to cause a move, even if the function
+that consumes this parameter does not move from it, or if it does so only
+conditionally. For example, in the following situation, the check will assume
+that a move always takes place:</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">messages</span><span class="p">;</span>
+<span class="kt">void</span> <span class="nf">f</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">str</span><span class="p">)</span> <span class="p">{</span>
+  <span class="c1">// Only remember the message if it isn't empty.</span>
+  <span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="n">str</span><span class="p">.</span><span class="n">empty</span><span class="p">())</span> <span class="p">{</span>
+    <span class="n">messages</span><span class="p">.</span><span class="n">emplace_back</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">str</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">str</span> <span class="o">=</span> <span class="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">str</span><span class="p">));</span>
+</pre></div>
+</div>
+<p>The check will assume that the last line causes a move, even though, in this
+particular case, it does not. Again, this is intentional.</p>
+<p>When analyzing the order in which moves, uses and reinitializations happen (see
+section <a class="reference internal" href="#unsequenced-moves-uses-and-reinitializations">Unsequenced moves, uses, and reinitializations</a>), the move is assumed
+to occur in whichever function the result of the <code class="docutils literal notranslate"><span class="pre">std::move</span></code> is passed to.</p>
+</div>
+<div class="section" id="use">
+<h2>Use<a class="headerlink" href="#use" title="Permalink to this headline">¶</a></h2>
+<p>Any occurrence of the moved variable that is not a reinitialization (see below)
+is considered to be a use.</p>
+<p>An exception to this are objects of type <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> and <code class="docutils literal notranslate"><span class="pre">std::weak_ptr</span></code>, which have defined move behavior
+(objects of these classes are guaranteed to be empty after they have been moved
+from). Therefore, an object of these classes will only be considered to be used
+if it is dereferenced, i.e. if <code class="docutils literal notranslate"><span class="pre">operator*</span></code>, <code class="docutils literal notranslate"><span class="pre">operator-></span></code> or <code class="docutils literal notranslate"><span class="pre">operator[]</span></code>
+(in the case of <code class="docutils literal notranslate"><span class="pre">std::unique_ptr<T</span> <span class="pre">[]></span></code>) is called on it.</p>
+<p>If multiple uses occur after a move, only the first of these is flagged.</p>
+</div>
+<div class="section" id="reinitialization">
+<h2>Reinitialization<a class="headerlink" href="#reinitialization" title="Permalink to this headline">¶</a></h2>
+<p>The check considers a variable to be reinitialized in the following cases:</p>
+<blockquote>
+<div><ul class="simple">
+<li>The variable occurs on the left-hand side of an assignment.</li>
+<li>The variable is passed to a function as a non-const pointer or non-const
+lvalue reference. (It is assumed that the variable may be an out-parameter
+for the function.)</li>
+<li><code class="docutils literal notranslate"><span class="pre">clear()</span></code> or <code class="docutils literal notranslate"><span class="pre">assign()</span></code> is called on the variable and the variable is of
+one of the standard container types <code class="docutils literal notranslate"><span class="pre">basic_string</span></code>, <code class="docutils literal notranslate"><span class="pre">vector</span></code>, <code class="docutils literal notranslate"><span class="pre">deque</span></code>,
+<code class="docutils literal notranslate"><span class="pre">forward_list</span></code>, <code class="docutils literal notranslate"><span class="pre">list</span></code>, <code class="docutils literal notranslate"><span class="pre">set</span></code>, <code class="docutils literal notranslate"><span class="pre">map</span></code>, <code class="docutils literal notranslate"><span class="pre">multiset</span></code>, <code class="docutils literal notranslate"><span class="pre">multimap</span></code>,
+<code class="docutils literal notranslate"><span class="pre">unordered_set</span></code>, <code class="docutils literal notranslate"><span class="pre">unordered_map</span></code>, <code class="docutils literal notranslate"><span class="pre">unordered_multiset</span></code>,
+<code class="docutils literal notranslate"><span class="pre">unordered_multimap</span></code>.</li>
+<li><code class="docutils literal notranslate"><span class="pre">reset()</span></code> is called on the variable and the variable is of type
+<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> or <code class="docutils literal notranslate"><span class="pre">std::weak_ptr</span></code>.</li>
+<li>A member function marked with the <code class="docutils literal notranslate"><span class="pre">[[clang::reinitializes]]</span></code> attribute is
+called on the variable.</li>
+</ul>
+</div></blockquote>
+<p>If the variable in question is a struct and an individual member variable of
+that struct is written to, the check does not consider this to be a
+reinitialization – even if, eventually, all member variables of the struct are
+written to. For example:</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="n">std</span><span class="o">::</span><span class="n">string</span> <span class="n">str</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="n">S</span> <span class="n">s</span> <span class="o">=</span> <span class="p">{</span> <span class="s">"Hello, world!</span><span class="se">\n</span><span class="s">"</span><span class="p">,</span> <span class="mi">42</span> <span class="p">};</span>
+<span class="n">S</span> <span class="n">s_other</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">s</span><span class="p">);</span>
+<span class="n">s</span><span class="p">.</span><span class="n">str</span> <span class="o">=</span> <span class="s">"Lorem ipsum"</span><span class="p">;</span>
+<span class="n">s</span><span class="p">.</span><span class="n">i</span> <span class="o">=</span> <span class="mi">99</span><span class="p">;</span>
+</pre></div>
+</div>
+<p>The check will not consider <code class="docutils literal notranslate"><span class="pre">s</span></code> to be reinitialized after the last line;
+instead, the line that assigns to <code class="docutils literal notranslate"><span class="pre">s.str</span></code> will be flagged as a use-after-move.
+This is intentional as this pattern of reinitializing a struct is error-prone.
+For example, if an additional member variable is added to <code class="docutils literal notranslate"><span class="pre">S</span></code>, it is easy to
+forget to add the reinitialization for this additional member. Instead, it is
+safer to assign to the entire struct in one go, and this will also avoid the
+use-after-move warning.</p>
+</div>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="bugprone-unused-return-value.html">bugprone-unused-return-value</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="bugprone-virtual-near-miss.html">bugprone-virtual-near-miss</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/bugprone-virtual-near-miss.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-virtual-near-miss.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-virtual-near-miss.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/bugprone-virtual-near-miss.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 - bugprone-virtual-near-miss — 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="cert-dcl03-c" href="cert-dcl03-c.html" />
+    <link rel="prev" title="bugprone-use-after-move" href="bugprone-use-after-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 - bugprone-virtual-near-miss</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="bugprone-use-after-move.html">bugprone-use-after-move</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="cert-dcl03-c.html">cert-dcl03-c</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="bugprone-virtual-near-miss">
+<h1>bugprone-virtual-near-miss<a class="headerlink" href="#bugprone-virtual-near-miss" title="Permalink to this headline">¶</a></h1>
+<p>Warn if a function is a near miss (ie. the name is very similar and the function
+signiture is the same) to a virtual function from a base class.</p>
+<p>Example:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">struct</span> <span class="n">Base</span> <span class="p">{</span>
+  <span class="k">virtual</span> <span class="kt">void</span> <span class="n">func</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="k">virtual</span> <span class="n">funk</span><span class="p">();</span>
+  <span class="c1">// warning: 'Derived::funk' has a similar name and the same signature as virtual method 'Base::func'; did you mean to override it?</span>
+<span class="p">};</span>
+</pre></div>
+</div>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="bugprone-use-after-move.html">bugprone-use-after-move</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="cert-dcl03-c.html">cert-dcl03-c</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/cert-dcl03-c.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cert-dcl03-c.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cert-dcl03-c.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cert-dcl03-c.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-static-assert.html" http-equiv="refresh" />
+
+    <title>clang-tidy - cert-dcl03-c — 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="cert-dcl16-c" href="cert-dcl16-c.html" />
+    <link rel="prev" title="bugprone-virtual-near-miss" href="bugprone-virtual-near-miss.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 - cert-dcl03-c</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="bugprone-virtual-near-miss.html">bugprone-virtual-near-miss</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="cert-dcl16-c.html">cert-dcl16-c</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="cert-dcl03-c">
+<h1>cert-dcl03-c<a class="headerlink" href="#cert-dcl03-c" title="Permalink to this headline">¶</a></h1>
+<p>The cert-dcl03-c check is an alias, please see
+<a class="reference external" href="misc-static-assert.html">misc-static-assert</a> for more information.</p>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="bugprone-virtual-near-miss.html">bugprone-virtual-near-miss</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="cert-dcl16-c.html">cert-dcl16-c</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/cert-dcl16-c.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cert-dcl16-c.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cert-dcl16-c.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cert-dcl16-c.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 - cert-dcl16-c — 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="cert-dcl21-cpp" href="cert-dcl21-cpp.html" />
+    <link rel="prev" title="cert-dcl03-c" href="cert-dcl03-c.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 - cert-dcl16-c</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="cert-dcl03-c.html">cert-dcl03-c</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="cert-dcl21-cpp.html">cert-dcl21-cpp</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="cert-dcl16-c">
+<h1>cert-dcl16-c<a class="headerlink" href="#cert-dcl16-c" title="Permalink to this headline">¶</a></h1>
+<p>The cert-dcl16-c 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="cert-dcl03-c.html">cert-dcl03-c</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="cert-dcl21-cpp.html">cert-dcl21-cpp</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/cert-dcl21-cpp.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cert-dcl21-cpp.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cert-dcl21-cpp.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cert-dcl21-cpp.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 - cert-dcl21-cpp — 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="cert-dcl50-cpp" href="cert-dcl50-cpp.html" />
+    <link rel="prev" title="cert-dcl16-c" href="cert-dcl16-c.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 - cert-dcl21-cpp</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="cert-dcl16-c.html">cert-dcl16-c</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="cert-dcl50-cpp.html">cert-dcl50-cpp</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="cert-dcl21-cpp">
+<h1>cert-dcl21-cpp<a class="headerlink" href="#cert-dcl21-cpp" title="Permalink to this headline">¶</a></h1>
+<p>This check flags postfix <code class="docutils literal notranslate"><span class="pre">operator++</span></code> and <code class="docutils literal notranslate"><span class="pre">operator--</span></code> declarations
+if the return type is not a const object. This also warns if the return type
+is a reference type.</p>
+<p>The object returned by a postfix increment or decrement operator is supposed
+to be a snapshot of the object’s value prior to modification. With such an
+implementation, any modifications made to the resulting object from calling
+operator++(int) would be modifying a temporary object. Thus, such an
+implementation of a postfix increment or decrement operator should instead
+return a const object, prohibiting accidental mutation of a temporary object.
+Similarly, it is unexpected for the postfix operator to return a reference to
+its previous state, and any subsequent modifications would be operating on a
+stale object.</p>
+<p>This check corresponds to the CERT C++ Coding Standard recommendation
+DCL21-CPP. Overloaded postfix increment and decrement operators should return a
+const object. However, all of the CERT recommendations have been removed from
+public view, and so their justification for the behavior of this check requires
+an account on their wiki to view.</p>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="cert-dcl16-c.html">cert-dcl16-c</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="cert-dcl50-cpp.html">cert-dcl50-cpp</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/cert-dcl50-cpp.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cert-dcl50-cpp.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cert-dcl50-cpp.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cert-dcl50-cpp.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" />
+    <title>clang-tidy - cert-dcl50-cpp — 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="cert-dcl54-cpp" href="cert-dcl54-cpp.html" />
+    <link rel="prev" title="cert-dcl21-cpp" href="cert-dcl21-cpp.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 - cert-dcl50-cpp</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="cert-dcl21-cpp.html">cert-dcl21-cpp</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="cert-dcl54-cpp.html">cert-dcl54-cpp</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="cert-dcl50-cpp">
+<h1>cert-dcl50-cpp<a class="headerlink" href="#cert-dcl50-cpp" title="Permalink to this headline">¶</a></h1>
+<p>This check flags all function definitions (but not declarations) of C-style
+variadic functions.</p>
+<p>This check corresponds to the CERT C++ Coding Standard rule
+<a class="reference external" href="https://www.securecoding.cert.org/confluence/display/cplusplus/DCL50-CPP.+Do+not+define+a+C-style+variadic+function">DCL50-CPP. Do not define a C-style variadic function</a>.</p>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="cert-dcl21-cpp.html">cert-dcl21-cpp</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="cert-dcl54-cpp.html">cert-dcl54-cpp</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/cert-dcl54-cpp.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cert-dcl54-cpp.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cert-dcl54-cpp.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cert-dcl54-cpp.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 - cert-dcl54-cpp — 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="cert-dcl58-cpp" href="cert-dcl58-cpp.html" />
+    <link rel="prev" title="cert-dcl50-cpp" href="cert-dcl50-cpp.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 - cert-dcl54-cpp</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="cert-dcl50-cpp.html">cert-dcl50-cpp</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="cert-dcl58-cpp.html">cert-dcl58-cpp</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="cert-dcl54-cpp">
+<h1>cert-dcl54-cpp<a class="headerlink" href="#cert-dcl54-cpp" title="Permalink to this headline">¶</a></h1>
+<p>The cert-dcl54-cpp check is an alias, please see
+<a class="reference external" href="misc-new-delete-overloads.html">misc-new-delete-overloads</a> for more
+information.</p>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="cert-dcl50-cpp.html">cert-dcl50-cpp</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="cert-dcl58-cpp.html">cert-dcl58-cpp</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/cert-dcl58-cpp.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cert-dcl58-cpp.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cert-dcl58-cpp.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cert-dcl58-cpp.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,75 @@
+
+<!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 - cert-dcl58-cpp — 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="cert-dcl59-cpp" href="cert-dcl59-cpp.html" />
+    <link rel="prev" title="cert-dcl54-cpp" href="cert-dcl54-cpp.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 - cert-dcl58-cpp</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="cert-dcl54-cpp.html">cert-dcl54-cpp</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="cert-dcl59-cpp.html">cert-dcl59-cpp</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="cert-dcl58-cpp">
+<h1>cert-dcl58-cpp<a class="headerlink" href="#cert-dcl58-cpp" title="Permalink to this headline">¶</a></h1>
+<p>Modification of the <code class="docutils literal notranslate"><span class="pre">std</span></code> or <code class="docutils literal notranslate"><span class="pre">posix</span></code> namespace can result in undefined
+behavior.
+This check warns for such modifications.</p>
+<p>Examples:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">namespace</span> <span class="n">std</span> <span class="p">{</span>
+  <span class="kt">int</span> <span class="n">x</span><span class="p">;</span> <span class="c1">// May cause undefined behavior.</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+<p>This check corresponds to the CERT C++ Coding Standard rule
+<a class="reference external" href="https://www.securecoding.cert.org/confluence/display/cplusplus/DCL58-CPP.+Do+not+modify+the+standard+namespaces">DCL58-CPP. Do not modify the standard namespaces</a>.</p>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="cert-dcl54-cpp.html">cert-dcl54-cpp</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="cert-dcl59-cpp.html">cert-dcl59-cpp</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/cert-dcl59-cpp.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cert-dcl59-cpp.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cert-dcl59-cpp.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cert-dcl59-cpp.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=google-build-namespaces.html" http-equiv="refresh" />
+
+    <title>clang-tidy - cert-dcl59-cpp — 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="cert-env33-c" href="cert-env33-c.html" />
+    <link rel="prev" title="cert-dcl58-cpp" href="cert-dcl58-cpp.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 - cert-dcl59-cpp</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="cert-dcl58-cpp.html">cert-dcl58-cpp</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="cert-env33-c.html">cert-env33-c</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="cert-dcl59-cpp">
+<h1>cert-dcl59-cpp<a class="headerlink" href="#cert-dcl59-cpp" title="Permalink to this headline">¶</a></h1>
+<p>The cert-dcl59-cpp check is an alias, please see
+<a class="reference external" href="google-build-namespaces.html">google-build-namespaces</a> for more information.</p>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="cert-dcl58-cpp.html">cert-dcl58-cpp</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="cert-env33-c.html">cert-env33-c</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/cert-env33-c.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cert-env33-c.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cert-env33-c.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cert-env33-c.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 - cert-env33-c — 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="cert-err09-cpp" href="cert-err09-cpp.html" />
+    <link rel="prev" title="cert-dcl59-cpp" href="cert-dcl59-cpp.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 - cert-env33-c</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="cert-dcl59-cpp.html">cert-dcl59-cpp</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="cert-err09-cpp.html">cert-err09-cpp</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="cert-env33-c">
+<h1>cert-env33-c<a class="headerlink" href="#cert-env33-c" title="Permalink to this headline">¶</a></h1>
+<p>This check flags calls to <code class="docutils literal notranslate"><span class="pre">system()</span></code>, <code class="docutils literal notranslate"><span class="pre">popen()</span></code>, and <code class="docutils literal notranslate"><span class="pre">_popen()</span></code>, which
+execute a command processor. It does not flag calls to <code class="docutils literal notranslate"><span class="pre">system()</span></code> with a null
+pointer argument, as such a call checks for the presence of a command processor
+but does not actually attempt to execute a command.</p>
+<p>This check corresponds to the CERT C Coding Standard rule
+<a class="reference external" href="https://www.securecoding.cert.org/confluence/pages/viewpage.action?pageId=2130132">ENV33-C. Do not call system()</a>.</p>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="cert-dcl59-cpp.html">cert-dcl59-cpp</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="cert-err09-cpp.html">cert-err09-cpp</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/cert-err09-cpp.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cert-err09-cpp.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cert-err09-cpp.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cert-err09-cpp.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=misc-throw-by-value-catch-by-reference.html" http-equiv="refresh" />
+
+    <title>clang-tidy - cert-err09-cpp — 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="cert-err34-c" href="cert-err34-c.html" />
+    <link rel="prev" title="cert-env33-c" href="cert-env33-c.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 - cert-err09-cpp</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="cert-env33-c.html">cert-env33-c</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="cert-err34-c.html">cert-err34-c</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="cert-err09-cpp">
+<h1>cert-err09-cpp<a class="headerlink" href="#cert-err09-cpp" title="Permalink to this headline">¶</a></h1>
+<p>The cert-err09-cpp check is an alias, please see
+<a class="reference external" href="misc-throw-by-value-catch-by-reference.html">misc-throw-by-value-catch-by-reference</a>
+for more information.</p>
+<p>This check corresponds to the CERT C++ Coding Standard recommendation
+ERR09-CPP. Throw anonymous temporaries. However, all of the CERT recommendations
+have been removed from public view, and so their justification for the behavior
+of this check requires an account on their wiki to view.</p>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="cert-env33-c.html">cert-env33-c</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="cert-err34-c.html">cert-err34-c</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/cert-err34-c.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cert-err34-c.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cert-err34-c.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cert-err34-c.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 - cert-err34-c — 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="cert-err52-cpp" href="cert-err52-cpp.html" />
+    <link rel="prev" title="cert-err09-cpp" href="cert-err09-cpp.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 - cert-err34-c</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="cert-err09-cpp.html">cert-err09-cpp</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="cert-err52-cpp.html">cert-err52-cpp</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="cert-err34-c">
+<h1>cert-err34-c<a class="headerlink" href="#cert-err34-c" title="Permalink to this headline">¶</a></h1>
+<p>This check flags calls to string-to-number conversion functions that do not
+verify the validity of the conversion, such as <code class="docutils literal notranslate"><span class="pre">atoi()</span></code> or <code class="docutils literal notranslate"><span class="pre">scanf()</span></code>. It
+does not flag calls to <code class="docutils literal notranslate"><span class="pre">strtol()</span></code>, or other, related conversion functions that
+do perform better error checking.</p>
+<div class="highlight-c notranslate"><div class="highlight"><pre><span></span><span class="cp">#include</span> <span class="cpf"><stdlib.h></span><span class="cp"></span>
+
+<span class="kt">void</span> <span class="nf">func</span><span class="p">(</span><span class="k">const</span> <span class="kt">char</span> <span class="o">*</span><span class="n">buff</span><span class="p">)</span> <span class="p">{</span>
+  <span class="kt">int</span> <span class="n">si</span><span class="p">;</span>
+
+  <span class="k">if</span> <span class="p">(</span><span class="n">buff</span><span class="p">)</span> <span class="p">{</span>
+    <span class="n">si</span> <span class="o">=</span> <span class="n">atoi</span><span class="p">(</span><span class="n">buff</span><span class="p">);</span> <span class="cm">/* 'atoi' used to convert a string to an integer, but function will</span>
+<span class="cm">                         not report conversion errors; consider using 'strtol' instead. */</span>
+  <span class="p">}</span> <span class="k">else</span> <span class="p">{</span>
+    <span class="cm">/* Handle error */</span>
+  <span class="p">}</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+<p>This check corresponds to the CERT C Coding Standard rule
+<a class="reference external" href="https://www.securecoding.cert.org/confluence/display/c/ERR34-C.+Detect+errors+when+converting+a+string+to+a+number">ERR34-C. Detect errors when converting a string to a number</a>.</p>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="cert-err09-cpp.html">cert-err09-cpp</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="cert-err52-cpp.html">cert-err52-cpp</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/cert-err52-cpp.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cert-err52-cpp.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cert-err52-cpp.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cert-err52-cpp.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 - cert-err52-cpp — 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="cert-err58-cpp" href="cert-err58-cpp.html" />
+    <link rel="prev" title="cert-err34-c" href="cert-err34-c.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 - cert-err52-cpp</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="cert-err34-c.html">cert-err34-c</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="cert-err58-cpp.html">cert-err58-cpp</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="cert-err52-cpp">
+<h1>cert-err52-cpp<a class="headerlink" href="#cert-err52-cpp" title="Permalink to this headline">¶</a></h1>
+<p>This check flags all call expressions involving <code class="docutils literal notranslate"><span class="pre">setjmp()</span></code> and <code class="docutils literal notranslate"><span class="pre">longjmp()</span></code>.</p>
+<p>This check corresponds to the CERT C++ Coding Standard rule
+<a class="reference external" href="https://www.securecoding.cert.org/confluence/pages/viewpage.action?pageId=1834">ERR52-CPP. Do not use setjmp() or longjmp()</a>.</p>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="cert-err34-c.html">cert-err34-c</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="cert-err58-cpp.html">cert-err58-cpp</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/cert-err58-cpp.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cert-err58-cpp.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cert-err58-cpp.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cert-err58-cpp.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" />
+    <title>clang-tidy - cert-err58-cpp — 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="cert-err60-cpp" href="cert-err60-cpp.html" />
+    <link rel="prev" title="cert-err52-cpp" href="cert-err52-cpp.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 - cert-err58-cpp</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="cert-err52-cpp.html">cert-err52-cpp</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="cert-err60-cpp.html">cert-err60-cpp</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="cert-err58-cpp">
+<h1>cert-err58-cpp<a class="headerlink" href="#cert-err58-cpp" title="Permalink to this headline">¶</a></h1>
+<p>This check flags all <code class="docutils literal notranslate"><span class="pre">static</span></code> or <code class="docutils literal notranslate"><span class="pre">thread_local</span></code> variable declarations where
+the initializer for the object may throw an exception.</p>
+<p>This check corresponds to the CERT C++ Coding Standard rule
+<a class="reference external" href="https://www.securecoding.cert.org/confluence/display/cplusplus/ERR58-CPP.+Handle+all+exceptions+thrown+before+main%28%29+begins+executing">ERR58-CPP. Handle all exceptions thrown before main() begins executing</a>.</p>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="cert-err52-cpp.html">cert-err52-cpp</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="cert-err60-cpp.html">cert-err60-cpp</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/cert-err60-cpp.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cert-err60-cpp.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cert-err60-cpp.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cert-err60-cpp.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" />
+    <title>clang-tidy - cert-err60-cpp — 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="cert-err61-cpp" href="cert-err61-cpp.html" />
+    <link rel="prev" title="cert-err58-cpp" href="cert-err58-cpp.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 - cert-err60-cpp</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="cert-err58-cpp.html">cert-err58-cpp</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="cert-err61-cpp.html">cert-err61-cpp</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="cert-err60-cpp">
+<h1>cert-err60-cpp<a class="headerlink" href="#cert-err60-cpp" title="Permalink to this headline">¶</a></h1>
+<p>This check flags all throw expressions where the exception object is not nothrow
+copy constructible.</p>
+<p>This check corresponds to the CERT C++ Coding Standard rule
+<a class="reference external" href="https://www.securecoding.cert.org/confluence/display/cplusplus/ERR60-CPP.+Exception+objects+must+be+nothrow+copy+constructible">ERR60-CPP. Exception objects must be nothrow copy constructible</a>.</p>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="cert-err58-cpp.html">cert-err58-cpp</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="cert-err61-cpp.html">cert-err61-cpp</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/cert-err61-cpp.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cert-err61-cpp.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cert-err61-cpp.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cert-err61-cpp.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-throw-by-value-catch-by-reference.html" http-equiv="refresh" />
+
+    <title>clang-tidy - cert-err61-cpp — 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="cert-fio38-c" href="cert-fio38-c.html" />
+    <link rel="prev" title="cert-err60-cpp" href="cert-err60-cpp.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 - cert-err61-cpp</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="cert-err60-cpp.html">cert-err60-cpp</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="cert-fio38-c.html">cert-fio38-c</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="cert-err61-cpp">
+<h1>cert-err61-cpp<a class="headerlink" href="#cert-err61-cpp" title="Permalink to this headline">¶</a></h1>
+<p>The cert-err61-cpp check is an alias, please see
+<a class="reference external" href="misc-throw-by-value-catch-by-reference.html">misc-throw-by-value-catch-by-reference</a>
+for more information.</p>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="cert-err60-cpp.html">cert-err60-cpp</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="cert-fio38-c.html">cert-fio38-c</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/cert-fio38-c.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cert-fio38-c.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cert-fio38-c.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cert-fio38-c.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-non-copyable-objects.html" http-equiv="refresh" />
+
+    <title>clang-tidy - cert-fio38-c — 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="cert-flp30-c" href="cert-flp30-c.html" />
+    <link rel="prev" title="cert-err61-cpp" href="cert-err61-cpp.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 - cert-fio38-c</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="cert-err61-cpp.html">cert-err61-cpp</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="cert-flp30-c.html">cert-flp30-c</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="cert-fio38-c">
+<h1>cert-fio38-c<a class="headerlink" href="#cert-fio38-c" title="Permalink to this headline">¶</a></h1>
+<p>The cert-fio38-c check is an alias, please see
+<a class="reference external" href="misc-non-copyable-objects.html">misc-non-copyable-objects</a> for more
+information.</p>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="cert-err61-cpp.html">cert-err61-cpp</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="cert-flp30-c.html">cert-flp30-c</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/cert-flp30-c.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cert-flp30-c.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cert-flp30-c.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cert-flp30-c.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" />
+    <title>clang-tidy - cert-flp30-c — 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="cert-msc30-c" href="cert-msc30-c.html" />
+    <link rel="prev" title="cert-fio38-c" href="cert-fio38-c.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 - cert-flp30-c</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="cert-fio38-c.html">cert-fio38-c</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="cert-msc30-c.html">cert-msc30-c</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="cert-flp30-c">
+<h1>cert-flp30-c<a class="headerlink" href="#cert-flp30-c" title="Permalink to this headline">¶</a></h1>
+<p>This check flags <code class="docutils literal notranslate"><span class="pre">for</span></code> loops where the induction expression has a
+floating-point type.</p>
+<p>This check corresponds to the CERT C Coding Standard rule
+<a class="reference external" href="https://www.securecoding.cert.org/confluence/display/c/FLP30-C.+Do+not+use+floating-point+variables+as+loop+counters">FLP30-C. Do not use floating-point variables as loop counters</a>.</p>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="cert-fio38-c.html">cert-fio38-c</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="cert-msc30-c.html">cert-msc30-c</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/cert-msc30-c.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cert-msc30-c.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cert-msc30-c.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cert-msc30-c.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=cert-msc50-cpp.html" http-equiv="refresh" />
+
+    <title>clang-tidy - cert-msc30-c — 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="cert-msc32-c" href="cert-msc32-c.html" />
+    <link rel="prev" title="cert-flp30-c" href="cert-flp30-c.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 - cert-msc30-c</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="cert-flp30-c.html">cert-flp30-c</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="cert-msc32-c.html">cert-msc32-c</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="cert-msc30-c">
+<h1>cert-msc30-c<a class="headerlink" href="#cert-msc30-c" title="Permalink to this headline">¶</a></h1>
+<p>The cert-msc30-c check is an alias, please see
+<a class="reference external" href="cert-msc50-cpp.html">cert-msc50-cpp</a> for more information.</p>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="cert-flp30-c.html">cert-flp30-c</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="cert-msc32-c.html">cert-msc32-c</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/cert-msc32-c.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cert-msc32-c.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cert-msc32-c.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cert-msc32-c.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=cert-msc51-cpp.html" http-equiv="refresh" />
+
+    <title>clang-tidy - cert-msc32-c — 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="cert-msc50-cpp" href="cert-msc50-cpp.html" />
+    <link rel="prev" title="cert-msc30-c" href="cert-msc30-c.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 - cert-msc32-c</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="cert-msc30-c.html">cert-msc30-c</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="cert-msc50-cpp.html">cert-msc50-cpp</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="cert-msc32-c">
+<h1>cert-msc32-c<a class="headerlink" href="#cert-msc32-c" title="Permalink to this headline">¶</a></h1>
+<p>The cert-msc32-c check is an alias, please see
+<a class="reference external" href="cert-msc51-cpp.html">cert-msc51-cpp</a> for more information.</p>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="cert-msc30-c.html">cert-msc30-c</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="cert-msc50-cpp.html">cert-msc50-cpp</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/cert-msc50-cpp.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cert-msc50-cpp.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cert-msc50-cpp.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cert-msc50-cpp.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 - cert-msc50-cpp — 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="cert-msc51-cpp" href="cert-msc51-cpp.html" />
+    <link rel="prev" title="cert-msc32-c" href="cert-msc32-c.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 - cert-msc50-cpp</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="cert-msc32-c.html">cert-msc32-c</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="cert-msc51-cpp.html">cert-msc51-cpp</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="cert-msc50-cpp">
+<h1>cert-msc50-cpp<a class="headerlink" href="#cert-msc50-cpp" title="Permalink to this headline">¶</a></h1>
+<p>Pseudorandom number generators use mathematical algorithms to produce a sequence
+of numbers with good statistical properties, but the numbers produced are not
+genuinely random. The <code class="docutils literal notranslate"><span class="pre">std::rand()</span></code> function takes a seed (number), runs a
+mathematical operation on it and returns the result. By manipulating the seed
+the result can be predictable. This check warns for the usage of
+<code class="docutils literal notranslate"><span class="pre">std::rand()</span></code>.</p>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="cert-msc32-c.html">cert-msc32-c</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="cert-msc51-cpp.html">cert-msc51-cpp</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/cert-msc51-cpp.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cert-msc51-cpp.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cert-msc51-cpp.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cert-msc51-cpp.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 - cert-msc51-cpp — 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="cert-oop11-cpp" href="cert-oop11-cpp.html" />
+    <link rel="prev" title="cert-msc50-cpp" href="cert-msc50-cpp.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 - cert-msc51-cpp</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="cert-msc50-cpp.html">cert-msc50-cpp</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="cert-oop11-cpp.html">cert-oop11-cpp</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="cert-msc51-cpp">
+<h1>cert-msc51-cpp<a class="headerlink" href="#cert-msc51-cpp" title="Permalink to this headline">¶</a></h1>
+<p>This check flags all pseudo-random number engines, engine adaptor
+instantiations and <code class="docutils literal notranslate"><span class="pre">srand()</span></code> when initialized or seeded with default argument,
+constant expression or any user-configurable type. Pseudo-random number
+engines seeded with a predictable value may cause vulnerabilities e.g. in
+security protocols.
+This is a CERT security rule, see
+<a class="reference external" href="https://wiki.sei.cmu.edu/confluence/display/cplusplus/MSC51-CPP.+Ensure+your+random+number+generator+is+properly+seeded">MSC51-CPP. Ensure your random number generator is properly seeded</a> and
+<a class="reference external" href="https://wiki.sei.cmu.edu/confluence/display/c/MSC32-C.+Properly+seed+pseudorandom+number+generators">MSC32-C. Properly seed pseudorandom number generators</a>.</p>
+<p>Examples:</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="n">std</span><span class="o">::</span><span class="n">mt19937</span> <span class="n">engine1</span><span class="p">;</span> <span class="c1">// Diagnose, always generate the same sequence</span>
+  <span class="n">std</span><span class="o">::</span><span class="n">mt19937</span> <span class="n">engine2</span><span class="p">(</span><span class="mi">1</span><span class="p">);</span> <span class="c1">// Diagnose</span>
+  <span class="n">engine1</span><span class="p">.</span><span class="n">seed</span><span class="p">();</span> <span class="c1">// Diagnose</span>
+  <span class="n">engine2</span><span class="p">.</span><span class="n">seed</span><span class="p">(</span><span class="mi">1</span><span class="p">);</span> <span class="c1">// Diagnose</span>
+
+  <span class="n">std</span><span class="o">::</span><span class="kt">time_t</span> <span class="n">t</span><span class="p">;</span>
+  <span class="n">engine1</span><span class="p">.</span><span class="n">seed</span><span class="p">(</span><span class="n">std</span><span class="o">::</span><span class="n">time</span><span class="p">(</span><span class="o">&</span><span class="n">t</span><span class="p">));</span> <span class="c1">// Diagnose, system time might be controlled by user</span>
+
+  <span class="kt">int</span> <span class="n">x</span> <span class="o">=</span> <span class="n">atoi</span><span class="p">(</span><span class="n">argv</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">mt19937</span> <span class="n">engine3</span><span class="p">(</span><span class="n">x</span><span class="p">);</span>  <span class="c1">// Will not warn</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-disallowedseedtypes">
+<code class="descname">DisallowedSeedTypes</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-disallowedseedtypes" title="Permalink to this definition">¶</a></dt>
+<dd><p>A comma-separated list of the type names which are disallowed.
+Default values are <code class="docutils literal notranslate"><span class="pre">time_t</span></code>, <code class="docutils literal notranslate"><span class="pre">std::time_t</span></code>.</p>
+</dd></dl>
+
+</div>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="cert-msc50-cpp.html">cert-msc50-cpp</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="cert-oop11-cpp.html">cert-oop11-cpp</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/cert-oop11-cpp.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cert-oop11-cpp.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cert-oop11-cpp.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cert-oop11-cpp.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" /><meta content="5;URL=performance-move-constructor-init.html" http-equiv="refresh" />
+
+    <title>clang-tidy - cert-oop11-cpp — 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="cert-oop54-cpp" href="cert-oop54-cpp.html" />
+    <link rel="prev" title="cert-msc51-cpp" href="cert-msc51-cpp.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 - cert-oop11-cpp</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="cert-msc51-cpp.html">cert-msc51-cpp</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="cert-oop54-cpp.html">cert-oop54-cpp</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="cert-oop11-cpp">
+<h1>cert-oop11-cpp<a class="headerlink" href="#cert-oop11-cpp" title="Permalink to this headline">¶</a></h1>
+<p>The cert-oop11-cpp check is an alias, please see
+<a class="reference external" href="performance-move-constructor-init.html">performance-move-constructor-init</a>
+for more information.</p>
+<p>This check corresponds to the CERT C++ Coding Standard recommendation
+OOP11-CPP. Do not copy-initialize members or base classes from a move
+constructor. However, all of the CERT recommendations have been removed from
+public view, and so their justification for the behavior of this check requires
+an account on their wiki to view.</p>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="cert-msc51-cpp.html">cert-msc51-cpp</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="cert-oop54-cpp.html">cert-oop54-cpp</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/cert-oop54-cpp.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cert-oop54-cpp.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cert-oop54-cpp.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cert-oop54-cpp.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=bugprone-unhandled-self-assignment.html" http-equiv="refresh" />
+
+    <title>clang-tidy - cert-oop54-cpp — 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="cppcoreguidelines-avoid-c-arrays" href="cppcoreguidelines-avoid-c-arrays.html" />
+    <link rel="prev" title="cert-oop11-cpp" href="cert-oop11-cpp.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 - cert-oop54-cpp</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="cert-oop11-cpp.html">cert-oop11-cpp</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="cppcoreguidelines-avoid-c-arrays.html">cppcoreguidelines-avoid-c-arrays</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="cert-oop54-cpp">
+<h1>cert-oop54-cpp<a class="headerlink" href="#cert-oop54-cpp" title="Permalink to this headline">¶</a></h1>
+<p>The cert-oop54-cpp check is an alias, please see
+<a class="reference external" href="bugprone-unhandled-self-assignment.html">bugprone-unhandled-self-assignment</a>
+for more information.</p>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="cert-oop11-cpp.html">cert-oop11-cpp</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="cppcoreguidelines-avoid-c-arrays.html">cppcoreguidelines-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/cppcoreguidelines-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/cppcoreguidelines-avoid-c-arrays.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cppcoreguidelines-avoid-c-arrays.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cppcoreguidelines-avoid-c-arrays.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-avoid-c-arrays.html" http-equiv="refresh" />
+
+    <title>clang-tidy - cppcoreguidelines-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="cppcoreguidelines-avoid-goto" href="cppcoreguidelines-avoid-goto.html" />
+    <link rel="prev" title="cert-oop54-cpp" href="cert-oop54-cpp.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 - cppcoreguidelines-avoid-c-arrays</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="cert-oop54-cpp.html">cert-oop54-cpp</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="cppcoreguidelines-avoid-goto.html">cppcoreguidelines-avoid-goto</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="cppcoreguidelines-avoid-c-arrays">
+<h1>cppcoreguidelines-avoid-c-arrays<a class="headerlink" href="#cppcoreguidelines-avoid-c-arrays" title="Permalink to this headline">¶</a></h1>
+<p>The cppcoreguidelines-avoid-c-arrays check is an alias, please see
+<a class="reference external" href="modernize-avoid-c-arrays.html">modernize-avoid-c-arrays</a>
+for more information.</p>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="cert-oop54-cpp.html">cert-oop54-cpp</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="cppcoreguidelines-avoid-goto.html">cppcoreguidelines-avoid-goto</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/cppcoreguidelines-avoid-goto.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cppcoreguidelines-avoid-goto.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cppcoreguidelines-avoid-goto.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cppcoreguidelines-avoid-goto.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,102 @@
+
+<!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 - cppcoreguidelines-avoid-goto — 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="cppcoreguidelines-avoid-magic-numbers" href="cppcoreguidelines-avoid-magic-numbers.html" />
+    <link rel="prev" title="cppcoreguidelines-avoid-c-arrays" href="cppcoreguidelines-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 - cppcoreguidelines-avoid-goto</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="cppcoreguidelines-avoid-c-arrays.html">cppcoreguidelines-avoid-c-arrays</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="cppcoreguidelines-avoid-magic-numbers.html">cppcoreguidelines-avoid-magic-numbers</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="cppcoreguidelines-avoid-goto">
+<h1>cppcoreguidelines-avoid-goto<a class="headerlink" href="#cppcoreguidelines-avoid-goto" title="Permalink to this headline">¶</a></h1>
+<p>The usage of <code class="docutils literal notranslate"><span class="pre">goto</span></code> for control flow is error prone and should be replaced
+with looping constructs. Only forward jumps in nested loops are accepted.</p>
+<p>This check implements <a class="reference external" href="https://github.com/isocpp/CppCoreGuidelines/blob/master/CppCoreGuidelines.md#es76-avoid-goto">ES.76</a>
+from the CppCoreGuidelines and
+<a class="reference external" href="http://www.codingstandard.com/rule/6-3-1-ensure-that-the-labels-for-a-jump-statement-or-a-switch-condition-appear-later-in-the-same-or-an-enclosing-block/">6.3.1 from High Integrity C++</a>.</p>
+<p>For more information on why to avoid programming
+with <code class="docutils literal notranslate"><span class="pre">goto</span></code> you can read the famous paper <a class="reference external" href="https://www.cs.utexas.edu/users/EWD/ewd02xx/EWD215.PDF">A Case against the GO TO Statement.</a>.</p>
+<p>The check diagnoses <code class="docutils literal notranslate"><span class="pre">goto</span></code> for backward jumps in every language mode. These
+should be replaced with <cite>C/C++</cite> looping constructs.</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="c1">// Bad, handwritten for loop.</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="c1">// Jump label for the loop</span>
+<span class="nl">loop_start</span><span class="p">:</span>
+<span class="n">do_some_operation</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">100</span><span class="p">)</span> <span class="p">{</span>
+  <span class="o">++</span><span class="n">i</span><span class="p">;</span>
+  <span class="k">goto</span> <span class="n">loop_start</span><span class="p">;</span>
+<span class="p">}</span>
+
+<span class="c1">// Better</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">100</span><span class="p">;</span> <span class="o">++</span><span class="n">i</span><span class="p">)</span>
+  <span class="n">do_some_operation</span><span class="p">();</span>
+</pre></div>
+</div>
+<p>Modern C++ needs <code class="docutils literal notranslate"><span class="pre">goto</span></code> only to jump out of nested loops.</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="mi">100</span><span class="p">;</span> <span class="o">++</span><span class="n">i</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">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">100</span><span class="p">;</span> <span class="o">++</span><span class="n">j</span><span class="p">)</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="n">j</span> <span class="o">></span> <span class="mi">500</span><span class="p">)</span>
+      <span class="k">goto</span> <span class="n">early_exit</span><span class="p">;</span>
+  <span class="p">}</span>
+<span class="p">}</span>
+
+<span class="nl">early_exit</span><span class="p">:</span>
+<span class="n">some_operation</span><span class="p">();</span>
+</pre></div>
+</div>
+<p>All other uses of <code class="docutils literal notranslate"><span class="pre">goto</span></code> are diagnosed in <cite>C++</cite>.</p>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="cppcoreguidelines-avoid-c-arrays.html">cppcoreguidelines-avoid-c-arrays</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="cppcoreguidelines-avoid-magic-numbers.html">cppcoreguidelines-avoid-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/cppcoreguidelines-avoid-magic-numbers.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cppcoreguidelines-avoid-magic-numbers.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cppcoreguidelines-avoid-magic-numbers.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cppcoreguidelines-avoid-magic-numbers.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=readability-magic-numbers.html" http-equiv="refresh" />
+
+    <title>clang-tidy - cppcoreguidelines-avoid-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="cppcoreguidelines-c-copy-assignment-signature" href="cppcoreguidelines-c-copy-assignment-signature.html" />
+    <link rel="prev" title="cppcoreguidelines-avoid-goto" href="cppcoreguidelines-avoid-goto.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 - cppcoreguidelines-avoid-magic-numbers</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="cppcoreguidelines-avoid-goto.html">cppcoreguidelines-avoid-goto</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="cppcoreguidelines-c-copy-assignment-signature.html">cppcoreguidelines-c-copy-assignment-signature</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="cppcoreguidelines-avoid-magic-numbers">
+<h1>cppcoreguidelines-avoid-magic-numbers<a class="headerlink" href="#cppcoreguidelines-avoid-magic-numbers" title="Permalink to this headline">¶</a></h1>
+<p>The cppcoreguidelines-avoid-magic-numbers check is an alias, please see
+<a class="reference external" href="readability-magic-numbers.html">readability-magic-numbers</a>
+for more information.</p>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="cppcoreguidelines-avoid-goto.html">cppcoreguidelines-avoid-goto</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="cppcoreguidelines-c-copy-assignment-signature.html">cppcoreguidelines-c-copy-assignment-signature</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/cppcoreguidelines-c-copy-assignment-signature.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cppcoreguidelines-c-copy-assignment-signature.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cppcoreguidelines-c-copy-assignment-signature.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cppcoreguidelines-c-copy-assignment-signature.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-unconventional-assign-operator.html" http-equiv="refresh" />
+
+    <title>clang-tidy - cppcoreguidelines-c-copy-assignment-signature — 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="cppcoreguidelines-explicit-virtual-functions" href="cppcoreguidelines-explicit-virtual-functions.html" />
+    <link rel="prev" title="cppcoreguidelines-avoid-magic-numbers" href="cppcoreguidelines-avoid-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 - cppcoreguidelines-c-copy-assignment-signature</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="cppcoreguidelines-avoid-magic-numbers.html">cppcoreguidelines-avoid-magic-numbers</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="cppcoreguidelines-explicit-virtual-functions.html">cppcoreguidelines-explicit-virtual-functions</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="cppcoreguidelines-c-copy-assignment-signature">
+<h1>cppcoreguidelines-c-copy-assignment-signature<a class="headerlink" href="#cppcoreguidelines-c-copy-assignment-signature" title="Permalink to this headline">¶</a></h1>
+<p>The cppcoreguidelines-c-copy-assignment-signature check is an alias, please see
+<a class="reference external" href="misc-unconventional-assign-operator.html">misc-unconventional-assign-operator</a>
+for more information.</p>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="cppcoreguidelines-avoid-magic-numbers.html">cppcoreguidelines-avoid-magic-numbers</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="cppcoreguidelines-explicit-virtual-functions.html">cppcoreguidelines-explicit-virtual-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/cppcoreguidelines-explicit-virtual-functions.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cppcoreguidelines-explicit-virtual-functions.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cppcoreguidelines-explicit-virtual-functions.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cppcoreguidelines-explicit-virtual-functions.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 - cppcoreguidelines-explicit-virtual-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="cppcoreguidelines-interfaces-global-init" href="cppcoreguidelines-interfaces-global-init.html" />
+    <link rel="prev" title="cppcoreguidelines-c-copy-assignment-signature" href="cppcoreguidelines-c-copy-assignment-signature.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 - cppcoreguidelines-explicit-virtual-functions</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="cppcoreguidelines-c-copy-assignment-signature.html">cppcoreguidelines-c-copy-assignment-signature</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="cppcoreguidelines-interfaces-global-init.html">cppcoreguidelines-interfaces-global-init</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="cppcoreguidelines-explicit-virtual-functions">
+<h1>cppcoreguidelines-explicit-virtual-functions<a class="headerlink" href="#cppcoreguidelines-explicit-virtual-functions" title="Permalink to this headline">¶</a></h1>
+<p>The cppcoreguidelines-explicit-virtual-functions check is an alias, please see
+<a class="reference external" href="modernize-use-override.html">modernize-use-override</a>
+for more information.</p>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="cppcoreguidelines-c-copy-assignment-signature.html">cppcoreguidelines-c-copy-assignment-signature</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="cppcoreguidelines-interfaces-global-init.html">cppcoreguidelines-interfaces-global-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/cppcoreguidelines-interfaces-global-init.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cppcoreguidelines-interfaces-global-init.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cppcoreguidelines-interfaces-global-init.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cppcoreguidelines-interfaces-global-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 - cppcoreguidelines-interfaces-global-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="cppcoreguidelines-macro-usage" href="cppcoreguidelines-macro-usage.html" />
+    <link rel="prev" title="cppcoreguidelines-explicit-virtual-functions" href="cppcoreguidelines-explicit-virtual-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 - cppcoreguidelines-interfaces-global-init</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="cppcoreguidelines-explicit-virtual-functions.html">cppcoreguidelines-explicit-virtual-functions</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="cppcoreguidelines-macro-usage.html">cppcoreguidelines-macro-usage</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="cppcoreguidelines-interfaces-global-init">
+<h1>cppcoreguidelines-interfaces-global-init<a class="headerlink" href="#cppcoreguidelines-interfaces-global-init" title="Permalink to this headline">¶</a></h1>
+<p>This check flags initializers of globals that access extern objects,
+and therefore can lead to order-of-initialization problems.</p>
+<p>This rule is part of the “Interfaces” profile of the C++ Core Guidelines, see
+<a class="reference external" href="https://github.com/isocpp/CppCoreGuidelines/blob/master/CppCoreGuidelines.md#Ri-global-init">https://github.com/isocpp/CppCoreGuidelines/blob/master/CppCoreGuidelines.md#Ri-global-init</a></p>
+<p>Note that currently this does not flag calls to non-constexpr functions, and
+therefore globals could still be accessed from functions themselves.</p>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="cppcoreguidelines-explicit-virtual-functions.html">cppcoreguidelines-explicit-virtual-functions</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="cppcoreguidelines-macro-usage.html">cppcoreguidelines-macro-usage</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/cppcoreguidelines-macro-usage.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cppcoreguidelines-macro-usage.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cppcoreguidelines-macro-usage.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cppcoreguidelines-macro-usage.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 - cppcoreguidelines-macro-usage — 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="cppcoreguidelines-narrowing-conversions" href="cppcoreguidelines-narrowing-conversions.html" />
+    <link rel="prev" title="cppcoreguidelines-interfaces-global-init" href="cppcoreguidelines-interfaces-global-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 - cppcoreguidelines-macro-usage</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="cppcoreguidelines-interfaces-global-init.html">cppcoreguidelines-interfaces-global-init</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="cppcoreguidelines-narrowing-conversions.html">cppcoreguidelines-narrowing-conversions</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="cppcoreguidelines-macro-usage">
+<h1>cppcoreguidelines-macro-usage<a class="headerlink" href="#cppcoreguidelines-macro-usage" title="Permalink to this headline">¶</a></h1>
+<p>Finds macro usage that is considered problematic because better language
+constructs exist for the task.</p>
+<p>The relevant sections in the C++ Core Guidelines are
+<a class="reference external" href="https://github.com/isocpp/CppCoreGuidelines/blob/master/CppCoreGuidelines.md#enum1-prefer-enumerations-over-macros">Enum.1</a>,
+<a class="reference external" href="https://github.com/isocpp/CppCoreGuidelines/blob/master/CppCoreGuidelines.md#es30-dont-use-macros-for-program-text-manipulation">ES.30</a>,
+<a class="reference external" href="https://github.com/isocpp/CppCoreGuidelines/blob/master/CppCoreGuidelines.md#es31-dont-use-macros-for-constants-or-functions">ES.31</a> and
+<a class="reference external" href="https://github.com/isocpp/CppCoreGuidelines/blob/master/CppCoreGuidelines.md#es33-if-you-must-use-macros-give-them-unique-names">ES.33</a>.</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-allowedregexp">
+<code class="descname">AllowedRegexp</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-allowedregexp" title="Permalink to this definition">¶</a></dt>
+<dd><p>A regular expression to filter allowed macros. For example
+<cite>DEBUG*|LIBTORRENT*|TORRENT*|UNI*</cite> could be applied to filter <cite>libtorrent</cite>.
+Default value is <cite>^DEBUG_*</cite>.</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-checkcapsonly">
+<code class="descname">CheckCapsOnly</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-checkcapsonly" title="Permalink to this definition">¶</a></dt>
+<dd><p>Boolean flag to warn on all macros except those with CAPS_ONLY names.
+This option is intended to ease introduction of this check into older
+code bases. Default value is <cite>0</cite>/<cite>false</cite>.</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-ignorecommandlinemacros">
+<code class="descname">IgnoreCommandLineMacros</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-ignorecommandlinemacros" title="Permalink to this definition">¶</a></dt>
+<dd><p>Boolean flag to toggle ignoring command-line-defined macros.
+Default value is <cite>1</cite>/<cite>true</cite>.</p>
+</dd></dl>
+
+</div>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="cppcoreguidelines-interfaces-global-init.html">cppcoreguidelines-interfaces-global-init</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="cppcoreguidelines-narrowing-conversions.html">cppcoreguidelines-narrowing-conversions</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/cppcoreguidelines-narrowing-conversions.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cppcoreguidelines-narrowing-conversions.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cppcoreguidelines-narrowing-conversions.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cppcoreguidelines-narrowing-conversions.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,133 @@
+
+<!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 - cppcoreguidelines-narrowing-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="cppcoreguidelines-no-malloc" href="cppcoreguidelines-no-malloc.html" />
+    <link rel="prev" title="cppcoreguidelines-macro-usage" href="cppcoreguidelines-macro-usage.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 - cppcoreguidelines-narrowing-conversions</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="cppcoreguidelines-macro-usage.html">cppcoreguidelines-macro-usage</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="cppcoreguidelines-no-malloc.html">cppcoreguidelines-no-malloc</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="cppcoreguidelines-narrowing-conversions">
+<h1>cppcoreguidelines-narrowing-conversions<a class="headerlink" href="#cppcoreguidelines-narrowing-conversions" title="Permalink to this headline">¶</a></h1>
+<p>Checks for silent narrowing conversions, e.g: <code class="docutils literal notranslate"><span class="pre">int</span> <span class="pre">i</span> <span class="pre">=</span> <span class="pre">0;</span> <span class="pre">i</span> <span class="pre">+=</span> <span class="pre">0.1;</span></code>. While
+the issue is obvious in this former example, it might not be so in the
+following: <code class="docutils literal notranslate"><span class="pre">void</span> <span class="pre">MyClass::f(double</span> <span class="pre">d)</span> <span class="pre">{</span> <span class="pre">int_member_</span> <span class="pre">+=</span> <span class="pre">d;</span> <span class="pre">}</span></code>.</p>
+<p>This rule is part of the “Expressions and statements” profile of the C++ Core
+Guidelines, corresponding to rule ES.46. See</p>
+<p><a class="reference external" href="https://github.com/isocpp/CppCoreGuidelines/blob/master/CppCoreGuidelines.md#es46-avoid-lossy-narrowing-truncating-arithmetic-conversions">https://github.com/isocpp/CppCoreGuidelines/blob/master/CppCoreGuidelines.md#es46-avoid-lossy-narrowing-truncating-arithmetic-conversions</a>.</p>
+<dl class="docutils">
+<dt>We enforce only part of the guideline, more specifically, we flag narrowing conversions from:</dt>
+<dd><ul class="first last simple">
+<li>an integer to a narrower integer (e.g. <code class="docutils literal notranslate"><span class="pre">char</span></code> to <code class="docutils literal notranslate"><span class="pre">unsigned</span> <span class="pre">char</span></code>),</li>
+<li>an integer to a narrower floating-point (e.g. <code class="docutils literal notranslate"><span class="pre">uint64_t</span></code> to <code class="docutils literal notranslate"><span class="pre">float</span></code>),</li>
+<li>a floating-point to an integer (e.g. <code class="docutils literal notranslate"><span class="pre">double</span></code> to <code class="docutils literal notranslate"><span class="pre">int</span></code>),</li>
+<li>a floating-point to a narrower floating-point (e.g. <code class="docutils literal notranslate"><span class="pre">double</span></code> to <code class="docutils literal notranslate"><span class="pre">float</span></code>)
+if WarnOnFloatingPointNarrowingConversion Option is set.</li>
+</ul>
+</dd>
+<dt>This check will flag:</dt>
+<dd><ul class="first last simple">
+<li>All narrowing conversions that are not marked by an explicit cast (c-style or
+<code class="docutils literal notranslate"><span class="pre">static_cast</span></code>). For example: <code class="docutils literal notranslate"><span class="pre">int</span> <span class="pre">i</span> <span class="pre">=</span> <span class="pre">0;</span> <span class="pre">i</span> <span class="pre">+=</span> <span class="pre">0.1;</span></code>,
+<code class="docutils literal notranslate"><span class="pre">void</span> <span class="pre">f(int);</span> <span class="pre">f(0.1);</span></code>,</li>
+<li>All applications of binary operators with a narrowing conversions.
+For example: <code class="docutils literal notranslate"><span class="pre">int</span> <span class="pre">i;</span> <span class="pre">i+=</span> <span class="pre">0.1;</span></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-warnonfloatingpointnarrowingconversion">
+<code class="descname">WarnOnFloatingPointNarrowingConversion</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-warnonfloatingpointnarrowingconversion" title="Permalink to this definition">¶</a></dt>
+<dd><p>When non-zero, the check will warn on narrowing floating point conversion
+(e.g. <code class="docutils literal notranslate"><span class="pre">double</span></code> to <code class="docutils literal notranslate"><span class="pre">float</span></code>). <cite>1</cite> by default.</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-pedanticmode">
+<code class="descname">PedanticMode</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-pedanticmode" title="Permalink to this definition">¶</a></dt>
+<dd><p>When non-zero, the check will warn on assigning a floating point constant
+to an integer value even if the floating point value is exactly
+representable in the destination type (e.g. <code class="docutils literal notranslate"><span class="pre">int</span> <span class="pre">i</span> <span class="pre">=</span> <span class="pre">1.0;</span></code>).
+<cite>0</cite> by default.</p>
+</dd></dl>
+
+</div>
+<div class="section" id="faq">
+<h2>FAQ<a class="headerlink" href="#faq" title="Permalink to this headline">¶</a></h2>
+<blockquote>
+<div><ul class="simple">
+<li>What does “narrowing conversion from ‘int’ to ‘float’” mean?</li>
+</ul>
+</div></blockquote>
+<p>An IEEE754 Floating Point number can represent all integer values in the range
+[-2^PrecisionBits, 2^PrecisionBits] where PrecisionBits is the number of bits in
+the mantissa.</p>
+<p>For <code class="docutils literal notranslate"><span class="pre">float</span></code> this would be [-2^23, 2^23], where <code class="docutils literal notranslate"><span class="pre">int</span></code> can represent values in
+the range [-2^31, 2^31-1].</p>
+<blockquote>
+<div><ul class="simple">
+<li>What does “implementation-defined” mean?</li>
+</ul>
+</div></blockquote>
+<p>You may have encountered messages like “narrowing conversion from ‘unsigned int’
+to signed type ‘int’ is implementation-defined”.
+The C/C++ standard does not mandate two’s complement for signed integers, and so
+the compiler is free to define what the semantics are for converting an unsigned
+integer to signed integer. Clang’s implementation uses the two’s complement
+format.</p>
+</div>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="cppcoreguidelines-macro-usage.html">cppcoreguidelines-macro-usage</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="cppcoreguidelines-no-malloc.html">cppcoreguidelines-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/cppcoreguidelines-no-malloc.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cppcoreguidelines-no-malloc.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cppcoreguidelines-no-malloc.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cppcoreguidelines-no-malloc.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,108 @@
+
+<!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 - cppcoreguidelines-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="cppcoreguidelines-non-private-member-variables-in-classes" href="cppcoreguidelines-non-private-member-variables-in-classes.html" />
+    <link rel="prev" title="cppcoreguidelines-narrowing-conversions" href="cppcoreguidelines-narrowing-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 - cppcoreguidelines-no-malloc</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="cppcoreguidelines-narrowing-conversions.html">cppcoreguidelines-narrowing-conversions</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="cppcoreguidelines-non-private-member-variables-in-classes.html">cppcoreguidelines-non-private-member-variables-in-classes</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="cppcoreguidelines-no-malloc">
+<h1>cppcoreguidelines-no-malloc<a class="headerlink" href="#cppcoreguidelines-no-malloc" title="Permalink to this headline">¶</a></h1>
+<p>This check handles C-Style memory management using <code class="docutils literal notranslate"><span class="pre">malloc()</span></code>, <code class="docutils literal notranslate"><span class="pre">realloc()</span></code>,
+<code class="docutils literal notranslate"><span class="pre">calloc()</span></code> and <code class="docutils literal notranslate"><span class="pre">free()</span></code>. It warns about its use and tries to suggest the use
+of an appropriate RAII object.
+Furthermore, it can be configured to check against a user-specified list of functions
+that are used for memory management (e.g. <code class="docutils literal notranslate"><span class="pre">posix_memalign()</span></code>).
+See <a class="reference external" href="https://github.com/isocpp/CppCoreGuidelines/blob/master/CppCoreGuidelines.md#Rr-mallocfree">C++ Core Guidelines</a>.</p>
+<p>There is no attempt made to provide fix-it hints, since manual resource
+management isn’t easily transformed automatically into RAII.</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="c1">// Warns each of the following lines.</span>
+<span class="c1">// Containers like std::vector or std::string should be used.</span>
+<span class="kt">char</span><span class="o">*</span> <span class="n">some_string</span> <span class="o">=</span> <span class="p">(</span><span class="kt">char</span><span class="o">*</span><span class="p">)</span> <span class="n">malloc</span><span class="p">(</span><span class="k">sizeof</span><span class="p">(</span><span class="kt">char</span><span class="p">)</span> <span class="o">*</span> <span class="mi">20</span><span class="p">);</span>
+<span class="kt">char</span><span class="o">*</span> <span class="n">some_string</span> <span class="o">=</span> <span class="p">(</span><span class="kt">char</span><span class="o">*</span><span class="p">)</span> <span class="n">realloc</span><span class="p">(</span><span class="k">sizeof</span><span class="p">(</span><span class="kt">char</span><span class="p">)</span> <span class="o">*</span> <span class="mi">30</span><span class="p">);</span>
+<span class="n">free</span><span class="p">(</span><span class="n">some_string</span><span class="p">);</span>
+
+<span class="kt">int</span><span class="o">*</span> <span class="n">int_array</span> <span class="o">=</span> <span class="p">(</span><span class="kt">int</span><span class="o">*</span><span class="p">)</span> <span class="n">calloc</span><span class="p">(</span><span class="mi">30</span><span class="p">,</span> <span class="k">sizeof</span><span class="p">(</span><span class="kt">int</span><span class="p">));</span>
+
+<span class="c1">// Rather use a smartpointer or stack variable.</span>
+<span class="k">struct</span> <span class="n">some_struct</span><span class="o">*</span> <span class="n">s</span> <span class="o">=</span> <span class="p">(</span><span class="k">struct</span> <span class="n">some_struct</span><span class="o">*</span><span class="p">)</span> <span class="n">malloc</span><span class="p">(</span><span class="k">sizeof</span><span class="p">(</span><span class="k">struct</span> <span class="n">some_struct</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-allocations">
+<code class="descname">Allocations</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-allocations" title="Permalink to this definition">¶</a></dt>
+<dd><p>Semicolon-separated list of fully qualified names of memory allocation functions.
+Defaults to <code class="docutils literal notranslate"><span class="pre">::malloc;::calloc</span></code>.</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-deallocations">
+<code class="descname">Deallocations</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-deallocations" title="Permalink to this definition">¶</a></dt>
+<dd><p>Semicolon-separated list of fully qualified names of memory allocation functions.
+Defaults to <code class="docutils literal notranslate"><span class="pre">::free</span></code>.</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-reallocations">
+<code class="descname">Reallocations</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-reallocations" title="Permalink to this definition">¶</a></dt>
+<dd><p>Semicolon-separated list of fully qualified names of memory allocation functions.
+Defaults to <code class="docutils literal notranslate"><span class="pre">::realloc</span></code>.</p>
+</dd></dl>
+
+</div>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="cppcoreguidelines-narrowing-conversions.html">cppcoreguidelines-narrowing-conversions</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="cppcoreguidelines-non-private-member-variables-in-classes.html">cppcoreguidelines-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/cppcoreguidelines-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/cppcoreguidelines-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/cppcoreguidelines-non-private-member-variables-in-classes.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cppcoreguidelines-non-private-member-variables-in-classes.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=misc-non-private-member-variables-in-classes.html" http-equiv="refresh" />
+
+    <title>clang-tidy - cppcoreguidelines-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="cppcoreguidelines-owning-memory" href="cppcoreguidelines-owning-memory.html" />
+    <link rel="prev" title="cppcoreguidelines-no-malloc" href="cppcoreguidelines-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 - cppcoreguidelines-non-private-member-variables-in-classes</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="cppcoreguidelines-no-malloc.html">cppcoreguidelines-no-malloc</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="cppcoreguidelines-owning-memory.html">cppcoreguidelines-owning-memory</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="cppcoreguidelines-non-private-member-variables-in-classes">
+<h1>cppcoreguidelines-non-private-member-variables-in-classes<a class="headerlink" href="#cppcoreguidelines-non-private-member-variables-in-classes" title="Permalink to this headline">¶</a></h1>
+<p>The cppcoreguidelines-non-private-member-variables-in-classes check is an alias,
+please see
+<a class="reference external" href="misc-non-private-member-variables-in-classes.html">misc-non-private-member-variables-in-classes</a>
+for more information.</p>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="cppcoreguidelines-no-malloc.html">cppcoreguidelines-no-malloc</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="cppcoreguidelines-owning-memory.html">cppcoreguidelines-owning-memory</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/cppcoreguidelines-owning-memory.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cppcoreguidelines-owning-memory.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cppcoreguidelines-owning-memory.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cppcoreguidelines-owning-memory.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,219 @@
+
+<!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 - cppcoreguidelines-owning-memory — 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="cppcoreguidelines-pro-bounds-array-to-pointer-decay" href="cppcoreguidelines-pro-bounds-array-to-pointer-decay.html" />
+    <link rel="prev" title="cppcoreguidelines-non-private-member-variables-in-classes" href="cppcoreguidelines-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 - cppcoreguidelines-owning-memory</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="cppcoreguidelines-non-private-member-variables-in-classes.html">cppcoreguidelines-non-private-member-variables-in-classes</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="cppcoreguidelines-pro-bounds-array-to-pointer-decay.html">cppcoreguidelines-pro-bounds-array-to-pointer-decay</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="cppcoreguidelines-owning-memory">
+<h1>cppcoreguidelines-owning-memory<a class="headerlink" href="#cppcoreguidelines-owning-memory" title="Permalink to this headline">¶</a></h1>
+<p>This check implements the type-based semantics of <code class="docutils literal notranslate"><span class="pre">gsl::owner<T*></span></code>, which allows
+static analysis on code, that uses raw pointers to handle resources like
+dynamic memory, but won’t introduce RAII concepts.</p>
+<p>The relevant sections in the <a class="reference external" href="https://github.com/isocpp/CppCoreGuidelines/blob/master/CppCoreGuidelines.md">C++ Core Guidelines</a> are I.11, C.33, R.3 and GSL.Views
+The definition of a <code class="docutils literal notranslate"><span class="pre">gsl::owner<T*></span></code> is straight forward</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">namespace</span> <span class="n">gsl</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="n">owner</span> <span class="o">=</span> <span class="n">T</span><span class="p">;</span> <span class="p">}</span>
+</pre></div>
+</div>
+<p>It is therefore simple to introduce the owner even without using an implementation of
+the <a class="reference external" href="https://github.com/isocpp/CppCoreGuidelines/blob/master/CppCoreGuidelines.md#gsl-guideline-support-library">Guideline Support Library</a>.</p>
+<p>All checks are purely type based and not (yet) flow sensitive.</p>
+<p>The following examples will demonstrate the correct and incorrect initializations
+of owners, assignment is handled the same way. Note that both <code class="docutils literal notranslate"><span class="pre">new</span></code> and
+<code class="docutils literal notranslate"><span class="pre">malloc()</span></code>-like resource functions are considered to produce resources.</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="c1">// Creating an owner with factory functions is checked.</span>
+<span class="n">gsl</span><span class="o">::</span><span class="n">owner</span><span class="o"><</span><span class="kt">int</span><span class="o">*></span> <span class="n">function_that_returns_owner</span><span class="p">()</span> <span class="p">{</span> <span class="k">return</span> <span class="n">gsl</span><span class="o">::</span><span class="n">owner</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">42</span><span class="p">));</span> <span class="p">}</span>
+
+<span class="c1">// Dynamic memory must be assigned to an owner</span>
+<span class="kt">int</span><span class="o">*</span> <span class="n">Something</span> <span class="o">=</span> <span class="k">new</span> <span class="kt">int</span><span class="p">(</span><span class="mi">42</span><span class="p">);</span> <span class="c1">// BAD, will be caught</span>
+<span class="n">gsl</span><span class="o">::</span><span class="n">owner</span><span class="o"><</span><span class="kt">int</span><span class="o">*></span> <span class="n">Owner</span> <span class="o">=</span> <span class="k">new</span> <span class="kt">int</span><span class="p">(</span><span class="mi">42</span><span class="p">);</span> <span class="c1">// Good</span>
+<span class="n">gsl</span><span class="o">::</span><span class="n">owner</span><span class="o"><</span><span class="kt">int</span><span class="o">*></span> <span class="n">Owner</span> <span class="o">=</span> <span class="k">new</span> <span class="kt">int</span><span class="p">[</span><span class="mi">42</span><span class="p">];</span> <span class="c1">// Good as well</span>
+
+<span class="c1">// Returned owner must be assigned to an owner</span>
+<span class="kt">int</span><span class="o">*</span> <span class="n">Something</span> <span class="o">=</span> <span class="n">function_that_returns_owner</span><span class="p">();</span> <span class="c1">// Bad, factory function</span>
+<span class="n">gsl</span><span class="o">::</span><span class="n">owner</span><span class="o"><</span><span class="kt">int</span><span class="o">*></span> <span class="n">Owner</span> <span class="o">=</span> <span class="n">function_that_returns_owner</span><span class="p">();</span> <span class="c1">// Good, result lands in owner</span>
+
+<span class="c1">// Something not a resource or owner should not be assigned to owners</span>
+<span class="kt">int</span> <span class="n">Stack</span> <span class="o">=</span> <span class="mi">42</span><span class="p">;</span>
+<span class="n">gsl</span><span class="o">::</span><span class="n">owner</span><span class="o"><</span><span class="kt">int</span><span class="o">*></span> <span class="n">Owned</span> <span class="o">=</span> <span class="o">&</span><span class="n">Stack</span><span class="p">;</span> <span class="c1">// Bad, not a resource assigned</span>
+</pre></div>
+</div>
+<p>In the case of dynamic memory as resource, only <code class="docutils literal notranslate"><span class="pre">gsl::owner<T*></span></code> variables are allowed
+to be deleted.</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="c1">// Example Bad, non-owner as resource handle, will be caught.</span>
+<span class="kt">int</span><span class="o">*</span> <span class="n">NonOwner</span> <span class="o">=</span> <span class="k">new</span> <span class="kt">int</span><span class="p">(</span><span class="mi">42</span><span class="p">);</span> <span class="c1">// First warning here, since new must land in an owner</span>
+<span class="k">delete</span> <span class="n">NonOwner</span><span class="p">;</span> <span class="c1">// Second warning here, since only owners are allowed to be deleted</span>
+
+<span class="c1">// Example Good, Ownership correctly stated</span>
+<span class="n">gsl</span><span class="o">::</span><span class="n">owner</span><span class="o"><</span><span class="kt">int</span><span class="o">*></span> <span class="n">Owner</span> <span class="o">=</span> <span class="k">new</span> <span class="kt">int</span><span class="p">(</span><span class="mi">42</span><span class="p">);</span> <span class="c1">// Good</span>
+<span class="k">delete</span> <span class="n">Owner</span><span class="p">;</span> <span class="c1">// Good as well, statically enforced, that only owners get deleted</span>
+</pre></div>
+</div>
+<p>The check will furthermore ensure, that functions, that expect a <code class="docutils literal notranslate"><span class="pre">gsl::owner<T*></span></code> as
+argument get called with either a <code class="docutils literal notranslate"><span class="pre">gsl::owner<T*></span></code> or a newly created resource.</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="kt">void</span> <span class="nf">expects_owner</span><span class="p">(</span><span class="n">gsl</span><span class="o">::</span><span class="n">owner</span><span class="o"><</span><span class="kt">int</span><span class="o">*></span> <span class="n">o</span><span class="p">)</span> <span class="p">{</span> <span class="k">delete</span> <span class="n">o</span><span class="p">;</span> <span class="p">}</span>
+
+<span class="c1">// Bad Code</span>
+<span class="kt">int</span> <span class="n">NonOwner</span> <span class="o">=</span> <span class="mi">42</span><span class="p">;</span>
+<span class="n">expects_owner</span><span class="p">(</span><span class="o">&</span><span class="n">NonOwner</span><span class="p">);</span> <span class="c1">// Bad, will get caught</span>
+
+<span class="c1">// Good Code</span>
+<span class="n">gsl</span><span class="o">::</span><span class="n">owner</span><span class="o"><</span><span class="kt">int</span><span class="o">*></span> <span class="n">Owner</span> <span class="o">=</span> <span class="k">new</span> <span class="kt">int</span><span class="p">(</span><span class="mi">42</span><span class="p">);</span>
+<span class="n">expects_owner</span><span class="p">(</span><span class="n">Owner</span><span class="p">);</span> <span class="c1">// Good</span>
+<span class="n">expects_owner</span><span class="p">(</span><span class="k">new</span> <span class="kt">int</span><span class="p">(</span><span class="mi">42</span><span class="p">));</span> <span class="c1">// Good as well, recognized created resource</span>
+
+<span class="c1">// Port legacy code for better resource-safety</span>
+<span class="n">gsl</span><span class="o">::</span><span class="n">owner</span><span class="o"><</span><span class="kt">FILE</span><span class="o">*></span> <span class="n">File</span> <span class="o">=</span> <span class="n">fopen</span><span class="p">(</span><span class="s">"my_file.txt"</span><span class="p">,</span> <span class="s">"rw+"</span><span class="p">);</span>
+<span class="kt">FILE</span><span class="o">*</span> <span class="n">BadFile</span> <span class="o">=</span> <span class="n">fopen</span><span class="p">(</span><span class="s">"another_file.txt"</span><span class="p">,</span> <span class="s">"w"</span><span class="p">);</span> <span class="c1">// Bad, warned</span>
+
+<span class="c1">// ... use the file</span>
+
+<span class="n">fclose</span><span class="p">(</span><span class="n">File</span><span class="p">);</span> <span class="c1">// Ok, File is annotated as 'owner<>'</span>
+<span class="n">fclose</span><span class="p">(</span><span class="n">BadFile</span><span class="p">);</span> <span class="c1">// BadFile is not an 'owner<>', will be warned</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-legacyresourceproducers">
+<code class="descname">LegacyResourceProducers</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-legacyresourceproducers" title="Permalink to this definition">¶</a></dt>
+<dd><p>Semicolon-separated list of fully qualified names of legacy functions that create
+resources but cannot introduce <code class="docutils literal notranslate"><span class="pre">gsl::owner<></span></code>.
+Defaults to <code class="docutils literal notranslate"><span class="pre">::malloc;::aligned_alloc;::realloc;::calloc;::fopen;::freopen;::tmpfile</span></code>.</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-legacyresourceconsumers">
+<code class="descname">LegacyResourceConsumers</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-legacyresourceconsumers" title="Permalink to this definition">¶</a></dt>
+<dd><p>Semicolon-separated list of fully qualified names of legacy functions expecting
+resource owners as pointer arguments but cannot introduce <code class="docutils literal notranslate"><span class="pre">gsl::owner<></span></code>.
+Defaults to <code class="docutils literal notranslate"><span class="pre">::free;::realloc;::freopen;::fclose</span></code>.</p>
+</dd></dl>
+
+</div>
+<div class="section" id="limitations">
+<h2>Limitations<a class="headerlink" href="#limitations" title="Permalink to this headline">¶</a></h2>
+<p>Using <code class="docutils literal notranslate"><span class="pre">gsl::owner<T*></span></code> in a typedef or alias is not handled correctly.</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">using</span> <span class="n">heap_int</span> <span class="o">=</span> <span class="n">gsl</span><span class="o">::</span><span class="n">owner</span><span class="o"><</span><span class="kt">int</span><span class="o">*></span><span class="p">;</span>
+<span class="n">heap_int</span> <span class="n">allocated</span> <span class="o">=</span> <span class="k">new</span> <span class="kt">int</span><span class="p">(</span><span class="mi">42</span><span class="p">);</span> <span class="c1">// False positive!</span>
+</pre></div>
+</div>
+<p>The <code class="docutils literal notranslate"><span class="pre">gsl::owner<T*></span></code> is declared as a templated type alias.
+In template functions and classes, like in the example below, the information
+of the type aliases gets lost. Therefore using <code class="docutils literal notranslate"><span class="pre">gsl::owner<T*></span></code> in a heavy templated
+code base might lead to false positives.</p>
+<p>Known code constructs that do not get diagnosed correctly are:</p>
+<ul class="simple">
+<li><code class="docutils literal notranslate"><span class="pre">std::exchange</span></code></li>
+<li><code class="docutils literal notranslate"><span class="pre">std::vector<gsl::owner<T*>></span></code></li>
+</ul>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="c1">// This template function works as expected. Type information doesn't get lost.</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">delete_owner</span><span class="p">(</span><span class="n">gsl</span><span class="o">::</span><span class="n">owner</span><span class="o"><</span><span class="n">T</span><span class="o">*></span> <span class="n">owned_object</span><span class="p">)</span> <span class="p">{</span>
+  <span class="k">delete</span> <span class="n">owned_object</span><span class="p">;</span> <span class="c1">// Everything alright</span>
+<span class="p">}</span>
+
+<span class="n">gsl</span><span class="o">::</span><span class="n">owner</span><span class="o"><</span><span class="kt">int</span><span class="o">*></span> <span class="n">function_that_returns_owner</span><span class="p">()</span> <span class="p">{</span> <span class="k">return</span> <span class="n">gsl</span><span class="o">::</span><span class="n">owner</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">42</span><span class="p">));</span> <span class="p">}</span>
+
+<span class="c1">// Type deduction does not work for auto variables.</span>
+<span class="c1">// This is caught by the check and will be noted accordingly.</span>
+<span class="k">auto</span> <span class="n">OwnedObject</span> <span class="o">=</span> <span class="n">function_that_returns_owner</span><span class="p">();</span> <span class="c1">// Type of OwnedObject will be int*</span>
+
+<span class="c1">// Problematic function template that looses the typeinformation on owner</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">bad_template_function</span><span class="p">(</span><span class="n">T</span> <span class="n">some_object</span><span class="p">)</span> <span class="p">{</span>
+  <span class="c1">// This line will trigger the warning, that a non-owner is assigned to an owner</span>
+  <span class="n">gsl</span><span class="o">::</span><span class="n">owner</span><span class="o"><</span><span class="n">T</span><span class="o">*></span> <span class="n">new_owner</span> <span class="o">=</span> <span class="n">some_object</span><span class="p">;</span>
+<span class="p">}</span>
+
+<span class="c1">// Calling the function with an owner still yields a false positive.</span>
+<span class="n">bad_template_function</span><span class="p">(</span><span class="n">gsl</span><span class="o">::</span><span class="n">owner</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">42</span><span class="p">)));</span>
+
+
+<span class="c1">// The same issue occurs with templated classes like the following.</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">OwnedValue</span> <span class="p">{</span>
+<span class="k">public</span><span class="o">:</span>
+  <span class="k">const</span> <span class="n">T</span> <span class="n">getValue</span><span class="p">()</span> <span class="k">const</span> <span class="p">{</span> <span class="k">return</span> <span class="n">_val</span><span class="p">;</span> <span class="p">}</span>
+<span class="k">private</span><span class="o">:</span>
+  <span class="n">T</span> <span class="n">_val</span><span class="p">;</span>
+<span class="p">};</span>
+
+<span class="c1">// Code, that yields a false positive.</span>
+<span class="n">OwnedValue</span><span class="o"><</span><span class="n">gsl</span><span class="o">::</span><span class="n">owner</span><span class="o"><</span><span class="kt">int</span><span class="o">*>></span> <span class="n">Owner</span><span class="p">(</span><span class="k">new</span> <span class="kt">int</span><span class="p">(</span><span class="mi">42</span><span class="p">));</span> <span class="c1">// Type deduction yield T -> int *</span>
+<span class="c1">// False positive, getValue returns int* and not gsl::owner<int*></span>
+<span class="n">gsl</span><span class="o">::</span><span class="n">owner</span><span class="o"><</span><span class="kt">int</span><span class="o">*></span> <span class="n">OwnedInt</span> <span class="o">=</span> <span class="n">Owner</span><span class="p">.</span><span class="n">getValue</span><span class="p">();</span>
+</pre></div>
+</div>
+<p>Another limitation of the current implementation is only the type based checking.
+Suppose you have code like the following:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="c1">// Two owners with assigned resources</span>
+<span class="n">gsl</span><span class="o">::</span><span class="n">owner</span><span class="o"><</span><span class="kt">int</span><span class="o">*></span> <span class="n">Owner1</span> <span class="o">=</span> <span class="k">new</span> <span class="kt">int</span><span class="p">(</span><span class="mi">42</span><span class="p">);</span>
+<span class="n">gsl</span><span class="o">::</span><span class="n">owner</span><span class="o"><</span><span class="kt">int</span><span class="o">*></span> <span class="n">Owner2</span> <span class="o">=</span> <span class="k">new</span> <span class="kt">int</span><span class="p">(</span><span class="mi">42</span><span class="p">);</span>
+
+<span class="n">Owner2</span> <span class="o">=</span> <span class="n">Owner1</span><span class="p">;</span> <span class="c1">// Conceptual Leak of initial resource of Owner2!</span>
+<span class="n">Owner1</span> <span class="o">=</span> <span class="k">nullptr</span><span class="p">;</span>
+</pre></div>
+</div>
+<p>The semantic of a <code class="docutils literal notranslate"><span class="pre">gsl::owner<T*></span></code> is mostly like a <code class="docutils literal notranslate"><span class="pre">std::unique_ptr<T></span></code>, therefore
+assignment of two <code class="docutils literal notranslate"><span class="pre">gsl::owner<T*></span></code> is considered a move, which requires that the
+resource <code class="docutils literal notranslate"><span class="pre">Owner2</span></code> must have been released before the assignment.
+This kind of condition could be catched in later improvements of this check with
+flowsensitive analysis. Currently, the <cite>Clang Static Analyzer</cite> catches this bug
+for dynamic memory, but not for general types of resources.</p>
+</div>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="cppcoreguidelines-non-private-member-variables-in-classes.html">cppcoreguidelines-non-private-member-variables-in-classes</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="cppcoreguidelines-pro-bounds-array-to-pointer-decay.html">cppcoreguidelines-pro-bounds-array-to-pointer-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/cppcoreguidelines-pro-bounds-array-to-pointer-decay.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cppcoreguidelines-pro-bounds-array-to-pointer-decay.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cppcoreguidelines-pro-bounds-array-to-pointer-decay.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cppcoreguidelines-pro-bounds-array-to-pointer-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" />
+    <title>clang-tidy - cppcoreguidelines-pro-bounds-array-to-pointer-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="cppcoreguidelines-pro-bounds-constant-array-index" href="cppcoreguidelines-pro-bounds-constant-array-index.html" />
+    <link rel="prev" title="cppcoreguidelines-owning-memory" href="cppcoreguidelines-owning-memory.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 - cppcoreguidelines-pro-bounds-array-to-pointer-decay</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="cppcoreguidelines-owning-memory.html">cppcoreguidelines-owning-memory</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="cppcoreguidelines-pro-bounds-constant-array-index.html">cppcoreguidelines-pro-bounds-constant-array-index</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="cppcoreguidelines-pro-bounds-array-to-pointer-decay">
+<h1>cppcoreguidelines-pro-bounds-array-to-pointer-decay<a class="headerlink" href="#cppcoreguidelines-pro-bounds-array-to-pointer-decay" title="Permalink to this headline">¶</a></h1>
+<p>This check flags all array to pointer decays.</p>
+<p>Pointers should not be used as arrays. <code class="docutils literal notranslate"><span class="pre">span<T></span></code> is a bounds-checked, safe
+alternative to using pointers to access arrays.</p>
+<p>This rule is part of the “Bounds safety” profile of the C++ Core Guidelines, see
+<a class="reference external" href="https://github.com/isocpp/CppCoreGuidelines/blob/master/CppCoreGuidelines.md#Pro-bounds-decay">https://github.com/isocpp/CppCoreGuidelines/blob/master/CppCoreGuidelines.md#Pro-bounds-decay</a>.</p>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="cppcoreguidelines-owning-memory.html">cppcoreguidelines-owning-memory</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="cppcoreguidelines-pro-bounds-constant-array-index.html">cppcoreguidelines-pro-bounds-constant-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/cppcoreguidelines-pro-bounds-constant-array-index.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cppcoreguidelines-pro-bounds-constant-array-index.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cppcoreguidelines-pro-bounds-constant-array-index.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cppcoreguidelines-pro-bounds-constant-array-index.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 - cppcoreguidelines-pro-bounds-constant-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="cppcoreguidelines-pro-bounds-pointer-arithmetic" href="cppcoreguidelines-pro-bounds-pointer-arithmetic.html" />
+    <link rel="prev" title="cppcoreguidelines-pro-bounds-array-to-pointer-decay" href="cppcoreguidelines-pro-bounds-array-to-pointer-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 - cppcoreguidelines-pro-bounds-constant-array-index</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="cppcoreguidelines-pro-bounds-array-to-pointer-decay.html">cppcoreguidelines-pro-bounds-array-to-pointer-decay</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="cppcoreguidelines-pro-bounds-pointer-arithmetic.html">cppcoreguidelines-pro-bounds-pointer-arithmetic</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="cppcoreguidelines-pro-bounds-constant-array-index">
+<h1>cppcoreguidelines-pro-bounds-constant-array-index<a class="headerlink" href="#cppcoreguidelines-pro-bounds-constant-array-index" title="Permalink to this headline">¶</a></h1>
+<p>This check flags all array subscript expressions on static arrays and
+<code class="docutils literal notranslate"><span class="pre">std::arrays</span></code> that either do not have a constant integer expression index or
+are out of bounds (for <code class="docutils literal notranslate"><span class="pre">std::array</span></code>). For out-of-bounds checking of static
+arrays, see the <cite>-Warray-bounds</cite> Clang diagnostic.</p>
+<p>This rule is part of the “Bounds safety” profile of the C++ Core Guidelines, see
+<a class="reference external" href="https://github.com/isocpp/CppCoreGuidelines/blob/master/CppCoreGuidelines.md#Pro-bounds-arrayindex">https://github.com/isocpp/CppCoreGuidelines/blob/master/CppCoreGuidelines.md#Pro-bounds-arrayindex</a>.</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-gslheader">
+<code class="descname">GslHeader</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-gslheader" title="Permalink to this definition">¶</a></dt>
+<dd><p>The check can generate fixes after this option has been set to the name of
+the include file that contains <code class="docutils literal notranslate"><span class="pre">gsl::at()</span></code>, e.g. <cite>“gsl/gsl.h”</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>
+
+</div>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="cppcoreguidelines-pro-bounds-array-to-pointer-decay.html">cppcoreguidelines-pro-bounds-array-to-pointer-decay</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="cppcoreguidelines-pro-bounds-pointer-arithmetic.html">cppcoreguidelines-pro-bounds-pointer-arithmetic</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/cppcoreguidelines-pro-bounds-pointer-arithmetic.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cppcoreguidelines-pro-bounds-pointer-arithmetic.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cppcoreguidelines-pro-bounds-pointer-arithmetic.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cppcoreguidelines-pro-bounds-pointer-arithmetic.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 - cppcoreguidelines-pro-bounds-pointer-arithmetic — 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="cppcoreguidelines-pro-type-const-cast" href="cppcoreguidelines-pro-type-const-cast.html" />
+    <link rel="prev" title="cppcoreguidelines-pro-bounds-constant-array-index" href="cppcoreguidelines-pro-bounds-constant-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 - cppcoreguidelines-pro-bounds-pointer-arithmetic</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="cppcoreguidelines-pro-bounds-constant-array-index.html">cppcoreguidelines-pro-bounds-constant-array-index</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="cppcoreguidelines-pro-type-const-cast.html">cppcoreguidelines-pro-type-const-cast</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="cppcoreguidelines-pro-bounds-pointer-arithmetic">
+<h1>cppcoreguidelines-pro-bounds-pointer-arithmetic<a class="headerlink" href="#cppcoreguidelines-pro-bounds-pointer-arithmetic" title="Permalink to this headline">¶</a></h1>
+<p>This check flags all usage of pointer arithmetic, because it could lead to an
+invalid pointer. Subtraction of two pointers is not flagged by this check.</p>
+<p>Pointers should only refer to single objects, and pointer arithmetic is fragile
+and easy to get wrong. <code class="docutils literal notranslate"><span class="pre">span<T></span></code> is a bounds-checked, safe type for accessing
+arrays of data.</p>
+<p>This rule is part of the “Bounds safety” profile of the C++ Core Guidelines, see
+<a class="reference external" href="https://github.com/isocpp/CppCoreGuidelines/blob/master/CppCoreGuidelines.md#Pro-bounds-arithmetic">https://github.com/isocpp/CppCoreGuidelines/blob/master/CppCoreGuidelines.md#Pro-bounds-arithmetic</a>.</p>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="cppcoreguidelines-pro-bounds-constant-array-index.html">cppcoreguidelines-pro-bounds-constant-array-index</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="cppcoreguidelines-pro-type-const-cast.html">cppcoreguidelines-pro-type-const-cast</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/cppcoreguidelines-pro-type-const-cast.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cppcoreguidelines-pro-type-const-cast.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cppcoreguidelines-pro-type-const-cast.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cppcoreguidelines-pro-type-const-cast.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 - cppcoreguidelines-pro-type-const-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" />
+    <link rel="next" title="cppcoreguidelines-pro-type-cstyle-cast" href="cppcoreguidelines-pro-type-cstyle-cast.html" />
+    <link rel="prev" title="cppcoreguidelines-pro-bounds-pointer-arithmetic" href="cppcoreguidelines-pro-bounds-pointer-arithmetic.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 - cppcoreguidelines-pro-type-const-cast</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="cppcoreguidelines-pro-bounds-pointer-arithmetic.html">cppcoreguidelines-pro-bounds-pointer-arithmetic</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="cppcoreguidelines-pro-type-cstyle-cast.html">cppcoreguidelines-pro-type-cstyle-cast</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="cppcoreguidelines-pro-type-const-cast">
+<h1>cppcoreguidelines-pro-type-const-cast<a class="headerlink" href="#cppcoreguidelines-pro-type-const-cast" title="Permalink to this headline">¶</a></h1>
+<p>This check flags all uses of <code class="docutils literal notranslate"><span class="pre">const_cast</span></code> in C++ code.</p>
+<p>Modifying a variable that was declared const is undefined behavior, even with
+<code class="docutils literal notranslate"><span class="pre">const_cast</span></code>.</p>
+<p>This rule is part of the “Type safety” profile of the C++ Core Guidelines, see
+<a class="reference external" href="https://github.com/isocpp/CppCoreGuidelines/blob/master/CppCoreGuidelines.md#Pro-type-constcast">https://github.com/isocpp/CppCoreGuidelines/blob/master/CppCoreGuidelines.md#Pro-type-constcast</a>.</p>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="cppcoreguidelines-pro-bounds-pointer-arithmetic.html">cppcoreguidelines-pro-bounds-pointer-arithmetic</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="cppcoreguidelines-pro-type-cstyle-cast.html">cppcoreguidelines-pro-type-cstyle-cast</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/cppcoreguidelines-pro-type-cstyle-cast.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cppcoreguidelines-pro-type-cstyle-cast.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cppcoreguidelines-pro-type-cstyle-cast.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cppcoreguidelines-pro-type-cstyle-cast.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,75 @@
+
+<!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 - cppcoreguidelines-pro-type-cstyle-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" />
+    <link rel="next" title="cppcoreguidelines-pro-type-member-init" href="cppcoreguidelines-pro-type-member-init.html" />
+    <link rel="prev" title="cppcoreguidelines-pro-type-const-cast" href="cppcoreguidelines-pro-type-const-cast.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 - cppcoreguidelines-pro-type-cstyle-cast</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="cppcoreguidelines-pro-type-const-cast.html">cppcoreguidelines-pro-type-const-cast</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="cppcoreguidelines-pro-type-member-init.html">cppcoreguidelines-pro-type-member-init</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="cppcoreguidelines-pro-type-cstyle-cast">
+<h1>cppcoreguidelines-pro-type-cstyle-cast<a class="headerlink" href="#cppcoreguidelines-pro-type-cstyle-cast" title="Permalink to this headline">¶</a></h1>
+<p>This check flags all use of C-style casts that perform a <code class="docutils literal notranslate"><span class="pre">static_cast</span></code>
+downcast, <code class="docutils literal notranslate"><span class="pre">const_cast</span></code>, or <code class="docutils literal notranslate"><span class="pre">reinterpret_cast</span></code>.</p>
+<p>Use of these casts can violate type safety and cause the program to access a
+variable that is actually of type X to be accessed as if it were of an unrelated
+type Z. Note that a C-style <code class="docutils literal notranslate"><span class="pre">(T)expression</span></code> cast means to perform the first of
+the following that is possible: a <code class="docutils literal notranslate"><span class="pre">const_cast</span></code>, a <code class="docutils literal notranslate"><span class="pre">static_cast</span></code>, a
+<code class="docutils literal notranslate"><span class="pre">static_cast</span></code> followed by a <code class="docutils literal notranslate"><span class="pre">const_cast</span></code>, a <code class="docutils literal notranslate"><span class="pre">reinterpret_cast</span></code>, or a
+<code class="docutils literal notranslate"><span class="pre">reinterpret_cast</span></code> followed by a <code class="docutils literal notranslate"><span class="pre">const_cast</span></code>. This rule bans
+<code class="docutils literal notranslate"><span class="pre">(T)expression</span></code> only when used to perform an unsafe cast.</p>
+<p>This rule is part of the “Type safety” profile of the C++ Core Guidelines, see
+<a class="reference external" href="https://github.com/isocpp/CppCoreGuidelines/blob/master/CppCoreGuidelines.md#Pro-type-cstylecast">https://github.com/isocpp/CppCoreGuidelines/blob/master/CppCoreGuidelines.md#Pro-type-cstylecast</a>.</p>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="cppcoreguidelines-pro-type-const-cast.html">cppcoreguidelines-pro-type-const-cast</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="cppcoreguidelines-pro-type-member-init.html">cppcoreguidelines-pro-type-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/cppcoreguidelines-pro-type-member-init.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cppcoreguidelines-pro-type-member-init.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cppcoreguidelines-pro-type-member-init.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cppcoreguidelines-pro-type-member-init.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,102 @@
+
+<!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 - cppcoreguidelines-pro-type-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="cppcoreguidelines-pro-type-reinterpret-cast" href="cppcoreguidelines-pro-type-reinterpret-cast.html" />
+    <link rel="prev" title="cppcoreguidelines-pro-type-cstyle-cast" href="cppcoreguidelines-pro-type-cstyle-cast.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 - cppcoreguidelines-pro-type-member-init</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="cppcoreguidelines-pro-type-cstyle-cast.html">cppcoreguidelines-pro-type-cstyle-cast</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="cppcoreguidelines-pro-type-reinterpret-cast.html">cppcoreguidelines-pro-type-reinterpret-cast</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="cppcoreguidelines-pro-type-member-init">
+<h1>cppcoreguidelines-pro-type-member-init<a class="headerlink" href="#cppcoreguidelines-pro-type-member-init" title="Permalink to this headline">¶</a></h1>
+<p>The check flags user-defined constructor definitions that do not
+initialize all fields that would be left in an undefined state by
+default construction, e.g. builtins, pointers and record types without
+user-provided default constructors containing at least one such
+type. If these fields aren’t initialized, the constructor will leave
+some of the memory in an undefined state.</p>
+<p>For C++11 it suggests fixes to add in-class field initializers. For
+older versions it inserts the field initializers into the constructor
+initializer list. It will also initialize any direct base classes that
+need to be zeroed in the constructor initializer list.</p>
+<p>The check takes assignment of fields in the constructor body into
+account but generates false positives for fields initialized in
+methods invoked in the constructor body.</p>
+<p>The check also flags variables with automatic storage duration that have record
+types without a user-provided constructor and are not initialized. The suggested
+fix is to zero initialize the variable via <code class="docutils literal notranslate"><span class="pre">{}</span></code> for C++11 and beyond or <code class="docutils literal notranslate"><span class="pre">=</span>
+<span class="pre">{}</span></code> for older language versions.</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-ignorearrays">
+<code class="descname">IgnoreArrays</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-ignorearrays" title="Permalink to this definition">¶</a></dt>
+<dd><p>If set to non-zero, the check will not warn about array members that are not
+zero-initialized during construction. For performance critical code, it may
+be important to not initialize fixed-size array members. Default is <cite>0</cite>.</p>
+</dd></dl>
+
+<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 set to non-zero, the check will provide fix-its with literal initializers
+( <code class="docutils literal notranslate"><span class="pre">int</span> <span class="pre">i</span> <span class="pre">=</span> <span class="pre">0;</span></code> ) instead of curly braces ( <code class="docutils literal notranslate"><span class="pre">int</span> <span class="pre">i{};</span></code> ).</p>
+</dd></dl>
+
+<p>This rule is part of the “Type safety” profile of the C++ Core
+Guidelines, corresponding to rule Type.6. See
+<a class="reference external" href="https://github.com/isocpp/CppCoreGuidelines/blob/master/CppCoreGuidelines.md#Pro-type-memberinit">https://github.com/isocpp/CppCoreGuidelines/blob/master/CppCoreGuidelines.md#Pro-type-memberinit</a>.</p>
+</div>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="cppcoreguidelines-pro-type-cstyle-cast.html">cppcoreguidelines-pro-type-cstyle-cast</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="cppcoreguidelines-pro-type-reinterpret-cast.html">cppcoreguidelines-pro-type-reinterpret-cast</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/cppcoreguidelines-pro-type-reinterpret-cast.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cppcoreguidelines-pro-type-reinterpret-cast.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cppcoreguidelines-pro-type-reinterpret-cast.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cppcoreguidelines-pro-type-reinterpret-cast.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 - cppcoreguidelines-pro-type-reinterpret-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" />
+    <link rel="next" title="cppcoreguidelines-pro-type-static-cast-downcast" href="cppcoreguidelines-pro-type-static-cast-downcast.html" />
+    <link rel="prev" title="cppcoreguidelines-pro-type-member-init" href="cppcoreguidelines-pro-type-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 - cppcoreguidelines-pro-type-reinterpret-cast</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="cppcoreguidelines-pro-type-member-init.html">cppcoreguidelines-pro-type-member-init</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="cppcoreguidelines-pro-type-static-cast-downcast.html">cppcoreguidelines-pro-type-static-cast-downcast</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="cppcoreguidelines-pro-type-reinterpret-cast">
+<h1>cppcoreguidelines-pro-type-reinterpret-cast<a class="headerlink" href="#cppcoreguidelines-pro-type-reinterpret-cast" title="Permalink to this headline">¶</a></h1>
+<p>This check flags all uses of <code class="docutils literal notranslate"><span class="pre">reinterpret_cast</span></code> in C++ code.</p>
+<p>Use of these casts can violate type safety and cause the program to access a
+variable that is actually of type <code class="docutils literal notranslate"><span class="pre">X</span></code> to be accessed as if it were of an
+unrelated type <code class="docutils literal notranslate"><span class="pre">Z</span></code>.</p>
+<p>This rule is part of the “Type safety” profile of the C++ Core Guidelines, see
+<a class="reference external" href="https://github.com/isocpp/CppCoreGuidelines/blob/master/CppCoreGuidelines.md#Pro-type-reinterpretcast">https://github.com/isocpp/CppCoreGuidelines/blob/master/CppCoreGuidelines.md#Pro-type-reinterpretcast</a>.</p>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="cppcoreguidelines-pro-type-member-init.html">cppcoreguidelines-pro-type-member-init</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="cppcoreguidelines-pro-type-static-cast-downcast.html">cppcoreguidelines-pro-type-static-cast-downcast</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/cppcoreguidelines-pro-type-static-cast-downcast.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cppcoreguidelines-pro-type-static-cast-downcast.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cppcoreguidelines-pro-type-static-cast-downcast.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cppcoreguidelines-pro-type-static-cast-downcast.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 - cppcoreguidelines-pro-type-static-cast-downcast — 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="cppcoreguidelines-pro-type-union-access" href="cppcoreguidelines-pro-type-union-access.html" />
+    <link rel="prev" title="cppcoreguidelines-pro-type-reinterpret-cast" href="cppcoreguidelines-pro-type-reinterpret-cast.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 - cppcoreguidelines-pro-type-static-cast-downcast</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="cppcoreguidelines-pro-type-reinterpret-cast.html">cppcoreguidelines-pro-type-reinterpret-cast</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="cppcoreguidelines-pro-type-union-access.html">cppcoreguidelines-pro-type-union-access</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="cppcoreguidelines-pro-type-static-cast-downcast">
+<h1>cppcoreguidelines-pro-type-static-cast-downcast<a class="headerlink" href="#cppcoreguidelines-pro-type-static-cast-downcast" title="Permalink to this headline">¶</a></h1>
+<p>This check flags all usages of <code class="docutils literal notranslate"><span class="pre">static_cast</span></code>, where a base class is casted to
+a derived class. In those cases, a fix-it is provided to convert the cast to a
+<code class="docutils literal notranslate"><span class="pre">dynamic_cast</span></code>.</p>
+<p>Use of these casts can violate type safety and cause the program to access a
+variable that is actually of type <code class="docutils literal notranslate"><span class="pre">X</span></code> to be accessed as if it were of an
+unrelated type <code class="docutils literal notranslate"><span class="pre">Z</span></code>.</p>
+<p>This rule is part of the “Type safety” profile of the C++ Core Guidelines, see
+<a class="reference external" href="https://github.com/isocpp/CppCoreGuidelines/blob/master/CppCoreGuidelines.md#Pro-type-downcast">https://github.com/isocpp/CppCoreGuidelines/blob/master/CppCoreGuidelines.md#Pro-type-downcast</a>.</p>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="cppcoreguidelines-pro-type-reinterpret-cast.html">cppcoreguidelines-pro-type-reinterpret-cast</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="cppcoreguidelines-pro-type-union-access.html">cppcoreguidelines-pro-type-union-access</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/cppcoreguidelines-pro-type-union-access.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cppcoreguidelines-pro-type-union-access.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cppcoreguidelines-pro-type-union-access.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cppcoreguidelines-pro-type-union-access.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 - cppcoreguidelines-pro-type-union-access — 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="cppcoreguidelines-pro-type-vararg" href="cppcoreguidelines-pro-type-vararg.html" />
+    <link rel="prev" title="cppcoreguidelines-pro-type-static-cast-downcast" href="cppcoreguidelines-pro-type-static-cast-downcast.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 - cppcoreguidelines-pro-type-union-access</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="cppcoreguidelines-pro-type-static-cast-downcast.html">cppcoreguidelines-pro-type-static-cast-downcast</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="cppcoreguidelines-pro-type-vararg.html">cppcoreguidelines-pro-type-vararg</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="cppcoreguidelines-pro-type-union-access">
+<h1>cppcoreguidelines-pro-type-union-access<a class="headerlink" href="#cppcoreguidelines-pro-type-union-access" title="Permalink to this headline">¶</a></h1>
+<p>This check flags all access to members of unions. Passing unions as a whole is
+not flagged.</p>
+<p>Reading from a union member assumes that member was the last one written, and
+writing to a union member assumes another member with a nontrivial destructor
+had its destructor called. This is fragile because it cannot generally be
+enforced to be safe in the language and so relies on programmer discipline to
+get it right.</p>
+<p>This rule is part of the “Type safety” profile of the C++ Core Guidelines, see
+<a class="reference external" href="https://github.com/isocpp/CppCoreGuidelines/blob/master/CppCoreGuidelines.md#Pro-type-unions">https://github.com/isocpp/CppCoreGuidelines/blob/master/CppCoreGuidelines.md#Pro-type-unions</a>.</p>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="cppcoreguidelines-pro-type-static-cast-downcast.html">cppcoreguidelines-pro-type-static-cast-downcast</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="cppcoreguidelines-pro-type-vararg.html">cppcoreguidelines-pro-type-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/cppcoreguidelines-pro-type-vararg.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cppcoreguidelines-pro-type-vararg.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cppcoreguidelines-pro-type-vararg.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cppcoreguidelines-pro-type-vararg.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 - cppcoreguidelines-pro-type-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="cppcoreguidelines-slicing" href="cppcoreguidelines-slicing.html" />
+    <link rel="prev" title="cppcoreguidelines-pro-type-union-access" href="cppcoreguidelines-pro-type-union-access.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 - cppcoreguidelines-pro-type-vararg</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="cppcoreguidelines-pro-type-union-access.html">cppcoreguidelines-pro-type-union-access</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="cppcoreguidelines-slicing.html">cppcoreguidelines-slicing</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="cppcoreguidelines-pro-type-vararg">
+<h1>cppcoreguidelines-pro-type-vararg<a class="headerlink" href="#cppcoreguidelines-pro-type-vararg" title="Permalink to this headline">¶</a></h1>
+<p>This check flags all calls to c-style vararg functions and all use of
+<code class="docutils literal notranslate"><span class="pre">va_arg</span></code>.</p>
+<p>To allow for SFINAE use of vararg functions, a call is not flagged if a literal
+0 is passed as the only vararg argument.</p>
+<p>Passing to varargs assumes the correct type will be read. This is fragile
+because it cannot generally be enforced to be safe in the language and so relies
+on programmer discipline to get it right.</p>
+<p>This rule is part of the “Type safety” profile of the C++ Core Guidelines, see
+<a class="reference external" href="https://github.com/isocpp/CppCoreGuidelines/blob/master/CppCoreGuidelines.md#Pro-type-varargs">https://github.com/isocpp/CppCoreGuidelines/blob/master/CppCoreGuidelines.md#Pro-type-varargs</a>.</p>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="cppcoreguidelines-pro-type-union-access.html">cppcoreguidelines-pro-type-union-access</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="cppcoreguidelines-slicing.html">cppcoreguidelines-slicing</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/cppcoreguidelines-slicing.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cppcoreguidelines-slicing.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cppcoreguidelines-slicing.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cppcoreguidelines-slicing.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" />
+    <title>clang-tidy - cppcoreguidelines-slicing — 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="cppcoreguidelines-special-member-functions" href="cppcoreguidelines-special-member-functions.html" />
+    <link rel="prev" title="cppcoreguidelines-pro-type-vararg" href="cppcoreguidelines-pro-type-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 - cppcoreguidelines-slicing</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="cppcoreguidelines-pro-type-vararg.html">cppcoreguidelines-pro-type-vararg</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="cppcoreguidelines-special-member-functions.html">cppcoreguidelines-special-member-functions</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="cppcoreguidelines-slicing">
+<h1>cppcoreguidelines-slicing<a class="headerlink" href="#cppcoreguidelines-slicing" title="Permalink to this headline">¶</a></h1>
+<p>Flags slicing of member variables or vtable. Slicing happens when copying a
+derived object into a base object: the members of the derived object (both
+member variables and virtual member functions) will be discarded. This can be
+misleading especially for member function slicing, for example:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">struct</span> <span class="n">B</span> <span class="p">{</span> <span class="kt">int</span> <span class="n">a</span><span class="p">;</span> <span class="k">virtual</span> <span class="kt">int</span> <span class="nf">f</span><span class="p">();</span> <span class="p">};</span>
+<span class="k">struct</span> <span class="nl">D</span> <span class="p">:</span> <span class="n">B</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="nf">f</span><span class="p">()</span> <span class="k">override</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">B</span> <span class="n">b</span><span class="p">)</span> <span class="p">{</span>  <span class="c1">// Missing reference, intended?</span>
+  <span class="n">b</span><span class="p">.</span><span class="n">f</span><span class="p">();</span>  <span class="c1">// Calls B::f.</span>
+<span class="p">}</span>
+
+<span class="n">D</span> <span class="n">d</span><span class="p">;</span>
+<span class="n">use</span><span class="p">(</span><span class="n">d</span><span class="p">);</span>  <span class="c1">// Slice.</span>
+</pre></div>
+</div>
+<p>See the relevant C++ Core Guidelines sections for details:
+<a class="reference external" href="https://github.com/isocpp/CppCoreGuidelines/blob/master/CppCoreGuidelines.md#es63-dont-slice">https://github.com/isocpp/CppCoreGuidelines/blob/master/CppCoreGuidelines.md#es63-dont-slice</a>
+<a class="reference external" href="https://github.com/isocpp/CppCoreGuidelines/blob/master/CppCoreGuidelines.md#c145-access-polymorphic-objects-through-pointers-and-references">https://github.com/isocpp/CppCoreGuidelines/blob/master/CppCoreGuidelines.md#c145-access-polymorphic-objects-through-pointers-and-references</a></p>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="cppcoreguidelines-pro-type-vararg.html">cppcoreguidelines-pro-type-vararg</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="cppcoreguidelines-special-member-functions.html">cppcoreguidelines-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/cppcoreguidelines-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/cppcoreguidelines-special-member-functions.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cppcoreguidelines-special-member-functions.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/cppcoreguidelines-special-member-functions.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 - cppcoreguidelines-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="fuchsia-default-arguments-calls" href="fuchsia-default-arguments-calls.html" />
+    <link rel="prev" title="cppcoreguidelines-slicing" href="cppcoreguidelines-slicing.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 - cppcoreguidelines-special-member-functions</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="cppcoreguidelines-slicing.html">cppcoreguidelines-slicing</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="fuchsia-default-arguments-calls.html">fuchsia-default-arguments-calls</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="cppcoreguidelines-special-member-functions">
+<h1>cppcoreguidelines-special-member-functions<a class="headerlink" href="#cppcoreguidelines-special-member-functions" title="Permalink to this headline">¶</a></h1>
+<p>The check finds classes where some but not all of the special member functions
+are defined.</p>
+<p>By default the compiler defines a copy constructor, copy assignment operator,
+move constructor, move assignment operator and destructor. The default can be
+suppressed by explicit user-definitions. The relationship between which
+functions will be suppressed by definitions of other functions is complicated
+and it is advised that all five are defaulted or explicitly defined.</p>
+<p>Note that defining a function with <code class="docutils literal notranslate"><span class="pre">=</span> <span class="pre">delete</span></code> is considered to be a
+definition.</p>
+<p>This rule is part of the “Constructors, assignments, and destructors” profile of the C++ Core
+Guidelines, corresponding to rule C.21. See</p>
+<p><a class="reference external" href="https://github.com/isocpp/CppCoreGuidelines/blob/master/CppCoreGuidelines.md#c21-if-you-define-or-delete-any-default-operation-define-or-delete-them-all">https://github.com/isocpp/CppCoreGuidelines/blob/master/CppCoreGuidelines.md#c21-if-you-define-or-delete-any-default-operation-define-or-delete-them-all</a>.</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-allowsoledefaultdtor">
+<code class="descname">AllowSoleDefaultDtor</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-allowsoledefaultdtor" title="Permalink to this definition">¶</a></dt>
+<dd><p>When set to <cite>1</cite> (default is <cite>0</cite>), this check doesn’t flag classes with a sole, explicitly
+defaulted destructor. An example for such a class is:</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">virtual</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>
+<span class="p">};</span>
+</pre></div>
+</div>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-allowmissingmovefunctions">
+<code class="descname">AllowMissingMoveFunctions</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-allowmissingmovefunctions" title="Permalink to this definition">¶</a></dt>
+<dd><p>When set to <cite>1</cite> (default is <cite>0</cite>), this check doesn’t flag classes which define no move
+operations at all. It still flags classes which define only one of either
+move constructor or move assignment operator. With this option enabled, the following class won’t be flagged:</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="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="o">~</span><span class="n">A</span><span class="p">();</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+</dd></dl>
+
+</div>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="cppcoreguidelines-slicing.html">cppcoreguidelines-slicing</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="fuchsia-default-arguments-calls.html">fuchsia-default-arguments-calls</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/fuchsia-default-arguments-calls.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/fuchsia-default-arguments-calls.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/fuchsia-default-arguments-calls.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/fuchsia-default-arguments-calls.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" />
+    <title>clang-tidy - fuchsia-default-arguments-calls — 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="fuchsia-default-arguments-declarations" href="fuchsia-default-arguments-declarations.html" />
+    <link rel="prev" title="cppcoreguidelines-special-member-functions" href="cppcoreguidelines-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 - fuchsia-default-arguments-calls</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="cppcoreguidelines-special-member-functions.html">cppcoreguidelines-special-member-functions</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="fuchsia-default-arguments-declarations.html">fuchsia-default-arguments-declarations</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="fuchsia-default-arguments-calls">
+<h1>fuchsia-default-arguments-calls<a class="headerlink" href="#fuchsia-default-arguments-calls" title="Permalink to this headline">¶</a></h1>
+<p>Warns if a function or method is called with default arguments.</p>
+<p>For example, given the declaration:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="kt">int</span> <span class="nf">foo</span><span class="p">(</span><span class="kt">int</span> <span class="n">value</span> <span class="o">=</span> <span class="mi">5</span><span class="p">)</span> <span class="p">{</span> <span class="k">return</span> <span class="n">value</span><span class="p">;</span> <span class="p">}</span>
+</pre></div>
+</div>
+<p>A function call expression that uses a default argument will be diagnosed.
+Calling it without defaults will not cause a warning:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="n">foo</span><span class="p">();</span>  <span class="c1">// warning</span>
+<span class="n">foo</span><span class="p">(</span><span class="mi">0</span><span class="p">);</span> <span class="c1">// no warning</span>
+</pre></div>
+</div>
+<p>See the features disallowed in Fuchsia at <a class="reference external" href="https://fuchsia.googlesource.com/zircon/+/master/docs/cxx.md">https://fuchsia.googlesource.com/zircon/+/master/docs/cxx.md</a></p>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="cppcoreguidelines-special-member-functions.html">cppcoreguidelines-special-member-functions</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="fuchsia-default-arguments-declarations.html">fuchsia-default-arguments-declarations</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/fuchsia-default-arguments-declarations.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/fuchsia-default-arguments-declarations.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/fuchsia-default-arguments-declarations.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/fuchsia-default-arguments-declarations.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 - fuchsia-default-arguments-declarations — 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="fuchsia-header-anon-namespaces" href="fuchsia-header-anon-namespaces.html" />
+    <link rel="prev" title="fuchsia-default-arguments-calls" href="fuchsia-default-arguments-calls.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 - fuchsia-default-arguments-declarations</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="fuchsia-default-arguments-calls.html">fuchsia-default-arguments-calls</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="fuchsia-header-anon-namespaces.html">fuchsia-header-anon-namespaces</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="fuchsia-default-arguments-declarations">
+<h1>fuchsia-default-arguments-declarations<a class="headerlink" href="#fuchsia-default-arguments-declarations" title="Permalink to this headline">¶</a></h1>
+<p>Warns if a function or method is declared with default parameters.</p>
+<p>For example, the declaration:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="kt">int</span> <span class="nf">foo</span><span class="p">(</span><span class="kt">int</span> <span class="n">value</span> <span class="o">=</span> <span class="mi">5</span><span class="p">)</span> <span class="p">{</span> <span class="k">return</span> <span class="n">value</span><span class="p">;</span> <span class="p">}</span>
+</pre></div>
+</div>
+<p>will cause a warning.</p>
+<p>See the features disallowed in Fuchsia at <a class="reference external" href="https://fuchsia.googlesource.com/zircon/+/master/docs/cxx.md">https://fuchsia.googlesource.com/zircon/+/master/docs/cxx.md</a></p>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="fuchsia-default-arguments-calls.html">fuchsia-default-arguments-calls</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="fuchsia-header-anon-namespaces.html">fuchsia-header-anon-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/fuchsia-header-anon-namespaces.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/fuchsia-header-anon-namespaces.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/fuchsia-header-anon-namespaces.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/fuchsia-header-anon-namespaces.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=google-build-namespaces.html" http-equiv="refresh" />
+
+    <title>clang-tidy - fuchsia-header-anon-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="fuchsia-multiple-inheritance" href="fuchsia-multiple-inheritance.html" />
+    <link rel="prev" title="fuchsia-default-arguments-declarations" href="fuchsia-default-arguments-declarations.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 - fuchsia-header-anon-namespaces</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="fuchsia-default-arguments-declarations.html">fuchsia-default-arguments-declarations</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="fuchsia-multiple-inheritance.html">fuchsia-multiple-inheritance</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="fuchsia-header-anon-namespaces">
+<h1>fuchsia-header-anon-namespaces<a class="headerlink" href="#fuchsia-header-anon-namespaces" title="Permalink to this headline">¶</a></h1>
+<p>The fuchsia-header-anon-namespaces check is an alias, please see
+<a class="reference external" href="google-build-namespaces.html">google-build-namespace</a>
+for more information.</p>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="fuchsia-default-arguments-declarations.html">fuchsia-default-arguments-declarations</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="fuchsia-multiple-inheritance.html">fuchsia-multiple-inheritance</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/fuchsia-multiple-inheritance.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/fuchsia-multiple-inheritance.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/fuchsia-multiple-inheritance.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/fuchsia-multiple-inheritance.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 - fuchsia-multiple-inheritance — 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="fuchsia-overloaded-operator" href="fuchsia-overloaded-operator.html" />
+    <link rel="prev" title="fuchsia-header-anon-namespaces" href="fuchsia-header-anon-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 - fuchsia-multiple-inheritance</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="fuchsia-header-anon-namespaces.html">fuchsia-header-anon-namespaces</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="fuchsia-overloaded-operator.html">fuchsia-overloaded-operator</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="fuchsia-multiple-inheritance">
+<h1>fuchsia-multiple-inheritance<a class="headerlink" href="#fuchsia-multiple-inheritance" title="Permalink to this headline">¶</a></h1>
+<p>Warns if a class inherits from multiple classes that are not pure virtual.</p>
+<p>For example, declaring a class that inherits from multiple concrete classes is
+disallowed:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">class</span> <span class="nc">Base_A</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">foo</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="p">};</span>
+
+<span class="k">class</span> <span class="nc">Base_B</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">bar</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="p">};</span>
+
+<span class="c1">// Warning</span>
+<span class="k">class</span> <span class="nc">Bad_Child1</span> <span class="o">:</span> <span class="k">public</span> <span class="n">Base_A</span><span class="p">,</span> <span class="n">Base_B</span> <span class="p">{};</span>
+</pre></div>
+</div>
+<p>A class that inherits from a pure virtual is allowed:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">class</span> <span class="nc">Interface_A</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">foo</span><span class="p">()</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span>
+<span class="p">};</span>
+
+<span class="k">class</span> <span class="nc">Interface_B</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">bar</span><span class="p">()</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span>
+<span class="p">};</span>
+
+<span class="c1">// No warning</span>
+<span class="k">class</span> <span class="nc">Good_Child1</span> <span class="o">:</span> <span class="k">public</span> <span class="n">Interface_A</span><span class="p">,</span> <span class="n">Interface_B</span> <span class="p">{</span>
+  <span class="k">virtual</span> <span class="kt">int</span> <span class="n">foo</span><span class="p">()</span> <span class="k">override</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="k">virtual</span> <span class="kt">int</span> <span class="n">bar</span><span class="p">()</span> <span class="k">override</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="p">};</span>
+</pre></div>
+</div>
+<p>See the features disallowed in Fuchsia at <a class="reference external" href="https://fuchsia.googlesource.com/zircon/+/master/docs/cxx.md">https://fuchsia.googlesource.com/zircon/+/master/docs/cxx.md</a></p>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="fuchsia-header-anon-namespaces.html">fuchsia-header-anon-namespaces</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="fuchsia-overloaded-operator.html">fuchsia-overloaded-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/fuchsia-overloaded-operator.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/fuchsia-overloaded-operator.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/fuchsia-overloaded-operator.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/fuchsia-overloaded-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 - fuchsia-overloaded-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="fuchsia-restrict-system-includes" href="fuchsia-restrict-system-includes.html" />
+    <link rel="prev" title="fuchsia-multiple-inheritance" href="fuchsia-multiple-inheritance.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 - fuchsia-overloaded-operator</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="fuchsia-multiple-inheritance.html">fuchsia-multiple-inheritance</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="fuchsia-restrict-system-includes.html">fuchsia-restrict-system-includes</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="fuchsia-overloaded-operator">
+<h1>fuchsia-overloaded-operator<a class="headerlink" href="#fuchsia-overloaded-operator" title="Permalink to this headline">¶</a></h1>
+<p>Warns if an operator is overloaded, except for the assignment (copy and move)
+operators.</p>
+<p>For example:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="kt">int</span> <span class="k">operator</span><span class="o">+</span><span class="p">(</span><span class="kt">int</span><span class="p">);</span>     <span class="c1">// Warning</span>
+
+<span class="n">B</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">B</span> <span class="o">&</span><span class="n">Other</span><span class="p">);</span>  <span class="c1">// No warning</span>
+<span class="n">B</span> <span class="o">&</span><span class="k">operator</span><span class="o">=</span><span class="p">(</span><span class="n">B</span> <span class="o">&&</span><span class="n">Other</span><span class="p">)</span> <span class="c1">// No warning</span>
+</pre></div>
+</div>
+<p>See the features disallowed in Fuchsia at <a class="reference external" href="https://fuchsia.googlesource.com/zircon/+/master/docs/cxx.md">https://fuchsia.googlesource.com/zircon/+/master/docs/cxx.md</a></p>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="fuchsia-multiple-inheritance.html">fuchsia-multiple-inheritance</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="fuchsia-restrict-system-includes.html">fuchsia-restrict-system-includes</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/fuchsia-restrict-system-includes.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/fuchsia-restrict-system-includes.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/fuchsia-restrict-system-includes.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/fuchsia-restrict-system-includes.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 - fuchsia-restrict-system-includes — 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="fuchsia-statically-constructed-objects" href="fuchsia-statically-constructed-objects.html" />
+    <link rel="prev" title="fuchsia-overloaded-operator" href="fuchsia-overloaded-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 - fuchsia-restrict-system-includes</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="fuchsia-overloaded-operator.html">fuchsia-overloaded-operator</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="fuchsia-statically-constructed-objects.html">fuchsia-statically-constructed-objects</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="fuchsia-restrict-system-includes">
+<h1>fuchsia-restrict-system-includes<a class="headerlink" href="#fuchsia-restrict-system-includes" title="Permalink to this headline">¶</a></h1>
+<p>Checks for allowed system includes and suggests removal of any others.</p>
+<p>It is important to note that running this check with fixes may break code, as
+the fix removes headers. Fixes are applied to source and header files, but not
+to system headers.</p>
+<p>For example, given the allowed system includes ‘a.h,b*’:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="cp">#include</span> <span class="cpf"><a.h></span><span class="cp"></span>
+<span class="cp">#include</span> <span class="cpf"><b.h></span><span class="cp"></span>
+<span class="cp">#include</span> <span class="cpf"><bar.h></span><span class="cp"></span>
+<span class="cp">#include</span> <span class="cpf"><c.h>    // Warning, as c.h is not explicitly allowed</span><span class="cp"></span>
+</pre></div>
+</div>
+<p>All system includes can be allowed with ‘*’, and all can be disallowed with an
+empty string (‘’).</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-includes">
+<code class="descname">Includes</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-includes" title="Permalink to this definition">¶</a></dt>
+<dd><p>A string containing a comma separated glob list of allowed include filenames.
+Similar to the -checks glob list for running clang-tidy itself, the two
+wildcard characters are ‘*’ and ‘-‘, to include and exclude globs,
+respectively.The default is ‘*’, which allows all includes.</p>
+</dd></dl>
+
+</div>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="fuchsia-overloaded-operator.html">fuchsia-overloaded-operator</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="fuchsia-statically-constructed-objects.html">fuchsia-statically-constructed-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/fuchsia-statically-constructed-objects.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/fuchsia-statically-constructed-objects.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/fuchsia-statically-constructed-objects.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/fuchsia-statically-constructed-objects.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 - fuchsia-statically-constructed-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="fuchsia-trailing-return" href="fuchsia-trailing-return.html" />
+    <link rel="prev" title="fuchsia-restrict-system-includes" href="fuchsia-restrict-system-includes.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 - fuchsia-statically-constructed-objects</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="fuchsia-restrict-system-includes.html">fuchsia-restrict-system-includes</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="fuchsia-trailing-return.html">fuchsia-trailing-return</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="fuchsia-statically-constructed-objects">
+<h1>fuchsia-statically-constructed-objects<a class="headerlink" href="#fuchsia-statically-constructed-objects" title="Permalink to this headline">¶</a></h1>
+<p>Warns if global, non-trivial objects with static storage are constructed, unless
+the object is statically initialized with a <code class="docutils literal notranslate"><span class="pre">constexpr</span></code> constructor or has no
+explicit constructor.</p>
+<p>For example:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">class</span> <span class="nc">A</span> <span class="p">{};</span>
+
+<span class="k">class</span> <span class="nc">B</span> <span class="p">{</span>
+<span class="k">public</span><span class="o">:</span>
+  <span class="n">B</span><span class="p">(</span><span class="kt">int</span> <span class="n">Val</span><span class="p">)</span> <span class="o">:</span> <span class="n">Val</span><span class="p">(</span><span class="n">Val</span><span class="p">)</span> <span class="p">{}</span>
+<span class="k">private</span><span class="o">:</span>
+  <span class="kt">int</span> <span class="n">Val</span><span class="p">;</span>
+<span class="p">};</span>
+
+<span class="k">class</span> <span class="nc">C</span> <span class="p">{</span>
+<span class="k">public</span><span class="o">:</span>
+  <span class="n">C</span><span class="p">(</span><span class="kt">int</span> <span class="n">Val</span><span class="p">)</span> <span class="o">:</span> <span class="n">Val</span><span class="p">(</span><span class="n">Val</span><span class="p">)</span> <span class="p">{}</span>
+  <span class="k">constexpr</span> <span class="n">C</span><span class="p">()</span> <span class="o">:</span> <span class="n">Val</span><span class="p">(</span><span class="mi">0</span><span class="p">)</span> <span class="p">{}</span>
+
+<span class="k">private</span><span class="o">:</span>
+  <span class="kt">int</span> <span class="n">Val</span><span class="p">;</span>
+<span class="p">};</span>
+
+<span class="k">static</span> <span class="n">A</span> <span class="n">a</span><span class="p">;</span>         <span class="c1">// No warning, as there is no explicit constructor</span>
+<span class="k">static</span> <span class="n">C</span> <span class="nf">c</span><span class="p">(</span><span class="mi">0</span><span class="p">);</span>      <span class="c1">// No warning, as constructor is constexpr</span>
+
+<span class="k">static</span> <span class="n">B</span> <span class="nf">b</span><span class="p">(</span><span class="mi">0</span><span class="p">);</span>      <span class="c1">// Warning, as constructor is not constexpr</span>
+<span class="k">static</span> <span class="n">C</span> <span class="nf">c2</span><span class="p">(</span><span class="mi">0</span><span class="p">,</span> <span class="mi">1</span><span class="p">);</span>  <span class="c1">// Warning, as constructor is not constexpr</span>
+
+<span class="k">static</span> <span class="kt">int</span> <span class="n">i</span><span class="p">;</span>       <span class="c1">// No warning, as it is trivial</span>
+
+<span class="k">extern</span> <span class="kt">int</span> <span class="nf">get_i</span><span class="p">();</span>
+<span class="k">static</span> <span class="n">C</span><span class="p">(</span><span class="n">get_i</span><span class="p">())</span>   <span class="c1">// Warning, as the constructor is dynamically initialized</span>
+</pre></div>
+</div>
+<p>See the features disallowed in Fuchsia at <a class="reference external" href="https://fuchsia.googlesource.com/zircon/+/master/docs/cxx.md">https://fuchsia.googlesource.com/zircon/+/master/docs/cxx.md</a></p>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="fuchsia-restrict-system-includes.html">fuchsia-restrict-system-includes</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="fuchsia-trailing-return.html">fuchsia-trailing-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/fuchsia-trailing-return.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/fuchsia-trailing-return.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/fuchsia-trailing-return.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/fuchsia-trailing-return.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 - fuchsia-trailing-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="fuchsia-virtual-inheritance" href="fuchsia-virtual-inheritance.html" />
+    <link rel="prev" title="fuchsia-statically-constructed-objects" href="fuchsia-statically-constructed-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 - fuchsia-trailing-return</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="fuchsia-statically-constructed-objects.html">fuchsia-statically-constructed-objects</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="fuchsia-virtual-inheritance.html">fuchsia-virtual-inheritance</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="fuchsia-trailing-return">
+<h1>fuchsia-trailing-return<a class="headerlink" href="#fuchsia-trailing-return" title="Permalink to this headline">¶</a></h1>
+<p>Functions that have trailing returns are disallowed, except for those using
+<code class="docutils literal notranslate"><span class="pre">decltype</span></code> specifiers and lambda with otherwise unutterable return types.</p>
+<p>For example:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="c1">// No warning</span>
+<span class="kt">int</span> <span class="nf">add_one</span><span class="p">(</span><span class="k">const</span> <span class="kt">int</span> <span class="n">arg</span><span class="p">)</span> <span class="p">{</span> <span class="k">return</span> <span class="n">arg</span><span class="p">;</span> <span class="p">}</span>
+
+<span class="c1">// Warning</span>
+<span class="k">auto</span> <span class="nf">get_add_one</span><span class="p">()</span> <span class="o">-></span> <span class="kt">int</span> <span class="p">(</span><span class="o">*</span><span class="p">)(</span><span class="k">const</span> <span class="kt">int</span><span class="p">)</span> <span class="p">{</span>
+  <span class="k">return</span> <span class="n">add_one</span><span class="p">;</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+<p>Exceptions are made for lambdas and <code class="docutils literal notranslate"><span class="pre">decltype</span></code> specifiers:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="c1">// No warning</span>
+<span class="k">auto</span> <span class="n">lambda</span> <span class="o">=</span> <span class="p">[](</span><span class="kt">double</span> <span class="n">x</span><span class="p">,</span> <span class="kt">double</span> <span class="n">y</span><span class="p">)</span> <span class="o">-></span> <span class="kt">double</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="c1">// No warning</span>
+<span class="k">template</span> <span class="o"><</span><span class="k">typename</span> <span class="n">T1</span><span class="p">,</span> <span class="k">typename</span> <span class="n">T2</span><span class="o">></span>
+<span class="k">auto</span> <span class="n">fn</span><span class="p">(</span><span class="k">const</span> <span class="n">T1</span> <span class="o">&</span><span class="n">lhs</span><span class="p">,</span> <span class="k">const</span> <span class="n">T2</span> <span class="o">&</span><span class="n">rhs</span><span class="p">)</span> <span class="o">-></span> <span class="k">decltype</span><span class="p">(</span><span class="n">lhs</span> <span class="o">+</span> <span class="n">rhs</span><span class="p">)</span> <span class="p">{</span>
+  <span class="k">return</span> <span class="n">lhs</span> <span class="o">+</span> <span class="n">rhs</span><span class="p">;</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+<p>See the features disallowed in Fuchsia at <a class="reference external" href="https://fuchsia.googlesource.com/zircon/+/master/docs/cxx.md">https://fuchsia.googlesource.com/zircon/+/master/docs/cxx.md</a></p>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="fuchsia-statically-constructed-objects.html">fuchsia-statically-constructed-objects</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="fuchsia-virtual-inheritance.html">fuchsia-virtual-inheritance</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/fuchsia-virtual-inheritance.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/fuchsia-virtual-inheritance.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/fuchsia-virtual-inheritance.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/fuchsia-virtual-inheritance.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 - fuchsia-virtual-inheritance — 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="google-build-explicit-make-pair" href="google-build-explicit-make-pair.html" />
+    <link rel="prev" title="fuchsia-trailing-return" href="fuchsia-trailing-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 - fuchsia-virtual-inheritance</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="fuchsia-trailing-return.html">fuchsia-trailing-return</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="google-build-explicit-make-pair.html">google-build-explicit-make-pair</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="fuchsia-virtual-inheritance">
+<h1>fuchsia-virtual-inheritance<a class="headerlink" href="#fuchsia-virtual-inheritance" title="Permalink to this headline">¶</a></h1>
+<p>Warns if classes are defined with virtual inheritance.</p>
+<p>For example, classes should not be defined with virtual inheritance:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">class</span> <span class="nc">B</span> <span class="o">:</span> <span class="k">public</span> <span class="k">virtual</span> <span class="n">A</span> <span class="p">{};</span>   <span class="c1">// warning</span>
+</pre></div>
+</div>
+<p>See the features disallowed in Fuchsia at <a class="reference external" href="https://fuchsia.googlesource.com/zircon/+/master/docs/cxx.md">https://fuchsia.googlesource.com/zircon/+/master/docs/cxx.md</a></p>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="fuchsia-trailing-return.html">fuchsia-trailing-return</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="google-build-explicit-make-pair.html">google-build-explicit-make-pair</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/google-build-explicit-make-pair.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/google-build-explicit-make-pair.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/google-build-explicit-make-pair.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/google-build-explicit-make-pair.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" />
+    <title>clang-tidy - google-build-explicit-make-pair — 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="google-build-namespaces" href="google-build-namespaces.html" />
+    <link rel="prev" title="fuchsia-virtual-inheritance" href="fuchsia-virtual-inheritance.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 - google-build-explicit-make-pair</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="fuchsia-virtual-inheritance.html">fuchsia-virtual-inheritance</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="google-build-namespaces.html">google-build-namespaces</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="google-build-explicit-make-pair">
+<h1>google-build-explicit-make-pair<a class="headerlink" href="#google-build-explicit-make-pair" title="Permalink to this headline">¶</a></h1>
+<p>Check that <code class="docutils literal notranslate"><span class="pre">make_pair</span></code>’s template arguments are deduced.</p>
+<p>G++ 4.6 in C++11 mode fails badly if <code class="docutils literal notranslate"><span class="pre">make_pair</span></code>’s template arguments are
+specified explicitly, and such use isn’t intended in any case.</p>
+<p>Corresponding cpplint.py check name: <cite>build/explicit_make_pair</cite>.</p>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="fuchsia-virtual-inheritance.html">fuchsia-virtual-inheritance</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="google-build-namespaces.html">google-build-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/google-build-namespaces.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/google-build-namespaces.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/google-build-namespaces.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/google-build-namespaces.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" />
+    <title>clang-tidy - google-build-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="google-build-using-namespace" href="google-build-using-namespace.html" />
+    <link rel="prev" title="google-build-explicit-make-pair" href="google-build-explicit-make-pair.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 - google-build-namespaces</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="google-build-explicit-make-pair.html">google-build-explicit-make-pair</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="google-build-using-namespace.html">google-build-using-namespace</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="google-build-namespaces">
+<h1>google-build-namespaces<a class="headerlink" href="#google-build-namespaces" title="Permalink to this headline">¶</a></h1>
+<p><cite>cert-dcl59-cpp</cite> redirects here as an alias for this check.
+<cite>fuchsia-header-anon-namespaces</cite> redirects here as an alias for this check.</p>
+<p>Finds anonymous namespaces in headers.</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>
+<p>Corresponding cpplint.py check name: <cite>build/namespaces</cite>.</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="google-build-explicit-make-pair.html">google-build-explicit-make-pair</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="google-build-using-namespace.html">google-build-using-namespace</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/google-build-using-namespace.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/google-build-using-namespace.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/google-build-using-namespace.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/google-build-using-namespace.html Thu Sep 19 07:32:46 2019
@@ -0,0 +1,75 @@
+
+<!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 - google-build-using-namespace — 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="google-default-arguments" href="google-default-arguments.html" />
+    <link rel="prev" title="google-build-namespaces" href="google-build-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 - google-build-using-namespace</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="google-build-namespaces.html">google-build-namespaces</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="google-default-arguments.html">google-default-arguments</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="google-build-using-namespace">
+<h1>google-build-using-namespace<a class="headerlink" href="#google-build-using-namespace" title="Permalink to this headline">¶</a></h1>
+<p>Finds <code class="docutils literal notranslate"><span class="pre">using</span> <span class="pre">namespace</span></code> directives.</p>
+<p>The check implements the following rule of the
+<a class="reference external" href="https://google.github.io/styleguide/cppguide.html#Namespaces">Google C++ Style Guide</a>:</p>
+<blockquote>
+<div>You may not use a using-directive to make all names from a namespace
+available.</div></blockquote>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="c1">// Forbidden -- This pollutes the namespace.</span>
+<span class="k">using</span> <span class="k">namespace</span> <span class="n">foo</span><span class="p">;</span>
+</pre></div>
+</div>
+<p>Corresponding cpplint.py check name: <cite>build/namespaces</cite>.</p>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="google-build-namespaces.html">google-build-namespaces</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="google-default-arguments.html">google-default-arguments</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/google-default-arguments.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/google-default-arguments.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/google-default-arguments.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/google-default-arguments.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 - google-default-arguments — 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="google-explicit-constructor" href="google-explicit-constructor.html" />
+    <link rel="prev" title="google-build-using-namespace" href="google-build-using-namespace.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 - google-default-arguments</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="google-build-using-namespace.html">google-build-using-namespace</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="google-explicit-constructor.html">google-explicit-constructor</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="google-default-arguments">
+<h1>google-default-arguments<a class="headerlink" href="#google-default-arguments" title="Permalink to this headline">¶</a></h1>
+<p>Checks that default arguments are not given for virtual methods.</p>
+<p>See <a class="reference external" href="https://google.github.io/styleguide/cppguide.html#Default_Arguments">https://google.github.io/styleguide/cppguide.html#Default_Arguments</a></p>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="google-build-using-namespace.html">google-build-using-namespace</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="google-explicit-constructor.html">google-explicit-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/google-explicit-constructor.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/google-explicit-constructor.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/google-explicit-constructor.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/google-explicit-constructor.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 - google-explicit-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="google-global-names-in-headers" href="google-global-names-in-headers.html" />
+    <link rel="prev" title="google-default-arguments" href="google-default-arguments.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 - google-explicit-constructor</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="google-default-arguments.html">google-default-arguments</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="google-global-names-in-headers.html">google-global-names-in-headers</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="google-explicit-constructor">
+<h1>google-explicit-constructor<a class="headerlink" href="#google-explicit-constructor" title="Permalink to this headline">¶</a></h1>
+<p>Checks that constructors callable with a single argument and conversion
+operators are marked explicit to avoid the risk of unintentional implicit
+conversions.</p>
+<p>Consider this example:</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">x</span><span class="p">;</span>
+  <span class="k">operator</span> <span class="nf">bool</span><span class="p">()</span> <span class="k">const</span> <span class="p">{</span> <span class="k">return</span> <span class="nb">true</span><span class="p">;</span> <span class="p">}</span>
+<span class="p">};</span>
+
+<span class="kt">bool</span> <span class="nf">f</span><span class="p">()</span> <span class="p">{</span>
+  <span class="n">S</span> <span class="n">a</span><span class="p">{</span><span class="mi">1</span><span class="p">};</span>
+  <span class="n">S</span> <span class="n">b</span><span class="p">{</span><span class="mi">2</span><span class="p">};</span>
+  <span class="k">return</span> <span class="n">a</span> <span class="o">==</span> <span class="n">b</span><span class="p">;</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+<p>The function will return <code class="docutils literal notranslate"><span class="pre">true</span></code>, since the objects are implicitly converted to
+<code class="docutils literal notranslate"><span class="pre">bool</span></code> before comparison, which is unlikely to be the intent.</p>
+<p>The check will suggest inserting <code class="docutils literal notranslate"><span class="pre">explicit</span></code> before the constructor or
+conversion operator declaration. However, copy and move constructors should not
+be explicit, as well as constructors taking a single <code class="docutils literal notranslate"><span class="pre">initializer_list</span></code>
+argument.</p>
+<p>This code:</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="n">S</span><span class="p">(</span><span class="kt">int</span> <span class="n">a</span><span class="p">);</span>
+  <span class="k">explicit</span> <span class="nf">S</span><span class="p">(</span><span class="k">const</span> <span class="n">S</span><span class="o">&</span><span class="p">);</span>
+  <span class="k">operator</span> <span class="nf">bool</span><span class="p">()</span> <span class="k">const</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="k">struct</span> <span class="n">S</span> <span class="p">{</span>
+  <span class="k">explicit</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="n">S</span><span class="p">(</span><span class="k">const</span> <span class="n">S</span><span class="o">&</span><span class="p">);</span>
+  <span class="k">explicit</span> <span class="k">operator</span> <span class="nf">bool</span><span class="p">()</span> <span class="k">const</span><span class="p">;</span>
+  <span class="p">...</span>
+</pre></div>
+</div>
+<p>See <a class="reference external" href="https://google.github.io/styleguide/cppguide.html#Explicit_Constructors">https://google.github.io/styleguide/cppguide.html#Explicit_Constructors</a></p>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="google-default-arguments.html">google-default-arguments</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="google-global-names-in-headers.html">google-global-names-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/google-global-names-in-headers.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/google-global-names-in-headers.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/google-global-names-in-headers.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/google-global-names-in-headers.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 - google-global-names-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="google-objc-avoid-nsobject-new" href="google-objc-avoid-nsobject-new.html" />
+    <link rel="prev" title="google-explicit-constructor" href="google-explicit-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 - google-global-names-in-headers</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="google-explicit-constructor.html">google-explicit-constructor</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="google-objc-avoid-nsobject-new.html">google-objc-avoid-nsobject-new</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="google-global-names-in-headers">
+<h1>google-global-names-in-headers<a class="headerlink" href="#google-global-names-in-headers" title="Permalink to this headline">¶</a></h1>
+<p>Flag global namespace pollution in header files. Right now it only triggers on
+<code class="docutils literal notranslate"><span class="pre">using</span></code> declarations and directives.</p>
+<p>The relevant style guide section is
+<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="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 contain “.” prefix). Default is “h”.
+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="google-explicit-constructor.html">google-explicit-constructor</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="google-objc-avoid-nsobject-new.html">google-objc-avoid-nsobject-new</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/google-objc-avoid-nsobject-new.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/google-objc-avoid-nsobject-new.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/google-objc-avoid-nsobject-new.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/google-objc-avoid-nsobject-new.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 - google-objc-avoid-nsobject-new — 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="google-objc-avoid-throwing-exception" href="google-objc-avoid-throwing-exception.html" />
+    <link rel="prev" title="google-global-names-in-headers" href="google-global-names-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 - google-objc-avoid-nsobject-new</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="google-global-names-in-headers.html">google-global-names-in-headers</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="google-objc-avoid-throwing-exception.html">google-objc-avoid-throwing-exception</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="google-objc-avoid-nsobject-new">
+<h1>google-objc-avoid-nsobject-new<a class="headerlink" href="#google-objc-avoid-nsobject-new" title="Permalink to this headline">¶</a></h1>
+<p>Finds calls to <code class="docutils literal notranslate"><span class="pre">+new</span></code> or overrides of it, which are prohibited by the
+Google Objective-C style guide.</p>
+<p>The Google Objective-C style guide forbids calling <code class="docutils literal notranslate"><span class="pre">+new</span></code> or overriding it in
+class implementations, preferring <code class="docutils literal notranslate"><span class="pre">+alloc</span></code> and <code class="docutils literal notranslate"><span class="pre">-init</span></code> methods to
+instantiate objects.</p>
+<p>An example:</p>
+<div class="highlight-objc notranslate"><div class="highlight"><pre><span></span><span class="bp">NSDate</span> <span class="o">*</span><span class="n">now</span> <span class="o">=</span> <span class="p">[</span><span class="bp">NSDate</span> <span class="n">new</span><span class="p">];</span>
+<span class="n">Foo</span> <span class="o">*</span><span class="n">bar</span> <span class="o">=</span> <span class="p">[</span><span class="n">Foo</span> <span class="n">new</span><span class="p">];</span>
+</pre></div>
+</div>
+<p>Instead, code should use <code class="docutils literal notranslate"><span class="pre">+alloc</span></code>/<code class="docutils literal notranslate"><span class="pre">-init</span></code> or class factory methods.</p>
+<div class="highlight-objc notranslate"><div class="highlight"><pre><span></span><span class="bp">NSDate</span> <span class="o">*</span><span class="n">now</span> <span class="o">=</span> <span class="p">[</span><span class="bp">NSDate</span> <span class="n">date</span><span class="p">];</span>
+<span class="n">Foo</span> <span class="o">*</span><span class="n">bar</span> <span class="o">=</span> <span class="p">[[</span><span class="n">Foo</span> <span class="n">alloc</span><span class="p">]</span> <span class="n">init</span><span class="p">];</span>
+</pre></div>
+</div>
+<p>This check corresponds to the Google Objective-C Style Guide rule
+<a class="reference external" href="https://google.github.io/styleguide/objcguide.html#do-not-use-new">Do Not Use +new</a>.</p>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="google-global-names-in-headers.html">google-global-names-in-headers</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="google-objc-avoid-throwing-exception.html">google-objc-avoid-throwing-exception</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/google-objc-avoid-throwing-exception.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/google-objc-avoid-throwing-exception.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/google-objc-avoid-throwing-exception.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/google-objc-avoid-throwing-exception.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 - google-objc-avoid-throwing-exception — 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="google-objc-function-naming" href="google-objc-function-naming.html" />
+    <link rel="prev" title="google-objc-avoid-nsobject-new" href="google-objc-avoid-nsobject-new.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 - google-objc-avoid-throwing-exception</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="google-objc-avoid-nsobject-new.html">google-objc-avoid-nsobject-new</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="google-objc-function-naming.html">google-objc-function-naming</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="google-objc-avoid-throwing-exception">
+<h1>google-objc-avoid-throwing-exception<a class="headerlink" href="#google-objc-avoid-throwing-exception" title="Permalink to this headline">¶</a></h1>
+<p>Finds uses of throwing exceptions usages in Objective-C files.</p>
+<p>For the same reason as the Google C++ style guide, we prefer not throwing
+exceptions from Objective-C code.</p>
+<p>The corresponding C++ style guide rule:
+<a class="reference external" href="https://google.github.io/styleguide/cppguide.html#Exceptions">https://google.github.io/styleguide/cppguide.html#Exceptions</a></p>
+<p>Instead, prefer passing in <code class="docutils literal notranslate"><span class="pre">NSError</span> <span class="pre">**</span></code> and return <code class="docutils literal notranslate"><span class="pre">BOOL</span></code> to indicate success or failure.</p>
+<p>A counterexample:</p>
+<div class="highlight-objc notranslate"><div class="highlight"><pre><span></span><span class="p">-</span> <span class="p">(</span><span class="kt">void</span><span class="p">)</span><span class="nf">readFile</span> <span class="p">{</span>
+  <span class="k">if</span> <span class="p">([</span><span class="nb">self</span> <span class="n">isError</span><span class="p">])</span> <span class="p">{</span>
+    <span class="k">@throw</span> <span class="p">[</span><span class="bp">NSException</span> <span class="nl">exceptionWithName</span><span class="p">:...];</span>
+  <span class="p">}</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+<p>Instead, returning an error via <code class="docutils literal notranslate"><span class="pre">NSError</span> <span class="pre">**</span></code> is preferred:</p>
+<div class="highlight-objc notranslate"><div class="highlight"><pre><span></span><span class="p">-</span> <span class="p">(</span><span class="kt">BOOL</span><span class="p">)</span><span class="nf">readFileWithError:</span><span class="p">(</span><span class="bp">NSError</span> <span class="o">**</span><span class="p">)</span><span class="nv">error</span> <span class="p">{</span>
+  <span class="k">if</span> <span class="p">([</span><span class="nb">self</span> <span class="n">isError</span><span class="p">])</span> <span class="p">{</span>
+    <span class="o">*</span><span class="n">error</span> <span class="o">=</span> <span class="p">[</span><span class="bp">NSError</span> <span class="nl">errorWithDomain</span><span class="p">:...];</span>
+    <span class="k">return</span> <span class="nb">NO</span><span class="p">;</span>
+  <span class="p">}</span>
+  <span class="k">return</span> <span class="nb">YES</span><span class="p">;</span>
+<span class="p">}</span>
+</pre></div>
+</div>
+<p>The corresponding style guide rule:
+<a class="reference external" href="https://google.github.io/styleguide/objcguide.html#avoid-throwing-exceptions">https://google.github.io/styleguide/objcguide.html#avoid-throwing-exceptions</a></p>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="google-objc-avoid-nsobject-new.html">google-objc-avoid-nsobject-new</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="google-objc-function-naming.html">google-objc-function-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/google-objc-function-naming.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/google-objc-function-naming.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/google-objc-function-naming.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/google-objc-function-naming.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 - google-objc-function-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="google-objc-global-variable-declaration" href="google-objc-global-variable-declaration.html" />
+    <link rel="prev" title="google-objc-avoid-throwing-exception" href="google-objc-avoid-throwing-exception.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 - google-objc-function-naming</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="google-objc-avoid-throwing-exception.html">google-objc-avoid-throwing-exception</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="google-objc-global-variable-declaration.html">google-objc-global-variable-declaration</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="google-objc-function-naming">
+<h1>google-objc-function-naming<a class="headerlink" href="#google-objc-function-naming" title="Permalink to this headline">¶</a></h1>
+<p>Finds function declarations in Objective-C files that do not follow the pattern
+described in the Google Objective-C Style Guide.</p>
+<p>The corresponding style guide rule can be found here:
+<a class="reference external" href="https://google.github.io/styleguide/objcguide.html#function-names">https://google.github.io/styleguide/objcguide.html#function-names</a></p>
+<p>All function names should be in Pascal case. Functions whose storage class is
+not static should have an appropriate prefix.</p>
+<p>The following code sample does not follow this pattern:</p>
+<div class="highlight-objc notranslate"><div class="highlight"><pre><span></span><span class="k">static</span> <span class="kt">bool</span> <span class="nf">is_positive</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">return</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="kt">bool</span> <span class="nf">IsNegative</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">return</span> <span class="n">i</span> <span class="o"><</span> <span class="mi">0</span><span class="p">;</span> <span class="p">}</span>
+</pre></div>
+</div>
+<p>The sample above might be corrected to the following code:</p>
+<div class="highlight-objc notranslate"><div class="highlight"><pre><span></span><span class="k">static</span> <span class="kt">bool</span> <span class="nf">IsPositive</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">return</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="kt">bool</span> <span class="o">*</span><span class="nf">ABCIsNegative</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">return</span> <span class="n">i</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="google-objc-avoid-throwing-exception.html">google-objc-avoid-throwing-exception</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="google-objc-global-variable-declaration.html">google-objc-global-variable-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/google-objc-global-variable-declaration.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/google-objc-global-variable-declaration.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/google-objc-global-variable-declaration.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/google-objc-global-variable-declaration.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 - google-objc-global-variable-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="google-readability-avoid-underscore-in-googletest-name" href="google-readability-avoid-underscore-in-googletest-name.html" />
+    <link rel="prev" title="google-objc-function-naming" href="google-objc-function-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 - google-objc-global-variable-declaration</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="google-objc-function-naming.html">google-objc-function-naming</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="google-readability-avoid-underscore-in-googletest-name.html">google-readability-avoid-underscore-in-googletest-name</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="google-objc-global-variable-declaration">
+<h1>google-objc-global-variable-declaration<a class="headerlink" href="#google-objc-global-variable-declaration" title="Permalink to this headline">¶</a></h1>
+<p>Finds global variable declarations in Objective-C files that do not follow the
+pattern of variable names in Google’s Objective-C Style Guide.</p>
+<p>The corresponding style guide rule:
+<a class="reference external" href="https://google.github.io/styleguide/objcguide.html#variable-names">https://google.github.io/styleguide/objcguide.html#variable-names</a></p>
+<p>All the global variables should follow the pattern of <cite>g[A-Z].*</cite> (variables) or
+<cite>k[A-Z].*</cite> (constants). The check will suggest a variable name that follows the
+pattern if it can be inferred from the original name.</p>
+<p>For code:</p>
+<div class="highlight-objc notranslate"><div class="highlight"><pre><span></span><span class="k">static</span> <span class="bp">NSString</span><span class="o">*</span> <span class="n">myString</span> <span class="o">=</span> <span class="s">@"hello"</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">static</span> <span class="bp">NSString</span><span class="o">*</span> <span class="n">gMyString</span> <span class="o">=</span> <span class="s">@"hello"</span><span class="p">;</span>
+</pre></div>
+</div>
+<p>Another example of constant:</p>
+<div class="highlight-objc notranslate"><div class="highlight"><pre><span></span><span class="k">static</span> <span class="bp">NSString</span><span class="o">*</span> <span class="k">const</span> <span class="n">myConstString</span> <span class="o">=</span> <span class="s">@"hello"</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">static</span> <span class="bp">NSString</span><span class="o">*</span> <span class="k">const</span> <span class="n">kMyConstString</span> <span class="o">=</span> <span class="s">@"hello"</span><span class="p">;</span>
+</pre></div>
+</div>
+<p>However for code that prefixed with non-alphabetical characters like:</p>
+<div class="highlight-objc notranslate"><div class="highlight"><pre><span></span><span class="k">static</span> <span class="bp">NSString</span><span class="o">*</span> <span class="n">__anotherString</span> <span class="o">=</span> <span class="s">@"world"</span><span class="p">;</span>
+</pre></div>
+</div>
+<p>The check will give a warning message but will not be able to suggest a fix. The
+user need to fix it on his own.</p>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="google-objc-function-naming.html">google-objc-function-naming</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="google-readability-avoid-underscore-in-googletest-name.html">google-readability-avoid-underscore-in-googletest-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/google-readability-avoid-underscore-in-googletest-name.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/google-readability-avoid-underscore-in-googletest-name.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/google-readability-avoid-underscore-in-googletest-name.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/google-readability-avoid-underscore-in-googletest-name.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 - google-readability-avoid-underscore-in-googletest-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="google-readability-braces-around-statements" href="google-readability-braces-around-statements.html" />
+    <link rel="prev" title="google-objc-global-variable-declaration" href="google-objc-global-variable-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 - google-readability-avoid-underscore-in-googletest-name</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="google-objc-global-variable-declaration.html">google-objc-global-variable-declaration</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="google-readability-braces-around-statements.html">google-readability-braces-around-statements</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="google-readability-avoid-underscore-in-googletest-name">
+<h1>google-readability-avoid-underscore-in-googletest-name<a class="headerlink" href="#google-readability-avoid-underscore-in-googletest-name" title="Permalink to this headline">¶</a></h1>
+<p>Checks whether there are underscores in googletest test and test case names in
+test macros:</p>
+<ul class="simple">
+<li><code class="docutils literal notranslate"><span class="pre">TEST</span></code></li>
+<li><code class="docutils literal notranslate"><span class="pre">TEST_F</span></code></li>
+<li><code class="docutils literal notranslate"><span class="pre">TEST_P</span></code></li>
+<li><code class="docutils literal notranslate"><span class="pre">TYPED_TEST</span></code></li>
+<li><code class="docutils literal notranslate"><span class="pre">TYPED_TEST_P</span></code></li>
+</ul>
+<p>The <code class="docutils literal notranslate"><span class="pre">FRIEND_TEST</span></code> macro is not included.</p>
+<p>For example:</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="n">TEST</span><span class="p">(</span><span class="n">TestCaseName</span><span class="p">,</span> <span class="n">Illegal_TestName</span><span class="p">)</span> <span class="p">{}</span>
+<span class="n">TEST</span><span class="p">(</span><span class="n">Illegal_TestCaseName</span><span class="p">,</span> <span class="n">TestName</span><span class="p">)</span> <span class="p">{}</span>
+</pre></div>
+</div>
+<p>would trigger the check. <a class="reference external" href="https://github.com/google/googletest/blob/master/googletest/docs/faq.md#why-should-test-suite-names-and-test-names-not-contain-underscore">Underscores are not allowed</a> in test names nor test
+case names.</p>
+<p>The <code class="docutils literal notranslate"><span class="pre">DISABLED_</span></code> prefix, which may be used to <a class="reference external" href="https://github.com/google/googletest/blob/master/googletest/docs/faq.md#why-should-test-suite-names-and-test-names-not-contain-underscore">disable individual tests</a>, is
+ignored when checking test names, but the rest of the rest of the test name is
+still checked.</p>
+<p>This check does not propose any fixes.</p>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="google-objc-global-variable-declaration.html">google-objc-global-variable-declaration</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="google-readability-braces-around-statements.html">google-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/google-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/google-readability-braces-around-statements.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/google-readability-braces-around-statements.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/google-readability-braces-around-statements.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=readability-braces-around-statements.html" http-equiv="refresh" />
+
+    <title>clang-tidy - google-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="google-readability-casting" href="google-readability-casting.html" />
+    <link rel="prev" title="google-readability-avoid-underscore-in-googletest-name" href="google-readability-avoid-underscore-in-googletest-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 - google-readability-braces-around-statements</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="google-readability-avoid-underscore-in-googletest-name.html">google-readability-avoid-underscore-in-googletest-name</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="google-readability-casting.html">google-readability-casting</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="google-readability-braces-around-statements">
+<h1>google-readability-braces-around-statements<a class="headerlink" href="#google-readability-braces-around-statements" title="Permalink to this headline">¶</a></h1>
+<p>The google-readability-braces-around-statements check is an alias, please see
+<a class="reference external" href="readability-braces-around-statements.html">readability-braces-around-statements</a>
+for more information.</p>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="google-readability-avoid-underscore-in-googletest-name.html">google-readability-avoid-underscore-in-googletest-name</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="google-readability-casting.html">google-readability-casting</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/google-readability-casting.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/google-readability-casting.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/google-readability-casting.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/google-readability-casting.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 - google-readability-casting — 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="google-readability-function-size" href="google-readability-function-size.html" />
+    <link rel="prev" title="google-readability-braces-around-statements" href="google-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 - google-readability-casting</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="google-readability-braces-around-statements.html">google-readability-braces-around-statements</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="google-readability-function-size.html">google-readability-function-size</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="google-readability-casting">
+<h1>google-readability-casting<a class="headerlink" href="#google-readability-casting" title="Permalink to this headline">¶</a></h1>
+<p>Finds usages of C-style casts.</p>
+<p><a class="reference external" href="https://google.github.io/styleguide/cppguide.html#Casting">https://google.github.io/styleguide/cppguide.html#Casting</a></p>
+<p>Corresponding cpplint.py check name: <cite>readability/casting</cite>.</p>
+<p>This check is similar to <cite>-Wold-style-cast</cite>, but it suggests automated fixes
+in some cases. The reported locations should not be different from the
+ones generated by <cite>-Wold-style-cast</cite>.</p>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="google-readability-braces-around-statements.html">google-readability-braces-around-statements</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="google-readability-function-size.html">google-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/google-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/google-readability-function-size.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/google-readability-function-size.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/google-readability-function-size.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=readability-function-size.html" http-equiv="refresh" />
+
+    <title>clang-tidy - google-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="google-readability-namespace-comments" href="google-readability-namespace-comments.html" />
+    <link rel="prev" title="google-readability-casting" href="google-readability-casting.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 - google-readability-function-size</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="google-readability-casting.html">google-readability-casting</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="google-readability-namespace-comments.html">google-readability-namespace-comments</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="google-readability-function-size">
+<h1>google-readability-function-size<a class="headerlink" href="#google-readability-function-size" title="Permalink to this headline">¶</a></h1>
+<p>The google-readability-function-size check is an alias, please see
+<a class="reference external" href="readability-function-size.html">readability-function-size</a> for more
+information.</p>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="google-readability-casting.html">google-readability-casting</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="google-readability-namespace-comments.html">google-readability-namespace-comments</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/google-readability-namespace-comments.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/google-readability-namespace-comments.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/google-readability-namespace-comments.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/google-readability-namespace-comments.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=llvm-namespace-comment.html" http-equiv="refresh" />
+
+    <title>clang-tidy - google-readability-namespace-comments — 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="google-readability-todo" href="google-readability-todo.html" />
+    <link rel="prev" title="google-readability-function-size" href="google-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 - google-readability-namespace-comments</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="google-readability-function-size.html">google-readability-function-size</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="google-readability-todo.html">google-readability-todo</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="google-readability-namespace-comments">
+<h1>google-readability-namespace-comments<a class="headerlink" href="#google-readability-namespace-comments" title="Permalink to this headline">¶</a></h1>
+<p>The google-readability-namespace-comments check is an alias, please see
+<a class="reference external" href="llvm-namespace-comment.html">llvm-namespace-comment</a> for more information.</p>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="google-readability-function-size.html">google-readability-function-size</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="google-readability-todo.html">google-readability-todo</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/google-readability-todo.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/google-readability-todo.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/google-readability-todo.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/google-readability-todo.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" />
+    <title>clang-tidy - google-readability-todo — 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="google-runtime-int" href="google-runtime-int.html" />
+    <link rel="prev" title="google-readability-namespace-comments" href="google-readability-namespace-comments.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 - google-readability-todo</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="google-readability-namespace-comments.html">google-readability-namespace-comments</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="google-runtime-int.html">google-runtime-int</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="google-readability-todo">
+<h1>google-readability-todo<a class="headerlink" href="#google-readability-todo" title="Permalink to this headline">¶</a></h1>
+<p>Finds TODO comments without a username or bug number.</p>
+<p>The relevant style guide section is
+<a class="reference external" href="https://google.github.io/styleguide/cppguide.html#TODO_Comments">https://google.github.io/styleguide/cppguide.html#TODO_Comments</a>.</p>
+<p>Corresponding cpplint.py check: <cite>readability/todo</cite></p>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="google-readability-namespace-comments.html">google-readability-namespace-comments</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="google-runtime-int.html">google-runtime-int</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/google-runtime-int.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/google-runtime-int.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/google-runtime-int.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/google-runtime-int.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 - google-runtime-int — 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="google-runtime-operator" href="google-runtime-operator.html" />
+    <link rel="prev" title="google-readability-todo" href="google-readability-todo.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 - google-runtime-int</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="google-readability-todo.html">google-readability-todo</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="google-runtime-operator.html">google-runtime-operator</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="google-runtime-int">
+<h1>google-runtime-int<a class="headerlink" href="#google-runtime-int" title="Permalink to this headline">¶</a></h1>
+<p>Finds uses of <code class="docutils literal notranslate"><span class="pre">short</span></code>, <code class="docutils literal notranslate"><span class="pre">long</span></code> and <code class="docutils literal notranslate"><span class="pre">long</span> <span class="pre">long</span></code> and suggest replacing them
+with <code class="docutils literal notranslate"><span class="pre">u?intXX(_t)?</span></code>.</p>
+<p>The corresponding style guide rule:
+<a class="reference external" href="https://google.github.io/styleguide/cppguide.html#Integer_Types">https://google.github.io/styleguide/cppguide.html#Integer_Types</a>.</p>
+<p>Correspondig cpplint.py check: <cite>runtime/int</cite>.</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-unsignedtypeprefix">
+<code class="descname">UnsignedTypePrefix</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-unsignedtypeprefix" title="Permalink to this definition">¶</a></dt>
+<dd><p>A string specifying the unsigned type prefix. Default is <cite>uint</cite>.</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-signedtypeprefix">
+<code class="descname">SignedTypePrefix</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-signedtypeprefix" title="Permalink to this definition">¶</a></dt>
+<dd><p>A string specifying the signed type prefix. Default is <cite>int</cite>.</p>
+</dd></dl>
+
+<dl class="option">
+<dt id="cmdoption-arg-typesuffix">
+<code class="descname">TypeSuffix</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-typesuffix" title="Permalink to this definition">¶</a></dt>
+<dd><p>A string specifying the type suffix. Default is an empty string.</p>
+</dd></dl>
+
+</div>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="google-readability-todo.html">google-readability-todo</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="google-runtime-operator.html">google-runtime-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/google-runtime-operator.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/google-runtime-operator.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/google-runtime-operator.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/google-runtime-operator.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 - google-runtime-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="google-runtime-references" href="google-runtime-references.html" />
+    <link rel="prev" title="google-runtime-int" href="google-runtime-int.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 - google-runtime-operator</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="google-runtime-int.html">google-runtime-int</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="google-runtime-references.html">google-runtime-references</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="google-runtime-operator">
+<h1>google-runtime-operator<a class="headerlink" href="#google-runtime-operator" title="Permalink to this headline">¶</a></h1>
+<p>Finds overloads of unary <code class="docutils literal notranslate"><span class="pre">operator</span> <span class="pre">&</span></code>.</p>
+<p><a class="reference external" href="https://google.github.io/styleguide/cppguide.html#Operator_Overloading">https://google.github.io/styleguide/cppguide.html#Operator_Overloading</a></p>
+<p>Corresponding cpplint.py check name: <cite>runtime/operator</cite>.</p>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="google-runtime-int.html">google-runtime-int</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="google-runtime-references.html">google-runtime-references</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/google-runtime-references.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/google-runtime-references.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/google-runtime-references.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/google-runtime-references.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" />
+    <title>clang-tidy - google-runtime-references — 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-avoid-c-arrays" href="hicpp-avoid-c-arrays.html" />
+    <link rel="prev" title="google-runtime-operator" href="google-runtime-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 - google-runtime-references</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="google-runtime-operator.html">google-runtime-operator</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="hicpp-avoid-c-arrays.html">hicpp-avoid-c-arrays</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="google-runtime-references">
+<h1>google-runtime-references<a class="headerlink" href="#google-runtime-references" title="Permalink to this headline">¶</a></h1>
+<p>Checks the usage of non-constant references in function parameters.</p>
+<p>The corresponding style guide rule:
+<a class="reference external" href="https://google.github.io/styleguide/cppguide.html#Reference_Arguments">https://google.github.io/styleguide/cppguide.html#Reference_Arguments</a></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-whitelisttypes">
+<code class="descname">WhiteListTypes</code><code class="descclassname"></code><a class="headerlink" href="#cmdoption-arg-whitelisttypes" title="Permalink to this definition">¶</a></dt>
+<dd><p>A semicolon-separated list of names of whitelist types. Default is empty.</p>
+</dd></dl>
+
+</div>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="google-runtime-operator.html">google-runtime-operator</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="hicpp-avoid-c-arrays.html">hicpp-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/hicpp-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/hicpp-avoid-c-arrays.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-avoid-c-arrays.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-avoid-c-arrays.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-avoid-c-arrays.html" http-equiv="refresh" />
+
+    <title>clang-tidy - hicpp-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="hicpp-avoid-goto" href="hicpp-avoid-goto.html" />
+    <link rel="prev" title="google-runtime-references" href="google-runtime-references.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-avoid-c-arrays</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="google-runtime-references.html">google-runtime-references</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="hicpp-avoid-goto.html">hicpp-avoid-goto</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="hicpp-avoid-c-arrays">
+<h1>hicpp-avoid-c-arrays<a class="headerlink" href="#hicpp-avoid-c-arrays" title="Permalink to this headline">¶</a></h1>
+<p>The hicpp-avoid-c-arrays check is an alias, please see
+<a class="reference external" href="modernize-avoid-c-arrays.html">modernize-avoid-c-arrays</a>
+for more information.</p>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="google-runtime-references.html">google-runtime-references</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="hicpp-avoid-goto.html">hicpp-avoid-goto</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-avoid-goto.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-avoid-goto.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-avoid-goto.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-avoid-goto.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 - hicpp-avoid-goto — 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-braces-around-statements" href="hicpp-braces-around-statements.html" />
+    <link rel="prev" title="hicpp-avoid-c-arrays" href="hicpp-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 - hicpp-avoid-goto</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="hicpp-avoid-c-arrays.html">hicpp-avoid-c-arrays</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="hicpp-braces-around-statements.html">hicpp-braces-around-statements</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="hicpp-avoid-goto">
+<h1>hicpp-avoid-goto<a class="headerlink" href="#hicpp-avoid-goto" title="Permalink to this headline">¶</a></h1>
+<p>The <cite>hicpp-avoid-goto</cite> check is an alias to
+<a class="reference external" href="cppcoreguidelines-avoid-goto.html">cppcoreguidelines-avoid-goto</a>.
+Rule <a class="reference external" href="http://www.codingstandard.com/rule/6-3-1-ensure-that-the-labels-for-a-jump-statement-or-a-switch-condition-appear-later-in-the-same-or-an-enclosing-block/">6.3.1 High Integrity C++</a>
+requires that <code class="docutils literal notranslate"><span class="pre">goto</span></code> only skips parts of a block and is not used for other
+reasons.</p>
+<p>Both coding guidelines implement the same exception to the usage of <code class="docutils literal notranslate"><span class="pre">goto</span></code>.</p>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="hicpp-avoid-c-arrays.html">hicpp-avoid-c-arrays</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="hicpp-braces-around-statements.html">hicpp-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/hicpp-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/hicpp-braces-around-statements.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-braces-around-statements.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-braces-around-statements.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=readability-braces-around-statements.html" http-equiv="refresh" />
+
+    <title>clang-tidy - hicpp-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="hicpp-deprecated-headers" href="hicpp-deprecated-headers.html" />
+    <link rel="prev" title="hicpp-avoid-goto" href="hicpp-avoid-goto.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-braces-around-statements</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="hicpp-avoid-goto.html">hicpp-avoid-goto</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="hicpp-deprecated-headers.html">hicpp-deprecated-headers</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="hicpp-braces-around-statements">
+<h1>hicpp-braces-around-statements<a class="headerlink" href="#hicpp-braces-around-statements" title="Permalink to this headline">¶</a></h1>
+<p>The <cite>hicpp-braces-around-statements</cite> check is an alias, please see
+<a class="reference external" href="readability-braces-around-statements.html">readability-braces-around-statements</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 6.1.1</a>.</p>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="hicpp-avoid-goto.html">hicpp-avoid-goto</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="hicpp-deprecated-headers.html">hicpp-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/hicpp-deprecated-headers.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-deprecated-headers.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-deprecated-headers.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-deprecated-headers.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=modernize-deprecated-headers.html" http-equiv="refresh" />
+
+    <title>clang-tidy - hicpp-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="hicpp-exception-baseclass" href="hicpp-exception-baseclass.html" />
+    <link rel="prev" title="hicpp-braces-around-statements" href="hicpp-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 - hicpp-deprecated-headers</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="hicpp-braces-around-statements.html">hicpp-braces-around-statements</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="hicpp-exception-baseclass.html">hicpp-exception-baseclass</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="hicpp-deprecated-headers">
+<h1>hicpp-deprecated-headers<a class="headerlink" href="#hicpp-deprecated-headers" title="Permalink to this headline">¶</a></h1>
+<p>The <cite>hicpp-deprecated-headers</cite> check is an alias, please see
+<a class="reference external" href="modernize-deprecated-headers.html">modernize-deprecated-headers</a>
+for more information.
+It enforces the <a class="reference external" href="http://www.codingstandard.com/rule/1-3-3-do-not-use-the-c-standard-library-h-headers/">rule 1.3.3</a>.</p>
+</div>
+
+
+      </div>
+      <div class="bottomnav" role="navigation" aria-label="bottom navigation">
+      
+        <p>
+        «  <a href="hicpp-braces-around-statements.html">hicpp-braces-around-statements</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="hicpp-exception-baseclass.html">hicpp-exception-baseclass</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-exception-baseclass.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-exception-baseclass.html?rev=372328&view=auto
==============================================================================
--- www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-exception-baseclass.html (added)
+++ www-releases/trunk/9.0.0/tools/clang/tools/extra/docs/clang-tidy/checks/hicpp-exception-baseclass.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 - hicpp-exception-baseclass — 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-explicit-conversions" href="hicpp-explicit-conversions.html" />
+    <link rel="prev" title="hicpp-deprecated-headers" href="hicpp-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 - hicpp-exception-baseclass</span></h2>
+      </div>
+      <div class="topnav" role="navigation" aria-label="top navigation">
+      
+        <p>
+        «  <a href="hicpp-deprecated-headers.html">hicpp-deprecated-headers</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="hicpp-explicit-conversions.html">hicpp-explicit-conversions</a>  Â»
+        </p>
+
+      </div>
+      <div class="content">
+        
+        
+  <div class="section" id="hicpp-exception-baseclass">
+<h1>hicpp-exception-baseclass<a class="headerlink" href="#hicpp-exception-baseclass" title="Permalink to this headline">¶</a></h1>
+<p>Ensure that every value that in a <code class="docutils literal notranslate"><span class="pre">throw</span></code> expression is an instance of
+<code class="docutils literal notranslate"><span class="pre">std::exception</span></code>.</p>
+<p>This enforces <a class="reference external" href="http://www.codingstandard.com/section/15-1-throwing-an-exception/">rule 15.1</a>
+of the High Integrity C++ Coding Standard.</p>
+<div class="highlight-c++ notranslate"><div class="highlight"><pre><span></span><span class="k">class</span> <span class="nc">custom_exception</span> <span class="p">{};</span>
+
+<span class="kt">void</span> <span class="nf">throwing</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>
+  <span class="c1">// Problematic throw expressions.</span>
+  <span class="k">throw</span> <span class="kt">int</span><span class="p">(</span><span class="mi">42</span><span class="p">);</span>
+  <span class="k">throw</span> <span class="n">custom_exception</span><span class="p">();</span>
+<span class="p">}</span>
+
+<span class="k">class</span> <span class="nc">mathematical_error</span> <span class="o">:</span> <span class="k">public</span> <span class="n">std</span><span class="o">::</span><span class="n">exception</span> <span class="p">{};</span>
+
+<span class="kt">void</span> <span class="nf">throwing2</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>
+  <span class="c1">// These kind of throws are ok.</span>
+  <span class="k">throw</span> <span class="n">mathematical_error</span><span class="p">();</span>
+  <span class="k">throw</span> <span class="n">std</span><span class="o">::</span><span class="n">runtime_error</span><span class="p">();</span>
+  <span class="k">throw</span> <span class="n">std</span><span class="o">::</span><span class="n">exception</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-deprecated-headers.html">hicpp-deprecated-headers</a>
+          ::  
+        <a class="uplink" href="../../index.html">Contents</a>
+          ::  
+        <a href="hicpp-explicit-conversions.html">hicpp-explicit-conversions</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