[www-releases] r225843 - Add documentation for 3.5.1

Tom Stellard thomas.stellard at amd.com
Tue Jan 13 14:55:45 PST 2015


Added: www-releases/trunk/3.5.1/tools/clang/docs/doxygen/html/FormatString_8cpp_source.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/3.5.1/tools/clang/docs/doxygen/html/FormatString_8cpp_source.html?rev=225843&view=auto
==============================================================================
--- www-releases/trunk/3.5.1/tools/clang/docs/doxygen/html/FormatString_8cpp_source.html (added)
+++ www-releases/trunk/3.5.1/tools/clang/docs/doxygen/html/FormatString_8cpp_source.html Tue Jan 13 16:55:20 2015
@@ -0,0 +1,927 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<html><head>
+<meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
+<meta name="keywords" content="clang,LLVM,Low Level Virtual Machine,C,C++,doxygen,API,frontend,documentation"/>
+<meta name="description" content="C++ source code API documentation for clang."/>
+<title>clang: FormatString.cpp Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head><body>
+<p class="title">clang API Documentation</p>
+<!-- Generated by Doxygen 1.8.3.1 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main Page</span></a></li>
+      <li><a href="pages.html"><span>Related Pages</span></a></li>
+      <li><a href="modules.html"><span>Modules</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li><a href="annotated.html"><span>Classes</span></a></li>
+      <li class="current"><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="files.html"><span>File List</span></a></li>
+      <li><a href="globals.html"><span>File Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark"> </span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark"> </span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark"> </span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark"> </span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark"> </span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark"> </span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark"> </span>Typedefs</a><a class="SelectItem" href="javascript:void
 (0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark"> </span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark"> </span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark"> </span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark"> </span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(11)"><span class="SelectionMark"> </span>Groups</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(12)"><span class="SelectionMark"> </span>Pages</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_f65986501076cc710d4b9355ae3fe06d.html">clang</a></li><li class="navelem"><a class="el" href="dir_87e2a7550f83bd8cbfc92736891468fc.html">lib</a></li><li class="navelem"><a class="el" href="dir_c63c305ced188fe7fa423548af4807d3.html">Analysis</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">FormatString.cpp</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="FormatString_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span> <span class="comment">// FormatString.cpp - Common stuff for handling printf/scanf formats -*- C++ -*-</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span> <span class="comment">//</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno">    3</span> <span class="comment">//                     The LLVM Compiler Infrastructure</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span> <span class="comment">//</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span> <span class="comment">// This file is distributed under the University of Illinois Open Source</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span> <span class="comment">// License. See LICENSE.TXT for details.</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span> <span class="comment">//</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span> <span class="comment">//===----------------------------------------------------------------------===//</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span> <span class="comment">//</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span> <span class="comment">// Shared details for processing format strings of printf and scanf</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span> <span class="comment">// (and friends).</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span> <span class="comment">//</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span> <span class="comment">//===----------------------------------------------------------------------===//</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span> </div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span> <span class="preprocessor">#include "<a class="code" href="FormatStringParsing_8h.html">FormatStringParsing.h</a>"</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span> <span class="preprocessor">#include "<a class="code" href="LangOptions_8h.html" title="Defines the clang::LangOptions interface.">clang/Basic/LangOptions.h</a>"</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span> <span class="preprocessor">#include "<a class="code" href="include_2clang_2Basic_2TargetInfo_8h.html" title="Defines the clang::TargetInfo interface.">clang/Basic/TargetInfo.h</a>"</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span> </div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span> <span class="keyword">using</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ArgType.html">clang::analyze_format_string::ArgType</a>;</div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span> <span class="keyword">using</span> <a class="code" href="classclang_1_1analyze__format__string_1_1FormatStringHandler.html">clang::analyze_format_string::FormatStringHandler</a>;</div>
+<div class="line"><a name="l00021"></a><span class="lineno">   21</span> <span class="keyword">using</span> <a class="code" href="classclang_1_1analyze__format__string_1_1FormatSpecifier.html">clang::analyze_format_string::FormatSpecifier</a>;</div>
+<div class="line"><a name="l00022"></a><span class="lineno">   22</span> <span class="keyword">using</span> <a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html" title="Represents the length modifier in a format string in scanf/printf.">clang::analyze_format_string::LengthModifier</a>;</div>
+<div class="line"><a name="l00023"></a><span class="lineno">   23</span> <span class="keyword">using</span> <a class="code" href="classclang_1_1analyze__format__string_1_1OptionalAmount.html">clang::analyze_format_string::OptionalAmount</a>;</div>
+<div class="line"><a name="l00024"></a><span class="lineno">   24</span> <span class="keyword">using</span> <a class="code" href="namespaceclang_1_1analyze__format__string.html#ac609d0752a325cdc9217edc037c6a31f">clang::analyze_format_string::PositionContext</a>;</div>
+<div class="line"><a name="l00025"></a><span class="lineno">   25</span> <span class="keyword">using</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html">clang::analyze_format_string::ConversionSpecifier</a>;</div>
+<div class="line"><a name="l00026"></a><span class="lineno">   26</span> <span class="keyword">using namespace </span>clang;</div>
+<div class="line"><a name="l00027"></a><span class="lineno">   27</span> </div>
+<div class="line"><a name="l00028"></a><span class="lineno">   28</span> <span class="comment">// Key function to FormatStringHandler.</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1FormatStringHandler.html#ab9bb524cb0f4573060564755f70e0a8d">   29</a></span> FormatStringHandler::~FormatStringHandler() {}</div>
+<div class="line"><a name="l00030"></a><span class="lineno">   30</span> </div>
+<div class="line"><a name="l00031"></a><span class="lineno">   31</span> <span class="comment">//===----------------------------------------------------------------------===//</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno">   32</span> <span class="comment">// Functions for parsing format strings components in both printf and</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno">   33</span> <span class="comment">// scanf format strings.</span></div>
+<div class="line"><a name="l00034"></a><span class="lineno">   34</span> <span class="comment">//===----------------------------------------------------------------------===//</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno">   35</span> </div>
+<div class="line"><a name="l00036"></a><span class="lineno">   36</span> <a class="code" href="classclang_1_1analyze__format__string_1_1OptionalAmount.html">OptionalAmount</a></div>
+<div class="line"><a name="l00037"></a><span class="lineno"><a class="code" href="namespaceclang_1_1analyze__format__string.html#a4360d77257ec982c6f98dbd45fcdecb8">   37</a></span> <a class="code" href="namespaceclang_1_1analyze__format__string.html#a4360d77257ec982c6f98dbd45fcdecb8">clang::analyze_format_string::ParseAmount</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *&Beg, <span class="keyword">const</span> <span class="keywordtype">char</span> *E) {</div>
+<div class="line"><a name="l00038"></a><span class="lineno">   38</span>   <span class="keyword">const</span> <span class="keywordtype">char</span> *I = Beg;</div>
+<div class="line"><a name="l00039"></a><span class="lineno">   39</span>   <a class="code" href="classclang_1_1UpdateOnReturn.html">UpdateOnReturn <const char*></a> UpdateBeg(Beg, I);</div>
+<div class="line"><a name="l00040"></a><span class="lineno">   40</span> </div>
+<div class="line"><a name="l00041"></a><span class="lineno">   41</span>   <span class="keywordtype">unsigned</span> accumulator = 0;</div>
+<div class="line"><a name="l00042"></a><span class="lineno">   42</span>   <span class="keywordtype">bool</span> hasDigits = <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00043"></a><span class="lineno">   43</span> </div>
+<div class="line"><a name="l00044"></a><span class="lineno">   44</span>   <span class="keywordflow">for</span> ( ; I != E; ++I) {</div>
+<div class="line"><a name="l00045"></a><span class="lineno">   45</span>     <span class="keywordtype">char</span> c = *I;</div>
+<div class="line"><a name="l00046"></a><span class="lineno">   46</span>     <span class="keywordflow">if</span> (c >= <span class="charliteral">'0'</span> && c <= <span class="charliteral">'9'</span>) {</div>
+<div class="line"><a name="l00047"></a><span class="lineno">   47</span>       hasDigits = <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00048"></a><span class="lineno">   48</span>       accumulator = (accumulator * 10) + (c - <span class="charliteral">'0'</span>);</div>
+<div class="line"><a name="l00049"></a><span class="lineno">   49</span>       <span class="keywordflow">continue</span>;</div>
+<div class="line"><a name="l00050"></a><span class="lineno">   50</span>     }</div>
+<div class="line"><a name="l00051"></a><span class="lineno">   51</span> </div>
+<div class="line"><a name="l00052"></a><span class="lineno">   52</span>     <span class="keywordflow">if</span> (hasDigits)</div>
+<div class="line"><a name="l00053"></a><span class="lineno">   53</span>       <span class="keywordflow">return</span> <a class="code" href="classclang_1_1analyze__format__string_1_1OptionalAmount.html">OptionalAmount</a>(OptionalAmount::Constant, accumulator, Beg, I - Beg,</div>
+<div class="line"><a name="l00054"></a><span class="lineno">   54</span>           <span class="keyword">false</span>);</div>
+<div class="line"><a name="l00055"></a><span class="lineno">   55</span> </div>
+<div class="line"><a name="l00056"></a><span class="lineno">   56</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00057"></a><span class="lineno">   57</span>   }</div>
+<div class="line"><a name="l00058"></a><span class="lineno">   58</span> </div>
+<div class="line"><a name="l00059"></a><span class="lineno">   59</span>   <span class="keywordflow">return</span> <a class="code" href="classclang_1_1analyze__format__string_1_1OptionalAmount.html">OptionalAmount</a>();</div>
+<div class="line"><a name="l00060"></a><span class="lineno">   60</span> }</div>
+<div class="line"><a name="l00061"></a><span class="lineno">   61</span> </div>
+<div class="line"><a name="l00062"></a><span class="lineno">   62</span> <a class="code" href="classclang_1_1analyze__format__string_1_1OptionalAmount.html">OptionalAmount</a></div>
+<div class="line"><a name="l00063"></a><span class="lineno"><a class="code" href="namespaceclang_1_1analyze__format__string.html#a6e032f72dc8d078ec3fc7af98ce0786e">   63</a></span> <a class="code" href="namespaceclang_1_1analyze__format__string.html#a6e032f72dc8d078ec3fc7af98ce0786e">clang::analyze_format_string::ParseNonPositionAmount</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *&Beg,</div>
+<div class="line"><a name="l00064"></a><span class="lineno">   64</span>                                                      <span class="keyword">const</span> <span class="keywordtype">char</span> *E,</div>
+<div class="line"><a name="l00065"></a><span class="lineno">   65</span>                                                      <span class="keywordtype">unsigned</span> &argIndex) {</div>
+<div class="line"><a name="l00066"></a><span class="lineno">   66</span>   <span class="keywordflow">if</span> (*Beg == <span class="charliteral">'*'</span>) {</div>
+<div class="line"><a name="l00067"></a><span class="lineno">   67</span>     ++Beg;</div>
+<div class="line"><a name="l00068"></a><span class="lineno">   68</span>     <span class="keywordflow">return</span> <a class="code" href="classclang_1_1analyze__format__string_1_1OptionalAmount.html">OptionalAmount</a>(OptionalAmount::Arg, argIndex++, Beg, 0, <span class="keyword">false</span>);</div>
+<div class="line"><a name="l00069"></a><span class="lineno">   69</span>   }</div>
+<div class="line"><a name="l00070"></a><span class="lineno">   70</span> </div>
+<div class="line"><a name="l00071"></a><span class="lineno">   71</span>   <span class="keywordflow">return</span> <a class="code" href="namespaceclang_1_1analyze__format__string.html#a4360d77257ec982c6f98dbd45fcdecb8">ParseAmount</a>(Beg, E);</div>
+<div class="line"><a name="l00072"></a><span class="lineno">   72</span> }</div>
+<div class="line"><a name="l00073"></a><span class="lineno">   73</span> </div>
+<div class="line"><a name="l00074"></a><span class="lineno">   74</span> <a class="code" href="classclang_1_1analyze__format__string_1_1OptionalAmount.html">OptionalAmount</a></div>
+<div class="line"><a name="l00075"></a><span class="lineno"><a class="code" href="namespaceclang_1_1analyze__format__string.html#a2df3e95b49092a7a2084652502aee570">   75</a></span> <a class="code" href="namespaceclang_1_1analyze__format__string.html#a2df3e95b49092a7a2084652502aee570">clang::analyze_format_string::ParsePositionAmount</a>(<a class="code" href="classclang_1_1analyze__format__string_1_1FormatStringHandler.html">FormatStringHandler</a> &H,</div>
+<div class="line"><a name="l00076"></a><span class="lineno">   76</span>                                                   <span class="keyword">const</span> <span class="keywordtype">char</span> *Start,</div>
+<div class="line"><a name="l00077"></a><span class="lineno">   77</span>                                                   <span class="keyword">const</span> <span class="keywordtype">char</span> *&Beg,</div>
+<div class="line"><a name="l00078"></a><span class="lineno">   78</span>                                                   <span class="keyword">const</span> <span class="keywordtype">char</span> *E,</div>
+<div class="line"><a name="l00079"></a><span class="lineno">   79</span>                                                   <a class="code" href="namespaceclang_1_1analyze__format__string.html#ac609d0752a325cdc9217edc037c6a31f">PositionContext</a> p) {</div>
+<div class="line"><a name="l00080"></a><span class="lineno">   80</span>   <span class="keywordflow">if</span> (*Beg == <span class="charliteral">'*'</span>) {</div>
+<div class="line"><a name="l00081"></a><span class="lineno">   81</span>     <span class="keyword">const</span> <span class="keywordtype">char</span> *I = Beg + 1;</div>
+<div class="line"><a name="l00082"></a><span class="lineno">   82</span>     <span class="keyword">const</span> <a class="code" href="classclang_1_1analyze__format__string_1_1OptionalAmount.html">OptionalAmount</a> &Amt = <a class="code" href="namespaceclang_1_1analyze__format__string.html#a4360d77257ec982c6f98dbd45fcdecb8">ParseAmount</a>(I, E);</div>
+<div class="line"><a name="l00083"></a><span class="lineno">   83</span> </div>
+<div class="line"><a name="l00084"></a><span class="lineno">   84</span>     <span class="keywordflow">if</span> (Amt.<a class="code" href="classclang_1_1analyze__format__string_1_1OptionalAmount.html#a1bdab324c18f9deae4be0fa80375bbae">getHowSpecified</a>() == OptionalAmount::NotSpecified) {</div>
+<div class="line"><a name="l00085"></a><span class="lineno">   85</span>       H.<a class="code" href="classclang_1_1analyze__format__string_1_1FormatStringHandler.html#ac530271593736374f8df5b2d3365190f">HandleInvalidPosition</a>(Beg, I - Beg, p);</div>
+<div class="line"><a name="l00086"></a><span class="lineno">   86</span>       <span class="keywordflow">return</span> <a class="code" href="classclang_1_1analyze__format__string_1_1OptionalAmount.html">OptionalAmount</a>(<span class="keyword">false</span>);</div>
+<div class="line"><a name="l00087"></a><span class="lineno">   87</span>     }</div>
+<div class="line"><a name="l00088"></a><span class="lineno">   88</span> </div>
+<div class="line"><a name="l00089"></a><span class="lineno">   89</span>     <span class="keywordflow">if</span> (I == E) {</div>
+<div class="line"><a name="l00090"></a><span class="lineno">   90</span>       <span class="comment">// No more characters left?</span></div>
+<div class="line"><a name="l00091"></a><span class="lineno">   91</span>       H.<a class="code" href="classclang_1_1analyze__format__string_1_1FormatStringHandler.html#ad26d531598d5b071215064ed67a02bcd">HandleIncompleteSpecifier</a>(Start, E - Start);</div>
+<div class="line"><a name="l00092"></a><span class="lineno">   92</span>       <span class="keywordflow">return</span> <a class="code" href="classclang_1_1analyze__format__string_1_1OptionalAmount.html">OptionalAmount</a>(<span class="keyword">false</span>);</div>
+<div class="line"><a name="l00093"></a><span class="lineno">   93</span>     }</div>
+<div class="line"><a name="l00094"></a><span class="lineno">   94</span> </div>
+<div class="line"><a name="l00095"></a><span class="lineno">   95</span>     assert(Amt.<a class="code" href="classclang_1_1analyze__format__string_1_1OptionalAmount.html#a1bdab324c18f9deae4be0fa80375bbae">getHowSpecified</a>() == OptionalAmount::Constant);</div>
+<div class="line"><a name="l00096"></a><span class="lineno">   96</span> </div>
+<div class="line"><a name="l00097"></a><span class="lineno">   97</span>     <span class="keywordflow">if</span> (*I == <span class="charliteral">'$'</span>) {</div>
+<div class="line"><a name="l00098"></a><span class="lineno">   98</span>       <span class="comment">// Handle positional arguments</span></div>
+<div class="line"><a name="l00099"></a><span class="lineno">   99</span> </div>
+<div class="line"><a name="l00100"></a><span class="lineno">  100</span>       <span class="comment">// Special case: '*0$', since this is an easy mistake.</span></div>
+<div class="line"><a name="l00101"></a><span class="lineno">  101</span>       <span class="keywordflow">if</span> (Amt.<a class="code" href="classclang_1_1analyze__format__string_1_1OptionalAmount.html#a084323f2fb5018892ce99341bb23994b">getConstantAmount</a>() == 0) {</div>
+<div class="line"><a name="l00102"></a><span class="lineno">  102</span>         H.<a class="code" href="classclang_1_1analyze__format__string_1_1FormatStringHandler.html#aceff92e78278795d82fd62ae69c214df">HandleZeroPosition</a>(Beg, I - Beg + 1);</div>
+<div class="line"><a name="l00103"></a><span class="lineno">  103</span>         <span class="keywordflow">return</span> <a class="code" href="classclang_1_1analyze__format__string_1_1OptionalAmount.html">OptionalAmount</a>(<span class="keyword">false</span>);</div>
+<div class="line"><a name="l00104"></a><span class="lineno">  104</span>       }</div>
+<div class="line"><a name="l00105"></a><span class="lineno">  105</span> </div>
+<div class="line"><a name="l00106"></a><span class="lineno">  106</span>       <span class="keyword">const</span> <span class="keywordtype">char</span> *Tmp = Beg;</div>
+<div class="line"><a name="l00107"></a><span class="lineno">  107</span>       Beg = ++I;</div>
+<div class="line"><a name="l00108"></a><span class="lineno">  108</span> </div>
+<div class="line"><a name="l00109"></a><span class="lineno">  109</span>       <span class="keywordflow">return</span> <a class="code" href="classclang_1_1analyze__format__string_1_1OptionalAmount.html">OptionalAmount</a>(OptionalAmount::Arg, Amt.<a class="code" href="classclang_1_1analyze__format__string_1_1OptionalAmount.html#a084323f2fb5018892ce99341bb23994b">getConstantAmount</a>() - 1,</div>
+<div class="line"><a name="l00110"></a><span class="lineno">  110</span>                             Tmp, 0, <span class="keyword">true</span>);</div>
+<div class="line"><a name="l00111"></a><span class="lineno">  111</span>     }</div>
+<div class="line"><a name="l00112"></a><span class="lineno">  112</span> </div>
+<div class="line"><a name="l00113"></a><span class="lineno">  113</span>     H.<a class="code" href="classclang_1_1analyze__format__string_1_1FormatStringHandler.html#ac530271593736374f8df5b2d3365190f">HandleInvalidPosition</a>(Beg, I - Beg, p);</div>
+<div class="line"><a name="l00114"></a><span class="lineno">  114</span>     <span class="keywordflow">return</span> <a class="code" href="classclang_1_1analyze__format__string_1_1OptionalAmount.html">OptionalAmount</a>(<span class="keyword">false</span>);</div>
+<div class="line"><a name="l00115"></a><span class="lineno">  115</span>   }</div>
+<div class="line"><a name="l00116"></a><span class="lineno">  116</span> </div>
+<div class="line"><a name="l00117"></a><span class="lineno">  117</span>   <span class="keywordflow">return</span> <a class="code" href="namespaceclang_1_1analyze__format__string.html#a4360d77257ec982c6f98dbd45fcdecb8">ParseAmount</a>(Beg, E);</div>
+<div class="line"><a name="l00118"></a><span class="lineno">  118</span> }</div>
+<div class="line"><a name="l00119"></a><span class="lineno">  119</span> </div>
+<div class="line"><a name="l00120"></a><span class="lineno">  120</span> </div>
+<div class="line"><a name="l00121"></a><span class="lineno">  121</span> <span class="keywordtype">bool</span></div>
+<div class="line"><a name="l00122"></a><span class="lineno"><a class="code" href="namespaceclang_1_1analyze__format__string.html#a1d26a25a462ea2ca22822ac2e43dadbb">  122</a></span> <a class="code" href="namespaceclang_1_1analyze__format__string.html#a1d26a25a462ea2ca22822ac2e43dadbb">clang::analyze_format_string::ParseFieldWidth</a>(<a class="code" href="classclang_1_1analyze__format__string_1_1FormatStringHandler.html">FormatStringHandler</a> &H,</div>
+<div class="line"><a name="l00123"></a><span class="lineno">  123</span>                                               <a class="code" href="classclang_1_1analyze__format__string_1_1FormatSpecifier.html">FormatSpecifier</a> &CS,</div>
+<div class="line"><a name="l00124"></a><span class="lineno">  124</span>                                               <span class="keyword">const</span> <span class="keywordtype">char</span> *Start,</div>
+<div class="line"><a name="l00125"></a><span class="lineno">  125</span>                                               <span class="keyword">const</span> <span class="keywordtype">char</span> *&Beg, <span class="keyword">const</span> <span class="keywordtype">char</span> *E,</div>
+<div class="line"><a name="l00126"></a><span class="lineno">  126</span>                                               <span class="keywordtype">unsigned</span> *argIndex) {</div>
+<div class="line"><a name="l00127"></a><span class="lineno">  127</span>   <span class="comment">// FIXME: Support negative field widths.</span></div>
+<div class="line"><a name="l00128"></a><span class="lineno">  128</span>   <span class="keywordflow">if</span> (argIndex) {</div>
+<div class="line"><a name="l00129"></a><span class="lineno">  129</span>     CS.<a class="code" href="classclang_1_1analyze__format__string_1_1FormatSpecifier.html#a506829b42d35b7466b81c3c7b6fbcc6d">setFieldWidth</a>(<a class="code" href="namespaceclang_1_1analyze__format__string.html#a6e032f72dc8d078ec3fc7af98ce0786e">ParseNonPositionAmount</a>(Beg, E, *argIndex));</div>
+<div class="line"><a name="l00130"></a><span class="lineno">  130</span>   }</div>
+<div class="line"><a name="l00131"></a><span class="lineno">  131</span>   <span class="keywordflow">else</span> {</div>
+<div class="line"><a name="l00132"></a><span class="lineno">  132</span>     <span class="keyword">const</span> <a class="code" href="classclang_1_1analyze__format__string_1_1OptionalAmount.html">OptionalAmount</a> Amt =</div>
+<div class="line"><a name="l00133"></a><span class="lineno">  133</span>       <a class="code" href="namespaceclang_1_1analyze__format__string.html#a2df3e95b49092a7a2084652502aee570">ParsePositionAmount</a>(H, Start, Beg, E,</div>
+<div class="line"><a name="l00134"></a><span class="lineno">  134</span>                           <a class="code" href="namespaceclang_1_1analyze__format__string.html#ac609d0752a325cdc9217edc037c6a31fa8b4abdf44e62e1dd2daec8ba593e1a11">analyze_format_string::FieldWidthPos</a>);</div>
+<div class="line"><a name="l00135"></a><span class="lineno">  135</span> </div>
+<div class="line"><a name="l00136"></a><span class="lineno">  136</span>     <span class="keywordflow">if</span> (Amt.<a class="code" href="classclang_1_1analyze__format__string_1_1OptionalAmount.html#aaf92a8a1d065498676a30e9a1783f746">isInvalid</a>())</div>
+<div class="line"><a name="l00137"></a><span class="lineno">  137</span>       <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00138"></a><span class="lineno">  138</span>     CS.<a class="code" href="classclang_1_1analyze__format__string_1_1FormatSpecifier.html#a506829b42d35b7466b81c3c7b6fbcc6d">setFieldWidth</a>(Amt);</div>
+<div class="line"><a name="l00139"></a><span class="lineno">  139</span>   }</div>
+<div class="line"><a name="l00140"></a><span class="lineno">  140</span>   <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00141"></a><span class="lineno">  141</span> }</div>
+<div class="line"><a name="l00142"></a><span class="lineno">  142</span> </div>
+<div class="line"><a name="l00143"></a><span class="lineno">  143</span> <span class="keywordtype">bool</span></div>
+<div class="line"><a name="l00144"></a><span class="lineno"><a class="code" href="namespaceclang_1_1analyze__format__string.html#ad97cb45df8d6378ec063ee8e16e5ff75">  144</a></span> <a class="code" href="namespaceclang_1_1analyze__format__string.html#ad97cb45df8d6378ec063ee8e16e5ff75">clang::analyze_format_string::ParseArgPosition</a>(<a class="code" href="classclang_1_1analyze__format__string_1_1FormatStringHandler.html">FormatStringHandler</a> &H,</div>
+<div class="line"><a name="l00145"></a><span class="lineno">  145</span>                                                <a class="code" href="classclang_1_1analyze__format__string_1_1FormatSpecifier.html">FormatSpecifier</a> &FS,</div>
+<div class="line"><a name="l00146"></a><span class="lineno">  146</span>                                                <span class="keyword">const</span> <span class="keywordtype">char</span> *Start,</div>
+<div class="line"><a name="l00147"></a><span class="lineno">  147</span>                                                <span class="keyword">const</span> <span class="keywordtype">char</span> *&Beg,</div>
+<div class="line"><a name="l00148"></a><span class="lineno">  148</span>                                                <span class="keyword">const</span> <span class="keywordtype">char</span> *E) {</div>
+<div class="line"><a name="l00149"></a><span class="lineno">  149</span>   <span class="keyword">const</span> <span class="keywordtype">char</span> *I = Beg;</div>
+<div class="line"><a name="l00150"></a><span class="lineno">  150</span> </div>
+<div class="line"><a name="l00151"></a><span class="lineno">  151</span>   <span class="keyword">const</span> <a class="code" href="classclang_1_1analyze__format__string_1_1OptionalAmount.html">OptionalAmount</a> &Amt = <a class="code" href="namespaceclang_1_1analyze__format__string.html#a4360d77257ec982c6f98dbd45fcdecb8">ParseAmount</a>(I, E);</div>
+<div class="line"><a name="l00152"></a><span class="lineno">  152</span> </div>
+<div class="line"><a name="l00153"></a><span class="lineno">  153</span>   <span class="keywordflow">if</span> (I == E) {</div>
+<div class="line"><a name="l00154"></a><span class="lineno">  154</span>     <span class="comment">// No more characters left?</span></div>
+<div class="line"><a name="l00155"></a><span class="lineno">  155</span>     H.<a class="code" href="classclang_1_1analyze__format__string_1_1FormatStringHandler.html#ad26d531598d5b071215064ed67a02bcd">HandleIncompleteSpecifier</a>(Start, E - Start);</div>
+<div class="line"><a name="l00156"></a><span class="lineno">  156</span>     <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00157"></a><span class="lineno">  157</span>   }</div>
+<div class="line"><a name="l00158"></a><span class="lineno">  158</span> </div>
+<div class="line"><a name="l00159"></a><span class="lineno">  159</span>   <span class="keywordflow">if</span> (Amt.<a class="code" href="classclang_1_1analyze__format__string_1_1OptionalAmount.html#a1bdab324c18f9deae4be0fa80375bbae">getHowSpecified</a>() == OptionalAmount::Constant && *(I++) == <span class="charliteral">'$'</span>) {</div>
+<div class="line"><a name="l00160"></a><span class="lineno">  160</span>     <span class="comment">// Warn that positional arguments are non-standard.</span></div>
+<div class="line"><a name="l00161"></a><span class="lineno">  161</span>     H.<a class="code" href="classclang_1_1analyze__format__string_1_1FormatStringHandler.html#abb30308269f8f7e68d9320633c2eb11a">HandlePosition</a>(Start, I - Start);</div>
+<div class="line"><a name="l00162"></a><span class="lineno">  162</span> </div>
+<div class="line"><a name="l00163"></a><span class="lineno">  163</span>     <span class="comment">// Special case: '%0$', since this is an easy mistake.</span></div>
+<div class="line"><a name="l00164"></a><span class="lineno">  164</span>     <span class="keywordflow">if</span> (Amt.<a class="code" href="classclang_1_1analyze__format__string_1_1OptionalAmount.html#a084323f2fb5018892ce99341bb23994b">getConstantAmount</a>() == 0) {</div>
+<div class="line"><a name="l00165"></a><span class="lineno">  165</span>       H.<a class="code" href="classclang_1_1analyze__format__string_1_1FormatStringHandler.html#aceff92e78278795d82fd62ae69c214df">HandleZeroPosition</a>(Start, I - Start);</div>
+<div class="line"><a name="l00166"></a><span class="lineno">  166</span>       <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00167"></a><span class="lineno">  167</span>     }</div>
+<div class="line"><a name="l00168"></a><span class="lineno">  168</span> </div>
+<div class="line"><a name="l00169"></a><span class="lineno">  169</span>     FS.<a class="code" href="classclang_1_1analyze__format__string_1_1FormatSpecifier.html#a894e7aae1edd453d05439c2ccff03873">setArgIndex</a>(Amt.<a class="code" href="classclang_1_1analyze__format__string_1_1OptionalAmount.html#a084323f2fb5018892ce99341bb23994b">getConstantAmount</a>() - 1);</div>
+<div class="line"><a name="l00170"></a><span class="lineno">  170</span>     FS.<a class="code" href="classclang_1_1analyze__format__string_1_1FormatSpecifier.html#a79e468f6e0345632bd6aafbe3ebc8386">setUsesPositionalArg</a>();</div>
+<div class="line"><a name="l00171"></a><span class="lineno">  171</span>     <span class="comment">// Update the caller's pointer if we decided to consume</span></div>
+<div class="line"><a name="l00172"></a><span class="lineno">  172</span>     <span class="comment">// these characters.</span></div>
+<div class="line"><a name="l00173"></a><span class="lineno">  173</span>     Beg = I;</div>
+<div class="line"><a name="l00174"></a><span class="lineno">  174</span>     <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00175"></a><span class="lineno">  175</span>   }</div>
+<div class="line"><a name="l00176"></a><span class="lineno">  176</span> </div>
+<div class="line"><a name="l00177"></a><span class="lineno">  177</span>   <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00178"></a><span class="lineno">  178</span> }</div>
+<div class="line"><a name="l00179"></a><span class="lineno">  179</span> </div>
+<div class="line"><a name="l00180"></a><span class="lineno">  180</span> <span class="keywordtype">bool</span></div>
+<div class="line"><a name="l00181"></a><span class="lineno"><a class="code" href="namespaceclang_1_1analyze__format__string.html#ac7fa3f3d47a0a19a04519dcdaf829343">  181</a></span> <a class="code" href="namespaceclang_1_1analyze__format__string.html#ac7fa3f3d47a0a19a04519dcdaf829343">clang::analyze_format_string::ParseLengthModifier</a>(<a class="code" href="classclang_1_1analyze__format__string_1_1FormatSpecifier.html">FormatSpecifier</a> &FS,</div>
+<div class="line"><a name="l00182"></a><span class="lineno">  182</span>                                                   <span class="keyword">const</span> <span class="keywordtype">char</span> *&I,</div>
+<div class="line"><a name="l00183"></a><span class="lineno">  183</span>                                                   <span class="keyword">const</span> <span class="keywordtype">char</span> *E,</div>
+<div class="line"><a name="l00184"></a><span class="lineno">  184</span>                                                   <span class="keyword">const</span> <a class="code" href="classclang_1_1LangOptions.html" title="Keeps track of the various options that can be enabled, which controls the dialect of C or C++ that i...">LangOptions</a> &LO,</div>
+<div class="line"><a name="l00185"></a><span class="lineno">  185</span>                                                   <span class="keywordtype">bool</span> IsScanf) {</div>
+<div class="line"><a name="l00186"></a><span class="lineno">  186</span>   <a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#aff2690c378d9475ad5bf6089d0fd2895">LengthModifier::Kind</a> lmKind = LengthModifier::None;</div>
+<div class="line"><a name="l00187"></a><span class="lineno">  187</span>   <span class="keyword">const</span> <span class="keywordtype">char</span> *lmPosition = I;</div>
+<div class="line"><a name="l00188"></a><span class="lineno">  188</span>   <span class="keywordflow">switch</span> (*I) {</div>
+<div class="line"><a name="l00189"></a><span class="lineno">  189</span>     <span class="keywordflow">default</span>:</div>
+<div class="line"><a name="l00190"></a><span class="lineno">  190</span>       <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00191"></a><span class="lineno">  191</span>     <span class="keywordflow">case</span> <span class="charliteral">'h'</span>:</div>
+<div class="line"><a name="l00192"></a><span class="lineno">  192</span>       ++I;</div>
+<div class="line"><a name="l00193"></a><span class="lineno">  193</span>       lmKind = (I != E && *I == <span class="charliteral">'h'</span>) ? (++I, LengthModifier::AsChar)</div>
+<div class="line"><a name="l00194"></a><span class="lineno">  194</span>                                      : LengthModifier::AsShort;</div>
+<div class="line"><a name="l00195"></a><span class="lineno">  195</span>       <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00196"></a><span class="lineno">  196</span>     <span class="keywordflow">case</span> <span class="charliteral">'l'</span>:</div>
+<div class="line"><a name="l00197"></a><span class="lineno">  197</span>       ++I;</div>
+<div class="line"><a name="l00198"></a><span class="lineno">  198</span>       lmKind = (I != E && *I == <span class="charliteral">'l'</span>) ? (++I, LengthModifier::AsLongLong)</div>
+<div class="line"><a name="l00199"></a><span class="lineno">  199</span>                                      : LengthModifier::AsLong;</div>
+<div class="line"><a name="l00200"></a><span class="lineno">  200</span>       <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00201"></a><span class="lineno">  201</span>     <span class="keywordflow">case</span> <span class="charliteral">'j'</span>: lmKind = LengthModifier::AsIntMax;     ++I; <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00202"></a><span class="lineno">  202</span>     <span class="keywordflow">case</span> <span class="charliteral">'z'</span>: lmKind = LengthModifier::AsSizeT;      ++I; <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00203"></a><span class="lineno">  203</span>     <span class="keywordflow">case</span> <span class="charliteral">'t'</span>: lmKind = LengthModifier::AsPtrDiff;    ++I; <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00204"></a><span class="lineno">  204</span>     <span class="keywordflow">case</span> <span class="charliteral">'L'</span>: lmKind = LengthModifier::AsLongDouble; ++I; <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00205"></a><span class="lineno">  205</span>     <span class="keywordflow">case</span> <span class="charliteral">'q'</span>: lmKind = LengthModifier::AsQuad;       ++I; <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00206"></a><span class="lineno">  206</span>     <span class="keywordflow">case</span> <span class="charliteral">'a'</span>:</div>
+<div class="line"><a name="l00207"></a><span class="lineno">  207</span>       <span class="keywordflow">if</span> (IsScanf && !LO.C99 && !LO.CPlusPlus11) {</div>
+<div class="line"><a name="l00208"></a><span class="lineno">  208</span>         <span class="comment">// For scanf in C90, look at the next character to see if this should</span></div>
+<div class="line"><a name="l00209"></a><span class="lineno">  209</span>         <span class="comment">// be parsed as the GNU extension 'a' length modifier. If not, this</span></div>
+<div class="line"><a name="l00210"></a><span class="lineno">  210</span>         <span class="comment">// will be parsed as a conversion specifier.</span></div>
+<div class="line"><a name="l00211"></a><span class="lineno">  211</span>         ++I;</div>
+<div class="line"><a name="l00212"></a><span class="lineno">  212</span>         <span class="keywordflow">if</span> (I != E && (*I == <span class="charliteral">'s'</span> || *I == <span class="charliteral">'S'</span> || *I == <span class="charliteral">'['</span>)) {</div>
+<div class="line"><a name="l00213"></a><span class="lineno">  213</span>           lmKind = LengthModifier::AsAllocate;</div>
+<div class="line"><a name="l00214"></a><span class="lineno">  214</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00215"></a><span class="lineno">  215</span>         }</div>
+<div class="line"><a name="l00216"></a><span class="lineno">  216</span>         --I;</div>
+<div class="line"><a name="l00217"></a><span class="lineno">  217</span>       }</div>
+<div class="line"><a name="l00218"></a><span class="lineno">  218</span>       <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00219"></a><span class="lineno">  219</span>     <span class="keywordflow">case</span> <span class="charliteral">'m'</span>:</div>
+<div class="line"><a name="l00220"></a><span class="lineno">  220</span>       <span class="keywordflow">if</span> (IsScanf) {</div>
+<div class="line"><a name="l00221"></a><span class="lineno">  221</span>         lmKind = LengthModifier::AsMAllocate;</div>
+<div class="line"><a name="l00222"></a><span class="lineno">  222</span>         ++I;</div>
+<div class="line"><a name="l00223"></a><span class="lineno">  223</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00224"></a><span class="lineno">  224</span>       }</div>
+<div class="line"><a name="l00225"></a><span class="lineno">  225</span>       <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00226"></a><span class="lineno">  226</span>     <span class="comment">// printf: AsInt64, AsInt32, AsInt3264</span></div>
+<div class="line"><a name="l00227"></a><span class="lineno">  227</span>     <span class="comment">// scanf:  AsInt64</span></div>
+<div class="line"><a name="l00228"></a><span class="lineno">  228</span>     <span class="keywordflow">case</span> <span class="charliteral">'I'</span>:</div>
+<div class="line"><a name="l00229"></a><span class="lineno">  229</span>       <span class="keywordflow">if</span> (I + 1 != E && I + 2 != E) {</div>
+<div class="line"><a name="l00230"></a><span class="lineno">  230</span>         <span class="keywordflow">if</span> (I[1] == <span class="charliteral">'6'</span> && I[2] == <span class="charliteral">'4'</span>) {</div>
+<div class="line"><a name="l00231"></a><span class="lineno">  231</span>           I += 3;</div>
+<div class="line"><a name="l00232"></a><span class="lineno">  232</span>           lmKind = LengthModifier::AsInt64;</div>
+<div class="line"><a name="l00233"></a><span class="lineno">  233</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00234"></a><span class="lineno">  234</span>         }</div>
+<div class="line"><a name="l00235"></a><span class="lineno">  235</span>         <span class="keywordflow">if</span> (IsScanf)</div>
+<div class="line"><a name="l00236"></a><span class="lineno">  236</span>           <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00237"></a><span class="lineno">  237</span> </div>
+<div class="line"><a name="l00238"></a><span class="lineno">  238</span>         <span class="keywordflow">if</span> (I[1] == <span class="charliteral">'3'</span> && I[2] == <span class="charliteral">'2'</span>) {</div>
+<div class="line"><a name="l00239"></a><span class="lineno">  239</span>           I += 3;</div>
+<div class="line"><a name="l00240"></a><span class="lineno">  240</span>           lmKind = LengthModifier::AsInt32;</div>
+<div class="line"><a name="l00241"></a><span class="lineno">  241</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00242"></a><span class="lineno">  242</span>         }</div>
+<div class="line"><a name="l00243"></a><span class="lineno">  243</span>       }</div>
+<div class="line"><a name="l00244"></a><span class="lineno">  244</span>       ++I;</div>
+<div class="line"><a name="l00245"></a><span class="lineno">  245</span>       lmKind = LengthModifier::AsInt3264;</div>
+<div class="line"><a name="l00246"></a><span class="lineno">  246</span>       <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00247"></a><span class="lineno">  247</span>   }</div>
+<div class="line"><a name="l00248"></a><span class="lineno">  248</span>   <a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html" title="Represents the length modifier in a format string in scanf/printf.">LengthModifier</a> lm(lmPosition, lmKind);</div>
+<div class="line"><a name="l00249"></a><span class="lineno">  249</span>   FS.<a class="code" href="classclang_1_1analyze__format__string_1_1FormatSpecifier.html#a8dc303adcda1fe3a47a30b61d9a818b1">setLengthModifier</a>(lm);</div>
+<div class="line"><a name="l00250"></a><span class="lineno">  250</span>   <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00251"></a><span class="lineno">  251</span> }</div>
+<div class="line"><a name="l00252"></a><span class="lineno">  252</span> </div>
+<div class="line"><a name="l00253"></a><span class="lineno">  253</span> <span class="comment">//===----------------------------------------------------------------------===//</span></div>
+<div class="line"><a name="l00254"></a><span class="lineno">  254</span> <span class="comment">// Methods on ArgType.</span></div>
+<div class="line"><a name="l00255"></a><span class="lineno">  255</span> <span class="comment">//===----------------------------------------------------------------------===//</span></div>
+<div class="line"><a name="l00256"></a><span class="lineno">  256</span> </div>
+<div class="line"><a name="l00257"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1ArgType.html#a0e0c00d374c833cec1b98760fd178868">  257</a></span> <span class="keywordtype">bool</span> ArgType::matchesType(<a class="code" href="classclang_1_1ASTContext.html" title="Holds long-lived AST nodes (such as types and decls) that can be referred to throughout the semantic ...">ASTContext</a> &C, <a class="code" href="classclang_1_1QualType.html">QualType</a> argTy)<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00258"></a><span class="lineno">  258</span>   <span class="keywordflow">if</span> (Ptr) {</div>
+<div class="line"><a name="l00259"></a><span class="lineno">  259</span>     <span class="comment">// It has to be a pointer.</span></div>
+<div class="line"><a name="l00260"></a><span class="lineno">  260</span>     <span class="keyword">const</span> <a class="code" href="classclang_1_1PointerType.html">PointerType</a> *PT = argTy-><a class="code" href="classclang_1_1Type.html#a12103ea8bee9506930287bab68a08569">getAs</a><<a class="code" href="classclang_1_1PointerType.html">PointerType</a>>();</div>
+<div class="line"><a name="l00261"></a><span class="lineno">  261</span>     <span class="keywordflow">if</span> (!PT)</div>
+<div class="line"><a name="l00262"></a><span class="lineno">  262</span>       <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00263"></a><span class="lineno">  263</span> </div>
+<div class="line"><a name="l00264"></a><span class="lineno">  264</span>     <span class="comment">// We cannot write through a const qualified pointer.</span></div>
+<div class="line"><a name="l00265"></a><span class="lineno">  265</span>     <span class="keywordflow">if</span> (PT-><a class="code" href="classclang_1_1PointerType.html#a3d0af079431148f7da7e2c400052cc66">getPointeeType</a>().<a class="code" href="classclang_1_1QualType.html#afea72c89b99446db779fcfb0ea257826" title="Determine whether this type is const-qualified.">isConstQualified</a>())</div>
+<div class="line"><a name="l00266"></a><span class="lineno">  266</span>       <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00267"></a><span class="lineno">  267</span> </div>
+<div class="line"><a name="l00268"></a><span class="lineno">  268</span>     argTy = PT-><a class="code" href="classclang_1_1PointerType.html#a3d0af079431148f7da7e2c400052cc66">getPointeeType</a>();</div>
+<div class="line"><a name="l00269"></a><span class="lineno">  269</span>   }</div>
+<div class="line"><a name="l00270"></a><span class="lineno">  270</span> </div>
+<div class="line"><a name="l00271"></a><span class="lineno">  271</span>   <span class="keywordflow">switch</span> (K) {</div>
+<div class="line"><a name="l00272"></a><span class="lineno">  272</span>     <span class="keywordflow">case</span> InvalidTy:</div>
+<div class="line"><a name="l00273"></a><span class="lineno">  273</span>       llvm_unreachable(<span class="stringliteral">"ArgType must be valid"</span>);</div>
+<div class="line"><a name="l00274"></a><span class="lineno">  274</span> </div>
+<div class="line"><a name="l00275"></a><span class="lineno">  275</span>     <span class="keywordflow">case</span> UnknownTy:</div>
+<div class="line"><a name="l00276"></a><span class="lineno">  276</span>       <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00277"></a><span class="lineno">  277</span>       </div>
+<div class="line"><a name="l00278"></a><span class="lineno">  278</span>     <span class="keywordflow">case</span> AnyCharTy: {</div>
+<div class="line"><a name="l00279"></a><span class="lineno">  279</span>       <span class="keywordflow">if</span> (<span class="keyword">const</span> <a class="code" href="classclang_1_1EnumType.html">EnumType</a> *ETy = argTy-><a class="code" href="classclang_1_1Type.html#a12103ea8bee9506930287bab68a08569">getAs</a><<a class="code" href="classclang_1_1EnumType.html">EnumType</a>>())</div>
+<div class="line"><a name="l00280"></a><span class="lineno">  280</span>         argTy = ETy->getDecl()->getIntegerType();</div>
+<div class="line"><a name="l00281"></a><span class="lineno">  281</span> </div>
+<div class="line"><a name="l00282"></a><span class="lineno">  282</span>       <span class="keywordflow">if</span> (<span class="keyword">const</span> <a class="code" href="classclang_1_1BuiltinType.html">BuiltinType</a> *BT = argTy-><a class="code" href="classclang_1_1Type.html#a12103ea8bee9506930287bab68a08569">getAs</a><<a class="code" href="classclang_1_1BuiltinType.html">BuiltinType</a>>())</div>
+<div class="line"><a name="l00283"></a><span class="lineno">  283</span>         <span class="keywordflow">switch</span> (BT->getKind()) {</div>
+<div class="line"><a name="l00284"></a><span class="lineno">  284</span>           <span class="keywordflow">default</span>:</div>
+<div class="line"><a name="l00285"></a><span class="lineno">  285</span>             <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00286"></a><span class="lineno">  286</span>           <span class="keywordflow">case</span> BuiltinType::Char_S:</div>
+<div class="line"><a name="l00287"></a><span class="lineno">  287</span>           <span class="keywordflow">case</span> BuiltinType::SChar:</div>
+<div class="line"><a name="l00288"></a><span class="lineno">  288</span>           <span class="keywordflow">case</span> BuiltinType::UChar:</div>
+<div class="line"><a name="l00289"></a><span class="lineno">  289</span>           <span class="keywordflow">case</span> BuiltinType::Char_U:</div>
+<div class="line"><a name="l00290"></a><span class="lineno">  290</span>             <span class="keywordflow">return</span> <span class="keyword">true</span>;            </div>
+<div class="line"><a name="l00291"></a><span class="lineno">  291</span>         }</div>
+<div class="line"><a name="l00292"></a><span class="lineno">  292</span>       <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00293"></a><span class="lineno">  293</span>     }</div>
+<div class="line"><a name="l00294"></a><span class="lineno">  294</span>       </div>
+<div class="line"><a name="l00295"></a><span class="lineno">  295</span>     <span class="keywordflow">case</span> SpecificTy: {</div>
+<div class="line"><a name="l00296"></a><span class="lineno">  296</span>       <span class="keywordflow">if</span> (<span class="keyword">const</span> <a class="code" href="classclang_1_1EnumType.html">EnumType</a> *ETy = argTy-><a class="code" href="classclang_1_1Type.html#a12103ea8bee9506930287bab68a08569">getAs</a><<a class="code" href="classclang_1_1EnumType.html">EnumType</a>>())</div>
+<div class="line"><a name="l00297"></a><span class="lineno">  297</span>         argTy = ETy->getDecl()->getIntegerType();</div>
+<div class="line"><a name="l00298"></a><span class="lineno">  298</span>       argTy = C.<a class="code" href="classclang_1_1ASTContext.html#a7e70bb7eebf01548a0cab752e390ba37" title="Return the canonical (structural) type corresponding to the specified potentially non-canonical type ...">getCanonicalType</a>(argTy).<a class="code" href="classclang_1_1CanQual.html#af48a042eb252e80347f11899625ca0dc" title="Retrieve the unqualified form of this type.">getUnqualifiedType</a>();</div>
+<div class="line"><a name="l00299"></a><span class="lineno">  299</span> </div>
+<div class="line"><a name="l00300"></a><span class="lineno">  300</span>       <span class="keywordflow">if</span> (T == argTy)</div>
+<div class="line"><a name="l00301"></a><span class="lineno">  301</span>         <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00302"></a><span class="lineno">  302</span>       <span class="comment">// Check for "compatible types".</span></div>
+<div class="line"><a name="l00303"></a><span class="lineno">  303</span>       <span class="keywordflow">if</span> (<span class="keyword">const</span> <a class="code" href="classclang_1_1BuiltinType.html">BuiltinType</a> *BT = argTy-><a class="code" href="classclang_1_1Type.html#a12103ea8bee9506930287bab68a08569">getAs</a><<a class="code" href="classclang_1_1BuiltinType.html">BuiltinType</a>>())</div>
+<div class="line"><a name="l00304"></a><span class="lineno">  304</span>         <span class="keywordflow">switch</span> (BT->getKind()) {</div>
+<div class="line"><a name="l00305"></a><span class="lineno">  305</span>           <span class="keywordflow">default</span>:</div>
+<div class="line"><a name="l00306"></a><span class="lineno">  306</span>             <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00307"></a><span class="lineno">  307</span>           <span class="keywordflow">case</span> BuiltinType::Char_S:</div>
+<div class="line"><a name="l00308"></a><span class="lineno">  308</span>           <span class="keywordflow">case</span> BuiltinType::SChar:</div>
+<div class="line"><a name="l00309"></a><span class="lineno">  309</span>           <span class="keywordflow">case</span> BuiltinType::Char_U:</div>
+<div class="line"><a name="l00310"></a><span class="lineno">  310</span>           <span class="keywordflow">case</span> BuiltinType::UChar:                    </div>
+<div class="line"><a name="l00311"></a><span class="lineno">  311</span>             <span class="keywordflow">return</span> T == C.<a class="code" href="classclang_1_1ASTContext.html#aab61651b1e4d7e541343e7155263e861">UnsignedCharTy</a> || T == C.<a class="code" href="classclang_1_1ASTContext.html#a92063d19fd6dd12d2d3c1a016ffc849f">SignedCharTy</a>;</div>
+<div class="line"><a name="l00312"></a><span class="lineno">  312</span>           <span class="keywordflow">case</span> BuiltinType::Short:</div>
+<div class="line"><a name="l00313"></a><span class="lineno">  313</span>             <span class="keywordflow">return</span> T == C.<a class="code" href="classclang_1_1ASTContext.html#ab9a777cc7ccb5b943f68c7d443b3cc86">UnsignedShortTy</a>;</div>
+<div class="line"><a name="l00314"></a><span class="lineno">  314</span>           <span class="keywordflow">case</span> BuiltinType::UShort:</div>
+<div class="line"><a name="l00315"></a><span class="lineno">  315</span>             <span class="keywordflow">return</span> T == C.<a class="code" href="classclang_1_1ASTContext.html#ac369991763a2aa6bf9a8a3ded653afd8">ShortTy</a>;</div>
+<div class="line"><a name="l00316"></a><span class="lineno">  316</span>           <span class="keywordflow">case</span> BuiltinType::Int:</div>
+<div class="line"><a name="l00317"></a><span class="lineno">  317</span>             <span class="keywordflow">return</span> T == C.<a class="code" href="classclang_1_1ASTContext.html#aad4fc6bf8d266a4dbc03cd9d3a86aab4">UnsignedIntTy</a>;</div>
+<div class="line"><a name="l00318"></a><span class="lineno">  318</span>           <span class="keywordflow">case</span> BuiltinType::UInt:</div>
+<div class="line"><a name="l00319"></a><span class="lineno">  319</span>             <span class="keywordflow">return</span> T == C.<a class="code" href="classclang_1_1ASTContext.html#a873a1148a8ffe184f0e5bd27bf90c0dc">IntTy</a>;</div>
+<div class="line"><a name="l00320"></a><span class="lineno">  320</span>           <span class="keywordflow">case</span> BuiltinType::Long:</div>
+<div class="line"><a name="l00321"></a><span class="lineno">  321</span>             <span class="keywordflow">return</span> T == C.<a class="code" href="classclang_1_1ASTContext.html#a76182acff43ec4d01c06751bb8a2f7bc">UnsignedLongTy</a>;</div>
+<div class="line"><a name="l00322"></a><span class="lineno">  322</span>           <span class="keywordflow">case</span> BuiltinType::ULong:</div>
+<div class="line"><a name="l00323"></a><span class="lineno">  323</span>             <span class="keywordflow">return</span> T == C.<a class="code" href="classclang_1_1ASTContext.html#a0ba7f01d5d975ce7f18b482b052f10fb">LongTy</a>;</div>
+<div class="line"><a name="l00324"></a><span class="lineno">  324</span>           <span class="keywordflow">case</span> BuiltinType::LongLong:</div>
+<div class="line"><a name="l00325"></a><span class="lineno">  325</span>             <span class="keywordflow">return</span> T == C.<a class="code" href="classclang_1_1ASTContext.html#ab61a96bf1fc99d696d00eefe6104ea70">UnsignedLongLongTy</a>;</div>
+<div class="line"><a name="l00326"></a><span class="lineno">  326</span>           <span class="keywordflow">case</span> BuiltinType::ULongLong:</div>
+<div class="line"><a name="l00327"></a><span class="lineno">  327</span>             <span class="keywordflow">return</span> T == C.<a class="code" href="classclang_1_1ASTContext.html#adca2e7646f51ee1e280cfad7b108bc60">LongLongTy</a>;</div>
+<div class="line"><a name="l00328"></a><span class="lineno">  328</span>         }</div>
+<div class="line"><a name="l00329"></a><span class="lineno">  329</span>       <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00330"></a><span class="lineno">  330</span>     }</div>
+<div class="line"><a name="l00331"></a><span class="lineno">  331</span> </div>
+<div class="line"><a name="l00332"></a><span class="lineno">  332</span>     <span class="keywordflow">case</span> CStrTy: {</div>
+<div class="line"><a name="l00333"></a><span class="lineno">  333</span>       <span class="keyword">const</span> <a class="code" href="classclang_1_1PointerType.html">PointerType</a> *PT = argTy-><a class="code" href="classclang_1_1Type.html#a12103ea8bee9506930287bab68a08569">getAs</a><<a class="code" href="classclang_1_1PointerType.html">PointerType</a>>();</div>
+<div class="line"><a name="l00334"></a><span class="lineno">  334</span>       <span class="keywordflow">if</span> (!PT)</div>
+<div class="line"><a name="l00335"></a><span class="lineno">  335</span>         <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00336"></a><span class="lineno">  336</span>       <a class="code" href="classclang_1_1QualType.html">QualType</a> pointeeTy = PT-><a class="code" href="classclang_1_1PointerType.html#a3d0af079431148f7da7e2c400052cc66">getPointeeType</a>();</div>
+<div class="line"><a name="l00337"></a><span class="lineno">  337</span>       <span class="keywordflow">if</span> (<span class="keyword">const</span> <a class="code" href="classclang_1_1BuiltinType.html">BuiltinType</a> *BT = pointeeTy-><a class="code" href="classclang_1_1Type.html#a12103ea8bee9506930287bab68a08569">getAs</a><<a class="code" href="classclang_1_1BuiltinType.html">BuiltinType</a>>())</div>
+<div class="line"><a name="l00338"></a><span class="lineno">  338</span>         <span class="keywordflow">switch</span> (BT->getKind()) {</div>
+<div class="line"><a name="l00339"></a><span class="lineno">  339</span>           <span class="keywordflow">case</span> BuiltinType::Void:</div>
+<div class="line"><a name="l00340"></a><span class="lineno">  340</span>           <span class="keywordflow">case</span> BuiltinType::Char_U:</div>
+<div class="line"><a name="l00341"></a><span class="lineno">  341</span>           <span class="keywordflow">case</span> BuiltinType::UChar:</div>
+<div class="line"><a name="l00342"></a><span class="lineno">  342</span>           <span class="keywordflow">case</span> BuiltinType::Char_S:</div>
+<div class="line"><a name="l00343"></a><span class="lineno">  343</span>           <span class="keywordflow">case</span> BuiltinType::SChar:</div>
+<div class="line"><a name="l00344"></a><span class="lineno">  344</span>             <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00345"></a><span class="lineno">  345</span>           <span class="keywordflow">default</span>:</div>
+<div class="line"><a name="l00346"></a><span class="lineno">  346</span>             <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00347"></a><span class="lineno">  347</span>         }</div>
+<div class="line"><a name="l00348"></a><span class="lineno">  348</span> </div>
+<div class="line"><a name="l00349"></a><span class="lineno">  349</span>       <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00350"></a><span class="lineno">  350</span>     }</div>
+<div class="line"><a name="l00351"></a><span class="lineno">  351</span> </div>
+<div class="line"><a name="l00352"></a><span class="lineno">  352</span>     <span class="keywordflow">case</span> WCStrTy: {</div>
+<div class="line"><a name="l00353"></a><span class="lineno">  353</span>       <span class="keyword">const</span> <a class="code" href="classclang_1_1PointerType.html">PointerType</a> *PT = argTy-><a class="code" href="classclang_1_1Type.html#a12103ea8bee9506930287bab68a08569">getAs</a><<a class="code" href="classclang_1_1PointerType.html">PointerType</a>>();</div>
+<div class="line"><a name="l00354"></a><span class="lineno">  354</span>       <span class="keywordflow">if</span> (!PT)</div>
+<div class="line"><a name="l00355"></a><span class="lineno">  355</span>         <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00356"></a><span class="lineno">  356</span>       <a class="code" href="classclang_1_1QualType.html">QualType</a> pointeeTy =</div>
+<div class="line"><a name="l00357"></a><span class="lineno">  357</span>         C.<a class="code" href="classclang_1_1ASTContext.html#a7e70bb7eebf01548a0cab752e390ba37" title="Return the canonical (structural) type corresponding to the specified potentially non-canonical type ...">getCanonicalType</a>(PT-><a class="code" href="classclang_1_1PointerType.html#a3d0af079431148f7da7e2c400052cc66">getPointeeType</a>()).getUnqualifiedType();</div>
+<div class="line"><a name="l00358"></a><span class="lineno">  358</span>       <span class="keywordflow">return</span> pointeeTy == C.<a class="code" href="classclang_1_1ASTContext.html#af57de277fc43b9496acfac201da19c37" title="Return the type of wide characters. In C++, this returns the unique wchar_t type. In C99...">getWideCharType</a>();</div>
+<div class="line"><a name="l00359"></a><span class="lineno">  359</span>     }</div>
+<div class="line"><a name="l00360"></a><span class="lineno">  360</span>     </div>
+<div class="line"><a name="l00361"></a><span class="lineno">  361</span>     <span class="keywordflow">case</span> WIntTy: {</div>
+<div class="line"><a name="l00362"></a><span class="lineno">  362</span>       </div>
+<div class="line"><a name="l00363"></a><span class="lineno">  363</span>       <a class="code" href="classclang_1_1QualType.html">QualType</a> PromoArg = </div>
+<div class="line"><a name="l00364"></a><span class="lineno">  364</span>         argTy-><a class="code" href="classclang_1_1Type.html#a93646db2ec9bee65a487eb0de943aac5" title="More type predicates useful for type checking/promotion.">isPromotableIntegerType</a>()</div>
+<div class="line"><a name="l00365"></a><span class="lineno">  365</span>           ? C.<a class="code" href="classclang_1_1ASTContext.html#af9e92eecbebef4f85cfeb6e9f7058e61" title="Return the type that PromotableType will promote to: C99 6.3.1.1p2, assuming that PromotableType is a...">getPromotedIntegerType</a>(argTy) : argTy;</div>
+<div class="line"><a name="l00366"></a><span class="lineno">  366</span>       </div>
+<div class="line"><a name="l00367"></a><span class="lineno">  367</span>       <a class="code" href="classclang_1_1QualType.html">QualType</a> WInt = C.<a class="code" href="classclang_1_1ASTContext.html#a7e70bb7eebf01548a0cab752e390ba37" title="Return the canonical (structural) type corresponding to the specified potentially non-canonical type ...">getCanonicalType</a>(C.<a class="code" href="classclang_1_1ASTContext.html#aaec43779793b202d08e56515e004b0c1" title="In C99, this returns a type compatible with the type defined in <stddef.h> as defined by the target...">getWIntType</a>()).getUnqualifiedType();</div>
+<div class="line"><a name="l00368"></a><span class="lineno">  368</span>       PromoArg = C.<a class="code" href="classclang_1_1ASTContext.html#a7e70bb7eebf01548a0cab752e390ba37" title="Return the canonical (structural) type corresponding to the specified potentially non-canonical type ...">getCanonicalType</a>(PromoArg).<a class="code" href="classclang_1_1CanQual.html#af48a042eb252e80347f11899625ca0dc" title="Retrieve the unqualified form of this type.">getUnqualifiedType</a>();</div>
+<div class="line"><a name="l00369"></a><span class="lineno">  369</span>       </div>
+<div class="line"><a name="l00370"></a><span class="lineno">  370</span>       <span class="comment">// If the promoted argument is the corresponding signed type of the</span></div>
+<div class="line"><a name="l00371"></a><span class="lineno">  371</span>       <span class="comment">// wint_t type, then it should match.</span></div>
+<div class="line"><a name="l00372"></a><span class="lineno">  372</span>       <span class="keywordflow">if</span> (PromoArg-><a class="code" href="classclang_1_1Type.html#a63c57da9e0790bd606480927192498be" title="Determine whether this type has an signed integer representation of some sort, e.g., it is an signed integer type or a vector.">hasSignedIntegerRepresentation</a>() &&</div>
+<div class="line"><a name="l00373"></a><span class="lineno">  373</span>           C.<a class="code" href="classclang_1_1ASTContext.html#aef86a15ef8295931ee66295fcf5de8ea">getCorrespondingUnsignedType</a>(PromoArg) == WInt)</div>
+<div class="line"><a name="l00374"></a><span class="lineno">  374</span>         <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00375"></a><span class="lineno">  375</span> </div>
+<div class="line"><a name="l00376"></a><span class="lineno">  376</span>       <span class="keywordflow">return</span> WInt == PromoArg;</div>
+<div class="line"><a name="l00377"></a><span class="lineno">  377</span>     }</div>
+<div class="line"><a name="l00378"></a><span class="lineno">  378</span> </div>
+<div class="line"><a name="l00379"></a><span class="lineno">  379</span>     <span class="keywordflow">case</span> CPointerTy:</div>
+<div class="line"><a name="l00380"></a><span class="lineno">  380</span>       <span class="keywordflow">return</span> argTy-><a class="code" href="classclang_1_1Type.html#a1c0038a55083ee0a292a020038ee04d8">isPointerType</a>() || argTy-><a class="code" href="classclang_1_1Type.html#aa9be9c3ceec53da8edbbb86bbf895fff">isObjCObjectPointerType</a>() ||</div>
+<div class="line"><a name="l00381"></a><span class="lineno">  381</span>              argTy-><a class="code" href="classclang_1_1Type.html#ad6cd1a04cac76bfb304bbc02bf23a9bb">isBlockPointerType</a>() || argTy-><a class="code" href="classclang_1_1Type.html#ac5e1b697b8baa513accaac2f0b1307b9">isNullPtrType</a>();</div>
+<div class="line"><a name="l00382"></a><span class="lineno">  382</span> </div>
+<div class="line"><a name="l00383"></a><span class="lineno">  383</span>     <span class="keywordflow">case</span> ObjCPointerTy: {</div>
+<div class="line"><a name="l00384"></a><span class="lineno">  384</span>       <span class="keywordflow">if</span> (argTy-><a class="code" href="classclang_1_1Type.html#a12103ea8bee9506930287bab68a08569">getAs</a><<a class="code" href="classclang_1_1ObjCObjectPointerType.html">ObjCObjectPointerType</a>>() ||</div>
+<div class="line"><a name="l00385"></a><span class="lineno">  385</span>           argTy-><a class="code" href="classclang_1_1Type.html#a12103ea8bee9506930287bab68a08569">getAs</a><<a class="code" href="classclang_1_1BlockPointerType.html">BlockPointerType</a>>())</div>
+<div class="line"><a name="l00386"></a><span class="lineno">  386</span>         <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00387"></a><span class="lineno">  387</span>       </div>
+<div class="line"><a name="l00388"></a><span class="lineno">  388</span>       <span class="comment">// Handle implicit toll-free bridging.</span></div>
+<div class="line"><a name="l00389"></a><span class="lineno">  389</span>       <span class="keywordflow">if</span> (<span class="keyword">const</span> <a class="code" href="classclang_1_1PointerType.html">PointerType</a> *PT = argTy-><a class="code" href="classclang_1_1Type.html#a12103ea8bee9506930287bab68a08569">getAs</a><<a class="code" href="classclang_1_1PointerType.html">PointerType</a>>()) {</div>
+<div class="line"><a name="l00390"></a><span class="lineno">  390</span>         <span class="comment">// Things such as CFTypeRef are really just opaque pointers</span></div>
+<div class="line"><a name="l00391"></a><span class="lineno">  391</span>         <span class="comment">// to C structs representing CF types that can often be bridged</span></div>
+<div class="line"><a name="l00392"></a><span class="lineno">  392</span>         <span class="comment">// to Objective-C objects.  Since the compiler doesn't know which</span></div>
+<div class="line"><a name="l00393"></a><span class="lineno">  393</span>         <span class="comment">// structs can be toll-free bridged, we just accept them all.</span></div>
+<div class="line"><a name="l00394"></a><span class="lineno">  394</span>         <a class="code" href="classclang_1_1QualType.html">QualType</a> pointee = PT-><a class="code" href="classclang_1_1Type.html#a3a0edf987679f04072a1243b6118add1">getPointeeType</a>();</div>
+<div class="line"><a name="l00395"></a><span class="lineno">  395</span>         <span class="keywordflow">if</span> (pointee-><a class="code" href="classclang_1_1Type.html#a87c0b7d631156eaba036eccc56fa70b3">getAsStructureType</a>() || pointee-><a class="code" href="classclang_1_1Type.html#a0ee6d74a089fe24d755d9cfd8bceef3f">isVoidType</a>())</div>
+<div class="line"><a name="l00396"></a><span class="lineno">  396</span>           <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00397"></a><span class="lineno">  397</span>       }</div>
+<div class="line"><a name="l00398"></a><span class="lineno">  398</span>       <span class="keywordflow">return</span> <span class="keyword">false</span>;      </div>
+<div class="line"><a name="l00399"></a><span class="lineno">  399</span>     }</div>
+<div class="line"><a name="l00400"></a><span class="lineno">  400</span>   }</div>
+<div class="line"><a name="l00401"></a><span class="lineno">  401</span> </div>
+<div class="line"><a name="l00402"></a><span class="lineno">  402</span>   llvm_unreachable(<span class="stringliteral">"Invalid ArgType Kind!"</span>);</div>
+<div class="line"><a name="l00403"></a><span class="lineno">  403</span> }</div>
+<div class="line"><a name="l00404"></a><span class="lineno">  404</span> </div>
+<div class="line"><a name="l00405"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1ArgType.html#a6e4e2b82bb09159f2a0c7d0ff042a64a">  405</a></span> <a class="code" href="classclang_1_1QualType.html">QualType</a> ArgType::getRepresentativeType(<a class="code" href="classclang_1_1ASTContext.html" title="Holds long-lived AST nodes (such as types and decls) that can be referred to throughout the semantic ...">ASTContext</a> &C)<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00406"></a><span class="lineno">  406</span>   <a class="code" href="classclang_1_1QualType.html">QualType</a> Res;</div>
+<div class="line"><a name="l00407"></a><span class="lineno">  407</span>   <span class="keywordflow">switch</span> (K) {</div>
+<div class="line"><a name="l00408"></a><span class="lineno">  408</span>     <span class="keywordflow">case</span> InvalidTy:</div>
+<div class="line"><a name="l00409"></a><span class="lineno">  409</span>       llvm_unreachable(<span class="stringliteral">"No representative type for Invalid ArgType"</span>);</div>
+<div class="line"><a name="l00410"></a><span class="lineno">  410</span>     <span class="keywordflow">case</span> UnknownTy:</div>
+<div class="line"><a name="l00411"></a><span class="lineno">  411</span>       llvm_unreachable(<span class="stringliteral">"No representative type for Unknown ArgType"</span>);</div>
+<div class="line"><a name="l00412"></a><span class="lineno">  412</span>     <span class="keywordflow">case</span> AnyCharTy:</div>
+<div class="line"><a name="l00413"></a><span class="lineno">  413</span>       Res = C.<a class="code" href="classclang_1_1ASTContext.html#a80ed5a736a74c76bbbd66b90821d1689">CharTy</a>;</div>
+<div class="line"><a name="l00414"></a><span class="lineno">  414</span>       <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00415"></a><span class="lineno">  415</span>     <span class="keywordflow">case</span> SpecificTy:</div>
+<div class="line"><a name="l00416"></a><span class="lineno">  416</span>       Res = T;</div>
+<div class="line"><a name="l00417"></a><span class="lineno">  417</span>       <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00418"></a><span class="lineno">  418</span>     <span class="keywordflow">case</span> CStrTy:</div>
+<div class="line"><a name="l00419"></a><span class="lineno">  419</span>       Res = C.<a class="code" href="classclang_1_1ASTContext.html#a3574cad49cba0fc48ab7b4c953e7e31e" title="Return the uniqued reference to the type for a pointer to the specified type.">getPointerType</a>(C.<a class="code" href="classclang_1_1ASTContext.html#a80ed5a736a74c76bbbd66b90821d1689">CharTy</a>);</div>
+<div class="line"><a name="l00420"></a><span class="lineno">  420</span>       <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00421"></a><span class="lineno">  421</span>     <span class="keywordflow">case</span> WCStrTy:</div>
+<div class="line"><a name="l00422"></a><span class="lineno">  422</span>       Res = C.<a class="code" href="classclang_1_1ASTContext.html#a3574cad49cba0fc48ab7b4c953e7e31e" title="Return the uniqued reference to the type for a pointer to the specified type.">getPointerType</a>(C.<a class="code" href="classclang_1_1ASTContext.html#af57de277fc43b9496acfac201da19c37" title="Return the type of wide characters. In C++, this returns the unique wchar_t type. In C99...">getWideCharType</a>());</div>
+<div class="line"><a name="l00423"></a><span class="lineno">  423</span>       <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00424"></a><span class="lineno">  424</span>     <span class="keywordflow">case</span> ObjCPointerTy:</div>
+<div class="line"><a name="l00425"></a><span class="lineno">  425</span>       Res = C.<a class="code" href="classclang_1_1ASTContext.html#a638544bdf0734f38ef4d348e5f24a790">ObjCBuiltinIdTy</a>;</div>
+<div class="line"><a name="l00426"></a><span class="lineno">  426</span>       <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00427"></a><span class="lineno">  427</span>     <span class="keywordflow">case</span> CPointerTy:</div>
+<div class="line"><a name="l00428"></a><span class="lineno">  428</span>       Res = C.<a class="code" href="classclang_1_1ASTContext.html#a485732164c40553bb323c58f5e8bf7a7">VoidPtrTy</a>;</div>
+<div class="line"><a name="l00429"></a><span class="lineno">  429</span>       <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00430"></a><span class="lineno">  430</span>     <span class="keywordflow">case</span> WIntTy: {</div>
+<div class="line"><a name="l00431"></a><span class="lineno">  431</span>       Res = C.<a class="code" href="classclang_1_1ASTContext.html#aaec43779793b202d08e56515e004b0c1" title="In C99, this returns a type compatible with the type defined in <stddef.h> as defined by the target...">getWIntType</a>();</div>
+<div class="line"><a name="l00432"></a><span class="lineno">  432</span>       <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00433"></a><span class="lineno">  433</span>     }</div>
+<div class="line"><a name="l00434"></a><span class="lineno">  434</span>   }</div>
+<div class="line"><a name="l00435"></a><span class="lineno">  435</span> </div>
+<div class="line"><a name="l00436"></a><span class="lineno">  436</span>   <span class="keywordflow">if</span> (Ptr)</div>
+<div class="line"><a name="l00437"></a><span class="lineno">  437</span>     Res = C.<a class="code" href="classclang_1_1ASTContext.html#a3574cad49cba0fc48ab7b4c953e7e31e" title="Return the uniqued reference to the type for a pointer to the specified type.">getPointerType</a>(Res);</div>
+<div class="line"><a name="l00438"></a><span class="lineno">  438</span>   <span class="keywordflow">return</span> Res;</div>
+<div class="line"><a name="l00439"></a><span class="lineno">  439</span> }</div>
+<div class="line"><a name="l00440"></a><span class="lineno">  440</span> </div>
+<div class="line"><a name="l00441"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1ArgType.html#a724e8878d893aad91cc883bffa539c59">  441</a></span> std::string ArgType::getRepresentativeTypeName(<a class="code" href="classclang_1_1ASTContext.html" title="Holds long-lived AST nodes (such as types and decls) that can be referred to throughout the semantic ...">ASTContext</a> &C)<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00442"></a><span class="lineno">  442</span>   std::string <a class="code" href="AnalysisBasedWarnings_8cpp.html#a33dc45a03958a0bf07b5da2dec4db648">S</a> = getRepresentativeType(C).getAsString();</div>
+<div class="line"><a name="l00443"></a><span class="lineno">  443</span> </div>
+<div class="line"><a name="l00444"></a><span class="lineno">  444</span>   std::string Alias;</div>
+<div class="line"><a name="l00445"></a><span class="lineno">  445</span>   <span class="keywordflow">if</span> (Name) {</div>
+<div class="line"><a name="l00446"></a><span class="lineno">  446</span>     <span class="comment">// Use a specific name for this type, e.g. "size_t".</span></div>
+<div class="line"><a name="l00447"></a><span class="lineno">  447</span>     Alias = Name;</div>
+<div class="line"><a name="l00448"></a><span class="lineno">  448</span>     <span class="keywordflow">if</span> (Ptr) {</div>
+<div class="line"><a name="l00449"></a><span class="lineno">  449</span>       <span class="comment">// If ArgType is actually a pointer to T, append an asterisk.</span></div>
+<div class="line"><a name="l00450"></a><span class="lineno">  450</span>       Alias += (Alias[Alias.size()-1] == <span class="charliteral">'*'</span>) ? <span class="stringliteral">"*"</span> : <span class="stringliteral">" *"</span>;</div>
+<div class="line"><a name="l00451"></a><span class="lineno">  451</span>     }</div>
+<div class="line"><a name="l00452"></a><span class="lineno">  452</span>     <span class="comment">// If Alias is the same as the underlying type, e.g. wchar_t, then drop it.</span></div>
+<div class="line"><a name="l00453"></a><span class="lineno">  453</span>     <span class="keywordflow">if</span> (S == Alias)</div>
+<div class="line"><a name="l00454"></a><span class="lineno">  454</span>       Alias.clear();</div>
+<div class="line"><a name="l00455"></a><span class="lineno">  455</span>   }</div>
+<div class="line"><a name="l00456"></a><span class="lineno">  456</span> </div>
+<div class="line"><a name="l00457"></a><span class="lineno">  457</span>   <span class="keywordflow">if</span> (!Alias.empty())</div>
+<div class="line"><a name="l00458"></a><span class="lineno">  458</span>     <span class="keywordflow">return</span> std::string(<span class="stringliteral">"'"</span>) + Alias + <span class="stringliteral">"' (aka '"</span> + S + <span class="stringliteral">"')"</span>;</div>
+<div class="line"><a name="l00459"></a><span class="lineno">  459</span>   <span class="keywordflow">return</span> std::string(<span class="stringliteral">"'"</span>) + S + <span class="stringliteral">"'"</span>;</div>
+<div class="line"><a name="l00460"></a><span class="lineno">  460</span> }</div>
+<div class="line"><a name="l00461"></a><span class="lineno">  461</span> </div>
+<div class="line"><a name="l00462"></a><span class="lineno">  462</span> </div>
+<div class="line"><a name="l00463"></a><span class="lineno">  463</span> <span class="comment">//===----------------------------------------------------------------------===//</span></div>
+<div class="line"><a name="l00464"></a><span class="lineno">  464</span> <span class="comment">// Methods on OptionalAmount.</span></div>
+<div class="line"><a name="l00465"></a><span class="lineno">  465</span> <span class="comment">//===----------------------------------------------------------------------===//</span></div>
+<div class="line"><a name="l00466"></a><span class="lineno">  466</span> </div>
+<div class="line"><a name="l00467"></a><span class="lineno">  467</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ArgType.html">ArgType</a></div>
+<div class="line"><a name="l00468"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1OptionalAmount.html#a1cb0f01d65cbf8334a4e9cc26ee502fa">  468</a></span> <a class="code" href="classclang_1_1analyze__format__string_1_1OptionalAmount.html#a1cb0f01d65cbf8334a4e9cc26ee502fa">analyze_format_string::OptionalAmount::getArgType</a>(<a class="code" href="classclang_1_1ASTContext.html" title="Holds long-lived AST nodes (such as types and decls) that can be referred to throughout the semantic ...">ASTContext</a> &Ctx)<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00469"></a><span class="lineno">  469</span>   <span class="keywordflow">return</span> Ctx.<a class="code" href="classclang_1_1ASTContext.html#a873a1148a8ffe184f0e5bd27bf90c0dc">IntTy</a>;</div>
+<div class="line"><a name="l00470"></a><span class="lineno">  470</span> }</div>
+<div class="line"><a name="l00471"></a><span class="lineno">  471</span> </div>
+<div class="line"><a name="l00472"></a><span class="lineno">  472</span> <span class="comment">//===----------------------------------------------------------------------===//</span></div>
+<div class="line"><a name="l00473"></a><span class="lineno">  473</span> <span class="comment">// Methods on LengthModifier.</span></div>
+<div class="line"><a name="l00474"></a><span class="lineno">  474</span> <span class="comment">//===----------------------------------------------------------------------===//</span></div>
+<div class="line"><a name="l00475"></a><span class="lineno">  475</span> </div>
+<div class="line"><a name="l00476"></a><span class="lineno">  476</span> <span class="keyword">const</span> <span class="keywordtype">char</span> *</div>
+<div class="line"><a name="l00477"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#ae955ef620b2e96e01cb727b80a8e046d">  477</a></span> <a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#ae955ef620b2e96e01cb727b80a8e046d">analyze_format_string::LengthModifier::toString</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00478"></a><span class="lineno">  478</span>   <span class="keywordflow">switch</span> (<a class="code" href="namespaceclang_1_1diag.html#ab2f7277bc45b970f4b9631e0617ff02c" title="All of the diagnostics that can be emitted by the frontend.">kind</a>) {</div>
+<div class="line"><a name="l00479"></a><span class="lineno">  479</span>   <span class="keywordflow">case</span> AsChar:</div>
+<div class="line"><a name="l00480"></a><span class="lineno">  480</span>     <span class="keywordflow">return</span> <span class="stringliteral">"hh"</span>;</div>
+<div class="line"><a name="l00481"></a><span class="lineno">  481</span>   <span class="keywordflow">case</span> AsShort:</div>
+<div class="line"><a name="l00482"></a><span class="lineno">  482</span>     <span class="keywordflow">return</span> <span class="stringliteral">"h"</span>;</div>
+<div class="line"><a name="l00483"></a><span class="lineno">  483</span>   <span class="keywordflow">case</span> AsLong: <span class="comment">// or AsWideChar</span></div>
+<div class="line"><a name="l00484"></a><span class="lineno">  484</span>     <span class="keywordflow">return</span> <span class="stringliteral">"l"</span>;</div>
+<div class="line"><a name="l00485"></a><span class="lineno">  485</span>   <span class="keywordflow">case</span> AsLongLong:</div>
+<div class="line"><a name="l00486"></a><span class="lineno">  486</span>     <span class="keywordflow">return</span> <span class="stringliteral">"ll"</span>;</div>
+<div class="line"><a name="l00487"></a><span class="lineno">  487</span>   <span class="keywordflow">case</span> AsQuad:</div>
+<div class="line"><a name="l00488"></a><span class="lineno">  488</span>     <span class="keywordflow">return</span> <span class="stringliteral">"q"</span>;</div>
+<div class="line"><a name="l00489"></a><span class="lineno">  489</span>   <span class="keywordflow">case</span> AsIntMax:</div>
+<div class="line"><a name="l00490"></a><span class="lineno">  490</span>     <span class="keywordflow">return</span> <span class="stringliteral">"j"</span>;</div>
+<div class="line"><a name="l00491"></a><span class="lineno">  491</span>   <span class="keywordflow">case</span> AsSizeT:</div>
+<div class="line"><a name="l00492"></a><span class="lineno">  492</span>     <span class="keywordflow">return</span> <span class="stringliteral">"z"</span>;</div>
+<div class="line"><a name="l00493"></a><span class="lineno">  493</span>   <span class="keywordflow">case</span> AsPtrDiff:</div>
+<div class="line"><a name="l00494"></a><span class="lineno">  494</span>     <span class="keywordflow">return</span> <span class="stringliteral">"t"</span>;</div>
+<div class="line"><a name="l00495"></a><span class="lineno">  495</span>   <span class="keywordflow">case</span> AsInt32:</div>
+<div class="line"><a name="l00496"></a><span class="lineno">  496</span>     <span class="keywordflow">return</span> <span class="stringliteral">"I32"</span>;</div>
+<div class="line"><a name="l00497"></a><span class="lineno">  497</span>   <span class="keywordflow">case</span> AsInt3264:</div>
+<div class="line"><a name="l00498"></a><span class="lineno">  498</span>     <span class="keywordflow">return</span> <span class="stringliteral">"I"</span>;</div>
+<div class="line"><a name="l00499"></a><span class="lineno">  499</span>   <span class="keywordflow">case</span> AsInt64:</div>
+<div class="line"><a name="l00500"></a><span class="lineno">  500</span>     <span class="keywordflow">return</span> <span class="stringliteral">"I64"</span>;</div>
+<div class="line"><a name="l00501"></a><span class="lineno">  501</span>   <span class="keywordflow">case</span> AsLongDouble:</div>
+<div class="line"><a name="l00502"></a><span class="lineno">  502</span>     <span class="keywordflow">return</span> <span class="stringliteral">"L"</span>;</div>
+<div class="line"><a name="l00503"></a><span class="lineno">  503</span>   <span class="keywordflow">case</span> AsAllocate:</div>
+<div class="line"><a name="l00504"></a><span class="lineno">  504</span>     <span class="keywordflow">return</span> <span class="stringliteral">"a"</span>;</div>
+<div class="line"><a name="l00505"></a><span class="lineno">  505</span>   <span class="keywordflow">case</span> AsMAllocate:</div>
+<div class="line"><a name="l00506"></a><span class="lineno">  506</span>     <span class="keywordflow">return</span> <span class="stringliteral">"m"</span>;</div>
+<div class="line"><a name="l00507"></a><span class="lineno">  507</span>   <span class="keywordflow">case</span> None:</div>
+<div class="line"><a name="l00508"></a><span class="lineno">  508</span>     <span class="keywordflow">return</span> <span class="stringliteral">""</span>;</div>
+<div class="line"><a name="l00509"></a><span class="lineno">  509</span>   }</div>
+<div class="line"><a name="l00510"></a><span class="lineno">  510</span>   <span class="keywordflow">return</span> <a class="code" href="stddef_8h.html#a070d2ce7b6bb7e5c05602aa8c308d0c4">NULL</a>;</div>
+<div class="line"><a name="l00511"></a><span class="lineno">  511</span> }</div>
+<div class="line"><a name="l00512"></a><span class="lineno">  512</span> </div>
+<div class="line"><a name="l00513"></a><span class="lineno">  513</span> <span class="comment">//===----------------------------------------------------------------------===//</span></div>
+<div class="line"><a name="l00514"></a><span class="lineno">  514</span> <span class="comment">// Methods on ConversionSpecifier.</span></div>
+<div class="line"><a name="l00515"></a><span class="lineno">  515</span> <span class="comment">//===----------------------------------------------------------------------===//</span></div>
+<div class="line"><a name="l00516"></a><span class="lineno">  516</span> </div>
+<div class="line"><a name="l00517"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a15188659e666ceed4dc80d9712750bcf">  517</a></span> <span class="keyword">const</span> <span class="keywordtype">char</span> *<a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a15188659e666ceed4dc80d9712750bcf">ConversionSpecifier::toString</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00518"></a><span class="lineno">  518</span>   <span class="keywordflow">switch</span> (<a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a421d9c7e99f13006a269b3eafaa38801">kind</a>) {</div>
+<div class="line"><a name="l00519"></a><span class="lineno">  519</span>   <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1aa718f7d4a0e5d8d903f30acbb91e179c">dArg</a>: <span class="keywordflow">return</span> <span class="stringliteral">"d"</span>;</div>
+<div class="line"><a name="l00520"></a><span class="lineno">  520</span>   <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1ab1bdb2a7e55f254fb7543d15443d0ef4">DArg</a>: <span class="keywordflow">return</span> <span class="stringliteral">"D"</span>;</div>
+<div class="line"><a name="l00521"></a><span class="lineno">  521</span>   <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a4e6027e3aea8ed3522591419eb7b124f">iArg</a>: <span class="keywordflow">return</span> <span class="stringliteral">"i"</span>;</div>
+<div class="line"><a name="l00522"></a><span class="lineno">  522</span>   <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1aeea95e9053aa7370633a3a5755348629">oArg</a>: <span class="keywordflow">return</span> <span class="stringliteral">"o"</span>;</div>
+<div class="line"><a name="l00523"></a><span class="lineno">  523</span>   <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1aa09aec6acd7c9ca1774bb3d579a91bef">OArg</a>: <span class="keywordflow">return</span> <span class="stringliteral">"O"</span>;</div>
+<div class="line"><a name="l00524"></a><span class="lineno">  524</span>   <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a275b8377f2e55da5fde6cbaeb8d7c5ee">uArg</a>: <span class="keywordflow">return</span> <span class="stringliteral">"u"</span>;</div>
+<div class="line"><a name="l00525"></a><span class="lineno">  525</span>   <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1ae19e44bba2c6232cebd58adeceffdf07">UArg</a>: <span class="keywordflow">return</span> <span class="stringliteral">"U"</span>;</div>
+<div class="line"><a name="l00526"></a><span class="lineno">  526</span>   <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1ace288a48383643360e259dd3d8111dc6">xArg</a>: <span class="keywordflow">return</span> <span class="stringliteral">"x"</span>;</div>
+<div class="line"><a name="l00527"></a><span class="lineno">  527</span>   <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a9cc747499d63456392a1aaaa415d93a9">XArg</a>: <span class="keywordflow">return</span> <span class="stringliteral">"X"</span>;</div>
+<div class="line"><a name="l00528"></a><span class="lineno">  528</span>   <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a6721002098ae2e8ac30a1ca4cba4b248">fArg</a>: <span class="keywordflow">return</span> <span class="stringliteral">"f"</span>;</div>
+<div class="line"><a name="l00529"></a><span class="lineno">  529</span>   <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a542227391a27a804dcf5e74d697d0f97">FArg</a>: <span class="keywordflow">return</span> <span class="stringliteral">"F"</span>;</div>
+<div class="line"><a name="l00530"></a><span class="lineno">  530</span>   <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a9fe5793ca92b10ae0ae503e86846ece0">eArg</a>: <span class="keywordflow">return</span> <span class="stringliteral">"e"</span>;</div>
+<div class="line"><a name="l00531"></a><span class="lineno">  531</span>   <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1ae80747eded1d90043b3d5ffbd6c63373">EArg</a>: <span class="keywordflow">return</span> <span class="stringliteral">"E"</span>;</div>
+<div class="line"><a name="l00532"></a><span class="lineno">  532</span>   <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a82797b7eeeda3d2511fcb8288bf0d8f2">gArg</a>: <span class="keywordflow">return</span> <span class="stringliteral">"g"</span>;</div>
+<div class="line"><a name="l00533"></a><span class="lineno">  533</span>   <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a69ceb6eb4b535ccb35b9a069d069b63f">GArg</a>: <span class="keywordflow">return</span> <span class="stringliteral">"G"</span>;</div>
+<div class="line"><a name="l00534"></a><span class="lineno">  534</span>   <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a917e205d7abe7cfb4481388cbbf7d24b">aArg</a>: <span class="keywordflow">return</span> <span class="stringliteral">"a"</span>;</div>
+<div class="line"><a name="l00535"></a><span class="lineno">  535</span>   <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1aa4898758cd301f62ca57b9b250708351">AArg</a>: <span class="keywordflow">return</span> <span class="stringliteral">"A"</span>;</div>
+<div class="line"><a name="l00536"></a><span class="lineno">  536</span>   <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a02a4bb9cad84a46cec1d4e46e9e37ef0">cArg</a>: <span class="keywordflow">return</span> <span class="stringliteral">"c"</span>;</div>
+<div class="line"><a name="l00537"></a><span class="lineno">  537</span>   <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1ad14fe138c8f80dc70c46825e01c31777">sArg</a>: <span class="keywordflow">return</span> <span class="stringliteral">"s"</span>;</div>
+<div class="line"><a name="l00538"></a><span class="lineno">  538</span>   <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a11e3cfa42c2e7861a94efa743a90430a">pArg</a>: <span class="keywordflow">return</span> <span class="stringliteral">"p"</span>;</div>
+<div class="line"><a name="l00539"></a><span class="lineno">  539</span>   <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a792fd76e2c595e8cdcfbfa1bfef0e1d3">nArg</a>: <span class="keywordflow">return</span> <span class="stringliteral">"n"</span>;</div>
+<div class="line"><a name="l00540"></a><span class="lineno">  540</span>   <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1aca54f7cd3084cbf423f8044460f379da">PercentArg</a>:  <span class="keywordflow">return</span> <span class="stringliteral">"%"</span>;</div>
+<div class="line"><a name="l00541"></a><span class="lineno">  541</span>   <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1aa35aa4f6642be10b09095a73c0ed9139">ScanListArg</a>: <span class="keywordflow">return</span> <span class="stringliteral">"["</span>;</div>
+<div class="line"><a name="l00542"></a><span class="lineno">  542</span>   <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a205c5b4cb2a9ca10f0a2a1f930f61c6d">InvalidSpecifier</a>: <span class="keywordflow">return</span> <a class="code" href="stddef_8h.html#a070d2ce7b6bb7e5c05602aa8c308d0c4">NULL</a>;</div>
+<div class="line"><a name="l00543"></a><span class="lineno">  543</span> </div>
+<div class="line"><a name="l00544"></a><span class="lineno">  544</span>   <span class="comment">// POSIX unicode extensions.</span></div>
+<div class="line"><a name="l00545"></a><span class="lineno">  545</span>   <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1aa09bfd8130b55ac148da21e0e43fab9f">CArg</a>: <span class="keywordflow">return</span> <span class="stringliteral">"C"</span>;</div>
+<div class="line"><a name="l00546"></a><span class="lineno">  546</span>   <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a160f87b0871365f78394168a94bd9804">SArg</a>: <span class="keywordflow">return</span> <span class="stringliteral">"S"</span>;</div>
+<div class="line"><a name="l00547"></a><span class="lineno">  547</span> </div>
+<div class="line"><a name="l00548"></a><span class="lineno">  548</span>   <span class="comment">// Objective-C specific specifiers.</span></div>
+<div class="line"><a name="l00549"></a><span class="lineno">  549</span>   <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a9967c642b61140076c027233bb9157bf">ObjCObjArg</a>: <span class="keywordflow">return</span> <span class="stringliteral">"@"</span>;</div>
+<div class="line"><a name="l00550"></a><span class="lineno">  550</span> </div>
+<div class="line"><a name="l00551"></a><span class="lineno">  551</span>   <span class="comment">// GlibC specific specifiers.</span></div>
+<div class="line"><a name="l00552"></a><span class="lineno">  552</span>   <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1ad20a241e0e5d50f23740ee2afe07eaa1">PrintErrno</a>: <span class="keywordflow">return</span> <span class="stringliteral">"m"</span>;</div>
+<div class="line"><a name="l00553"></a><span class="lineno">  553</span>   }</div>
+<div class="line"><a name="l00554"></a><span class="lineno">  554</span>   <span class="keywordflow">return</span> <a class="code" href="stddef_8h.html#a070d2ce7b6bb7e5c05602aa8c308d0c4">NULL</a>;</div>
+<div class="line"><a name="l00555"></a><span class="lineno">  555</span> }</div>
+<div class="line"><a name="l00556"></a><span class="lineno">  556</span> </div>
+<div class="line"><a name="l00557"></a><span class="lineno">  557</span> <a class="code" href="classllvm_1_1Optional.html">Optional<ConversionSpecifier></a></div>
+<div class="line"><a name="l00558"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a1e4c2d33f9cff497d42ebf75eb773a09">  558</a></span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a1e4c2d33f9cff497d42ebf75eb773a09">ConversionSpecifier::getStandardSpecifier</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00559"></a><span class="lineno">  559</span>   <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1">ConversionSpecifier::Kind</a> NewKind;</div>
+<div class="line"><a name="l00560"></a><span class="lineno">  560</span>   </div>
+<div class="line"><a name="l00561"></a><span class="lineno">  561</span>   <span class="keywordflow">switch</span> (<a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#aa3b05ff4b64d8dc3e6f78f633fe21eaf">getKind</a>()) {</div>
+<div class="line"><a name="l00562"></a><span class="lineno">  562</span>   <span class="keywordflow">default</span>:</div>
+<div class="line"><a name="l00563"></a><span class="lineno">  563</span>     <span class="keywordflow">return</span> None;</div>
+<div class="line"><a name="l00564"></a><span class="lineno">  564</span>   <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1ab1bdb2a7e55f254fb7543d15443d0ef4">DArg</a>:</div>
+<div class="line"><a name="l00565"></a><span class="lineno">  565</span>     NewKind = <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1aa718f7d4a0e5d8d903f30acbb91e179c">dArg</a>;</div>
+<div class="line"><a name="l00566"></a><span class="lineno">  566</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00567"></a><span class="lineno">  567</span>   <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1ae19e44bba2c6232cebd58adeceffdf07">UArg</a>:</div>
+<div class="line"><a name="l00568"></a><span class="lineno">  568</span>     NewKind = <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a275b8377f2e55da5fde6cbaeb8d7c5ee">uArg</a>;</div>
+<div class="line"><a name="l00569"></a><span class="lineno">  569</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00570"></a><span class="lineno">  570</span>   <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1aa09aec6acd7c9ca1774bb3d579a91bef">OArg</a>:</div>
+<div class="line"><a name="l00571"></a><span class="lineno">  571</span>     NewKind = <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1aeea95e9053aa7370633a3a5755348629">oArg</a>;</div>
+<div class="line"><a name="l00572"></a><span class="lineno">  572</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00573"></a><span class="lineno">  573</span>   }</div>
+<div class="line"><a name="l00574"></a><span class="lineno">  574</span> </div>
+<div class="line"><a name="l00575"></a><span class="lineno">  575</span>   <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html">ConversionSpecifier</a> FixedCS(*<span class="keyword">this</span>);</div>
+<div class="line"><a name="l00576"></a><span class="lineno">  576</span>   FixedCS.<a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a0100f35b80873fe36f4989cd545d34ef">setKind</a>(NewKind);</div>
+<div class="line"><a name="l00577"></a><span class="lineno">  577</span>   <span class="keywordflow">return</span> FixedCS;</div>
+<div class="line"><a name="l00578"></a><span class="lineno">  578</span> }</div>
+<div class="line"><a name="l00579"></a><span class="lineno">  579</span> </div>
+<div class="line"><a name="l00580"></a><span class="lineno">  580</span> <span class="comment">//===----------------------------------------------------------------------===//</span></div>
+<div class="line"><a name="l00581"></a><span class="lineno">  581</span> <span class="comment">// Methods on OptionalAmount.</span></div>
+<div class="line"><a name="l00582"></a><span class="lineno">  582</span> <span class="comment">//===----------------------------------------------------------------------===//</span></div>
+<div class="line"><a name="l00583"></a><span class="lineno">  583</span> </div>
+<div class="line"><a name="l00584"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1OptionalAmount.html#ab35eb56b2a934e0035fe00d98517dbae">  584</a></span> <span class="keywordtype">void</span> <a class="code" href="classclang_1_1analyze__format__string_1_1OptionalAmount.html#ab35eb56b2a934e0035fe00d98517dbae">OptionalAmount::toString</a>(raw_ostream &os)<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00585"></a><span class="lineno">  585</span>   <span class="keywordflow">switch</span> (hs) {</div>
+<div class="line"><a name="l00586"></a><span class="lineno">  586</span>   <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1OptionalAmount.html#af3d4f50f89517fba719fe4c2e4cb4298a9181efb050f56c6193575b414157df03">Invalid</a>:</div>
+<div class="line"><a name="l00587"></a><span class="lineno">  587</span>   <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1OptionalAmount.html#af3d4f50f89517fba719fe4c2e4cb4298ae0c41024f6865fff546bdf050c5d483e">NotSpecified</a>:</div>
+<div class="line"><a name="l00588"></a><span class="lineno">  588</span>     <span class="keywordflow">return</span>;</div>
+<div class="line"><a name="l00589"></a><span class="lineno">  589</span>   <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1OptionalAmount.html#af3d4f50f89517fba719fe4c2e4cb4298a9fb96210254d2e1e8393cfc4712102b0">Arg</a>:</div>
+<div class="line"><a name="l00590"></a><span class="lineno">  590</span>     <span class="keywordflow">if</span> (UsesDotPrefix)</div>
+<div class="line"><a name="l00591"></a><span class="lineno">  591</span>         os << <span class="stringliteral">"."</span>;</div>
+<div class="line"><a name="l00592"></a><span class="lineno">  592</span>     <span class="keywordflow">if</span> (<a class="code" href="classclang_1_1analyze__format__string_1_1OptionalAmount.html#afbd01aec57718260bff092fae5d89d19">usesPositionalArg</a>())</div>
+<div class="line"><a name="l00593"></a><span class="lineno">  593</span>       os << <span class="stringliteral">"*"</span> << <a class="code" href="classclang_1_1analyze__format__string_1_1OptionalAmount.html#a3c90b316a4912520d357555931996b93">getPositionalArgIndex</a>() << <span class="stringliteral">"$"</span>;</div>
+<div class="line"><a name="l00594"></a><span class="lineno">  594</span>     <span class="keywordflow">else</span></div>
+<div class="line"><a name="l00595"></a><span class="lineno">  595</span>       os << <span class="stringliteral">"*"</span>;</div>
+<div class="line"><a name="l00596"></a><span class="lineno">  596</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00597"></a><span class="lineno">  597</span>   <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1OptionalAmount.html#af3d4f50f89517fba719fe4c2e4cb4298abbe52fc4b0f718cac3333891c99953a4">Constant</a>:</div>
+<div class="line"><a name="l00598"></a><span class="lineno">  598</span>     <span class="keywordflow">if</span> (UsesDotPrefix)</div>
+<div class="line"><a name="l00599"></a><span class="lineno">  599</span>         os << <span class="stringliteral">"."</span>;</div>
+<div class="line"><a name="l00600"></a><span class="lineno">  600</span>     os << amt;</div>
+<div class="line"><a name="l00601"></a><span class="lineno">  601</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00602"></a><span class="lineno">  602</span>   }</div>
+<div class="line"><a name="l00603"></a><span class="lineno">  603</span> }</div>
+<div class="line"><a name="l00604"></a><span class="lineno">  604</span> </div>
+<div class="line"><a name="l00605"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1FormatSpecifier.html#a6b0f78cb00669c5bc2ed8c86f180f62d">  605</a></span> <span class="keywordtype">bool</span> <a class="code" href="classclang_1_1analyze__format__string_1_1FormatSpecifier.html#a6b0f78cb00669c5bc2ed8c86f180f62d">FormatSpecifier::hasValidLengthModifier</a>(<span class="keyword">const</span> <a class="code" href="classclang_1_1TargetInfo.html" title="Exposes information about the current target.">TargetInfo</a> &Target)<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00606"></a><span class="lineno">  606</span>   <span class="keywordflow">switch</span> (<a class="code" href="classclang_1_1analyze__format__string_1_1FormatSpecifier.html#a10bbf7d7369792f5fb86f869dae59b45">LM</a>.<a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#a7a664b97549a6fe956519f54d5f2a3b6">getKind</a>()) {</div>
+<div class="line"><a name="l00607"></a><span class="lineno">  607</span>     <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#aff2690c378d9475ad5bf6089d0fd2895ae6f7aa020d3fc3385d8ca62f0955a4eb">LengthModifier::None</a>:</div>
+<div class="line"><a name="l00608"></a><span class="lineno">  608</span>       <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00609"></a><span class="lineno">  609</span>       </div>
+<div class="line"><a name="l00610"></a><span class="lineno">  610</span>     <span class="comment">// Handle most integer flags</span></div>
+<div class="line"><a name="l00611"></a><span class="lineno">  611</span>     <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#aff2690c378d9475ad5bf6089d0fd2895a4e94535d14ded9b0f3acb1d0dd2311e4">LengthModifier::AsChar</a>:</div>
+<div class="line"><a name="l00612"></a><span class="lineno">  612</span>     <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#aff2690c378d9475ad5bf6089d0fd2895aabbeaa4ab5e5c115b8498b50bc0a4964">LengthModifier::AsShort</a>:</div>
+<div class="line"><a name="l00613"></a><span class="lineno">  613</span>     <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#aff2690c378d9475ad5bf6089d0fd2895afdd6ac3f00036867f5713c6d75055b27">LengthModifier::AsLongLong</a>:</div>
+<div class="line"><a name="l00614"></a><span class="lineno">  614</span>     <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#aff2690c378d9475ad5bf6089d0fd2895a8eff55fdd638a6f2774e22669fbe1c6c">LengthModifier::AsQuad</a>:</div>
+<div class="line"><a name="l00615"></a><span class="lineno">  615</span>     <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#aff2690c378d9475ad5bf6089d0fd2895aa4a5df4f98fc3d433f94e3ae2d335c41">LengthModifier::AsIntMax</a>:</div>
+<div class="line"><a name="l00616"></a><span class="lineno">  616</span>     <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#aff2690c378d9475ad5bf6089d0fd2895a8d04c1116705674a286ea41d5b088096">LengthModifier::AsSizeT</a>:</div>
+<div class="line"><a name="l00617"></a><span class="lineno">  617</span>     <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#aff2690c378d9475ad5bf6089d0fd2895ad21eeddcc550ac3295f307ee81db6d09">LengthModifier::AsPtrDiff</a>:</div>
+<div class="line"><a name="l00618"></a><span class="lineno">  618</span>       <span class="keywordflow">switch</span> (<a class="code" href="classclang_1_1analyze__format__string_1_1FormatSpecifier.html#aace736b8c6fb2b53754eaa0b28202197">CS</a>.<a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#aa3b05ff4b64d8dc3e6f78f633fe21eaf">getKind</a>()) {</div>
+<div class="line"><a name="l00619"></a><span class="lineno">  619</span>         <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1aa718f7d4a0e5d8d903f30acbb91e179c">ConversionSpecifier::dArg</a>:</div>
+<div class="line"><a name="l00620"></a><span class="lineno">  620</span>         <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1ab1bdb2a7e55f254fb7543d15443d0ef4">ConversionSpecifier::DArg</a>:</div>
+<div class="line"><a name="l00621"></a><span class="lineno">  621</span>         <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a4e6027e3aea8ed3522591419eb7b124f">ConversionSpecifier::iArg</a>:</div>
+<div class="line"><a name="l00622"></a><span class="lineno">  622</span>         <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1aeea95e9053aa7370633a3a5755348629">ConversionSpecifier::oArg</a>:</div>
+<div class="line"><a name="l00623"></a><span class="lineno">  623</span>         <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1aa09aec6acd7c9ca1774bb3d579a91bef">ConversionSpecifier::OArg</a>:</div>
+<div class="line"><a name="l00624"></a><span class="lineno">  624</span>         <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a275b8377f2e55da5fde6cbaeb8d7c5ee">ConversionSpecifier::uArg</a>:</div>
+<div class="line"><a name="l00625"></a><span class="lineno">  625</span>         <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1ae19e44bba2c6232cebd58adeceffdf07">ConversionSpecifier::UArg</a>:</div>
+<div class="line"><a name="l00626"></a><span class="lineno">  626</span>         <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1ace288a48383643360e259dd3d8111dc6">ConversionSpecifier::xArg</a>:</div>
+<div class="line"><a name="l00627"></a><span class="lineno">  627</span>         <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a9cc747499d63456392a1aaaa415d93a9">ConversionSpecifier::XArg</a>:</div>
+<div class="line"><a name="l00628"></a><span class="lineno">  628</span>         <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a792fd76e2c595e8cdcfbfa1bfef0e1d3">ConversionSpecifier::nArg</a>:</div>
+<div class="line"><a name="l00629"></a><span class="lineno">  629</span>           <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00630"></a><span class="lineno">  630</span>         <span class="keywordflow">default</span>:</div>
+<div class="line"><a name="l00631"></a><span class="lineno">  631</span>           <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00632"></a><span class="lineno">  632</span>       }</div>
+<div class="line"><a name="l00633"></a><span class="lineno">  633</span>       </div>
+<div class="line"><a name="l00634"></a><span class="lineno">  634</span>     <span class="comment">// Handle 'l' flag</span></div>
+<div class="line"><a name="l00635"></a><span class="lineno">  635</span>     <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#aff2690c378d9475ad5bf6089d0fd2895a1ce884f4f99f7be7097e9e822fa6740a">LengthModifier::AsLong</a>:</div>
+<div class="line"><a name="l00636"></a><span class="lineno">  636</span>       <span class="keywordflow">switch</span> (<a class="code" href="classclang_1_1analyze__format__string_1_1FormatSpecifier.html#aace736b8c6fb2b53754eaa0b28202197">CS</a>.<a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#aa3b05ff4b64d8dc3e6f78f633fe21eaf">getKind</a>()) {</div>
+<div class="line"><a name="l00637"></a><span class="lineno">  637</span>         <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1aa718f7d4a0e5d8d903f30acbb91e179c">ConversionSpecifier::dArg</a>:</div>
+<div class="line"><a name="l00638"></a><span class="lineno">  638</span>         <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1ab1bdb2a7e55f254fb7543d15443d0ef4">ConversionSpecifier::DArg</a>:</div>
+<div class="line"><a name="l00639"></a><span class="lineno">  639</span>         <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a4e6027e3aea8ed3522591419eb7b124f">ConversionSpecifier::iArg</a>:</div>
+<div class="line"><a name="l00640"></a><span class="lineno">  640</span>         <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1aeea95e9053aa7370633a3a5755348629">ConversionSpecifier::oArg</a>:</div>
+<div class="line"><a name="l00641"></a><span class="lineno">  641</span>         <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1aa09aec6acd7c9ca1774bb3d579a91bef">ConversionSpecifier::OArg</a>:</div>
+<div class="line"><a name="l00642"></a><span class="lineno">  642</span>         <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a275b8377f2e55da5fde6cbaeb8d7c5ee">ConversionSpecifier::uArg</a>:</div>
+<div class="line"><a name="l00643"></a><span class="lineno">  643</span>         <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1ae19e44bba2c6232cebd58adeceffdf07">ConversionSpecifier::UArg</a>:</div>
+<div class="line"><a name="l00644"></a><span class="lineno">  644</span>         <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1ace288a48383643360e259dd3d8111dc6">ConversionSpecifier::xArg</a>:</div>
+<div class="line"><a name="l00645"></a><span class="lineno">  645</span>         <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a9cc747499d63456392a1aaaa415d93a9">ConversionSpecifier::XArg</a>:</div>
+<div class="line"><a name="l00646"></a><span class="lineno">  646</span>         <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a917e205d7abe7cfb4481388cbbf7d24b">ConversionSpecifier::aArg</a>:</div>
+<div class="line"><a name="l00647"></a><span class="lineno">  647</span>         <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1aa4898758cd301f62ca57b9b250708351">ConversionSpecifier::AArg</a>:</div>
+<div class="line"><a name="l00648"></a><span class="lineno">  648</span>         <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a6721002098ae2e8ac30a1ca4cba4b248">ConversionSpecifier::fArg</a>:</div>
+<div class="line"><a name="l00649"></a><span class="lineno">  649</span>         <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a542227391a27a804dcf5e74d697d0f97">ConversionSpecifier::FArg</a>:</div>
+<div class="line"><a name="l00650"></a><span class="lineno">  650</span>         <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a9fe5793ca92b10ae0ae503e86846ece0">ConversionSpecifier::eArg</a>:</div>
+<div class="line"><a name="l00651"></a><span class="lineno">  651</span>         <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1ae80747eded1d90043b3d5ffbd6c63373">ConversionSpecifier::EArg</a>:</div>
+<div class="line"><a name="l00652"></a><span class="lineno">  652</span>         <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a82797b7eeeda3d2511fcb8288bf0d8f2">ConversionSpecifier::gArg</a>:</div>
+<div class="line"><a name="l00653"></a><span class="lineno">  653</span>         <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a69ceb6eb4b535ccb35b9a069d069b63f">ConversionSpecifier::GArg</a>:</div>
+<div class="line"><a name="l00654"></a><span class="lineno">  654</span>         <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a792fd76e2c595e8cdcfbfa1bfef0e1d3">ConversionSpecifier::nArg</a>:</div>
+<div class="line"><a name="l00655"></a><span class="lineno">  655</span>         <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a02a4bb9cad84a46cec1d4e46e9e37ef0">ConversionSpecifier::cArg</a>:</div>
+<div class="line"><a name="l00656"></a><span class="lineno">  656</span>         <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1ad14fe138c8f80dc70c46825e01c31777">ConversionSpecifier::sArg</a>:</div>
+<div class="line"><a name="l00657"></a><span class="lineno">  657</span>         <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1aa35aa4f6642be10b09095a73c0ed9139">ConversionSpecifier::ScanListArg</a>:</div>
+<div class="line"><a name="l00658"></a><span class="lineno">  658</span>           <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00659"></a><span class="lineno">  659</span>         <span class="keywordflow">default</span>:</div>
+<div class="line"><a name="l00660"></a><span class="lineno">  660</span>           <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00661"></a><span class="lineno">  661</span>       }</div>
+<div class="line"><a name="l00662"></a><span class="lineno">  662</span>       </div>
+<div class="line"><a name="l00663"></a><span class="lineno">  663</span>     <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#aff2690c378d9475ad5bf6089d0fd2895a28f73f795c4bc11c858eb58835924652">LengthModifier::AsLongDouble</a>:</div>
+<div class="line"><a name="l00664"></a><span class="lineno">  664</span>       <span class="keywordflow">switch</span> (<a class="code" href="classclang_1_1analyze__format__string_1_1FormatSpecifier.html#aace736b8c6fb2b53754eaa0b28202197">CS</a>.<a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#aa3b05ff4b64d8dc3e6f78f633fe21eaf">getKind</a>()) {</div>
+<div class="line"><a name="l00665"></a><span class="lineno">  665</span>         <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a917e205d7abe7cfb4481388cbbf7d24b">ConversionSpecifier::aArg</a>:</div>
+<div class="line"><a name="l00666"></a><span class="lineno">  666</span>         <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1aa4898758cd301f62ca57b9b250708351">ConversionSpecifier::AArg</a>:</div>
+<div class="line"><a name="l00667"></a><span class="lineno">  667</span>         <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a6721002098ae2e8ac30a1ca4cba4b248">ConversionSpecifier::fArg</a>:</div>
+<div class="line"><a name="l00668"></a><span class="lineno">  668</span>         <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a542227391a27a804dcf5e74d697d0f97">ConversionSpecifier::FArg</a>:</div>
+<div class="line"><a name="l00669"></a><span class="lineno">  669</span>         <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a9fe5793ca92b10ae0ae503e86846ece0">ConversionSpecifier::eArg</a>:</div>
+<div class="line"><a name="l00670"></a><span class="lineno">  670</span>         <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1ae80747eded1d90043b3d5ffbd6c63373">ConversionSpecifier::EArg</a>:</div>
+<div class="line"><a name="l00671"></a><span class="lineno">  671</span>         <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a82797b7eeeda3d2511fcb8288bf0d8f2">ConversionSpecifier::gArg</a>:</div>
+<div class="line"><a name="l00672"></a><span class="lineno">  672</span>         <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a69ceb6eb4b535ccb35b9a069d069b63f">ConversionSpecifier::GArg</a>:</div>
+<div class="line"><a name="l00673"></a><span class="lineno">  673</span>           <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00674"></a><span class="lineno">  674</span>         <span class="comment">// GNU libc extension.</span></div>
+<div class="line"><a name="l00675"></a><span class="lineno">  675</span>         <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1aa718f7d4a0e5d8d903f30acbb91e179c">ConversionSpecifier::dArg</a>:</div>
+<div class="line"><a name="l00676"></a><span class="lineno">  676</span>         <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a4e6027e3aea8ed3522591419eb7b124f">ConversionSpecifier::iArg</a>:</div>
+<div class="line"><a name="l00677"></a><span class="lineno">  677</span>         <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1aeea95e9053aa7370633a3a5755348629">ConversionSpecifier::oArg</a>:</div>
+<div class="line"><a name="l00678"></a><span class="lineno">  678</span>         <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a275b8377f2e55da5fde6cbaeb8d7c5ee">ConversionSpecifier::uArg</a>:</div>
+<div class="line"><a name="l00679"></a><span class="lineno">  679</span>         <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1ace288a48383643360e259dd3d8111dc6">ConversionSpecifier::xArg</a>:</div>
+<div class="line"><a name="l00680"></a><span class="lineno">  680</span>         <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a9cc747499d63456392a1aaaa415d93a9">ConversionSpecifier::XArg</a>:</div>
+<div class="line"><a name="l00681"></a><span class="lineno">  681</span>           <span class="keywordflow">return</span> !Target.<a class="code" href="classclang_1_1TargetInfo.html#a20f1dc9686f1a537a03975c7603774e7" title="Returns the target triple of the primary target.">getTriple</a>().isOSDarwin() &&</div>
+<div class="line"><a name="l00682"></a><span class="lineno">  682</span>                  !Target.<a class="code" href="classclang_1_1TargetInfo.html#a20f1dc9686f1a537a03975c7603774e7" title="Returns the target triple of the primary target.">getTriple</a>().isOSWindows();</div>
+<div class="line"><a name="l00683"></a><span class="lineno">  683</span>         <span class="keywordflow">default</span>:</div>
+<div class="line"><a name="l00684"></a><span class="lineno">  684</span>           <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00685"></a><span class="lineno">  685</span>       }</div>
+<div class="line"><a name="l00686"></a><span class="lineno">  686</span> </div>
+<div class="line"><a name="l00687"></a><span class="lineno">  687</span>     <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#aff2690c378d9475ad5bf6089d0fd2895a8e3573d0643e9fff4431cdc5f528f857">LengthModifier::AsAllocate</a>:</div>
+<div class="line"><a name="l00688"></a><span class="lineno">  688</span>       <span class="keywordflow">switch</span> (<a class="code" href="classclang_1_1analyze__format__string_1_1FormatSpecifier.html#aace736b8c6fb2b53754eaa0b28202197">CS</a>.<a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#aa3b05ff4b64d8dc3e6f78f633fe21eaf">getKind</a>()) {</div>
+<div class="line"><a name="l00689"></a><span class="lineno">  689</span>         <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1ad14fe138c8f80dc70c46825e01c31777">ConversionSpecifier::sArg</a>:</div>
+<div class="line"><a name="l00690"></a><span class="lineno">  690</span>         <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a160f87b0871365f78394168a94bd9804">ConversionSpecifier::SArg</a>:</div>
+<div class="line"><a name="l00691"></a><span class="lineno">  691</span>         <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1aa35aa4f6642be10b09095a73c0ed9139">ConversionSpecifier::ScanListArg</a>:</div>
+<div class="line"><a name="l00692"></a><span class="lineno">  692</span>           <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00693"></a><span class="lineno">  693</span>         <span class="keywordflow">default</span>:</div>
+<div class="line"><a name="l00694"></a><span class="lineno">  694</span>           <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00695"></a><span class="lineno">  695</span>       }</div>
+<div class="line"><a name="l00696"></a><span class="lineno">  696</span> </div>
+<div class="line"><a name="l00697"></a><span class="lineno">  697</span>     <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#aff2690c378d9475ad5bf6089d0fd2895a0d526133099ab9b15fdfc4424191ffe5">LengthModifier::AsMAllocate</a>:</div>
+<div class="line"><a name="l00698"></a><span class="lineno">  698</span>       <span class="keywordflow">switch</span> (<a class="code" href="classclang_1_1analyze__format__string_1_1FormatSpecifier.html#aace736b8c6fb2b53754eaa0b28202197">CS</a>.<a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#aa3b05ff4b64d8dc3e6f78f633fe21eaf">getKind</a>()) {</div>
+<div class="line"><a name="l00699"></a><span class="lineno">  699</span>         <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a02a4bb9cad84a46cec1d4e46e9e37ef0">ConversionSpecifier::cArg</a>:</div>
+<div class="line"><a name="l00700"></a><span class="lineno">  700</span>         <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1aa09bfd8130b55ac148da21e0e43fab9f">ConversionSpecifier::CArg</a>:</div>
+<div class="line"><a name="l00701"></a><span class="lineno">  701</span>         <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1ad14fe138c8f80dc70c46825e01c31777">ConversionSpecifier::sArg</a>:</div>
+<div class="line"><a name="l00702"></a><span class="lineno">  702</span>         <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a160f87b0871365f78394168a94bd9804">ConversionSpecifier::SArg</a>:</div>
+<div class="line"><a name="l00703"></a><span class="lineno">  703</span>         <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1aa35aa4f6642be10b09095a73c0ed9139">ConversionSpecifier::ScanListArg</a>:</div>
+<div class="line"><a name="l00704"></a><span class="lineno">  704</span>           <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00705"></a><span class="lineno">  705</span>         <span class="keywordflow">default</span>:</div>
+<div class="line"><a name="l00706"></a><span class="lineno">  706</span>           <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00707"></a><span class="lineno">  707</span>       }</div>
+<div class="line"><a name="l00708"></a><span class="lineno">  708</span>     <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#aff2690c378d9475ad5bf6089d0fd2895aba4c17e6a09051abddf190e1e71b1aa7">LengthModifier::AsInt32</a>:</div>
+<div class="line"><a name="l00709"></a><span class="lineno">  709</span>     <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#aff2690c378d9475ad5bf6089d0fd2895a65aa7828dbcdf8d6ea1e0ba383603d78">LengthModifier::AsInt3264</a>:</div>
+<div class="line"><a name="l00710"></a><span class="lineno">  710</span>     <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#aff2690c378d9475ad5bf6089d0fd2895a5d27a5354f13fb2715eebfed546ee303">LengthModifier::AsInt64</a>:</div>
+<div class="line"><a name="l00711"></a><span class="lineno">  711</span>       <span class="keywordflow">switch</span> (<a class="code" href="classclang_1_1analyze__format__string_1_1FormatSpecifier.html#aace736b8c6fb2b53754eaa0b28202197">CS</a>.<a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#aa3b05ff4b64d8dc3e6f78f633fe21eaf">getKind</a>()) {</div>
+<div class="line"><a name="l00712"></a><span class="lineno">  712</span>         <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1aa718f7d4a0e5d8d903f30acbb91e179c">ConversionSpecifier::dArg</a>:</div>
+<div class="line"><a name="l00713"></a><span class="lineno">  713</span>         <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a4e6027e3aea8ed3522591419eb7b124f">ConversionSpecifier::iArg</a>:</div>
+<div class="line"><a name="l00714"></a><span class="lineno">  714</span>         <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1aeea95e9053aa7370633a3a5755348629">ConversionSpecifier::oArg</a>:</div>
+<div class="line"><a name="l00715"></a><span class="lineno">  715</span>         <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a275b8377f2e55da5fde6cbaeb8d7c5ee">ConversionSpecifier::uArg</a>:</div>
+<div class="line"><a name="l00716"></a><span class="lineno">  716</span>         <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1ace288a48383643360e259dd3d8111dc6">ConversionSpecifier::xArg</a>:</div>
+<div class="line"><a name="l00717"></a><span class="lineno">  717</span>         <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a9cc747499d63456392a1aaaa415d93a9">ConversionSpecifier::XArg</a>:</div>
+<div class="line"><a name="l00718"></a><span class="lineno">  718</span>           <span class="keywordflow">return</span> Target.<a class="code" href="classclang_1_1TargetInfo.html#a20f1dc9686f1a537a03975c7603774e7" title="Returns the target triple of the primary target.">getTriple</a>().isOSMSVCRT();</div>
+<div class="line"><a name="l00719"></a><span class="lineno">  719</span>         <span class="keywordflow">default</span>:</div>
+<div class="line"><a name="l00720"></a><span class="lineno">  720</span>           <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00721"></a><span class="lineno">  721</span>       }</div>
+<div class="line"><a name="l00722"></a><span class="lineno">  722</span>   }</div>
+<div class="line"><a name="l00723"></a><span class="lineno">  723</span>   llvm_unreachable(<span class="stringliteral">"Invalid LengthModifier Kind!"</span>);</div>
+<div class="line"><a name="l00724"></a><span class="lineno">  724</span> }</div>
+<div class="line"><a name="l00725"></a><span class="lineno">  725</span> </div>
+<div class="line"><a name="l00726"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1FormatSpecifier.html#a09b0b1de8fa313f6d77b8b18f8049908">  726</a></span> <span class="keywordtype">bool</span> <a class="code" href="classclang_1_1analyze__format__string_1_1FormatSpecifier.html#a09b0b1de8fa313f6d77b8b18f8049908">FormatSpecifier::hasStandardLengthModifier</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00727"></a><span class="lineno">  727</span>   <span class="keywordflow">switch</span> (<a class="code" href="classclang_1_1analyze__format__string_1_1FormatSpecifier.html#a10bbf7d7369792f5fb86f869dae59b45">LM</a>.<a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#a7a664b97549a6fe956519f54d5f2a3b6">getKind</a>()) {</div>
+<div class="line"><a name="l00728"></a><span class="lineno">  728</span>     <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#aff2690c378d9475ad5bf6089d0fd2895ae6f7aa020d3fc3385d8ca62f0955a4eb">LengthModifier::None</a>:</div>
+<div class="line"><a name="l00729"></a><span class="lineno">  729</span>     <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#aff2690c378d9475ad5bf6089d0fd2895a4e94535d14ded9b0f3acb1d0dd2311e4">LengthModifier::AsChar</a>:</div>
+<div class="line"><a name="l00730"></a><span class="lineno">  730</span>     <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#aff2690c378d9475ad5bf6089d0fd2895aabbeaa4ab5e5c115b8498b50bc0a4964">LengthModifier::AsShort</a>:</div>
+<div class="line"><a name="l00731"></a><span class="lineno">  731</span>     <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#aff2690c378d9475ad5bf6089d0fd2895a1ce884f4f99f7be7097e9e822fa6740a">LengthModifier::AsLong</a>:</div>
+<div class="line"><a name="l00732"></a><span class="lineno">  732</span>     <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#aff2690c378d9475ad5bf6089d0fd2895afdd6ac3f00036867f5713c6d75055b27">LengthModifier::AsLongLong</a>:</div>
+<div class="line"><a name="l00733"></a><span class="lineno">  733</span>     <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#aff2690c378d9475ad5bf6089d0fd2895aa4a5df4f98fc3d433f94e3ae2d335c41">LengthModifier::AsIntMax</a>:</div>
+<div class="line"><a name="l00734"></a><span class="lineno">  734</span>     <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#aff2690c378d9475ad5bf6089d0fd2895a8d04c1116705674a286ea41d5b088096">LengthModifier::AsSizeT</a>:</div>
+<div class="line"><a name="l00735"></a><span class="lineno">  735</span>     <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#aff2690c378d9475ad5bf6089d0fd2895ad21eeddcc550ac3295f307ee81db6d09">LengthModifier::AsPtrDiff</a>:</div>
+<div class="line"><a name="l00736"></a><span class="lineno">  736</span>     <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#aff2690c378d9475ad5bf6089d0fd2895a28f73f795c4bc11c858eb58835924652">LengthModifier::AsLongDouble</a>:</div>
+<div class="line"><a name="l00737"></a><span class="lineno">  737</span>       <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00738"></a><span class="lineno">  738</span>     <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#aff2690c378d9475ad5bf6089d0fd2895a8e3573d0643e9fff4431cdc5f528f857">LengthModifier::AsAllocate</a>:</div>
+<div class="line"><a name="l00739"></a><span class="lineno">  739</span>     <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#aff2690c378d9475ad5bf6089d0fd2895a0d526133099ab9b15fdfc4424191ffe5">LengthModifier::AsMAllocate</a>:</div>
+<div class="line"><a name="l00740"></a><span class="lineno">  740</span>     <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#aff2690c378d9475ad5bf6089d0fd2895a8eff55fdd638a6f2774e22669fbe1c6c">LengthModifier::AsQuad</a>:</div>
+<div class="line"><a name="l00741"></a><span class="lineno">  741</span>     <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#aff2690c378d9475ad5bf6089d0fd2895aba4c17e6a09051abddf190e1e71b1aa7">LengthModifier::AsInt32</a>:</div>
+<div class="line"><a name="l00742"></a><span class="lineno">  742</span>     <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#aff2690c378d9475ad5bf6089d0fd2895a65aa7828dbcdf8d6ea1e0ba383603d78">LengthModifier::AsInt3264</a>:</div>
+<div class="line"><a name="l00743"></a><span class="lineno">  743</span>     <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#aff2690c378d9475ad5bf6089d0fd2895a5d27a5354f13fb2715eebfed546ee303">LengthModifier::AsInt64</a>:</div>
+<div class="line"><a name="l00744"></a><span class="lineno">  744</span>       <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00745"></a><span class="lineno">  745</span>   }</div>
+<div class="line"><a name="l00746"></a><span class="lineno">  746</span>   llvm_unreachable(<span class="stringliteral">"Invalid LengthModifier Kind!"</span>);</div>
+<div class="line"><a name="l00747"></a><span class="lineno">  747</span> }</div>
+<div class="line"><a name="l00748"></a><span class="lineno">  748</span> </div>
+<div class="line"><a name="l00749"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1FormatSpecifier.html#ab938beb9519f744884869a3b798f04e1">  749</a></span> <span class="keywordtype">bool</span> <a class="code" href="classclang_1_1analyze__format__string_1_1FormatSpecifier.html#ab938beb9519f744884869a3b798f04e1">FormatSpecifier::hasStandardConversionSpecifier</a>(<span class="keyword">const</span> <a class="code" href="classclang_1_1LangOptions.html" title="Keeps track of the various options that can be enabled, which controls the dialect of C or C++ that i...">LangOptions</a> &LangOpt)<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00750"></a><span class="lineno">  750</span>   <span class="keywordflow">switch</span> (<a class="code" href="classclang_1_1analyze__format__string_1_1FormatSpecifier.html#aace736b8c6fb2b53754eaa0b28202197">CS</a>.<a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#aa3b05ff4b64d8dc3e6f78f633fe21eaf">getKind</a>()) {</div>
+<div class="line"><a name="l00751"></a><span class="lineno">  751</span>     <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a02a4bb9cad84a46cec1d4e46e9e37ef0">ConversionSpecifier::cArg</a>:</div>
+<div class="line"><a name="l00752"></a><span class="lineno">  752</span>     <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1aa718f7d4a0e5d8d903f30acbb91e179c">ConversionSpecifier::dArg</a>:</div>
+<div class="line"><a name="l00753"></a><span class="lineno">  753</span>     <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a4e6027e3aea8ed3522591419eb7b124f">ConversionSpecifier::iArg</a>:</div>
+<div class="line"><a name="l00754"></a><span class="lineno">  754</span>     <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1aeea95e9053aa7370633a3a5755348629">ConversionSpecifier::oArg</a>:</div>
+<div class="line"><a name="l00755"></a><span class="lineno">  755</span>     <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a275b8377f2e55da5fde6cbaeb8d7c5ee">ConversionSpecifier::uArg</a>:</div>
+<div class="line"><a name="l00756"></a><span class="lineno">  756</span>     <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1ace288a48383643360e259dd3d8111dc6">ConversionSpecifier::xArg</a>:</div>
+<div class="line"><a name="l00757"></a><span class="lineno">  757</span>     <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a9cc747499d63456392a1aaaa415d93a9">ConversionSpecifier::XArg</a>:</div>
+<div class="line"><a name="l00758"></a><span class="lineno">  758</span>     <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a6721002098ae2e8ac30a1ca4cba4b248">ConversionSpecifier::fArg</a>:</div>
+<div class="line"><a name="l00759"></a><span class="lineno">  759</span>     <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a542227391a27a804dcf5e74d697d0f97">ConversionSpecifier::FArg</a>:</div>
+<div class="line"><a name="l00760"></a><span class="lineno">  760</span>     <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a9fe5793ca92b10ae0ae503e86846ece0">ConversionSpecifier::eArg</a>:</div>
+<div class="line"><a name="l00761"></a><span class="lineno">  761</span>     <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1ae80747eded1d90043b3d5ffbd6c63373">ConversionSpecifier::EArg</a>:</div>
+<div class="line"><a name="l00762"></a><span class="lineno">  762</span>     <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a82797b7eeeda3d2511fcb8288bf0d8f2">ConversionSpecifier::gArg</a>:</div>
+<div class="line"><a name="l00763"></a><span class="lineno">  763</span>     <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a69ceb6eb4b535ccb35b9a069d069b63f">ConversionSpecifier::GArg</a>:</div>
+<div class="line"><a name="l00764"></a><span class="lineno">  764</span>     <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a917e205d7abe7cfb4481388cbbf7d24b">ConversionSpecifier::aArg</a>:</div>
+<div class="line"><a name="l00765"></a><span class="lineno">  765</span>     <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1aa4898758cd301f62ca57b9b250708351">ConversionSpecifier::AArg</a>:</div>
+<div class="line"><a name="l00766"></a><span class="lineno">  766</span>     <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1ad14fe138c8f80dc70c46825e01c31777">ConversionSpecifier::sArg</a>:</div>
+<div class="line"><a name="l00767"></a><span class="lineno">  767</span>     <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a11e3cfa42c2e7861a94efa743a90430a">ConversionSpecifier::pArg</a>:</div>
+<div class="line"><a name="l00768"></a><span class="lineno">  768</span>     <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a792fd76e2c595e8cdcfbfa1bfef0e1d3">ConversionSpecifier::nArg</a>:</div>
+<div class="line"><a name="l00769"></a><span class="lineno">  769</span>     <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a9967c642b61140076c027233bb9157bf">ConversionSpecifier::ObjCObjArg</a>:</div>
+<div class="line"><a name="l00770"></a><span class="lineno">  770</span>     <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1aa35aa4f6642be10b09095a73c0ed9139">ConversionSpecifier::ScanListArg</a>:</div>
+<div class="line"><a name="l00771"></a><span class="lineno">  771</span>     <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1aca54f7cd3084cbf423f8044460f379da">ConversionSpecifier::PercentArg</a>:</div>
+<div class="line"><a name="l00772"></a><span class="lineno">  772</span>       <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00773"></a><span class="lineno">  773</span>     <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1aa09bfd8130b55ac148da21e0e43fab9f">ConversionSpecifier::CArg</a>:</div>
+<div class="line"><a name="l00774"></a><span class="lineno">  774</span>     <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a160f87b0871365f78394168a94bd9804">ConversionSpecifier::SArg</a>:</div>
+<div class="line"><a name="l00775"></a><span class="lineno">  775</span>       <span class="keywordflow">return</span> LangOpt.ObjC1 || LangOpt.ObjC2;</div>
+<div class="line"><a name="l00776"></a><span class="lineno">  776</span>     <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a205c5b4cb2a9ca10f0a2a1f930f61c6d">ConversionSpecifier::InvalidSpecifier</a>:</div>
+<div class="line"><a name="l00777"></a><span class="lineno">  777</span>     <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1ad20a241e0e5d50f23740ee2afe07eaa1">ConversionSpecifier::PrintErrno</a>:</div>
+<div class="line"><a name="l00778"></a><span class="lineno">  778</span>     <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1ab1bdb2a7e55f254fb7543d15443d0ef4">ConversionSpecifier::DArg</a>:</div>
+<div class="line"><a name="l00779"></a><span class="lineno">  779</span>     <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1aa09aec6acd7c9ca1774bb3d579a91bef">ConversionSpecifier::OArg</a>:</div>
+<div class="line"><a name="l00780"></a><span class="lineno">  780</span>     <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1ae19e44bba2c6232cebd58adeceffdf07">ConversionSpecifier::UArg</a>:</div>
+<div class="line"><a name="l00781"></a><span class="lineno">  781</span>       <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00782"></a><span class="lineno">  782</span>   }</div>
+<div class="line"><a name="l00783"></a><span class="lineno">  783</span>   llvm_unreachable(<span class="stringliteral">"Invalid ConversionSpecifier Kind!"</span>);</div>
+<div class="line"><a name="l00784"></a><span class="lineno">  784</span> }</div>
+<div class="line"><a name="l00785"></a><span class="lineno">  785</span> </div>
+<div class="line"><a name="l00786"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1FormatSpecifier.html#a104207ca3f0e77d6c0de6e319ee99428">  786</a></span> <span class="keywordtype">bool</span> <a class="code" href="classclang_1_1analyze__format__string_1_1FormatSpecifier.html#a104207ca3f0e77d6c0de6e319ee99428">FormatSpecifier::hasStandardLengthConversionCombination</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00787"></a><span class="lineno">  787</span>   <span class="keywordflow">if</span> (<a class="code" href="classclang_1_1analyze__format__string_1_1FormatSpecifier.html#a10bbf7d7369792f5fb86f869dae59b45">LM</a>.<a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#a7a664b97549a6fe956519f54d5f2a3b6">getKind</a>() == <a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#aff2690c378d9475ad5bf6089d0fd2895a28f73f795c4bc11c858eb58835924652">LengthModifier::AsLongDouble</a>) {</div>
+<div class="line"><a name="l00788"></a><span class="lineno">  788</span>     <span class="keywordflow">switch</span>(<a class="code" href="classclang_1_1analyze__format__string_1_1FormatSpecifier.html#aace736b8c6fb2b53754eaa0b28202197">CS</a>.<a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#aa3b05ff4b64d8dc3e6f78f633fe21eaf">getKind</a>()) {</div>
+<div class="line"><a name="l00789"></a><span class="lineno">  789</span>         <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1aa718f7d4a0e5d8d903f30acbb91e179c">ConversionSpecifier::dArg</a>:</div>
+<div class="line"><a name="l00790"></a><span class="lineno">  790</span>         <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a4e6027e3aea8ed3522591419eb7b124f">ConversionSpecifier::iArg</a>:</div>
+<div class="line"><a name="l00791"></a><span class="lineno">  791</span>         <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1aeea95e9053aa7370633a3a5755348629">ConversionSpecifier::oArg</a>:</div>
+<div class="line"><a name="l00792"></a><span class="lineno">  792</span>         <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a275b8377f2e55da5fde6cbaeb8d7c5ee">ConversionSpecifier::uArg</a>:</div>
+<div class="line"><a name="l00793"></a><span class="lineno">  793</span>         <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1ace288a48383643360e259dd3d8111dc6">ConversionSpecifier::xArg</a>:</div>
+<div class="line"><a name="l00794"></a><span class="lineno">  794</span>         <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a9cc747499d63456392a1aaaa415d93a9">ConversionSpecifier::XArg</a>:</div>
+<div class="line"><a name="l00795"></a><span class="lineno">  795</span>           <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00796"></a><span class="lineno">  796</span>         <span class="keywordflow">default</span>:</div>
+<div class="line"><a name="l00797"></a><span class="lineno">  797</span>           <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00798"></a><span class="lineno">  798</span>     }</div>
+<div class="line"><a name="l00799"></a><span class="lineno">  799</span>   }</div>
+<div class="line"><a name="l00800"></a><span class="lineno">  800</span>   <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00801"></a><span class="lineno">  801</span> }</div>
+<div class="line"><a name="l00802"></a><span class="lineno">  802</span> </div>
+<div class="line"><a name="l00803"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1FormatSpecifier.html#a79d0210e35e2468ea3de498d53e83ad7">  803</a></span> <a class="code" href="classllvm_1_1Optional.html">Optional<LengthModifier></a> <a class="code" href="classclang_1_1analyze__format__string_1_1FormatSpecifier.html#a79d0210e35e2468ea3de498d53e83ad7">FormatSpecifier::getCorrectedLengthModifier</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00804"></a><span class="lineno">  804</span>   <span class="keywordflow">if</span> (<a class="code" href="classclang_1_1analyze__format__string_1_1FormatSpecifier.html#aace736b8c6fb2b53754eaa0b28202197">CS</a>.<a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#afa624fe09e06dcd90271e4925ead827e">isAnyIntArg</a>() || <a class="code" href="classclang_1_1analyze__format__string_1_1FormatSpecifier.html#aace736b8c6fb2b53754eaa0b28202197">CS</a>.<a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#aa3b05ff4b64d8dc3e6f78f633fe21eaf">getKind</a>() == <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a792fd76e2c595e8cdcfbfa1bfef0e1d3">ConversionSpecifier::nArg</a>) {</div>
+<div class="line"><a name="l00805"></a><span class="lineno">  805</span>     <span class="keywordflow">if</span> (<a class="code" href="classclang_1_1analyze__format__string_1_1FormatSpecifier.html#a10bbf7d7369792f5fb86f869dae59b45">LM</a>.<a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#a7a664b97549a6fe956519f54d5f2a3b6">getKind</a>() == <a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#aff2690c378d9475ad5bf6089d0fd2895a28f73f795c4bc11c858eb58835924652">LengthModifier::AsLongDouble</a> ||</div>
+<div class="line"><a name="l00806"></a><span class="lineno">  806</span>         <a class="code" href="classclang_1_1analyze__format__string_1_1FormatSpecifier.html#a10bbf7d7369792f5fb86f869dae59b45">LM</a>.<a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#a7a664b97549a6fe956519f54d5f2a3b6">getKind</a>() == <a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#aff2690c378d9475ad5bf6089d0fd2895a8eff55fdd638a6f2774e22669fbe1c6c">LengthModifier::AsQuad</a>) {</div>
+<div class="line"><a name="l00807"></a><span class="lineno">  807</span>       <a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html" title="Represents the length modifier in a format string in scanf/printf.">LengthModifier</a> FixedLM(<a class="code" href="classclang_1_1analyze__format__string_1_1FormatSpecifier.html#a10bbf7d7369792f5fb86f869dae59b45">LM</a>);</div>
+<div class="line"><a name="l00808"></a><span class="lineno">  808</span>       FixedLM.<a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#adc2cdc9db75f9ab045fa273e6597504d">setKind</a>(<a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#aff2690c378d9475ad5bf6089d0fd2895afdd6ac3f00036867f5713c6d75055b27">LengthModifier::AsLongLong</a>);</div>
+<div class="line"><a name="l00809"></a><span class="lineno">  809</span>       <span class="keywordflow">return</span> FixedLM;</div>
+<div class="line"><a name="l00810"></a><span class="lineno">  810</span>     }</div>
+<div class="line"><a name="l00811"></a><span class="lineno">  811</span>   }</div>
+<div class="line"><a name="l00812"></a><span class="lineno">  812</span> </div>
+<div class="line"><a name="l00813"></a><span class="lineno">  813</span>   <span class="keywordflow">return</span> None;</div>
+<div class="line"><a name="l00814"></a><span class="lineno">  814</span> }</div>
+<div class="line"><a name="l00815"></a><span class="lineno">  815</span> </div>
+<div class="line"><a name="l00816"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1FormatSpecifier.html#ad02ebd54580d9f5baa1dc2ad0bb0ea3f">  816</a></span> <span class="keywordtype">bool</span> <a class="code" href="classclang_1_1analyze__format__string_1_1FormatSpecifier.html#ad02ebd54580d9f5baa1dc2ad0bb0ea3f">FormatSpecifier::namedTypeToLengthModifier</a>(<a class="code" href="classclang_1_1QualType.html">QualType</a> QT,</div>
+<div class="line"><a name="l00817"></a><span class="lineno">  817</span>                                                 <a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html" title="Represents the length modifier in a format string in scanf/printf.">LengthModifier</a> &LM) {</div>
+<div class="line"><a name="l00818"></a><span class="lineno">  818</span>   assert(isa<TypedefType>(QT) && <span class="stringliteral">"Expected a TypedefType"</span>);</div>
+<div class="line"><a name="l00819"></a><span class="lineno">  819</span>   <span class="keyword">const</span> <a class="code" href="classclang_1_1TypedefNameDecl.html" title="Base class for declarations which introduce a typedef-name.">TypedefNameDecl</a> *Typedef = cast<TypedefType>(QT)->getDecl();</div>
+<div class="line"><a name="l00820"></a><span class="lineno">  820</span> </div>
+<div class="line"><a name="l00821"></a><span class="lineno">  821</span>   <span class="keywordflow">for</span> (;;) {</div>
+<div class="line"><a name="l00822"></a><span class="lineno">  822</span>     <span class="keyword">const</span> <a class="code" href="classclang_1_1IdentifierInfo.html">IdentifierInfo</a> *Identifier = Typedef-><a class="code" href="classclang_1_1NamedDecl.html#a554752f8f43eea0e6288da7205167fe2">getIdentifier</a>();</div>
+<div class="line"><a name="l00823"></a><span class="lineno">  823</span>     <span class="keywordflow">if</span> (Identifier-><a class="code" href="classclang_1_1IdentifierInfo.html#a94caec6a16e508e8ca39eacd278bd2c5" title="Return the actual identifier string.">getName</a>() == <span class="stringliteral">"size_t"</span>) {</div>
+<div class="line"><a name="l00824"></a><span class="lineno">  824</span>       LM.<a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#adc2cdc9db75f9ab045fa273e6597504d">setKind</a>(<a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#aff2690c378d9475ad5bf6089d0fd2895a8d04c1116705674a286ea41d5b088096">LengthModifier::AsSizeT</a>);</div>
+<div class="line"><a name="l00825"></a><span class="lineno">  825</span>       <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00826"></a><span class="lineno">  826</span>     } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (Identifier-><a class="code" href="classclang_1_1IdentifierInfo.html#a94caec6a16e508e8ca39eacd278bd2c5" title="Return the actual identifier string.">getName</a>() == <span class="stringliteral">"ssize_t"</span>) {</div>
+<div class="line"><a name="l00827"></a><span class="lineno">  827</span>       <span class="comment">// Not C99, but common in Unix.</span></div>
+<div class="line"><a name="l00828"></a><span class="lineno">  828</span>       LM.<a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#adc2cdc9db75f9ab045fa273e6597504d">setKind</a>(<a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#aff2690c378d9475ad5bf6089d0fd2895a8d04c1116705674a286ea41d5b088096">LengthModifier::AsSizeT</a>);</div>
+<div class="line"><a name="l00829"></a><span class="lineno">  829</span>       <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00830"></a><span class="lineno">  830</span>     } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (Identifier-><a class="code" href="classclang_1_1IdentifierInfo.html#a94caec6a16e508e8ca39eacd278bd2c5" title="Return the actual identifier string.">getName</a>() == <span class="stringliteral">"intmax_t"</span>) {</div>
+<div class="line"><a name="l00831"></a><span class="lineno">  831</span>       LM.<a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#adc2cdc9db75f9ab045fa273e6597504d">setKind</a>(<a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#aff2690c378d9475ad5bf6089d0fd2895aa4a5df4f98fc3d433f94e3ae2d335c41">LengthModifier::AsIntMax</a>);</div>
+<div class="line"><a name="l00832"></a><span class="lineno">  832</span>       <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00833"></a><span class="lineno">  833</span>     } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (Identifier-><a class="code" href="classclang_1_1IdentifierInfo.html#a94caec6a16e508e8ca39eacd278bd2c5" title="Return the actual identifier string.">getName</a>() == <span class="stringliteral">"uintmax_t"</span>) {</div>
+<div class="line"><a name="l00834"></a><span class="lineno">  834</span>       LM.<a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#adc2cdc9db75f9ab045fa273e6597504d">setKind</a>(<a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#aff2690c378d9475ad5bf6089d0fd2895aa4a5df4f98fc3d433f94e3ae2d335c41">LengthModifier::AsIntMax</a>);</div>
+<div class="line"><a name="l00835"></a><span class="lineno">  835</span>       <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00836"></a><span class="lineno">  836</span>     } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (Identifier-><a class="code" href="classclang_1_1IdentifierInfo.html#a94caec6a16e508e8ca39eacd278bd2c5" title="Return the actual identifier string.">getName</a>() == <span class="stringliteral">"ptrdiff_t"</span>) {</div>
+<div class="line"><a name="l00837"></a><span class="lineno">  837</span>       LM.<a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#adc2cdc9db75f9ab045fa273e6597504d">setKind</a>(<a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#aff2690c378d9475ad5bf6089d0fd2895ad21eeddcc550ac3295f307ee81db6d09">LengthModifier::AsPtrDiff</a>);</div>
+<div class="line"><a name="l00838"></a><span class="lineno">  838</span>       <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00839"></a><span class="lineno">  839</span>     }</div>
+<div class="line"><a name="l00840"></a><span class="lineno">  840</span> </div>
+<div class="line"><a name="l00841"></a><span class="lineno">  841</span>     <a class="code" href="classclang_1_1QualType.html">QualType</a> T = Typedef-><a class="code" href="classclang_1_1TypedefNameDecl.html#a5fccedff6d3854db365a540145029158">getUnderlyingType</a>();</div>
+<div class="line"><a name="l00842"></a><span class="lineno">  842</span>     <span class="keywordflow">if</span> (!isa<TypedefType>(T))</div>
+<div class="line"><a name="l00843"></a><span class="lineno">  843</span>       <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00844"></a><span class="lineno">  844</span> </div>
+<div class="line"><a name="l00845"></a><span class="lineno">  845</span>     Typedef = cast<TypedefType>(T)->getDecl();</div>
+<div class="line"><a name="l00846"></a><span class="lineno">  846</span>   }</div>
+<div class="line"><a name="l00847"></a><span class="lineno">  847</span>   <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00848"></a><span class="lineno">  848</span> }</div>
+</div><!-- fragment --></div><!-- contents -->
+<hr>
+<p class="footer">
+Generated on Mon May 12 2014 12:13:39 for r$LatestRev$ by <a href="http://www.doxygen.org">Doxygen 
+1.8.3.1</a>.</p>
+<p class="footer">
+See the <a href="http://clang.llvm.org">Main Clang Web Page</a> for more 
+information.</p>
+</body>
+</html>

Added: www-releases/trunk/3.5.1/tools/clang/docs/doxygen/html/FormatString_8d_source.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/3.5.1/tools/clang/docs/doxygen/html/FormatString_8d_source.html?rev=225843&view=auto
==============================================================================
--- www-releases/trunk/3.5.1/tools/clang/docs/doxygen/html/FormatString_8d_source.html (added)
+++ www-releases/trunk/3.5.1/tools/clang/docs/doxygen/html/FormatString_8d_source.html Tue Jan 13 16:55:20 2015
@@ -0,0 +1,399 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<html><head>
+<meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
+<meta name="keywords" content="clang,LLVM,Low Level Virtual Machine,C,C++,doxygen,API,frontend,documentation"/>
+<meta name="description" content="C++ source code API documentation for clang."/>
+<title>clang: FormatString.d Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head><body>
+<p class="title">clang API Documentation</p>
+<!-- Generated by Doxygen 1.8.3.1 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main Page</span></a></li>
+      <li><a href="pages.html"><span>Related Pages</span></a></li>
+      <li><a href="modules.html"><span>Modules</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li><a href="annotated.html"><span>Classes</span></a></li>
+      <li class="current"><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="files.html"><span>File List</span></a></li>
+      <li><a href="globals.html"><span>File Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark"> </span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark"> </span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark"> </span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark"> </span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark"> </span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark"> </span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark"> </span>Typedefs</a><a class="SelectItem" href="javascript:void
 (0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark"> </span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark"> </span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark"> </span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark"> </span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(11)"><span class="SelectionMark"> </span>Groups</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(12)"><span class="SelectionMark"> </span>Pages</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_f65986501076cc710d4b9355ae3fe06d.html">clang</a></li><li class="navelem"><a class="el" href="dir_87e2a7550f83bd8cbfc92736891468fc.html">lib</a></li><li class="navelem"><a class="el" href="dir_c63c305ced188fe7fa423548af4807d3.html">Analysis</a></li><li class="navelem"><a class="el" href="dir_d475dbd19d31b48f9c4cacce35904903.html">Release+Asserts</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">FormatString.d</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="FormatString_8d.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span> /home/tstellar/llvm/tools/clang/lib/Analysis/Release+Asserts/FormatString.o \</div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>  /home/tstellar/llvm/tools/clang/lib/Analysis/Release+Asserts/FormatString.d: \</div>
+<div class="line"><a name="l00003"></a><span class="lineno">    3</span>  FormatString.cpp FormatStringParsing.h \</div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span>  /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/AST/ASTContext.h \</div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>  /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/AST/ASTTypeTraits.h \</div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>  /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/AST/ASTFwd.h \</div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>  /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/AST/DeclNodes.inc \</div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>  /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/AST/StmtNodes.inc \</div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span>  /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/AST/TypeNodes.def \</div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>  /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/AST/Decl.h \</div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span>  /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/AST/APValue.h \</div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>  /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/Basic/LLVM.h \</div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>  /home/tstellar/llvm/include/llvm/Support/Casting.h \</div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span>  /home/tstellar/llvm/include/llvm/Support/type_traits.h \</div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span>  /home/tstellar/llvm/include/llvm/Support/DataTypes.h \</div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>  /home/tstellar/llvm/include/llvm/ADT/None.h \</div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span>  /home/tstellar/llvm/include/llvm/ADT/APFloat.h \</div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span>  /home/tstellar/llvm/include/llvm/ADT/APInt.h \</div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span>  /home/tstellar/llvm/include/llvm/ADT/ArrayRef.h \</div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span>  /home/tstellar/llvm/include/llvm/ADT/SmallVector.h \</div>
+<div class="line"><a name="l00021"></a><span class="lineno">   21</span>  /home/tstellar/llvm/include/llvm/Support/AlignOf.h \</div>
+<div class="line"><a name="l00022"></a><span class="lineno">   22</span>  /home/tstellar/llvm/include/llvm/Support/Compiler.h \</div>
+<div class="line"><a name="l00023"></a><span class="lineno">   23</span>  /home/tstellar/llvm/include/llvm/Config/llvm-config.h \</div>
+<div class="line"><a name="l00024"></a><span class="lineno">   24</span>  /home/tstellar/llvm/include/llvm/Support/MathExtras.h \</div>
+<div class="line"><a name="l00025"></a><span class="lineno">   25</span>  /home/tstellar/llvm/include/llvm/Support/SwapByteOrder.h \</div>
+<div class="line"><a name="l00026"></a><span class="lineno">   26</span>  /home/tstellar/llvm/include/llvm/ADT/APSInt.h \</div>
+<div class="line"><a name="l00027"></a><span class="lineno">   27</span>  /home/tstellar/llvm/include/llvm/ADT/PointerIntPair.h \</div>
+<div class="line"><a name="l00028"></a><span class="lineno">   28</span>  /home/tstellar/llvm/include/llvm/Support/PointerLikeTypeTraits.h \</div>
+<div class="line"><a name="l00029"></a><span class="lineno">   29</span>  /home/tstellar/llvm/include/llvm/ADT/PointerUnion.h \</div>
+<div class="line"><a name="l00030"></a><span class="lineno">   30</span>  /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/AST/DeclBase.h \</div>
+<div class="line"><a name="l00031"></a><span class="lineno">   31</span>  /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/AST/AttrIterator.h \</div>
+<div class="line"><a name="l00032"></a><span class="lineno">   32</span>  /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/AST/DeclarationName.h \</div>
+<div class="line"><a name="l00033"></a><span class="lineno">   33</span>  /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/Basic/IdentifierTable.h \</div>
+<div class="line"><a name="l00034"></a><span class="lineno">   34</span>  /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/Basic/OperatorKinds.h \</div>
+<div class="line"><a name="l00035"></a><span class="lineno">   35</span>  /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/Basic/OperatorKinds.def \</div>
+<div class="line"><a name="l00036"></a><span class="lineno">   36</span>  /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/Basic/TokenKinds.h \</div>
+<div class="line"><a name="l00037"></a><span class="lineno">   37</span>  /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/Basic/TokenKinds.def \</div>
+<div class="line"><a name="l00038"></a><span class="lineno">   38</span>  /home/tstellar/llvm/include/llvm/ADT/SmallString.h \</div>
+<div class="line"><a name="l00039"></a><span class="lineno">   39</span>  /home/tstellar/llvm/include/llvm/ADT/StringRef.h \</div>
+<div class="line"><a name="l00040"></a><span class="lineno">   40</span>  /home/tstellar/llvm/include/llvm/ADT/StringMap.h \</div>
+<div class="line"><a name="l00041"></a><span class="lineno">   41</span>  /home/tstellar/llvm/include/llvm/Support/<a class="code" href="Format_8cpp.html#a0805f884ee63233d49322f71926371de">Allocator</a>.h \</div>
+<div class="line"><a name="l00042"></a><span class="lineno">   42</span>  /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/Basic/PartialDiagnostic.h \</div>
+<div class="line"><a name="l00043"></a><span class="lineno">   43</span>  /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/Basic/Diagnostic.h \</div>
+<div class="line"><a name="l00044"></a><span class="lineno">   44</span>  /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/Basic/DiagnosticIDs.h \</div>
+<div class="line"><a name="l00045"></a><span class="lineno">   45</span>  /home/tstellar/llvm/include/llvm/ADT/IntrusiveRefCntPtr.h \</div>
+<div class="line"><a name="l00046"></a><span class="lineno">   46</span>  /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/Basic/DiagnosticCommonKinds.inc \</div>
+<div class="line"><a name="l00047"></a><span class="lineno">   47</span>  /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/Basic/DiagnosticOptions.h \</div>
+<div class="line"><a name="l00048"></a><span class="lineno">   48</span>  /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/Basic/DiagnosticOptions.def \</div>
+<div class="line"><a name="l00049"></a><span class="lineno">   49</span>  /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/Basic/SourceLocation.h \</div>
+<div class="line"><a name="l00050"></a><span class="lineno">   50</span>  /home/tstellar/llvm/include/llvm/ADT/DenseMap.h \</div>
+<div class="line"><a name="l00051"></a><span class="lineno">   51</span>  /home/tstellar/llvm/include/llvm/ADT/DenseMapInfo.h \</div>
+<div class="line"><a name="l00052"></a><span class="lineno">   52</span>  /home/tstellar/llvm/include/llvm/ADT/STLExtras.h \</div>
+<div class="line"><a name="l00053"></a><span class="lineno">   53</span>  /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/Basic/<a class="code" href="namespaceclang.html#a78aadfeaf316ded55fdd2d1a9c8815b6" title="Describes the different kinds of linkage (C++ [basic.link], C99 6.2.2) that an entity may have...">Linkage</a>.h \</div>
+<div class="line"><a name="l00054"></a><span class="lineno">   54</span>  /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/Basic/Specifiers.h \</div>
+<div class="line"><a name="l00055"></a><span class="lineno">   55</span>  /home/tstellar/llvm/include/llvm/Support/PrettyStackTrace.h \</div>
+<div class="line"><a name="l00056"></a><span class="lineno">   56</span>  /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/AST/ExternalASTSource.h \</div>
+<div class="line"><a name="l00057"></a><span class="lineno">   57</span>  /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/AST/CharUnits.h \</div>
+<div class="line"><a name="l00058"></a><span class="lineno">   58</span>  /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/AST/Redeclarable.h \</div>
+<div class="line"><a name="l00059"></a><span class="lineno">   59</span>  /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/AST/Type.h \</div>
+<div class="line"><a name="l00060"></a><span class="lineno">   60</span>  /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/AST/NestedNameSpecifier.h \</div>
+<div class="line"><a name="l00061"></a><span class="lineno">   61</span>  /home/tstellar/llvm/include/llvm/ADT/FoldingSet.h \</div>
+<div class="line"><a name="l00062"></a><span class="lineno">   62</span>  /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/AST/TemplateName.h \</div>
+<div class="line"><a name="l00063"></a><span class="lineno">   63</span>  /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/Basic/<a class="code" href="namespaceclang.html#af8a91eed04532d5da41ef08e7c9c081e" title="The various types of exception specifications that exist in C++11.">ExceptionSpecificationType</a>.h \</div>
+<div class="line"><a name="l00064"></a><span class="lineno">   64</span>  /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/Basic/<a class="code" href="namespaceclang.html#afbab15cd4aa598c4e6d9192f7ac4f102" title="Describes the different kinds of visibility that a declaration may have.">Visibility</a>.h \</div>
+<div class="line"><a name="l00065"></a><span class="lineno">   65</span>  /home/tstellar/llvm/include/llvm/ADT/Optional.h \</div>
+<div class="line"><a name="l00066"></a><span class="lineno">   66</span>  /home/tstellar/llvm/include/llvm/ADT/Twine.h \</div>
+<div class="line"><a name="l00067"></a><span class="lineno">   67</span>  /home/tstellar/llvm/include/llvm/Support/ErrorHandling.h \</div>
+<div class="line"><a name="l00068"></a><span class="lineno">   68</span>  /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/AST/BuiltinTypes.def \</div>
+<div class="line"><a name="l00069"></a><span class="lineno">   69</span>  /home/tstellar/llvm/include/llvm/Support/raw_ostream.h \</div>
+<div class="line"><a name="l00070"></a><span class="lineno">   70</span>  /home/tstellar/llvm/include/llvm/Support/FileSystem.h \</div>
+<div class="line"><a name="l00071"></a><span class="lineno">   71</span>  /home/tstellar/llvm/include/llvm/ADT/OwningPtr.h \</div>
+<div class="line"><a name="l00072"></a><span class="lineno">   72</span>  /home/tstellar/llvm/include/llvm/Support/TimeValue.h \</div>
+<div class="line"><a name="l00073"></a><span class="lineno">   73</span>  /home/tstellar/llvm/include/llvm/Support/system_error.h \</div>
+<div class="line"><a name="l00074"></a><span class="lineno">   74</span>  /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/AST/Stmt.h \</div>
+<div class="line"><a name="l00075"></a><span class="lineno">   75</span>  /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/AST/DeclGroup.h \</div>
+<div class="line"><a name="l00076"></a><span class="lineno">   76</span>  /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/AST/StmtIterator.h \</div>
+<div class="line"><a name="l00077"></a><span class="lineno">   77</span>  /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/Basic/CapturedStmt.h \</div>
+<div class="line"><a name="l00078"></a><span class="lineno">   78</span>  /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/AST/TemplateBase.h \</div>
+<div class="line"><a name="l00079"></a><span class="lineno">   79</span>  /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/AST/TypeLoc.h \</div>
+<div class="line"><a name="l00080"></a><span class="lineno">   80</span>  /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/AST/TypeLocNodes.def \</div>
+<div class="line"><a name="l00081"></a><span class="lineno">   81</span>  /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/AST/CanonicalType.h \</div>
+<div class="line"><a name="l00082"></a><span class="lineno">   82</span>  /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/AST/CommentCommandTraits.h \</div>
+<div class="line"><a name="l00083"></a><span class="lineno">   83</span>  /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/Basic/CommentOptions.h \</div>
+<div class="line"><a name="l00084"></a><span class="lineno">   84</span>  /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/AST/CommentCommandList.inc \</div>
+<div class="line"><a name="l00085"></a><span class="lineno">   85</span>  /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/AST/PrettyPrinter.h \</div>
+<div class="line"><a name="l00086"></a><span class="lineno">   86</span>  /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/Basic/LangOptions.h \</div>
+<div class="line"><a name="l00087"></a><span class="lineno">   87</span>  /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/Basic/ObjCRuntime.h \</div>
+<div class="line"><a name="l00088"></a><span class="lineno">   88</span>  /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/Basic/VersionTuple.h \</div>
+<div class="line"><a name="l00089"></a><span class="lineno">   89</span>  /home/tstellar/llvm/include/llvm/ADT/Triple.h \</div>
+<div class="line"><a name="l00090"></a><span class="lineno">   90</span>  /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/Basic/Sanitizers.def \</div>
+<div class="line"><a name="l00091"></a><span class="lineno">   91</span>  /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/Basic/LangOptions.def \</div>
+<div class="line"><a name="l00092"></a><span class="lineno">   92</span>  /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/Basic/OpenCLExtensions.def \</div>
+<div class="line"><a name="l00093"></a><span class="lineno">   93</span>  /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/AST/RawCommentList.h \</div>
+<div class="line"><a name="l00094"></a><span class="lineno">   94</span>  /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/Basic/SourceManager.h \</div>
+<div class="line"><a name="l00095"></a><span class="lineno">   95</span>  /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/Basic/FileManager.h \</div>
+<div class="line"><a name="l00096"></a><span class="lineno">   96</span>  /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/Basic/FileSystemOptions.h \</div>
+<div class="line"><a name="l00097"></a><span class="lineno">   97</span>  /home/tstellar/llvm/include/llvm/ADT/DenseSet.h \</div>
+<div class="line"><a name="l00098"></a><span class="lineno">   98</span>  /home/tstellar/llvm/include/llvm/Support/MemoryBuffer.h \</div>
+<div class="line"><a name="l00099"></a><span class="lineno">   99</span>  /home/tstellar/llvm/include/llvm/Support/CBindingWrapping.h \</div>
+<div class="line"><a name="l00100"></a><span class="lineno">  100</span>  /home/tstellar/llvm/include/llvm-c/Core.h \</div>
+<div class="line"><a name="l00101"></a><span class="lineno">  101</span>  /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/Basic/AddressSpaces.h \</div>
+<div class="line"><a name="l00102"></a><span class="lineno">  102</span>  /home/tstellar/llvm/include/llvm/ADT/SmallPtrSet.h \</div>
+<div class="line"><a name="l00103"></a><span class="lineno">  103</span>  /home/tstellar/llvm/include/llvm/ADT/TinyPtrVector.h \</div>
+<div class="line"><a name="l00104"></a><span class="lineno">  104</span>  /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/Analysis/<a class="code" href="namespaceclang.html#ae9c75815d0d02c4fb4c86c9f86a8c9b9" title="Analysis - Set of available source code analyses.">Analyses</a>/FormatString.h \</div>
+<div class="line"><a name="l00105"></a><span class="lineno">  105</span>  /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/Basic/TargetInfo.h \</div>
+<div class="line"><a name="l00106"></a><span class="lineno">  106</span>  /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/Basic/TargetCXXABI.h \</div>
+<div class="line"><a name="l00107"></a><span class="lineno">  107</span>  /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/Basic/TargetOptions.h \</div>
+<div class="line"><a name="l00108"></a><span class="lineno">  108</span>  /home/tstellar/llvm/include/llvm/ADT/StringSwitch.h</div>
+<div class="line"><a name="l00109"></a><span class="lineno">  109</span> </div>
+<div class="line"><a name="l00110"></a><span class="lineno">  110</span> FormatStringParsing.h:</div>
+<div class="line"><a name="l00111"></a><span class="lineno">  111</span> </div>
+<div class="line"><a name="l00112"></a><span class="lineno">  112</span> /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/AST/ASTContext.h:</div>
+<div class="line"><a name="l00113"></a><span class="lineno">  113</span> </div>
+<div class="line"><a name="l00114"></a><span class="lineno">  114</span> /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/AST/ASTTypeTraits.h:</div>
+<div class="line"><a name="l00115"></a><span class="lineno">  115</span> </div>
+<div class="line"><a name="l00116"></a><span class="lineno">  116</span> /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/AST/ASTFwd.h:</div>
+<div class="line"><a name="l00117"></a><span class="lineno">  117</span> </div>
+<div class="line"><a name="l00118"></a><span class="lineno">  118</span> /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/AST/DeclNodes.inc:</div>
+<div class="line"><a name="l00119"></a><span class="lineno">  119</span> </div>
+<div class="line"><a name="l00120"></a><span class="lineno">  120</span> /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/AST/StmtNodes.inc:</div>
+<div class="line"><a name="l00121"></a><span class="lineno">  121</span> </div>
+<div class="line"><a name="l00122"></a><span class="lineno">  122</span> /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/AST/TypeNodes.def:</div>
+<div class="line"><a name="l00123"></a><span class="lineno">  123</span> </div>
+<div class="line"><a name="l00124"></a><span class="lineno">  124</span> /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/AST/Decl.h:</div>
+<div class="line"><a name="l00125"></a><span class="lineno">  125</span> </div>
+<div class="line"><a name="l00126"></a><span class="lineno">  126</span> /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/AST/APValue.h:</div>
+<div class="line"><a name="l00127"></a><span class="lineno">  127</span> </div>
+<div class="line"><a name="l00128"></a><span class="lineno">  128</span> /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/Basic/LLVM.h:</div>
+<div class="line"><a name="l00129"></a><span class="lineno">  129</span> </div>
+<div class="line"><a name="l00130"></a><span class="lineno">  130</span> /home/tstellar/llvm/include/llvm/Support/Casting.h:</div>
+<div class="line"><a name="l00131"></a><span class="lineno">  131</span> </div>
+<div class="line"><a name="l00132"></a><span class="lineno">  132</span> /home/tstellar/llvm/include/llvm/Support/type_traits.h:</div>
+<div class="line"><a name="l00133"></a><span class="lineno">  133</span> </div>
+<div class="line"><a name="l00134"></a><span class="lineno">  134</span> /home/tstellar/llvm/include/llvm/Support/DataTypes.h:</div>
+<div class="line"><a name="l00135"></a><span class="lineno">  135</span> </div>
+<div class="line"><a name="l00136"></a><span class="lineno">  136</span> /home/tstellar/llvm/include/llvm/ADT/None.h:</div>
+<div class="line"><a name="l00137"></a><span class="lineno">  137</span> </div>
+<div class="line"><a name="l00138"></a><span class="lineno">  138</span> /home/tstellar/llvm/include/llvm/ADT/APFloat.h:</div>
+<div class="line"><a name="l00139"></a><span class="lineno">  139</span> </div>
+<div class="line"><a name="l00140"></a><span class="lineno">  140</span> /home/tstellar/llvm/include/llvm/ADT/APInt.h:</div>
+<div class="line"><a name="l00141"></a><span class="lineno">  141</span> </div>
+<div class="line"><a name="l00142"></a><span class="lineno">  142</span> /home/tstellar/llvm/include/llvm/ADT/ArrayRef.h:</div>
+<div class="line"><a name="l00143"></a><span class="lineno">  143</span> </div>
+<div class="line"><a name="l00144"></a><span class="lineno">  144</span> /home/tstellar/llvm/include/llvm/ADT/SmallVector.h:</div>
+<div class="line"><a name="l00145"></a><span class="lineno">  145</span> </div>
+<div class="line"><a name="l00146"></a><span class="lineno">  146</span> /home/tstellar/llvm/include/llvm/Support/AlignOf.h:</div>
+<div class="line"><a name="l00147"></a><span class="lineno">  147</span> </div>
+<div class="line"><a name="l00148"></a><span class="lineno">  148</span> /home/tstellar/llvm/include/llvm/Support/Compiler.h:</div>
+<div class="line"><a name="l00149"></a><span class="lineno">  149</span> </div>
+<div class="line"><a name="l00150"></a><span class="lineno">  150</span> /home/tstellar/llvm/include/llvm/Config/llvm-config.h:</div>
+<div class="line"><a name="l00151"></a><span class="lineno">  151</span> </div>
+<div class="line"><a name="l00152"></a><span class="lineno">  152</span> /home/tstellar/llvm/include/llvm/Support/MathExtras.h:</div>
+<div class="line"><a name="l00153"></a><span class="lineno">  153</span> </div>
+<div class="line"><a name="l00154"></a><span class="lineno">  154</span> /home/tstellar/llvm/include/llvm/Support/SwapByteOrder.h:</div>
+<div class="line"><a name="l00155"></a><span class="lineno">  155</span> </div>
+<div class="line"><a name="l00156"></a><span class="lineno">  156</span> /home/tstellar/llvm/include/llvm/ADT/APSInt.h:</div>
+<div class="line"><a name="l00157"></a><span class="lineno">  157</span> </div>
+<div class="line"><a name="l00158"></a><span class="lineno">  158</span> /home/tstellar/llvm/include/llvm/ADT/PointerIntPair.h:</div>
+<div class="line"><a name="l00159"></a><span class="lineno">  159</span> </div>
+<div class="line"><a name="l00160"></a><span class="lineno">  160</span> /home/tstellar/llvm/include/llvm/Support/PointerLikeTypeTraits.h:</div>
+<div class="line"><a name="l00161"></a><span class="lineno">  161</span> </div>
+<div class="line"><a name="l00162"></a><span class="lineno">  162</span> /home/tstellar/llvm/include/llvm/ADT/PointerUnion.h:</div>
+<div class="line"><a name="l00163"></a><span class="lineno">  163</span> </div>
+<div class="line"><a name="l00164"></a><span class="lineno">  164</span> /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/AST/DeclBase.h:</div>
+<div class="line"><a name="l00165"></a><span class="lineno">  165</span> </div>
+<div class="line"><a name="l00166"></a><span class="lineno">  166</span> /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/AST/AttrIterator.h:</div>
+<div class="line"><a name="l00167"></a><span class="lineno">  167</span> </div>
+<div class="line"><a name="l00168"></a><span class="lineno">  168</span> /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/AST/DeclarationName.h:</div>
+<div class="line"><a name="l00169"></a><span class="lineno">  169</span> </div>
+<div class="line"><a name="l00170"></a><span class="lineno">  170</span> /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/Basic/IdentifierTable.h:</div>
+<div class="line"><a name="l00171"></a><span class="lineno">  171</span> </div>
+<div class="line"><a name="l00172"></a><span class="lineno">  172</span> /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/Basic/OperatorKinds.h:</div>
+<div class="line"><a name="l00173"></a><span class="lineno">  173</span> </div>
+<div class="line"><a name="l00174"></a><span class="lineno">  174</span> /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/Basic/OperatorKinds.def:</div>
+<div class="line"><a name="l00175"></a><span class="lineno">  175</span> </div>
+<div class="line"><a name="l00176"></a><span class="lineno">  176</span> /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/Basic/TokenKinds.h:</div>
+<div class="line"><a name="l00177"></a><span class="lineno">  177</span> </div>
+<div class="line"><a name="l00178"></a><span class="lineno">  178</span> /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/Basic/TokenKinds.def:</div>
+<div class="line"><a name="l00179"></a><span class="lineno">  179</span> </div>
+<div class="line"><a name="l00180"></a><span class="lineno">  180</span> /home/tstellar/llvm/include/llvm/ADT/SmallString.h:</div>
+<div class="line"><a name="l00181"></a><span class="lineno">  181</span> </div>
+<div class="line"><a name="l00182"></a><span class="lineno">  182</span> /home/tstellar/llvm/include/llvm/ADT/StringRef.h:</div>
+<div class="line"><a name="l00183"></a><span class="lineno">  183</span> </div>
+<div class="line"><a name="l00184"></a><span class="lineno">  184</span> /home/tstellar/llvm/include/llvm/ADT/StringMap.h:</div>
+<div class="line"><a name="l00185"></a><span class="lineno">  185</span> </div>
+<div class="line"><a name="l00186"></a><span class="lineno">  186</span> /home/tstellar/llvm/include/llvm/Support/<a class="code" href="Format_8cpp.html#a0805f884ee63233d49322f71926371de">Allocator</a>.h:</div>
+<div class="line"><a name="l00187"></a><span class="lineno">  187</span> </div>
+<div class="line"><a name="l00188"></a><span class="lineno">  188</span> /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/Basic/PartialDiagnostic.h:</div>
+<div class="line"><a name="l00189"></a><span class="lineno">  189</span> </div>
+<div class="line"><a name="l00190"></a><span class="lineno">  190</span> /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/Basic/Diagnostic.h:</div>
+<div class="line"><a name="l00191"></a><span class="lineno">  191</span> </div>
+<div class="line"><a name="l00192"></a><span class="lineno">  192</span> /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/Basic/DiagnosticIDs.h:</div>
+<div class="line"><a name="l00193"></a><span class="lineno">  193</span> </div>
+<div class="line"><a name="l00194"></a><span class="lineno">  194</span> /home/tstellar/llvm/include/llvm/ADT/IntrusiveRefCntPtr.h:</div>
+<div class="line"><a name="l00195"></a><span class="lineno">  195</span> </div>
+<div class="line"><a name="l00196"></a><span class="lineno">  196</span> /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/Basic/DiagnosticCommonKinds.inc:</div>
+<div class="line"><a name="l00197"></a><span class="lineno">  197</span> </div>
+<div class="line"><a name="l00198"></a><span class="lineno">  198</span> /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/Basic/DiagnosticOptions.h:</div>
+<div class="line"><a name="l00199"></a><span class="lineno">  199</span> </div>
+<div class="line"><a name="l00200"></a><span class="lineno">  200</span> /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/Basic/DiagnosticOptions.def:</div>
+<div class="line"><a name="l00201"></a><span class="lineno">  201</span> </div>
+<div class="line"><a name="l00202"></a><span class="lineno">  202</span> /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/Basic/SourceLocation.h:</div>
+<div class="line"><a name="l00203"></a><span class="lineno">  203</span> </div>
+<div class="line"><a name="l00204"></a><span class="lineno">  204</span> /home/tstellar/llvm/include/llvm/ADT/DenseMap.h:</div>
+<div class="line"><a name="l00205"></a><span class="lineno">  205</span> </div>
+<div class="line"><a name="l00206"></a><span class="lineno">  206</span> /home/tstellar/llvm/include/llvm/ADT/DenseMapInfo.h:</div>
+<div class="line"><a name="l00207"></a><span class="lineno">  207</span> </div>
+<div class="line"><a name="l00208"></a><span class="lineno">  208</span> /home/tstellar/llvm/include/llvm/ADT/STLExtras.h:</div>
+<div class="line"><a name="l00209"></a><span class="lineno">  209</span> </div>
+<div class="line"><a name="l00210"></a><span class="lineno">  210</span> /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/Basic/<a class="code" href="namespaceclang.html#a78aadfeaf316ded55fdd2d1a9c8815b6" title="Describes the different kinds of linkage (C++ [basic.link], C99 6.2.2) that an entity may have...">Linkage</a>.h:</div>
+<div class="line"><a name="l00211"></a><span class="lineno">  211</span> </div>
+<div class="line"><a name="l00212"></a><span class="lineno">  212</span> /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/Basic/Specifiers.h:</div>
+<div class="line"><a name="l00213"></a><span class="lineno">  213</span> </div>
+<div class="line"><a name="l00214"></a><span class="lineno">  214</span> /home/tstellar/llvm/include/llvm/Support/PrettyStackTrace.h:</div>
+<div class="line"><a name="l00215"></a><span class="lineno">  215</span> </div>
+<div class="line"><a name="l00216"></a><span class="lineno">  216</span> /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/AST/ExternalASTSource.h:</div>
+<div class="line"><a name="l00217"></a><span class="lineno">  217</span> </div>
+<div class="line"><a name="l00218"></a><span class="lineno">  218</span> /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/AST/CharUnits.h:</div>
+<div class="line"><a name="l00219"></a><span class="lineno">  219</span> </div>
+<div class="line"><a name="l00220"></a><span class="lineno">  220</span> /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/AST/Redeclarable.h:</div>
+<div class="line"><a name="l00221"></a><span class="lineno">  221</span> </div>
+<div class="line"><a name="l00222"></a><span class="lineno">  222</span> /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/AST/Type.h:</div>
+<div class="line"><a name="l00223"></a><span class="lineno">  223</span> </div>
+<div class="line"><a name="l00224"></a><span class="lineno">  224</span> /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/AST/NestedNameSpecifier.h:</div>
+<div class="line"><a name="l00225"></a><span class="lineno">  225</span> </div>
+<div class="line"><a name="l00226"></a><span class="lineno">  226</span> /home/tstellar/llvm/include/llvm/ADT/FoldingSet.h:</div>
+<div class="line"><a name="l00227"></a><span class="lineno">  227</span> </div>
+<div class="line"><a name="l00228"></a><span class="lineno">  228</span> /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/AST/TemplateName.h:</div>
+<div class="line"><a name="l00229"></a><span class="lineno">  229</span> </div>
+<div class="line"><a name="l00230"></a><span class="lineno">  230</span> /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/Basic/<a class="code" href="namespaceclang.html#af8a91eed04532d5da41ef08e7c9c081e" title="The various types of exception specifications that exist in C++11.">ExceptionSpecificationType</a>.h:</div>
+<div class="line"><a name="l00231"></a><span class="lineno">  231</span> </div>
+<div class="line"><a name="l00232"></a><span class="lineno">  232</span> /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/Basic/<a class="code" href="namespaceclang.html#afbab15cd4aa598c4e6d9192f7ac4f102" title="Describes the different kinds of visibility that a declaration may have.">Visibility</a>.h:</div>
+<div class="line"><a name="l00233"></a><span class="lineno">  233</span> </div>
+<div class="line"><a name="l00234"></a><span class="lineno">  234</span> /home/tstellar/llvm/include/llvm/ADT/Optional.h:</div>
+<div class="line"><a name="l00235"></a><span class="lineno">  235</span> </div>
+<div class="line"><a name="l00236"></a><span class="lineno">  236</span> /home/tstellar/llvm/include/llvm/ADT/Twine.h:</div>
+<div class="line"><a name="l00237"></a><span class="lineno">  237</span> </div>
+<div class="line"><a name="l00238"></a><span class="lineno">  238</span> /home/tstellar/llvm/include/llvm/Support/ErrorHandling.h:</div>
+<div class="line"><a name="l00239"></a><span class="lineno">  239</span> </div>
+<div class="line"><a name="l00240"></a><span class="lineno">  240</span> /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/AST/BuiltinTypes.def:</div>
+<div class="line"><a name="l00241"></a><span class="lineno">  241</span> </div>
+<div class="line"><a name="l00242"></a><span class="lineno">  242</span> /home/tstellar/llvm/include/llvm/Support/raw_ostream.h:</div>
+<div class="line"><a name="l00243"></a><span class="lineno">  243</span> </div>
+<div class="line"><a name="l00244"></a><span class="lineno">  244</span> /home/tstellar/llvm/include/llvm/Support/FileSystem.h:</div>
+<div class="line"><a name="l00245"></a><span class="lineno">  245</span> </div>
+<div class="line"><a name="l00246"></a><span class="lineno">  246</span> /home/tstellar/llvm/include/llvm/ADT/OwningPtr.h:</div>
+<div class="line"><a name="l00247"></a><span class="lineno">  247</span> </div>
+<div class="line"><a name="l00248"></a><span class="lineno">  248</span> /home/tstellar/llvm/include/llvm/Support/TimeValue.h:</div>
+<div class="line"><a name="l00249"></a><span class="lineno">  249</span> </div>
+<div class="line"><a name="l00250"></a><span class="lineno">  250</span> /home/tstellar/llvm/include/llvm/Support/system_error.h:</div>
+<div class="line"><a name="l00251"></a><span class="lineno">  251</span> </div>
+<div class="line"><a name="l00252"></a><span class="lineno">  252</span> /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/AST/Stmt.h:</div>
+<div class="line"><a name="l00253"></a><span class="lineno">  253</span> </div>
+<div class="line"><a name="l00254"></a><span class="lineno">  254</span> /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/AST/DeclGroup.h:</div>
+<div class="line"><a name="l00255"></a><span class="lineno">  255</span> </div>
+<div class="line"><a name="l00256"></a><span class="lineno">  256</span> /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/AST/StmtIterator.h:</div>
+<div class="line"><a name="l00257"></a><span class="lineno">  257</span> </div>
+<div class="line"><a name="l00258"></a><span class="lineno">  258</span> /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/Basic/CapturedStmt.h:</div>
+<div class="line"><a name="l00259"></a><span class="lineno">  259</span> </div>
+<div class="line"><a name="l00260"></a><span class="lineno">  260</span> /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/AST/TemplateBase.h:</div>
+<div class="line"><a name="l00261"></a><span class="lineno">  261</span> </div>
+<div class="line"><a name="l00262"></a><span class="lineno">  262</span> /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/AST/TypeLoc.h:</div>
+<div class="line"><a name="l00263"></a><span class="lineno">  263</span> </div>
+<div class="line"><a name="l00264"></a><span class="lineno">  264</span> /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/AST/TypeLocNodes.def:</div>
+<div class="line"><a name="l00265"></a><span class="lineno">  265</span> </div>
+<div class="line"><a name="l00266"></a><span class="lineno">  266</span> /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/AST/CanonicalType.h:</div>
+<div class="line"><a name="l00267"></a><span class="lineno">  267</span> </div>
+<div class="line"><a name="l00268"></a><span class="lineno">  268</span> /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/AST/CommentCommandTraits.h:</div>
+<div class="line"><a name="l00269"></a><span class="lineno">  269</span> </div>
+<div class="line"><a name="l00270"></a><span class="lineno">  270</span> /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/Basic/CommentOptions.h:</div>
+<div class="line"><a name="l00271"></a><span class="lineno">  271</span> </div>
+<div class="line"><a name="l00272"></a><span class="lineno">  272</span> /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/AST/CommentCommandList.inc:</div>
+<div class="line"><a name="l00273"></a><span class="lineno">  273</span> </div>
+<div class="line"><a name="l00274"></a><span class="lineno">  274</span> /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/AST/PrettyPrinter.h:</div>
+<div class="line"><a name="l00275"></a><span class="lineno">  275</span> </div>
+<div class="line"><a name="l00276"></a><span class="lineno">  276</span> /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/Basic/LangOptions.h:</div>
+<div class="line"><a name="l00277"></a><span class="lineno">  277</span> </div>
+<div class="line"><a name="l00278"></a><span class="lineno">  278</span> /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/Basic/ObjCRuntime.h:</div>
+<div class="line"><a name="l00279"></a><span class="lineno">  279</span> </div>
+<div class="line"><a name="l00280"></a><span class="lineno">  280</span> /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/Basic/VersionTuple.h:</div>
+<div class="line"><a name="l00281"></a><span class="lineno">  281</span> </div>
+<div class="line"><a name="l00282"></a><span class="lineno">  282</span> /home/tstellar/llvm/include/llvm/ADT/Triple.h:</div>
+<div class="line"><a name="l00283"></a><span class="lineno">  283</span> </div>
+<div class="line"><a name="l00284"></a><span class="lineno">  284</span> /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/Basic/Sanitizers.def:</div>
+<div class="line"><a name="l00285"></a><span class="lineno">  285</span> </div>
+<div class="line"><a name="l00286"></a><span class="lineno">  286</span> /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/Basic/LangOptions.def:</div>
+<div class="line"><a name="l00287"></a><span class="lineno">  287</span> </div>
+<div class="line"><a name="l00288"></a><span class="lineno">  288</span> /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/Basic/OpenCLExtensions.def:</div>
+<div class="line"><a name="l00289"></a><span class="lineno">  289</span> </div>
+<div class="line"><a name="l00290"></a><span class="lineno">  290</span> /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/AST/RawCommentList.h:</div>
+<div class="line"><a name="l00291"></a><span class="lineno">  291</span> </div>
+<div class="line"><a name="l00292"></a><span class="lineno">  292</span> /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/Basic/SourceManager.h:</div>
+<div class="line"><a name="l00293"></a><span class="lineno">  293</span> </div>
+<div class="line"><a name="l00294"></a><span class="lineno">  294</span> /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/Basic/FileManager.h:</div>
+<div class="line"><a name="l00295"></a><span class="lineno">  295</span> </div>
+<div class="line"><a name="l00296"></a><span class="lineno">  296</span> /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/Basic/FileSystemOptions.h:</div>
+<div class="line"><a name="l00297"></a><span class="lineno">  297</span> </div>
+<div class="line"><a name="l00298"></a><span class="lineno">  298</span> /home/tstellar/llvm/include/llvm/ADT/DenseSet.h:</div>
+<div class="line"><a name="l00299"></a><span class="lineno">  299</span> </div>
+<div class="line"><a name="l00300"></a><span class="lineno">  300</span> /home/tstellar/llvm/include/llvm/Support/MemoryBuffer.h:</div>
+<div class="line"><a name="l00301"></a><span class="lineno">  301</span> </div>
+<div class="line"><a name="l00302"></a><span class="lineno">  302</span> /home/tstellar/llvm/include/llvm/Support/CBindingWrapping.h:</div>
+<div class="line"><a name="l00303"></a><span class="lineno">  303</span> </div>
+<div class="line"><a name="l00304"></a><span class="lineno">  304</span> /home/tstellar/llvm/include/llvm-c/Core.h:</div>
+<div class="line"><a name="l00305"></a><span class="lineno">  305</span> </div>
+<div class="line"><a name="l00306"></a><span class="lineno">  306</span> /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/Basic/AddressSpaces.h:</div>
+<div class="line"><a name="l00307"></a><span class="lineno">  307</span> </div>
+<div class="line"><a name="l00308"></a><span class="lineno">  308</span> /home/tstellar/llvm/include/llvm/ADT/SmallPtrSet.h:</div>
+<div class="line"><a name="l00309"></a><span class="lineno">  309</span> </div>
+<div class="line"><a name="l00310"></a><span class="lineno">  310</span> /home/tstellar/llvm/include/llvm/ADT/TinyPtrVector.h:</div>
+<div class="line"><a name="l00311"></a><span class="lineno">  311</span> </div>
+<div class="line"><a name="l00312"></a><span class="lineno">  312</span> /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/Analysis/<a class="code" href="namespaceclang.html#ae9c75815d0d02c4fb4c86c9f86a8c9b9" title="Analysis - Set of available source code analyses.">Analyses</a>/FormatString.h:</div>
+<div class="line"><a name="l00313"></a><span class="lineno">  313</span> </div>
+<div class="line"><a name="l00314"></a><span class="lineno">  314</span> /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/Basic/TargetInfo.h:</div>
+<div class="line"><a name="l00315"></a><span class="lineno">  315</span> </div>
+<div class="line"><a name="l00316"></a><span class="lineno">  316</span> /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/Basic/TargetCXXABI.h:</div>
+<div class="line"><a name="l00317"></a><span class="lineno">  317</span> </div>
+<div class="line"><a name="l00318"></a><span class="lineno">  318</span> /home/tstellar/llvm/tools/clang/lib/Analysis/../../include/clang/Basic/TargetOptions.h:</div>
+<div class="line"><a name="l00319"></a><span class="lineno">  319</span> </div>
+<div class="line"><a name="l00320"></a><span class="lineno">  320</span> /home/tstellar/llvm/include/llvm/ADT/StringSwitch.h:</div>
+</div><!-- fragment --></div><!-- contents -->
+<hr>
+<p class="footer">
+Generated on Mon May 12 2014 12:13:39 for r$LatestRev$ by <a href="http://www.doxygen.org">Doxygen 
+1.8.3.1</a>.</p>
+<p class="footer">
+See the <a href="http://clang.llvm.org">Main Clang Web Page</a> for more 
+information.</p>
+</body>
+</html>

Added: www-releases/trunk/3.5.1/tools/clang/docs/doxygen/html/FormatString_8h_source.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/3.5.1/tools/clang/docs/doxygen/html/FormatString_8h_source.html?rev=225843&view=auto
==============================================================================
--- www-releases/trunk/3.5.1/tools/clang/docs/doxygen/html/FormatString_8h_source.html (added)
+++ www-releases/trunk/3.5.1/tools/clang/docs/doxygen/html/FormatString_8h_source.html Tue Jan 13 16:55:20 2015
@@ -0,0 +1,730 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<html><head>
+<meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
+<meta name="keywords" content="clang,LLVM,Low Level Virtual Machine,C,C++,doxygen,API,frontend,documentation"/>
+<meta name="description" content="C++ source code API documentation for clang."/>
+<title>clang: FormatString.h Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head><body>
+<p class="title">clang API Documentation</p>
+<!-- Generated by Doxygen 1.8.3.1 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main Page</span></a></li>
+      <li><a href="pages.html"><span>Related Pages</span></a></li>
+      <li><a href="modules.html"><span>Modules</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li><a href="annotated.html"><span>Classes</span></a></li>
+      <li class="current"><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="files.html"><span>File List</span></a></li>
+      <li><a href="globals.html"><span>File Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark"> </span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark"> </span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark"> </span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark"> </span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark"> </span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark"> </span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark"> </span>Typedefs</a><a class="SelectItem" href="javascript:void
 (0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark"> </span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark"> </span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark"> </span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark"> </span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(11)"><span class="SelectionMark"> </span>Groups</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(12)"><span class="SelectionMark"> </span>Pages</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_f65986501076cc710d4b9355ae3fe06d.html">clang</a></li><li class="navelem"><a class="el" href="dir_3e61bbac0c8515a3c083eb51d03eb390.html">include</a></li><li class="navelem"><a class="el" href="dir_ee4f288247dc2d9ccd0382aea6916312.html">clang</a></li><li class="navelem"><a class="el" href="dir_08cb8dd42fdabd3361bfbdc9f41acf33.html">Analysis</a></li><li class="navelem"><a class="el" href="dir_b4fe6fb44b150d8be57689f1bc720b21.html">Analyses</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">FormatString.h</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="FormatString_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span> <span class="comment">//= FormatString.h - Analysis of printf/fprintf format strings --*- C++ -*-===//</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span> <span class="comment">//</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno">    3</span> <span class="comment">//                     The LLVM Compiler Infrastructure</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span> <span class="comment">//</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span> <span class="comment">// This file is distributed under the University of Illinois Open Source</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span> <span class="comment">// License. See LICENSE.TXT for details.</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span> <span class="comment">//</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span> <span class="comment">//===----------------------------------------------------------------------===//</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span> <span class="comment">//</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span> <span class="comment">// This file defines APIs for analyzing the format strings of printf, fscanf,</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span> <span class="comment">// and friends.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span> <span class="comment">//</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span> <span class="comment">// The structure of format strings for fprintf are described in C99 7.19.6.1.</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span> <span class="comment">//</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span> <span class="comment">// The structure of format strings for fscanf are described in C99 7.19.6.2.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span> <span class="comment">//</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span> <span class="comment">//===----------------------------------------------------------------------===//</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span> </div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span> <span class="preprocessor">#ifndef LLVM_CLANG_FORMAT_H</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span> <span class="preprocessor"></span><span class="preprocessor">#define LLVM_CLANG_FORMAT_H</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno">   21</span> <span class="preprocessor"></span></div>
+<div class="line"><a name="l00022"></a><span class="lineno">   22</span> <span class="preprocessor">#include "<a class="code" href="CanonicalType_8h.html">clang/AST/CanonicalType.h</a>"</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno">   23</span> </div>
+<div class="line"><a name="l00024"></a><span class="lineno">   24</span> <span class="keyword">namespace </span>clang {</div>
+<div class="line"><a name="l00025"></a><span class="lineno">   25</span> </div>
+<div class="line"><a name="l00026"></a><span class="lineno">   26</span> <span class="keyword">class </span>TargetInfo;</div>
+<div class="line"><a name="l00027"></a><span class="lineno">   27</span> </div>
+<div class="line"><a name="l00028"></a><span class="lineno">   28</span> <span class="comment">//===----------------------------------------------------------------------===//</span><span class="comment"></span></div>
+<div class="line"><a name="l00029"></a><span class="lineno">   29</span> <span class="comment">/// Common components of both fprintf and fscanf format strings.</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"><a class="code" href="namespaceclang_1_1analyze__format__string.html">   30</a></span> <span class="comment"></span><span class="keyword">namespace </span>analyze_format_string {</div>
+<div class="line"><a name="l00031"></a><span class="lineno">   31</span> <span class="comment"></span></div>
+<div class="line"><a name="l00032"></a><span class="lineno">   32</span> <span class="comment">/// Class representing optional flags with location and representation</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno">   33</span> <span class="comment">/// information.</span></div>
+<div class="line"><a name="l00034"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1OptionalFlag.html">   34</a></span> <span class="comment"></span><span class="keyword">class </span><a class="code" href="classclang_1_1analyze__format__string_1_1OptionalFlag.html">OptionalFlag</a> {</div>
+<div class="line"><a name="l00035"></a><span class="lineno">   35</span> <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00036"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1OptionalFlag.html#a3f789a1d224fc4d501bb68b3dd091002">   36</a></span>   <a class="code" href="classclang_1_1analyze__format__string_1_1OptionalFlag.html#a3f789a1d224fc4d501bb68b3dd091002">OptionalFlag</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *Representation)</div>
+<div class="line"><a name="l00037"></a><span class="lineno">   37</span>       : representation(Representation), flag(<a class="code" href="stdbool_8h.html#a65e9886d74aaee76545e83dd09011727">false</a>) {}</div>
+<div class="line"><a name="l00038"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1OptionalFlag.html#a93841f38dbb19a190d30d2b21f3ad27a">   38</a></span>   <span class="keywordtype">bool</span> <a class="code" href="classclang_1_1analyze__format__string_1_1OptionalFlag.html#a93841f38dbb19a190d30d2b21f3ad27a">isSet</a>() { <span class="keywordflow">return</span> flag; }</div>
+<div class="line"><a name="l00039"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1OptionalFlag.html#a0912ab468f02cf5cb20d5c30da4fddbc">   39</a></span>   <span class="keywordtype">void</span> <span class="keyword">set</span>() { flag = <span class="keyword">true</span>; }</div>
+<div class="line"><a name="l00040"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1OptionalFlag.html#a7a3e954764daddc7d0b7386ad68b7a70">   40</a></span>   <span class="keywordtype">void</span> <a class="code" href="classclang_1_1analyze__format__string_1_1OptionalFlag.html#a7a3e954764daddc7d0b7386ad68b7a70">clear</a>() { flag = <span class="keyword">false</span>; }</div>
+<div class="line"><a name="l00041"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1OptionalFlag.html#a626188ef3518631bf02cf14f0dbf808f">   41</a></span>   <span class="keywordtype">void</span> <a class="code" href="classclang_1_1analyze__format__string_1_1OptionalFlag.html#a626188ef3518631bf02cf14f0dbf808f">setPosition</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *position) {</div>
+<div class="line"><a name="l00042"></a><span class="lineno">   42</span>     assert(position);</div>
+<div class="line"><a name="l00043"></a><span class="lineno">   43</span>     this->position = position;</div>
+<div class="line"><a name="l00044"></a><span class="lineno">   44</span>   }</div>
+<div class="line"><a name="l00045"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1OptionalFlag.html#a2eb4a0cf519710f1e7d874a434b0c6de">   45</a></span>   <span class="keyword">const</span> <span class="keywordtype">char</span> *<a class="code" href="classclang_1_1analyze__format__string_1_1OptionalFlag.html#a2eb4a0cf519710f1e7d874a434b0c6de">getPosition</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00046"></a><span class="lineno">   46</span>     assert(position);</div>
+<div class="line"><a name="l00047"></a><span class="lineno">   47</span>     <span class="keywordflow">return</span> position;</div>
+<div class="line"><a name="l00048"></a><span class="lineno">   48</span>   }</div>
+<div class="line"><a name="l00049"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1OptionalFlag.html#ae87d53849c3b19c4e2f460da951b333a">   49</a></span>   <span class="keyword">const</span> <span class="keywordtype">char</span> *<a class="code" href="classclang_1_1analyze__format__string_1_1OptionalFlag.html#ae87d53849c3b19c4e2f460da951b333a">toString</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> representation; }</div>
+<div class="line"><a name="l00050"></a><span class="lineno">   50</span> </div>
+<div class="line"><a name="l00051"></a><span class="lineno">   51</span>   <span class="comment">// Overloaded operators for bool like qualities</span></div>
+<div class="line"><a name="l00052"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1OptionalFlag.html#ad151bf2544759a1d2f5cac8ef043a9cd">   52</a></span>   LLVM_EXPLICIT <span class="keyword">operator</span> <a class="code" href="stdbool_8h.html#abb452686968e48b67397da5f97445f5b">bool</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> flag; }</div>
+<div class="line"><a name="l00053"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1OptionalFlag.html#a260ebaa4227333be2e2dddf53d69c7df">   53</a></span>   <a class="code" href="classclang_1_1analyze__format__string_1_1OptionalFlag.html">OptionalFlag</a>& <a class="code" href="classclang_1_1analyze__format__string_1_1OptionalFlag.html#a260ebaa4227333be2e2dddf53d69c7df">operator=</a>(<span class="keyword">const</span> <span class="keywordtype">bool</span> &rhs) {</div>
+<div class="line"><a name="l00054"></a><span class="lineno">   54</span>     flag = rhs;</div>
+<div class="line"><a name="l00055"></a><span class="lineno">   55</span>     <span class="keywordflow">return</span> *<span class="keyword">this</span>;  <span class="comment">// Return a reference to myself.</span></div>
+<div class="line"><a name="l00056"></a><span class="lineno">   56</span>   }</div>
+<div class="line"><a name="l00057"></a><span class="lineno">   57</span> <span class="keyword">private</span>:</div>
+<div class="line"><a name="l00058"></a><span class="lineno">   58</span>   <span class="keyword">const</span> <span class="keywordtype">char</span> *representation;</div>
+<div class="line"><a name="l00059"></a><span class="lineno">   59</span>   <span class="keyword">const</span> <span class="keywordtype">char</span> *position;</div>
+<div class="line"><a name="l00060"></a><span class="lineno">   60</span>   <span class="keywordtype">bool</span> flag;</div>
+<div class="line"><a name="l00061"></a><span class="lineno">   61</span> };</div>
+<div class="line"><a name="l00062"></a><span class="lineno">   62</span> <span class="comment"></span></div>
+<div class="line"><a name="l00063"></a><span class="lineno">   63</span> <span class="comment">/// Represents the length modifier in a format string in scanf/printf.</span></div>
+<div class="line"><a name="l00064"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html">   64</a></span> <span class="comment"></span><span class="keyword">class </span><a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html" title="Represents the length modifier in a format string in scanf/printf.">LengthModifier</a> {</div>
+<div class="line"><a name="l00065"></a><span class="lineno">   65</span> <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00066"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#aff2690c378d9475ad5bf6089d0fd2895">   66</a></span>   <span class="keyword">enum</span> <a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#aff2690c378d9475ad5bf6089d0fd2895">Kind</a> {</div>
+<div class="line"><a name="l00067"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#aff2690c378d9475ad5bf6089d0fd2895ae6f7aa020d3fc3385d8ca62f0955a4eb">   67</a></span>     <a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#aff2690c378d9475ad5bf6089d0fd2895ae6f7aa020d3fc3385d8ca62f0955a4eb">None</a>,</div>
+<div class="line"><a name="l00068"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#aff2690c378d9475ad5bf6089d0fd2895a4e94535d14ded9b0f3acb1d0dd2311e4">   68</a></span>     <a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#aff2690c378d9475ad5bf6089d0fd2895a4e94535d14ded9b0f3acb1d0dd2311e4">AsChar</a>,       <span class="comment">// 'hh'</span></div>
+<div class="line"><a name="l00069"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#aff2690c378d9475ad5bf6089d0fd2895aabbeaa4ab5e5c115b8498b50bc0a4964">   69</a></span>     <a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#aff2690c378d9475ad5bf6089d0fd2895aabbeaa4ab5e5c115b8498b50bc0a4964">AsShort</a>,      <span class="comment">// 'h'</span></div>
+<div class="line"><a name="l00070"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#aff2690c378d9475ad5bf6089d0fd2895a1ce884f4f99f7be7097e9e822fa6740a">   70</a></span>     <a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#aff2690c378d9475ad5bf6089d0fd2895a1ce884f4f99f7be7097e9e822fa6740a">AsLong</a>,       <span class="comment">// 'l'</span></div>
+<div class="line"><a name="l00071"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#aff2690c378d9475ad5bf6089d0fd2895afdd6ac3f00036867f5713c6d75055b27">   71</a></span>     <a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#aff2690c378d9475ad5bf6089d0fd2895afdd6ac3f00036867f5713c6d75055b27">AsLongLong</a>,   <span class="comment">// 'll'</span></div>
+<div class="line"><a name="l00072"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#aff2690c378d9475ad5bf6089d0fd2895a8eff55fdd638a6f2774e22669fbe1c6c">   72</a></span>     <a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#aff2690c378d9475ad5bf6089d0fd2895a8eff55fdd638a6f2774e22669fbe1c6c">AsQuad</a>,       <span class="comment">// 'q' (BSD, deprecated, for 64-bit integer types)</span></div>
+<div class="line"><a name="l00073"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#aff2690c378d9475ad5bf6089d0fd2895aa4a5df4f98fc3d433f94e3ae2d335c41">   73</a></span>     <a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#aff2690c378d9475ad5bf6089d0fd2895aa4a5df4f98fc3d433f94e3ae2d335c41">AsIntMax</a>,     <span class="comment">// 'j'</span></div>
+<div class="line"><a name="l00074"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#aff2690c378d9475ad5bf6089d0fd2895a8d04c1116705674a286ea41d5b088096">   74</a></span>     <a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#aff2690c378d9475ad5bf6089d0fd2895a8d04c1116705674a286ea41d5b088096">AsSizeT</a>,      <span class="comment">// 'z'</span></div>
+<div class="line"><a name="l00075"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#aff2690c378d9475ad5bf6089d0fd2895ad21eeddcc550ac3295f307ee81db6d09">   75</a></span>     <a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#aff2690c378d9475ad5bf6089d0fd2895ad21eeddcc550ac3295f307ee81db6d09">AsPtrDiff</a>,    <span class="comment">// 't'</span></div>
+<div class="line"><a name="l00076"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#aff2690c378d9475ad5bf6089d0fd2895aba4c17e6a09051abddf190e1e71b1aa7">   76</a></span>     <a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#aff2690c378d9475ad5bf6089d0fd2895aba4c17e6a09051abddf190e1e71b1aa7">AsInt32</a>,      <span class="comment">// 'I32' (MSVCRT, like __int32)</span></div>
+<div class="line"><a name="l00077"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#aff2690c378d9475ad5bf6089d0fd2895a65aa7828dbcdf8d6ea1e0ba383603d78">   77</a></span>     <a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#aff2690c378d9475ad5bf6089d0fd2895a65aa7828dbcdf8d6ea1e0ba383603d78">AsInt3264</a>,    <span class="comment">// 'I'   (MSVCRT, like __int3264 from MIDL)</span></div>
+<div class="line"><a name="l00078"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#aff2690c378d9475ad5bf6089d0fd2895a5d27a5354f13fb2715eebfed546ee303">   78</a></span>     <a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#aff2690c378d9475ad5bf6089d0fd2895a5d27a5354f13fb2715eebfed546ee303">AsInt64</a>,      <span class="comment">// 'I64' (MSVCRT, like __int64)</span></div>
+<div class="line"><a name="l00079"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#aff2690c378d9475ad5bf6089d0fd2895a28f73f795c4bc11c858eb58835924652">   79</a></span>     <a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#aff2690c378d9475ad5bf6089d0fd2895a28f73f795c4bc11c858eb58835924652">AsLongDouble</a>, <span class="comment">// 'L'</span></div>
+<div class="line"><a name="l00080"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#aff2690c378d9475ad5bf6089d0fd2895a8e3573d0643e9fff4431cdc5f528f857">   80</a></span>     <a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#aff2690c378d9475ad5bf6089d0fd2895a8e3573d0643e9fff4431cdc5f528f857">AsAllocate</a>,   <span class="comment">// for '%as', GNU extension to C90 scanf</span></div>
+<div class="line"><a name="l00081"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#aff2690c378d9475ad5bf6089d0fd2895a0d526133099ab9b15fdfc4424191ffe5">   81</a></span>     <a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#aff2690c378d9475ad5bf6089d0fd2895a0d526133099ab9b15fdfc4424191ffe5">AsMAllocate</a>,  <span class="comment">// for '%ms', GNU extension to scanf</span></div>
+<div class="line"><a name="l00082"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#aff2690c378d9475ad5bf6089d0fd2895a0f091406d6f2138694de759ae3beed5a">   82</a></span>     <a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#aff2690c378d9475ad5bf6089d0fd2895a0f091406d6f2138694de759ae3beed5a">AsWideChar</a> = <a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#aff2690c378d9475ad5bf6089d0fd2895a1ce884f4f99f7be7097e9e822fa6740a">AsLong</a> <span class="comment">// for '%ls', only makes sense for printf</span></div>
+<div class="line"><a name="l00083"></a><span class="lineno">   83</span>   };</div>
+<div class="line"><a name="l00084"></a><span class="lineno">   84</span> </div>
+<div class="line"><a name="l00085"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#a3acceb83515c1be643ce25153eb554ec">   85</a></span>   <a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#a3acceb83515c1be643ce25153eb554ec">LengthModifier</a>()</div>
+<div class="line"><a name="l00086"></a><span class="lineno">   86</span>     : Position(0), kind(<a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#aff2690c378d9475ad5bf6089d0fd2895ae6f7aa020d3fc3385d8ca62f0955a4eb">None</a>) {}</div>
+<div class="line"><a name="l00087"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#a44e560248716d5f291eb6d7693ba2657">   87</a></span>   <a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#a3acceb83515c1be643ce25153eb554ec">LengthModifier</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *pos, <a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#aff2690c378d9475ad5bf6089d0fd2895">Kind</a> k)</div>
+<div class="line"><a name="l00088"></a><span class="lineno">   88</span>     : Position(pos), kind(k) {}</div>
+<div class="line"><a name="l00089"></a><span class="lineno">   89</span> </div>
+<div class="line"><a name="l00090"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#a7d098b2242b175c1002e8ce1c1396842">   90</a></span>   <span class="keyword">const</span> <span class="keywordtype">char</span> *<a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#a7d098b2242b175c1002e8ce1c1396842">getStart</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00091"></a><span class="lineno">   91</span>     <span class="keywordflow">return</span> Position;</div>
+<div class="line"><a name="l00092"></a><span class="lineno">   92</span>   }</div>
+<div class="line"><a name="l00093"></a><span class="lineno">   93</span> </div>
+<div class="line"><a name="l00094"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#a193ea9c2a618d245f1bbc488cc92336f">   94</a></span>   <span class="keywordtype">unsigned</span> <a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#a193ea9c2a618d245f1bbc488cc92336f">getLength</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00095"></a><span class="lineno">   95</span>     <span class="keywordflow">switch</span> (kind) {</div>
+<div class="line"><a name="l00096"></a><span class="lineno">   96</span>       <span class="keywordflow">default</span>:</div>
+<div class="line"><a name="l00097"></a><span class="lineno">   97</span>         <span class="keywordflow">return</span> 1;</div>
+<div class="line"><a name="l00098"></a><span class="lineno">   98</span>       <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#aff2690c378d9475ad5bf6089d0fd2895afdd6ac3f00036867f5713c6d75055b27">AsLongLong</a>:</div>
+<div class="line"><a name="l00099"></a><span class="lineno">   99</span>       <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#aff2690c378d9475ad5bf6089d0fd2895a4e94535d14ded9b0f3acb1d0dd2311e4">AsChar</a>:</div>
+<div class="line"><a name="l00100"></a><span class="lineno">  100</span>         <span class="keywordflow">return</span> 2;</div>
+<div class="line"><a name="l00101"></a><span class="lineno">  101</span>       <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#aff2690c378d9475ad5bf6089d0fd2895aba4c17e6a09051abddf190e1e71b1aa7">AsInt32</a>:</div>
+<div class="line"><a name="l00102"></a><span class="lineno">  102</span>       <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#aff2690c378d9475ad5bf6089d0fd2895a5d27a5354f13fb2715eebfed546ee303">AsInt64</a>:</div>
+<div class="line"><a name="l00103"></a><span class="lineno">  103</span>         <span class="keywordflow">return</span> 3;</div>
+<div class="line"><a name="l00104"></a><span class="lineno">  104</span>       <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#aff2690c378d9475ad5bf6089d0fd2895ae6f7aa020d3fc3385d8ca62f0955a4eb">None</a>:</div>
+<div class="line"><a name="l00105"></a><span class="lineno">  105</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00106"></a><span class="lineno">  106</span>     }</div>
+<div class="line"><a name="l00107"></a><span class="lineno">  107</span>   }</div>
+<div class="line"><a name="l00108"></a><span class="lineno">  108</span> </div>
+<div class="line"><a name="l00109"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#a7a664b97549a6fe956519f54d5f2a3b6">  109</a></span>   <a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#aff2690c378d9475ad5bf6089d0fd2895">Kind</a> <a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#a7a664b97549a6fe956519f54d5f2a3b6">getKind</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> kind; }</div>
+<div class="line"><a name="l00110"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#adc2cdc9db75f9ab045fa273e6597504d">  110</a></span>   <span class="keywordtype">void</span> <a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#adc2cdc9db75f9ab045fa273e6597504d">setKind</a>(<a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#aff2690c378d9475ad5bf6089d0fd2895">Kind</a> k) { kind = k; }</div>
+<div class="line"><a name="l00111"></a><span class="lineno">  111</span> </div>
+<div class="line"><a name="l00112"></a><span class="lineno">  112</span>   <span class="keyword">const</span> <span class="keywordtype">char</span> *<a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html#ae955ef620b2e96e01cb727b80a8e046d">toString</a>() <span class="keyword">const</span>;</div>
+<div class="line"><a name="l00113"></a><span class="lineno">  113</span> </div>
+<div class="line"><a name="l00114"></a><span class="lineno">  114</span> <span class="keyword">private</span>:</div>
+<div class="line"><a name="l00115"></a><span class="lineno">  115</span>   <span class="keyword">const</span> <span class="keywordtype">char</span> *Position;</div>
+<div class="line"><a name="l00116"></a><span class="lineno">  116</span>   <a class="code" href="ChrootChecker_8cpp.html#aa10c9e8951b8ccf714a59ec321bdac5b">Kind</a> kind;</div>
+<div class="line"><a name="l00117"></a><span class="lineno">  117</span> };</div>
+<div class="line"><a name="l00118"></a><span class="lineno">  118</span> </div>
+<div class="line"><a name="l00119"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html">  119</a></span> <span class="keyword">class </span><a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html">ConversionSpecifier</a> {</div>
+<div class="line"><a name="l00120"></a><span class="lineno">  120</span> <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00121"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1">  121</a></span>   <span class="keyword">enum</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1">Kind</a> {</div>
+<div class="line"><a name="l00122"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a205c5b4cb2a9ca10f0a2a1f930f61c6d">  122</a></span>     <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a205c5b4cb2a9ca10f0a2a1f930f61c6d">InvalidSpecifier</a> = 0,</div>
+<div class="line"><a name="l00123"></a><span class="lineno">  123</span>       <span class="comment">// C99 conversion specifiers.</span></div>
+<div class="line"><a name="l00124"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a02a4bb9cad84a46cec1d4e46e9e37ef0">  124</a></span>     <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a02a4bb9cad84a46cec1d4e46e9e37ef0">cArg</a>,</div>
+<div class="line"><a name="l00125"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1aa718f7d4a0e5d8d903f30acbb91e179c">  125</a></span>     <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1aa718f7d4a0e5d8d903f30acbb91e179c">dArg</a>,</div>
+<div class="line"><a name="l00126"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1ab1bdb2a7e55f254fb7543d15443d0ef4">  126</a></span>     <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1ab1bdb2a7e55f254fb7543d15443d0ef4">DArg</a>, <span class="comment">// Apple extension</span></div>
+<div class="line"><a name="l00127"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a4e6027e3aea8ed3522591419eb7b124f">  127</a></span>     <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a4e6027e3aea8ed3522591419eb7b124f">iArg</a>,</div>
+<div class="line"><a name="l00128"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1aa1003250fc25f7fb696a6eb61d4e8f89">  128</a></span>     <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1adf1bbe5cad53bafe55cd35a1ebd68e93">IntArgBeg</a> = <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1aa718f7d4a0e5d8d903f30acbb91e179c">dArg</a>, <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1aa1003250fc25f7fb696a6eb61d4e8f89">IntArgEnd</a> = <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a4e6027e3aea8ed3522591419eb7b124f">iArg</a>,</div>
+<div class="line"><a name="l00129"></a><span class="lineno">  129</span> </div>
+<div class="line"><a name="l00130"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1aeea95e9053aa7370633a3a5755348629">  130</a></span>     <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1aeea95e9053aa7370633a3a5755348629">oArg</a>,</div>
+<div class="line"><a name="l00131"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1aa09aec6acd7c9ca1774bb3d579a91bef">  131</a></span>     <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1aa09aec6acd7c9ca1774bb3d579a91bef">OArg</a>, <span class="comment">// Apple extension</span></div>
+<div class="line"><a name="l00132"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a275b8377f2e55da5fde6cbaeb8d7c5ee">  132</a></span>     <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a275b8377f2e55da5fde6cbaeb8d7c5ee">uArg</a>,</div>
+<div class="line"><a name="l00133"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1ae19e44bba2c6232cebd58adeceffdf07">  133</a></span>     <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1ae19e44bba2c6232cebd58adeceffdf07">UArg</a>, <span class="comment">// Apple extension</span></div>
+<div class="line"><a name="l00134"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1ace288a48383643360e259dd3d8111dc6">  134</a></span>     <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1ace288a48383643360e259dd3d8111dc6">xArg</a>,</div>
+<div class="line"><a name="l00135"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a9cc747499d63456392a1aaaa415d93a9">  135</a></span>     <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a9cc747499d63456392a1aaaa415d93a9">XArg</a>,</div>
+<div class="line"><a name="l00136"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a4a18adf1aad1b0bd607eb0f865378bad">  136</a></span>     <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a3274107d740534c20e07f064395d3354">UIntArgBeg</a> = <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1aeea95e9053aa7370633a3a5755348629">oArg</a>, <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a4a18adf1aad1b0bd607eb0f865378bad">UIntArgEnd</a> = <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a9cc747499d63456392a1aaaa415d93a9">XArg</a>,</div>
+<div class="line"><a name="l00137"></a><span class="lineno">  137</span> </div>
+<div class="line"><a name="l00138"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a6721002098ae2e8ac30a1ca4cba4b248">  138</a></span>     <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a6721002098ae2e8ac30a1ca4cba4b248">fArg</a>,</div>
+<div class="line"><a name="l00139"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a542227391a27a804dcf5e74d697d0f97">  139</a></span>     <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a542227391a27a804dcf5e74d697d0f97">FArg</a>,</div>
+<div class="line"><a name="l00140"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a9fe5793ca92b10ae0ae503e86846ece0">  140</a></span>     <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a9fe5793ca92b10ae0ae503e86846ece0">eArg</a>,</div>
+<div class="line"><a name="l00141"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1ae80747eded1d90043b3d5ffbd6c63373">  141</a></span>     <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1ae80747eded1d90043b3d5ffbd6c63373">EArg</a>,</div>
+<div class="line"><a name="l00142"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a82797b7eeeda3d2511fcb8288bf0d8f2">  142</a></span>     <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a82797b7eeeda3d2511fcb8288bf0d8f2">gArg</a>,</div>
+<div class="line"><a name="l00143"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a69ceb6eb4b535ccb35b9a069d069b63f">  143</a></span>     <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a69ceb6eb4b535ccb35b9a069d069b63f">GArg</a>,</div>
+<div class="line"><a name="l00144"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a917e205d7abe7cfb4481388cbbf7d24b">  144</a></span>     <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a917e205d7abe7cfb4481388cbbf7d24b">aArg</a>,</div>
+<div class="line"><a name="l00145"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1aa4898758cd301f62ca57b9b250708351">  145</a></span>     <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1aa4898758cd301f62ca57b9b250708351">AArg</a>,</div>
+<div class="line"><a name="l00146"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a7b898d22e5abc318f7114e2c0179b88c">  146</a></span>     <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1ad92884443f265fc84d1b6822ec780df6">DoubleArgBeg</a> = <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a6721002098ae2e8ac30a1ca4cba4b248">fArg</a>, <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a7b898d22e5abc318f7114e2c0179b88c">DoubleArgEnd</a> = <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1aa4898758cd301f62ca57b9b250708351">AArg</a>,</div>
+<div class="line"><a name="l00147"></a><span class="lineno">  147</span> </div>
+<div class="line"><a name="l00148"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1ad14fe138c8f80dc70c46825e01c31777">  148</a></span>     <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1ad14fe138c8f80dc70c46825e01c31777">sArg</a>,</div>
+<div class="line"><a name="l00149"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a11e3cfa42c2e7861a94efa743a90430a">  149</a></span>     <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a11e3cfa42c2e7861a94efa743a90430a">pArg</a>,</div>
+<div class="line"><a name="l00150"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a792fd76e2c595e8cdcfbfa1bfef0e1d3">  150</a></span>     <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a792fd76e2c595e8cdcfbfa1bfef0e1d3">nArg</a>,</div>
+<div class="line"><a name="l00151"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1aca54f7cd3084cbf423f8044460f379da">  151</a></span>     <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1aca54f7cd3084cbf423f8044460f379da">PercentArg</a>,</div>
+<div class="line"><a name="l00152"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1aa09bfd8130b55ac148da21e0e43fab9f">  152</a></span>     <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1aa09bfd8130b55ac148da21e0e43fab9f">CArg</a>,</div>
+<div class="line"><a name="l00153"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a160f87b0871365f78394168a94bd9804">  153</a></span>     <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a160f87b0871365f78394168a94bd9804">SArg</a>,</div>
+<div class="line"><a name="l00154"></a><span class="lineno">  154</span> </div>
+<div class="line"><a name="l00155"></a><span class="lineno">  155</span>     <span class="comment">// ** Printf-specific **</span></div>
+<div class="line"><a name="l00156"></a><span class="lineno">  156</span> </div>
+<div class="line"><a name="l00157"></a><span class="lineno">  157</span>     <span class="comment">// Objective-C specific specifiers.</span></div>
+<div class="line"><a name="l00158"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a9967c642b61140076c027233bb9157bf">  158</a></span>     <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a9967c642b61140076c027233bb9157bf">ObjCObjArg</a>,  <span class="comment">// '@'</span></div>
+<div class="line"><a name="l00159"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1aeb2a37eaabb6ea3598d9d5db346151f9">  159</a></span>     <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a277373dc31ff8f24885e560e7a892b49">ObjCBeg</a> = <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a9967c642b61140076c027233bb9157bf">ObjCObjArg</a>, <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1aeb2a37eaabb6ea3598d9d5db346151f9">ObjCEnd</a> = <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a9967c642b61140076c027233bb9157bf">ObjCObjArg</a>,</div>
+<div class="line"><a name="l00160"></a><span class="lineno">  160</span> </div>
+<div class="line"><a name="l00161"></a><span class="lineno">  161</span>     <span class="comment">// GlibC specific specifiers.</span></div>
+<div class="line"><a name="l00162"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1ad20a241e0e5d50f23740ee2afe07eaa1">  162</a></span>     <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1ad20a241e0e5d50f23740ee2afe07eaa1">PrintErrno</a>,   <span class="comment">// 'm'</span></div>
+<div class="line"><a name="l00163"></a><span class="lineno">  163</span> </div>
+<div class="line"><a name="l00164"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a43f4034821294b502a4589a2b951c989">  164</a></span>     <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1adbdfa419b125655308a9071b4328021b">PrintfConvBeg</a> = <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a9967c642b61140076c027233bb9157bf">ObjCObjArg</a>, <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a43f4034821294b502a4589a2b951c989">PrintfConvEnd</a> = <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1ad20a241e0e5d50f23740ee2afe07eaa1">PrintErrno</a>,</div>
+<div class="line"><a name="l00165"></a><span class="lineno">  165</span> </div>
+<div class="line"><a name="l00166"></a><span class="lineno">  166</span>     <span class="comment">// ** Scanf-specific **</span></div>
+<div class="line"><a name="l00167"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1aa35aa4f6642be10b09095a73c0ed9139">  167</a></span>     <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1aa35aa4f6642be10b09095a73c0ed9139">ScanListArg</a>, <span class="comment">// '['</span></div>
+<div class="line"><a name="l00168"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a78556dfe210caaea6282b4daf8796b22">  168</a></span>     <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a53fa4ecabbf03caecff866cd1d4a921c">ScanfConvBeg</a> = <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1aa35aa4f6642be10b09095a73c0ed9139">ScanListArg</a>, <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a78556dfe210caaea6282b4daf8796b22">ScanfConvEnd</a> = <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1aa35aa4f6642be10b09095a73c0ed9139">ScanListArg</a></div>
+<div class="line"><a name="l00169"></a><span class="lineno">  169</span>   };</div>
+<div class="line"><a name="l00170"></a><span class="lineno">  170</span> </div>
+<div class="line"><a name="l00171"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a1a8222200b810a2380489d185bfc430e">  171</a></span>   <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a1a8222200b810a2380489d185bfc430e">ConversionSpecifier</a>(<span class="keywordtype">bool</span> isPrintf = <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00172"></a><span class="lineno">  172</span>     : <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a271382c538146037ae34938eb715d454">IsPrintf</a>(isPrintf), <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#abdb6ccbb486a5eea1f438cf915f27bc0">Position</a>(0), <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a75e679bedc9f94b582f2f7333a9c96bd">EndScanList</a>(0), <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a421d9c7e99f13006a269b3eafaa38801">kind</a>(<a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a205c5b4cb2a9ca10f0a2a1f930f61c6d">InvalidSpecifier</a>) {}</div>
+<div class="line"><a name="l00173"></a><span class="lineno">  173</span> </div>
+<div class="line"><a name="l00174"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#af4b5593546aa72c1a27785bd6c52b797">  174</a></span>   <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a1a8222200b810a2380489d185bfc430e">ConversionSpecifier</a>(<span class="keywordtype">bool</span> isPrintf, <span class="keyword">const</span> <span class="keywordtype">char</span> *pos, <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1">Kind</a> k)</div>
+<div class="line"><a name="l00175"></a><span class="lineno">  175</span>     : <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a271382c538146037ae34938eb715d454">IsPrintf</a>(isPrintf), <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#abdb6ccbb486a5eea1f438cf915f27bc0">Position</a>(pos), <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a75e679bedc9f94b582f2f7333a9c96bd">EndScanList</a>(0), <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a421d9c7e99f13006a269b3eafaa38801">kind</a>(k) {}</div>
+<div class="line"><a name="l00176"></a><span class="lineno">  176</span> </div>
+<div class="line"><a name="l00177"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a09d3bb18027e66c95a5ebe80cf8b96a7">  177</a></span>   <span class="keyword">const</span> <span class="keywordtype">char</span> *<a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a09d3bb18027e66c95a5ebe80cf8b96a7">getStart</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00178"></a><span class="lineno">  178</span>     <span class="keywordflow">return</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#abdb6ccbb486a5eea1f438cf915f27bc0">Position</a>;</div>
+<div class="line"><a name="l00179"></a><span class="lineno">  179</span>   }</div>
+<div class="line"><a name="l00180"></a><span class="lineno">  180</span> </div>
+<div class="line"><a name="l00181"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#ab45bde4db6b0562bcfb3365cf705919e">  181</a></span>   StringRef <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#ab45bde4db6b0562bcfb3365cf705919e">getCharacters</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00182"></a><span class="lineno">  182</span>     <span class="keywordflow">return</span> StringRef(<a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a09d3bb18027e66c95a5ebe80cf8b96a7">getStart</a>(), <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#ac05b2b08a1441a3627c6edc91a3cdecb">getLength</a>());</div>
+<div class="line"><a name="l00183"></a><span class="lineno">  183</span>   }</div>
+<div class="line"><a name="l00184"></a><span class="lineno">  184</span> </div>
+<div class="line"><a name="l00185"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a0436843bec3bd58a671bb0da0cdc5efa">  185</a></span>   <span class="keywordtype">bool</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a0436843bec3bd58a671bb0da0cdc5efa">consumesDataArgument</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00186"></a><span class="lineno">  186</span>     <span class="keywordflow">switch</span> (<a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a421d9c7e99f13006a269b3eafaa38801">kind</a>) {</div>
+<div class="line"><a name="l00187"></a><span class="lineno">  187</span>       <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1ad20a241e0e5d50f23740ee2afe07eaa1">PrintErrno</a>:</div>
+<div class="line"><a name="l00188"></a><span class="lineno">  188</span>         assert(<a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a271382c538146037ae34938eb715d454">IsPrintf</a>);</div>
+<div class="line"><a name="l00189"></a><span class="lineno">  189</span>         <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00190"></a><span class="lineno">  190</span>       <span class="keywordflow">case</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1aca54f7cd3084cbf423f8044460f379da">PercentArg</a>:</div>
+<div class="line"><a name="l00191"></a><span class="lineno">  191</span>         <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00192"></a><span class="lineno">  192</span>       <span class="keywordflow">default</span>:</div>
+<div class="line"><a name="l00193"></a><span class="lineno">  193</span>         <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00194"></a><span class="lineno">  194</span>     }</div>
+<div class="line"><a name="l00195"></a><span class="lineno">  195</span>   }</div>
+<div class="line"><a name="l00196"></a><span class="lineno">  196</span> </div>
+<div class="line"><a name="l00197"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#aa3b05ff4b64d8dc3e6f78f633fe21eaf">  197</a></span>   <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1">Kind</a> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#aa3b05ff4b64d8dc3e6f78f633fe21eaf">getKind</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a421d9c7e99f13006a269b3eafaa38801">kind</a>; }</div>
+<div class="line"><a name="l00198"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a0100f35b80873fe36f4989cd545d34ef">  198</a></span>   <span class="keywordtype">void</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a0100f35b80873fe36f4989cd545d34ef">setKind</a>(<a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1">Kind</a> k) { <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a421d9c7e99f13006a269b3eafaa38801">kind</a> = k; }</div>
+<div class="line"><a name="l00199"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#ac05b2b08a1441a3627c6edc91a3cdecb">  199</a></span>   <span class="keywordtype">unsigned</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#ac05b2b08a1441a3627c6edc91a3cdecb">getLength</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00200"></a><span class="lineno">  200</span>     <span class="keywordflow">return</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a75e679bedc9f94b582f2f7333a9c96bd">EndScanList</a> ? <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a75e679bedc9f94b582f2f7333a9c96bd">EndScanList</a> - <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#abdb6ccbb486a5eea1f438cf915f27bc0">Position</a> : 1;</div>
+<div class="line"><a name="l00201"></a><span class="lineno">  201</span>   }</div>
+<div class="line"><a name="l00202"></a><span class="lineno">  202</span> </div>
+<div class="line"><a name="l00203"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#ae2fba28180597c8aeeae6a1e033aa781">  203</a></span>   <span class="keywordtype">bool</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#ae2fba28180597c8aeeae6a1e033aa781">isIntArg</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a421d9c7e99f13006a269b3eafaa38801">kind</a> >= <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1adf1bbe5cad53bafe55cd35a1ebd68e93">IntArgBeg</a> && <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a421d9c7e99f13006a269b3eafaa38801">kind</a> <= <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifi
 er.html#a031ac8e2230ee671c2add5ac3d1a21d1aa1003250fc25f7fb696a6eb61d4e8f89">IntArgEnd</a>; }</div>
+<div class="line"><a name="l00204"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a77f1c3d9f9b14454c9b46a8d66bfec33">  204</a></span>   <span class="keywordtype">bool</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a77f1c3d9f9b14454c9b46a8d66bfec33">isUIntArg</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a421d9c7e99f13006a269b3eafaa38801">kind</a> >= <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a3274107d740534c20e07f064395d3354">UIntArgBeg</a> && <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a421d9c7e99f13006a269b3eafaa38801">kind</a> <= <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpeci
 fier.html#a031ac8e2230ee671c2add5ac3d1a21d1a4a18adf1aad1b0bd607eb0f865378bad">UIntArgEnd</a>; }</div>
+<div class="line"><a name="l00205"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#afa624fe09e06dcd90271e4925ead827e">  205</a></span>   <span class="keywordtype">bool</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#afa624fe09e06dcd90271e4925ead827e">isAnyIntArg</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a421d9c7e99f13006a269b3eafaa38801">kind</a> >= <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1adf1bbe5cad53bafe55cd35a1ebd68e93">IntArgBeg</a> && <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a421d9c7e99f13006a269b3eafaa38801">kind</a> <= <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpec
 ifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a4a18adf1aad1b0bd607eb0f865378bad">UIntArgEnd</a>; }</div>
+<div class="line"><a name="l00206"></a><span class="lineno">  206</span>   <span class="keyword">const</span> <span class="keywordtype">char</span> *<a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a15188659e666ceed4dc80d9712750bcf">toString</a>() <span class="keyword">const</span>;</div>
+<div class="line"><a name="l00207"></a><span class="lineno">  207</span> </div>
+<div class="line"><a name="l00208"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#ab338cbec5869e8fba6e4504696d7ec0b">  208</a></span>   <span class="keywordtype">bool</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#ab338cbec5869e8fba6e4504696d7ec0b">isPrintfKind</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a271382c538146037ae34938eb715d454">IsPrintf</a>; }</div>
+<div class="line"><a name="l00209"></a><span class="lineno">  209</span>   </div>
+<div class="line"><a name="l00210"></a><span class="lineno">  210</span>   <a class="code" href="classllvm_1_1Optional.html">Optional<ConversionSpecifier></a> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a1e4c2d33f9cff497d42ebf75eb773a09">getStandardSpecifier</a>() <span class="keyword">const</span>;</div>
+<div class="line"><a name="l00211"></a><span class="lineno">  211</span> </div>
+<div class="line"><a name="l00212"></a><span class="lineno">  212</span> <span class="keyword">protected</span>:</div>
+<div class="line"><a name="l00213"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a271382c538146037ae34938eb715d454">  213</a></span>   <span class="keywordtype">bool</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a271382c538146037ae34938eb715d454">IsPrintf</a>;</div>
+<div class="line"><a name="l00214"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#abdb6ccbb486a5eea1f438cf915f27bc0">  214</a></span>   <span class="keyword">const</span> <span class="keywordtype">char</span> *<a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#abdb6ccbb486a5eea1f438cf915f27bc0">Position</a>;</div>
+<div class="line"><a name="l00215"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a75e679bedc9f94b582f2f7333a9c96bd">  215</a></span>   <span class="keyword">const</span> <span class="keywordtype">char</span> *<a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a75e679bedc9f94b582f2f7333a9c96bd">EndScanList</a>;</div>
+<div class="line"><a name="l00216"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a421d9c7e99f13006a269b3eafaa38801">  216</a></span>   <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1">Kind</a> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a421d9c7e99f13006a269b3eafaa38801">kind</a>;</div>
+<div class="line"><a name="l00217"></a><span class="lineno">  217</span> };</div>
+<div class="line"><a name="l00218"></a><span class="lineno">  218</span> </div>
+<div class="line"><a name="l00219"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1ArgType.html">  219</a></span> <span class="keyword">class </span><a class="code" href="classclang_1_1analyze__format__string_1_1ArgType.html">ArgType</a> {</div>
+<div class="line"><a name="l00220"></a><span class="lineno">  220</span> <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00221"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1ArgType.html#a0a8f19649da4629776965291d6e36feba9d6468f8dccc6b2acc19c71333f5453f">  221</a></span>   <span class="keyword">enum</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ArgType.html#a0a8f19649da4629776965291d6e36feb">Kind</a> { <a class="code" href="classclang_1_1analyze__format__string_1_1ArgType.html#a0a8f19649da4629776965291d6e36feba9d6468f8dccc6b2acc19c71333f5453f">UnknownTy</a>, <a class="code" href="classclang_1_1analyze__format__string_1_1ArgType.html#a0a8f19649da4629776965291d6e36feba0f64ac781a7360af87c8607359d9fbd4">InvalidTy</a>, <a class="code" href="classclang_1_1analyze__format__string_1_1ArgType.html#a0a8f19649da4629776965291d6e36feba2193e6268c5a0f01bc35b57fb0313ca8">SpecificTy</a>, <a class="code" href="classclang_1_1analyze__format__string_1_1ArgType.html#a0a8f19649da4629776965291d6e36feba74b7fe8b5d1aa264800e547b1
 03d0305">ObjCPointerTy</a>, <a class="code" href="classclang_1_1analyze__format__string_1_1ArgType.html#a0a8f19649da4629776965291d6e36feba10602cf6cc265f2769925905bce93669">CPointerTy</a>,</div>
+<div class="line"><a name="l00222"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1ArgType.html#a0a8f19649da4629776965291d6e36febaf443b41de24b27a5bee7b106d007f362">  222</a></span>               <a class="code" href="classclang_1_1analyze__format__string_1_1ArgType.html#a0a8f19649da4629776965291d6e36feba0e71229122ab1c9e999c52ea7c382d65">AnyCharTy</a>, <a class="code" href="classclang_1_1analyze__format__string_1_1ArgType.html#a0a8f19649da4629776965291d6e36feba26bd65cefb3e97fe49557e47b522456c">CStrTy</a>, <a class="code" href="classclang_1_1analyze__format__string_1_1ArgType.html#a0a8f19649da4629776965291d6e36febaab1ecb9be0a74f96962d05e267fcea9f">WCStrTy</a>, <a class="code" href="classclang_1_1analyze__format__string_1_1ArgType.html#a0a8f19649da4629776965291d6e36febaf443b41de24b27a5bee7b106d007f362">WIntTy</a> };</div>
+<div class="line"><a name="l00223"></a><span class="lineno">  223</span> <span class="keyword">private</span>:</div>
+<div class="line"><a name="l00224"></a><span class="lineno">  224</span>   <span class="keyword">const</span> <a class="code" href="ChrootChecker_8cpp.html#aa10c9e8951b8ccf714a59ec321bdac5b">Kind</a> K;</div>
+<div class="line"><a name="l00225"></a><span class="lineno">  225</span>   <a class="code" href="classclang_1_1QualType.html">QualType</a> T;</div>
+<div class="line"><a name="l00226"></a><span class="lineno">  226</span>   <span class="keyword">const</span> <span class="keywordtype">char</span> *Name;</div>
+<div class="line"><a name="l00227"></a><span class="lineno">  227</span>   <span class="keywordtype">bool</span> Ptr;</div>
+<div class="line"><a name="l00228"></a><span class="lineno">  228</span> <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00229"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1ArgType.html#aba4b31a4805521a0f0c7781f71bcafe7">  229</a></span>   <a class="code" href="classclang_1_1analyze__format__string_1_1ArgType.html#aba4b31a4805521a0f0c7781f71bcafe7">ArgType</a>(<a class="code" href="classclang_1_1analyze__format__string_1_1ArgType.html#a0a8f19649da4629776965291d6e36feb">Kind</a> k = <a class="code" href="classclang_1_1analyze__format__string_1_1ArgType.html#a0a8f19649da4629776965291d6e36feba9d6468f8dccc6b2acc19c71333f5453f">UnknownTy</a>, <span class="keyword">const</span> <span class="keywordtype">char</span> *n = 0) : K(k), Name(n), Ptr(<a class="code" href="stdbool_8h.html#a65e9886d74aaee76545e83dd09011727">false</a>) {}</div>
+<div class="line"><a name="l00230"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1ArgType.html#a9ae42e5df1774bc57b2b73aace61bb5d">  230</a></span>   <a class="code" href="classclang_1_1analyze__format__string_1_1ArgType.html#aba4b31a4805521a0f0c7781f71bcafe7">ArgType</a>(<a class="code" href="classclang_1_1QualType.html">QualType</a> t, <span class="keyword">const</span> <span class="keywordtype">char</span> *n = 0)</div>
+<div class="line"><a name="l00231"></a><span class="lineno">  231</span>       : K(<a class="code" href="classclang_1_1analyze__format__string_1_1ArgType.html#a0a8f19649da4629776965291d6e36feba2193e6268c5a0f01bc35b57fb0313ca8">SpecificTy</a>), T(t), Name(n), Ptr(<a class="code" href="stdbool_8h.html#a65e9886d74aaee76545e83dd09011727">false</a>) {}</div>
+<div class="line"><a name="l00232"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1ArgType.html#a5275fac79ea0adba1595bd605310d8bd">  232</a></span>   <a class="code" href="classclang_1_1analyze__format__string_1_1ArgType.html#a5275fac79ea0adba1595bd605310d8bd">ArgType</a>(<a class="code" href="classclang_1_1CanQual.html">CanQualType</a> t) : K(<a class="code" href="classclang_1_1analyze__format__string_1_1ArgType.html#a0a8f19649da4629776965291d6e36feba2193e6268c5a0f01bc35b57fb0313ca8">SpecificTy</a>), T(t), Name(0), Ptr(<a class="code" href="stdbool_8h.html#a65e9886d74aaee76545e83dd09011727">false</a>) {}</div>
+<div class="line"><a name="l00233"></a><span class="lineno">  233</span> </div>
+<div class="line"><a name="l00234"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1ArgType.html#a12f3f11c5991420b979aac8421694816">  234</a></span>   <span class="keyword">static</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ArgType.html">ArgType</a> <a class="code" href="classclang_1_1analyze__format__string_1_1ArgType.html#a12f3f11c5991420b979aac8421694816">Invalid</a>() { <span class="keywordflow">return</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ArgType.html#aba4b31a4805521a0f0c7781f71bcafe7">ArgType</a>(<a class="code" href="classclang_1_1analyze__format__string_1_1ArgType.html#a0a8f19649da4629776965291d6e36feba0f64ac781a7360af87c8607359d9fbd4">InvalidTy</a>); }</div>
+<div class="line"><a name="l00235"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1ArgType.html#a81dab4976477a12d4a8750bb16bdfb50">  235</a></span>   <span class="keywordtype">bool</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ArgType.html#a81dab4976477a12d4a8750bb16bdfb50">isValid</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> K != <a class="code" href="classclang_1_1analyze__format__string_1_1ArgType.html#a0a8f19649da4629776965291d6e36feba0f64ac781a7360af87c8607359d9fbd4">InvalidTy</a>; }</div>
+<div class="line"><a name="l00236"></a><span class="lineno">  236</span> <span class="comment"></span></div>
+<div class="line"><a name="l00237"></a><span class="lineno">  237</span> <span class="comment">  /// Create an ArgType which corresponds to the type pointer to A.</span></div>
+<div class="line"><a name="l00238"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1ArgType.html#a1948cb02c629d821aaa85eb738550356">  238</a></span> <span class="comment"></span>  <span class="keyword">static</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ArgType.html">ArgType</a> <a class="code" href="classclang_1_1analyze__format__string_1_1ArgType.html#a1948cb02c629d821aaa85eb738550356" title="Create an ArgType which corresponds to the type pointer to A.">PtrTo</a>(<span class="keyword">const</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ArgType.html">ArgType</a>& A) {</div>
+<div class="line"><a name="l00239"></a><span class="lineno">  239</span>     assert(A.K >= <a class="code" href="classclang_1_1analyze__format__string_1_1ArgType.html#a0a8f19649da4629776965291d6e36feba0f64ac781a7360af87c8607359d9fbd4">InvalidTy</a> && <span class="stringliteral">"ArgType cannot be pointer to invalid/unknown"</span>);</div>
+<div class="line"><a name="l00240"></a><span class="lineno">  240</span>     <a class="code" href="classclang_1_1analyze__format__string_1_1ArgType.html">ArgType</a> Res = A;</div>
+<div class="line"><a name="l00241"></a><span class="lineno">  241</span>     Res.Ptr = <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00242"></a><span class="lineno">  242</span>     <span class="keywordflow">return</span> Res;</div>
+<div class="line"><a name="l00243"></a><span class="lineno">  243</span>   }</div>
+<div class="line"><a name="l00244"></a><span class="lineno">  244</span> </div>
+<div class="line"><a name="l00245"></a><span class="lineno">  245</span>   <span class="keywordtype">bool</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ArgType.html#a0e0c00d374c833cec1b98760fd178868">matchesType</a>(<a class="code" href="classclang_1_1ASTContext.html" title="Holds long-lived AST nodes (such as types and decls) that can be referred to throughout the semantic ...">ASTContext</a> &C, <a class="code" href="classclang_1_1QualType.html">QualType</a> argTy) <span class="keyword">const</span>;</div>
+<div class="line"><a name="l00246"></a><span class="lineno">  246</span> </div>
+<div class="line"><a name="l00247"></a><span class="lineno">  247</span>   <a class="code" href="classclang_1_1QualType.html">QualType</a> <a class="code" href="classclang_1_1analyze__format__string_1_1ArgType.html#a6e4e2b82bb09159f2a0c7d0ff042a64a">getRepresentativeType</a>(<a class="code" href="classclang_1_1ASTContext.html" title="Holds long-lived AST nodes (such as types and decls) that can be referred to throughout the semantic ...">ASTContext</a> &C) <span class="keyword">const</span>;</div>
+<div class="line"><a name="l00248"></a><span class="lineno">  248</span> </div>
+<div class="line"><a name="l00249"></a><span class="lineno">  249</span>   std::string <a class="code" href="classclang_1_1analyze__format__string_1_1ArgType.html#a724e8878d893aad91cc883bffa539c59">getRepresentativeTypeName</a>(<a class="code" href="classclang_1_1ASTContext.html" title="Holds long-lived AST nodes (such as types and decls) that can be referred to throughout the semantic ...">ASTContext</a> &C) <span class="keyword">const</span>;</div>
+<div class="line"><a name="l00250"></a><span class="lineno">  250</span> };</div>
+<div class="line"><a name="l00251"></a><span class="lineno">  251</span> </div>
+<div class="line"><a name="l00252"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1OptionalAmount.html">  252</a></span> <span class="keyword">class </span><a class="code" href="classclang_1_1analyze__format__string_1_1OptionalAmount.html">OptionalAmount</a> {</div>
+<div class="line"><a name="l00253"></a><span class="lineno">  253</span> <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00254"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1OptionalAmount.html#af3d4f50f89517fba719fe4c2e4cb4298ae0c41024f6865fff546bdf050c5d483e">  254</a></span>   <span class="keyword">enum</span> <a class="code" href="classclang_1_1analyze__format__string_1_1OptionalAmount.html#af3d4f50f89517fba719fe4c2e4cb4298">HowSpecified</a> { <a class="code" href="classclang_1_1analyze__format__string_1_1OptionalAmount.html#af3d4f50f89517fba719fe4c2e4cb4298ae0c41024f6865fff546bdf050c5d483e">NotSpecified</a>, <a class="code" href="classclang_1_1analyze__format__string_1_1OptionalAmount.html#af3d4f50f89517fba719fe4c2e4cb4298abbe52fc4b0f718cac3333891c99953a4">Constant</a>, <a class="code" href="classclang_1_1analyze__format__string_1_1OptionalAmount.html#af3d4f50f89517fba719fe4c2e4cb4298a9fb96210254d2e1e8393cfc4712102b0">Arg</a>, <a class="code" href="classclang_1_1analyze__format__string_1_1OptionalAmount.html#af3d4f50f89517
 fba719fe4c2e4cb4298a9181efb050f56c6193575b414157df03">Invalid</a> };</div>
+<div class="line"><a name="l00255"></a><span class="lineno">  255</span> </div>
+<div class="line"><a name="l00256"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1OptionalAmount.html#ac2f18cd4c07624e833d4a8e572e39f9c">  256</a></span>   <a class="code" href="classclang_1_1analyze__format__string_1_1OptionalAmount.html#ac2f18cd4c07624e833d4a8e572e39f9c">OptionalAmount</a>(<a class="code" href="classclang_1_1analyze__format__string_1_1OptionalAmount.html#af3d4f50f89517fba719fe4c2e4cb4298">HowSpecified</a> howSpecified,</div>
+<div class="line"><a name="l00257"></a><span class="lineno">  257</span>                  <span class="keywordtype">unsigned</span> amount,</div>
+<div class="line"><a name="l00258"></a><span class="lineno">  258</span>                  <span class="keyword">const</span> <span class="keywordtype">char</span> *amountStart,</div>
+<div class="line"><a name="l00259"></a><span class="lineno">  259</span>                  <span class="keywordtype">unsigned</span> amountLength,</div>
+<div class="line"><a name="l00260"></a><span class="lineno">  260</span>                  <span class="keywordtype">bool</span> <a class="code" href="classclang_1_1analyze__format__string_1_1OptionalAmount.html#afbd01aec57718260bff092fae5d89d19">usesPositionalArg</a>)</div>
+<div class="line"><a name="l00261"></a><span class="lineno">  261</span>   : start(amountStart), length(amountLength), hs(howSpecified), amt(amount),</div>
+<div class="line"><a name="l00262"></a><span class="lineno">  262</span>   UsesPositionalArg(usesPositionalArg), UsesDotPrefix(0) {}</div>
+<div class="line"><a name="l00263"></a><span class="lineno">  263</span> </div>
+<div class="line"><a name="l00264"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1OptionalAmount.html#af59d8163b46ec11ea7b700d11ab52d40">  264</a></span>   <a class="code" href="classclang_1_1analyze__format__string_1_1OptionalAmount.html#ac2f18cd4c07624e833d4a8e572e39f9c">OptionalAmount</a>(<span class="keywordtype">bool</span> valid = <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00265"></a><span class="lineno">  265</span>   : start(0),length(0), hs(valid ? <a class="code" href="classclang_1_1analyze__format__string_1_1OptionalAmount.html#af3d4f50f89517fba719fe4c2e4cb4298ae0c41024f6865fff546bdf050c5d483e">NotSpecified</a> : <a class="code" href="classclang_1_1analyze__format__string_1_1OptionalAmount.html#af3d4f50f89517fba719fe4c2e4cb4298a9181efb050f56c6193575b414157df03">Invalid</a>), amt(0),</div>
+<div class="line"><a name="l00266"></a><span class="lineno">  266</span>   UsesPositionalArg(0), UsesDotPrefix(0) {}</div>
+<div class="line"><a name="l00267"></a><span class="lineno">  267</span> </div>
+<div class="line"><a name="l00268"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1OptionalAmount.html#aaf92a8a1d065498676a30e9a1783f746">  268</a></span>   <span class="keywordtype">bool</span> <a class="code" href="classclang_1_1analyze__format__string_1_1OptionalAmount.html#aaf92a8a1d065498676a30e9a1783f746">isInvalid</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00269"></a><span class="lineno">  269</span>     <span class="keywordflow">return</span> hs == <a class="code" href="classclang_1_1analyze__format__string_1_1OptionalAmount.html#af3d4f50f89517fba719fe4c2e4cb4298a9181efb050f56c6193575b414157df03">Invalid</a>;</div>
+<div class="line"><a name="l00270"></a><span class="lineno">  270</span>   }</div>
+<div class="line"><a name="l00271"></a><span class="lineno">  271</span> </div>
+<div class="line"><a name="l00272"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1OptionalAmount.html#a1bdab324c18f9deae4be0fa80375bbae">  272</a></span>   <a class="code" href="classclang_1_1analyze__format__string_1_1OptionalAmount.html#af3d4f50f89517fba719fe4c2e4cb4298">HowSpecified</a> <a class="code" href="classclang_1_1analyze__format__string_1_1OptionalAmount.html#a1bdab324c18f9deae4be0fa80375bbae">getHowSpecified</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> hs; }</div>
+<div class="line"><a name="l00273"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1OptionalAmount.html#aff51385b958a7efa9dbf196d29a4bfc4">  273</a></span>   <span class="keywordtype">void</span> <a class="code" href="classclang_1_1analyze__format__string_1_1OptionalAmount.html#aff51385b958a7efa9dbf196d29a4bfc4">setHowSpecified</a>(<a class="code" href="classclang_1_1analyze__format__string_1_1OptionalAmount.html#af3d4f50f89517fba719fe4c2e4cb4298">HowSpecified</a> h) { hs = h; }</div>
+<div class="line"><a name="l00274"></a><span class="lineno">  274</span> </div>
+<div class="line"><a name="l00275"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1OptionalAmount.html#a494b9f8e86c092ad15bdf1a98d257ddf">  275</a></span>   <span class="keywordtype">bool</span> <a class="code" href="classclang_1_1analyze__format__string_1_1OptionalAmount.html#a494b9f8e86c092ad15bdf1a98d257ddf">hasDataArgument</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> hs == <a class="code" href="classclang_1_1analyze__format__string_1_1OptionalAmount.html#af3d4f50f89517fba719fe4c2e4cb4298a9fb96210254d2e1e8393cfc4712102b0">Arg</a>; }</div>
+<div class="line"><a name="l00276"></a><span class="lineno">  276</span> </div>
+<div class="line"><a name="l00277"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1OptionalAmount.html#aba6415c3e2abd44fcc2b74d63f368eaf">  277</a></span>   <span class="keywordtype">unsigned</span> <a class="code" href="classclang_1_1analyze__format__string_1_1OptionalAmount.html#aba6415c3e2abd44fcc2b74d63f368eaf">getArgIndex</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00278"></a><span class="lineno">  278</span>     assert(<a class="code" href="classclang_1_1analyze__format__string_1_1OptionalAmount.html#a494b9f8e86c092ad15bdf1a98d257ddf">hasDataArgument</a>());</div>
+<div class="line"><a name="l00279"></a><span class="lineno">  279</span>     <span class="keywordflow">return</span> amt;</div>
+<div class="line"><a name="l00280"></a><span class="lineno">  280</span>   }</div>
+<div class="line"><a name="l00281"></a><span class="lineno">  281</span> </div>
+<div class="line"><a name="l00282"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1OptionalAmount.html#a084323f2fb5018892ce99341bb23994b">  282</a></span>   <span class="keywordtype">unsigned</span> <a class="code" href="classclang_1_1analyze__format__string_1_1OptionalAmount.html#a084323f2fb5018892ce99341bb23994b">getConstantAmount</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00283"></a><span class="lineno">  283</span>     assert(hs == <a class="code" href="classclang_1_1analyze__format__string_1_1OptionalAmount.html#af3d4f50f89517fba719fe4c2e4cb4298abbe52fc4b0f718cac3333891c99953a4">Constant</a>);</div>
+<div class="line"><a name="l00284"></a><span class="lineno">  284</span>     <span class="keywordflow">return</span> amt;</div>
+<div class="line"><a name="l00285"></a><span class="lineno">  285</span>   }</div>
+<div class="line"><a name="l00286"></a><span class="lineno">  286</span> </div>
+<div class="line"><a name="l00287"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1OptionalAmount.html#a5235865a3276ffca23de7712d4476711">  287</a></span>   <span class="keyword">const</span> <span class="keywordtype">char</span> *<a class="code" href="classclang_1_1analyze__format__string_1_1OptionalAmount.html#a5235865a3276ffca23de7712d4476711">getStart</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00288"></a><span class="lineno">  288</span>       <span class="comment">// We include the . character if it is given.</span></div>
+<div class="line"><a name="l00289"></a><span class="lineno">  289</span>     <span class="keywordflow">return</span> start - UsesDotPrefix;</div>
+<div class="line"><a name="l00290"></a><span class="lineno">  290</span>   }</div>
+<div class="line"><a name="l00291"></a><span class="lineno">  291</span> </div>
+<div class="line"><a name="l00292"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1OptionalAmount.html#a5b13e2cb578bffc89d65c7940eadbdbe">  292</a></span>   <span class="keywordtype">unsigned</span> <a class="code" href="classclang_1_1analyze__format__string_1_1OptionalAmount.html#a5b13e2cb578bffc89d65c7940eadbdbe">getConstantLength</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00293"></a><span class="lineno">  293</span>     assert(hs == <a class="code" href="classclang_1_1analyze__format__string_1_1OptionalAmount.html#af3d4f50f89517fba719fe4c2e4cb4298abbe52fc4b0f718cac3333891c99953a4">Constant</a>);</div>
+<div class="line"><a name="l00294"></a><span class="lineno">  294</span>     <span class="keywordflow">return</span> length + UsesDotPrefix;</div>
+<div class="line"><a name="l00295"></a><span class="lineno">  295</span>   }</div>
+<div class="line"><a name="l00296"></a><span class="lineno">  296</span> </div>
+<div class="line"><a name="l00297"></a><span class="lineno">  297</span>   <a class="code" href="classclang_1_1analyze__format__string_1_1ArgType.html">ArgType</a> <a class="code" href="classclang_1_1analyze__format__string_1_1OptionalAmount.html#a1cb0f01d65cbf8334a4e9cc26ee502fa">getArgType</a>(<a class="code" href="classclang_1_1ASTContext.html" title="Holds long-lived AST nodes (such as types and decls) that can be referred to throughout the semantic ...">ASTContext</a> &Ctx) <span class="keyword">const</span>;</div>
+<div class="line"><a name="l00298"></a><span class="lineno">  298</span> </div>
+<div class="line"><a name="l00299"></a><span class="lineno">  299</span>   <span class="keywordtype">void</span> <a class="code" href="classclang_1_1analyze__format__string_1_1OptionalAmount.html#ab35eb56b2a934e0035fe00d98517dbae">toString</a>(raw_ostream &os) <span class="keyword">const</span>;</div>
+<div class="line"><a name="l00300"></a><span class="lineno">  300</span> </div>
+<div class="line"><a name="l00301"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1OptionalAmount.html#afbd01aec57718260bff092fae5d89d19">  301</a></span>   <span class="keywordtype">bool</span> <a class="code" href="classclang_1_1analyze__format__string_1_1OptionalAmount.html#afbd01aec57718260bff092fae5d89d19">usesPositionalArg</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> (<span class="keywordtype">bool</span>) UsesPositionalArg; }</div>
+<div class="line"><a name="l00302"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1OptionalAmount.html#a3c90b316a4912520d357555931996b93">  302</a></span>   <span class="keywordtype">unsigned</span> <a class="code" href="classclang_1_1analyze__format__string_1_1OptionalAmount.html#a3c90b316a4912520d357555931996b93">getPositionalArgIndex</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00303"></a><span class="lineno">  303</span>     assert(<a class="code" href="classclang_1_1analyze__format__string_1_1OptionalAmount.html#a494b9f8e86c092ad15bdf1a98d257ddf">hasDataArgument</a>());</div>
+<div class="line"><a name="l00304"></a><span class="lineno">  304</span>     <span class="keywordflow">return</span> amt + 1;</div>
+<div class="line"><a name="l00305"></a><span class="lineno">  305</span>   }</div>
+<div class="line"><a name="l00306"></a><span class="lineno">  306</span> </div>
+<div class="line"><a name="l00307"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1OptionalAmount.html#a344ff36105dc88fb0fc4dde0772415ff">  307</a></span>   <span class="keywordtype">bool</span> <a class="code" href="classclang_1_1analyze__format__string_1_1OptionalAmount.html#a344ff36105dc88fb0fc4dde0772415ff">usesDotPrefix</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> UsesDotPrefix; }</div>
+<div class="line"><a name="l00308"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1OptionalAmount.html#a778c78e5c5b6c5538250c323b09cfb3f">  308</a></span>   <span class="keywordtype">void</span> <a class="code" href="classclang_1_1analyze__format__string_1_1OptionalAmount.html#a778c78e5c5b6c5538250c323b09cfb3f">setUsesDotPrefix</a>() { UsesDotPrefix = <span class="keyword">true</span>; }</div>
+<div class="line"><a name="l00309"></a><span class="lineno">  309</span> </div>
+<div class="line"><a name="l00310"></a><span class="lineno">  310</span> <span class="keyword">private</span>:</div>
+<div class="line"><a name="l00311"></a><span class="lineno">  311</span>   <span class="keyword">const</span> <span class="keywordtype">char</span> *start;</div>
+<div class="line"><a name="l00312"></a><span class="lineno">  312</span>   <span class="keywordtype">unsigned</span> length;</div>
+<div class="line"><a name="l00313"></a><span class="lineno">  313</span>   <a class="code" href="classclang_1_1analyze__format__string_1_1OptionalAmount.html#af3d4f50f89517fba719fe4c2e4cb4298">HowSpecified</a> hs;</div>
+<div class="line"><a name="l00314"></a><span class="lineno">  314</span>   <span class="keywordtype">unsigned</span> amt;</div>
+<div class="line"><a name="l00315"></a><span class="lineno">  315</span>   <span class="keywordtype">bool</span> UsesPositionalArg : 1;</div>
+<div class="line"><a name="l00316"></a><span class="lineno">  316</span>   <span class="keywordtype">bool</span> UsesDotPrefix;</div>
+<div class="line"><a name="l00317"></a><span class="lineno">  317</span> };</div>
+<div class="line"><a name="l00318"></a><span class="lineno">  318</span> </div>
+<div class="line"><a name="l00319"></a><span class="lineno">  319</span> </div>
+<div class="line"><a name="l00320"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1FormatSpecifier.html">  320</a></span> <span class="keyword">class </span><a class="code" href="classclang_1_1analyze__format__string_1_1FormatSpecifier.html">FormatSpecifier</a> {</div>
+<div class="line"><a name="l00321"></a><span class="lineno">  321</span> <span class="keyword">protected</span>:</div>
+<div class="line"><a name="l00322"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1FormatSpecifier.html#a10bbf7d7369792f5fb86f869dae59b45">  322</a></span>   <a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html" title="Represents the length modifier in a format string in scanf/printf.">LengthModifier</a> <a class="code" href="classclang_1_1analyze__format__string_1_1FormatSpecifier.html#a10bbf7d7369792f5fb86f869dae59b45">LM</a>;</div>
+<div class="line"><a name="l00323"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1FormatSpecifier.html#af821fee6a6a3daf8e2f1a1d375a362ba">  323</a></span>   <a class="code" href="classclang_1_1analyze__format__string_1_1OptionalAmount.html">OptionalAmount</a> <a class="code" href="classclang_1_1analyze__format__string_1_1FormatSpecifier.html#af821fee6a6a3daf8e2f1a1d375a362ba">FieldWidth</a>;</div>
+<div class="line"><a name="l00324"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1FormatSpecifier.html#aace736b8c6fb2b53754eaa0b28202197">  324</a></span>   <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html">ConversionSpecifier</a> <a class="code" href="classclang_1_1analyze__format__string_1_1FormatSpecifier.html#aace736b8c6fb2b53754eaa0b28202197">CS</a>;<span class="comment"></span></div>
+<div class="line"><a name="l00325"></a><span class="lineno">  325</span> <span class="comment">  /// Positional arguments, an IEEE extension:</span></div>
+<div class="line"><a name="l00326"></a><span class="lineno">  326</span> <span class="comment">  ///  IEEE Std 1003.1, 2004 Edition</span></div>
+<div class="line"><a name="l00327"></a><span class="lineno">  327</span> <span class="comment">  ///  http://www.opengroup.org/onlinepubs/009695399/functions/printf.html</span></div>
+<div class="line"><a name="l00328"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1FormatSpecifier.html#ade2fd6c364b8d6209d0b27320629ccc8">  328</a></span> <span class="comment"></span>  <span class="keywordtype">bool</span> <a class="code" href="classclang_1_1analyze__format__string_1_1FormatSpecifier.html#ade2fd6c364b8d6209d0b27320629ccc8">UsesPositionalArg</a>;</div>
+<div class="line"><a name="l00329"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1FormatSpecifier.html#a9b8bebe3cd44429457985144d0ebbfef">  329</a></span>   <span class="keywordtype">unsigned</span> <a class="code" href="classclang_1_1analyze__format__string_1_1FormatSpecifier.html#a9b8bebe3cd44429457985144d0ebbfef">argIndex</a>;</div>
+<div class="line"><a name="l00330"></a><span class="lineno">  330</span> <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00331"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1FormatSpecifier.html#a9569e0b660642cabcb93d12807ac0fcc">  331</a></span>   <a class="code" href="classclang_1_1analyze__format__string_1_1FormatSpecifier.html#a9569e0b660642cabcb93d12807ac0fcc">FormatSpecifier</a>(<span class="keywordtype">bool</span> isPrintf)</div>
+<div class="line"><a name="l00332"></a><span class="lineno">  332</span>     : <a class="code" href="classclang_1_1analyze__format__string_1_1FormatSpecifier.html#aace736b8c6fb2b53754eaa0b28202197">CS</a>(isPrintf), <a class="code" href="classclang_1_1analyze__format__string_1_1FormatSpecifier.html#ade2fd6c364b8d6209d0b27320629ccc8">UsesPositionalArg</a>(<a class="code" href="stdbool_8h.html#a65e9886d74aaee76545e83dd09011727">false</a>), <a class="code" href="classclang_1_1analyze__format__string_1_1FormatSpecifier.html#a9b8bebe3cd44429457985144d0ebbfef">argIndex</a>(0) {}</div>
+<div class="line"><a name="l00333"></a><span class="lineno">  333</span> </div>
+<div class="line"><a name="l00334"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1FormatSpecifier.html#a8dc303adcda1fe3a47a30b61d9a818b1">  334</a></span>   <span class="keywordtype">void</span> <a class="code" href="classclang_1_1analyze__format__string_1_1FormatSpecifier.html#a8dc303adcda1fe3a47a30b61d9a818b1">setLengthModifier</a>(<a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html" title="Represents the length modifier in a format string in scanf/printf.">LengthModifier</a> lm) {</div>
+<div class="line"><a name="l00335"></a><span class="lineno">  335</span>     <a class="code" href="classclang_1_1analyze__format__string_1_1FormatSpecifier.html#a10bbf7d7369792f5fb86f869dae59b45">LM</a> = lm;</div>
+<div class="line"><a name="l00336"></a><span class="lineno">  336</span>   }</div>
+<div class="line"><a name="l00337"></a><span class="lineno">  337</span> </div>
+<div class="line"><a name="l00338"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1FormatSpecifier.html#a79e468f6e0345632bd6aafbe3ebc8386">  338</a></span>   <span class="keywordtype">void</span> <a class="code" href="classclang_1_1analyze__format__string_1_1FormatSpecifier.html#a79e468f6e0345632bd6aafbe3ebc8386">setUsesPositionalArg</a>() { <a class="code" href="classclang_1_1analyze__format__string_1_1FormatSpecifier.html#ade2fd6c364b8d6209d0b27320629ccc8">UsesPositionalArg</a> = <span class="keyword">true</span>; }</div>
+<div class="line"><a name="l00339"></a><span class="lineno">  339</span> </div>
+<div class="line"><a name="l00340"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1FormatSpecifier.html#a894e7aae1edd453d05439c2ccff03873">  340</a></span>   <span class="keywordtype">void</span> <a class="code" href="classclang_1_1analyze__format__string_1_1FormatSpecifier.html#a894e7aae1edd453d05439c2ccff03873">setArgIndex</a>(<span class="keywordtype">unsigned</span> i) {</div>
+<div class="line"><a name="l00341"></a><span class="lineno">  341</span>     <a class="code" href="classclang_1_1analyze__format__string_1_1FormatSpecifier.html#a9b8bebe3cd44429457985144d0ebbfef">argIndex</a> = i;</div>
+<div class="line"><a name="l00342"></a><span class="lineno">  342</span>   }</div>
+<div class="line"><a name="l00343"></a><span class="lineno">  343</span> </div>
+<div class="line"><a name="l00344"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1FormatSpecifier.html#a642359ea9c381829feb0e1e76fea1276">  344</a></span>   <span class="keywordtype">unsigned</span> <a class="code" href="classclang_1_1analyze__format__string_1_1FormatSpecifier.html#a642359ea9c381829feb0e1e76fea1276">getArgIndex</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00345"></a><span class="lineno">  345</span>     <span class="keywordflow">return</span> <a class="code" href="classclang_1_1analyze__format__string_1_1FormatSpecifier.html#a9b8bebe3cd44429457985144d0ebbfef">argIndex</a>;</div>
+<div class="line"><a name="l00346"></a><span class="lineno">  346</span>   }</div>
+<div class="line"><a name="l00347"></a><span class="lineno">  347</span> </div>
+<div class="line"><a name="l00348"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1FormatSpecifier.html#a4ce924042d146f0e33abd0801600d995">  348</a></span>   <span class="keywordtype">unsigned</span> <a class="code" href="classclang_1_1analyze__format__string_1_1FormatSpecifier.html#a4ce924042d146f0e33abd0801600d995">getPositionalArgIndex</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00349"></a><span class="lineno">  349</span>     <span class="keywordflow">return</span> <a class="code" href="classclang_1_1analyze__format__string_1_1FormatSpecifier.html#a9b8bebe3cd44429457985144d0ebbfef">argIndex</a> + 1;</div>
+<div class="line"><a name="l00350"></a><span class="lineno">  350</span>   }</div>
+<div class="line"><a name="l00351"></a><span class="lineno">  351</span> </div>
+<div class="line"><a name="l00352"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1FormatSpecifier.html#a636da2433e48a20e707100210d9fb204">  352</a></span>   <span class="keyword">const</span> <a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html" title="Represents the length modifier in a format string in scanf/printf.">LengthModifier</a> &<a class="code" href="classclang_1_1analyze__format__string_1_1FormatSpecifier.html#a636da2433e48a20e707100210d9fb204">getLengthModifier</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00353"></a><span class="lineno">  353</span>     <span class="keywordflow">return</span> <a class="code" href="classclang_1_1analyze__format__string_1_1FormatSpecifier.html#a10bbf7d7369792f5fb86f869dae59b45">LM</a>;</div>
+<div class="line"><a name="l00354"></a><span class="lineno">  354</span>   }</div>
+<div class="line"><a name="l00355"></a><span class="lineno">  355</span> </div>
+<div class="line"><a name="l00356"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1FormatSpecifier.html#ad562e6277e4f167cde779be19f84029c">  356</a></span>   <span class="keyword">const</span> <a class="code" href="classclang_1_1analyze__format__string_1_1OptionalAmount.html">OptionalAmount</a> &<a class="code" href="classclang_1_1analyze__format__string_1_1FormatSpecifier.html#ad562e6277e4f167cde779be19f84029c">getFieldWidth</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00357"></a><span class="lineno">  357</span>     <span class="keywordflow">return</span> <a class="code" href="classclang_1_1analyze__format__string_1_1FormatSpecifier.html#af821fee6a6a3daf8e2f1a1d375a362ba">FieldWidth</a>;</div>
+<div class="line"><a name="l00358"></a><span class="lineno">  358</span>   }</div>
+<div class="line"><a name="l00359"></a><span class="lineno">  359</span> </div>
+<div class="line"><a name="l00360"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1FormatSpecifier.html#a506829b42d35b7466b81c3c7b6fbcc6d">  360</a></span>   <span class="keywordtype">void</span> <a class="code" href="classclang_1_1analyze__format__string_1_1FormatSpecifier.html#a506829b42d35b7466b81c3c7b6fbcc6d">setFieldWidth</a>(<span class="keyword">const</span> <a class="code" href="classclang_1_1analyze__format__string_1_1OptionalAmount.html">OptionalAmount</a> &Amt) {</div>
+<div class="line"><a name="l00361"></a><span class="lineno">  361</span>     <a class="code" href="classclang_1_1analyze__format__string_1_1FormatSpecifier.html#af821fee6a6a3daf8e2f1a1d375a362ba">FieldWidth</a> = Amt;</div>
+<div class="line"><a name="l00362"></a><span class="lineno">  362</span>   }</div>
+<div class="line"><a name="l00363"></a><span class="lineno">  363</span> </div>
+<div class="line"><a name="l00364"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1FormatSpecifier.html#a5e2d2eede7892b3bc7d860cca54acb9a">  364</a></span>   <span class="keywordtype">bool</span> <a class="code" href="classclang_1_1analyze__format__string_1_1FormatSpecifier.html#a5e2d2eede7892b3bc7d860cca54acb9a">usesPositionalArg</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="classclang_1_1analyze__format__string_1_1FormatSpecifier.html#ade2fd6c364b8d6209d0b27320629ccc8">UsesPositionalArg</a>; }</div>
+<div class="line"><a name="l00365"></a><span class="lineno">  365</span> </div>
+<div class="line"><a name="l00366"></a><span class="lineno">  366</span>   <span class="keywordtype">bool</span> <a class="code" href="classclang_1_1analyze__format__string_1_1FormatSpecifier.html#a6b0f78cb00669c5bc2ed8c86f180f62d">hasValidLengthModifier</a>(<span class="keyword">const</span> <a class="code" href="classclang_1_1TargetInfo.html" title="Exposes information about the current target.">TargetInfo</a> &Target) <span class="keyword">const</span>;</div>
+<div class="line"><a name="l00367"></a><span class="lineno">  367</span> </div>
+<div class="line"><a name="l00368"></a><span class="lineno">  368</span>   <span class="keywordtype">bool</span> <a class="code" href="classclang_1_1analyze__format__string_1_1FormatSpecifier.html#a09b0b1de8fa313f6d77b8b18f8049908">hasStandardLengthModifier</a>() <span class="keyword">const</span>;</div>
+<div class="line"><a name="l00369"></a><span class="lineno">  369</span> </div>
+<div class="line"><a name="l00370"></a><span class="lineno">  370</span>   <a class="code" href="classllvm_1_1Optional.html">Optional<LengthModifier></a> <a class="code" href="classclang_1_1analyze__format__string_1_1FormatSpecifier.html#a79d0210e35e2468ea3de498d53e83ad7">getCorrectedLengthModifier</a>() <span class="keyword">const</span>;</div>
+<div class="line"><a name="l00371"></a><span class="lineno">  371</span> </div>
+<div class="line"><a name="l00372"></a><span class="lineno">  372</span>   <span class="keywordtype">bool</span> <a class="code" href="classclang_1_1analyze__format__string_1_1FormatSpecifier.html#ab938beb9519f744884869a3b798f04e1">hasStandardConversionSpecifier</a>(<span class="keyword">const</span> <a class="code" href="classclang_1_1LangOptions.html" title="Keeps track of the various options that can be enabled, which controls the dialect of C or C++ that i...">LangOptions</a> &LangOpt) <span class="keyword">const</span>;</div>
+<div class="line"><a name="l00373"></a><span class="lineno">  373</span> </div>
+<div class="line"><a name="l00374"></a><span class="lineno">  374</span>   <span class="keywordtype">bool</span> <a class="code" href="classclang_1_1analyze__format__string_1_1FormatSpecifier.html#a104207ca3f0e77d6c0de6e319ee99428">hasStandardLengthConversionCombination</a>() <span class="keyword">const</span>;</div>
+<div class="line"><a name="l00375"></a><span class="lineno">  375</span> <span class="comment"></span></div>
+<div class="line"><a name="l00376"></a><span class="lineno">  376</span> <span class="comment">  /// For a TypedefType QT, if it is a named integer type such as size_t,</span></div>
+<div class="line"><a name="l00377"></a><span class="lineno">  377</span> <span class="comment">  /// assign the appropriate value to LM and return true.</span></div>
+<div class="line"><a name="l00378"></a><span class="lineno">  378</span> <span class="comment"></span>  <span class="keyword">static</span> <span class="keywordtype">bool</span> <a class="code" href="classclang_1_1analyze__format__string_1_1FormatSpecifier.html#ad02ebd54580d9f5baa1dc2ad0bb0ea3f">namedTypeToLengthModifier</a>(<a class="code" href="classclang_1_1QualType.html">QualType</a> QT, <a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html" title="Represents the length modifier in a format string in scanf/printf.">LengthModifier</a> &<a class="code" href="classclang_1_1analyze__format__string_1_1FormatSpecifier.html#a10bbf7d7369792f5fb86f869dae59b45">LM</a>);</div>
+<div class="line"><a name="l00379"></a><span class="lineno">  379</span> };</div>
+<div class="line"><a name="l00380"></a><span class="lineno">  380</span> </div>
+<div class="line"><a name="l00381"></a><span class="lineno">  381</span> } <span class="comment">// end analyze_format_string namespace</span></div>
+<div class="line"><a name="l00382"></a><span class="lineno">  382</span> </div>
+<div class="line"><a name="l00383"></a><span class="lineno">  383</span> <span class="comment">//===----------------------------------------------------------------------===//</span><span class="comment"></span></div>
+<div class="line"><a name="l00384"></a><span class="lineno">  384</span> <span class="comment">/// Pieces specific to fprintf format strings.</span></div>
+<div class="line"><a name="l00385"></a><span class="lineno">  385</span> <span class="comment"></span></div>
+<div class="line"><a name="l00386"></a><span class="lineno"><a class="code" href="namespaceclang_1_1analyze__printf.html">  386</a></span> <span class="keyword">namespace </span>analyze_printf {</div>
+<div class="line"><a name="l00387"></a><span class="lineno">  387</span> </div>
+<div class="line"><a name="l00388"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__printf_1_1PrintfConversionSpecifier.html">  388</a></span> <span class="keyword">class </span><a class="code" href="classclang_1_1analyze__printf_1_1PrintfConversionSpecifier.html">PrintfConversionSpecifier</a> :</div>
+<div class="line"><a name="l00389"></a><span class="lineno">  389</span>   <span class="keyword">public</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html">analyze_format_string::ConversionSpecifier</a>  {</div>
+<div class="line"><a name="l00390"></a><span class="lineno">  390</span> <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00391"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__printf_1_1PrintfConversionSpecifier.html#a58ae1ce1e6a5ba8e6fe5b9696cf0bacd">  391</a></span>   <a class="code" href="classclang_1_1analyze__printf_1_1PrintfConversionSpecifier.html#a58ae1ce1e6a5ba8e6fe5b9696cf0bacd">PrintfConversionSpecifier</a>()</div>
+<div class="line"><a name="l00392"></a><span class="lineno">  392</span>     : <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a1a8222200b810a2380489d185bfc430e">ConversionSpecifier</a>(<a class="code" href="stdbool_8h.html#a41f9c5fb8b08eb5dc3edce4dcb37fee7">true</a>, 0, <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a205c5b4cb2a9ca10f0a2a1f930f61c6d">InvalidSpecifier</a>) {}</div>
+<div class="line"><a name="l00393"></a><span class="lineno">  393</span> </div>
+<div class="line"><a name="l00394"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__printf_1_1PrintfConversionSpecifier.html#a265bb140235f3bf295284f8db0820a94">  394</a></span>   <a class="code" href="classclang_1_1analyze__printf_1_1PrintfConversionSpecifier.html#a58ae1ce1e6a5ba8e6fe5b9696cf0bacd">PrintfConversionSpecifier</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *pos, <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1">Kind</a> k)</div>
+<div class="line"><a name="l00395"></a><span class="lineno">  395</span>     : <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a1a8222200b810a2380489d185bfc430e">ConversionSpecifier</a>(<a class="code" href="stdbool_8h.html#a41f9c5fb8b08eb5dc3edce4dcb37fee7">true</a>, pos, k) {}</div>
+<div class="line"><a name="l00396"></a><span class="lineno">  396</span> </div>
+<div class="line"><a name="l00397"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__printf_1_1PrintfConversionSpecifier.html#a435ca9212e8edba7d2ba6ba3990c7805">  397</a></span>   <span class="keywordtype">bool</span> <a class="code" href="classclang_1_1analyze__printf_1_1PrintfConversionSpecifier.html#a435ca9212e8edba7d2ba6ba3990c7805">isObjCArg</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a421d9c7e99f13006a269b3eafaa38801">kind</a> >= <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a277373dc31ff8f24885e560e7a892b49">ObjCBeg</a> && <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a421d9c7e99f13006a269b3eafaa38801">kind</a> <= <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.ht
 ml#a031ac8e2230ee671c2add5ac3d1a21d1aeb2a37eaabb6ea3598d9d5db346151f9">ObjCEnd</a>; }</div>
+<div class="line"><a name="l00398"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__printf_1_1PrintfConversionSpecifier.html#aa60c7c0afe0b1f70eb1c592d220acf5d">  398</a></span>   <span class="keywordtype">bool</span> <a class="code" href="classclang_1_1analyze__printf_1_1PrintfConversionSpecifier.html#aa60c7c0afe0b1f70eb1c592d220acf5d">isDoubleArg</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a421d9c7e99f13006a269b3eafaa38801">kind</a> >= <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1ad92884443f265fc84d1b6822ec780df6">DoubleArgBeg</a> &&</div>
+<div class="line"><a name="l00399"></a><span class="lineno">  399</span>                                     <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a421d9c7e99f13006a269b3eafaa38801">kind</a> <= <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a7b898d22e5abc318f7114e2c0179b88c">DoubleArgEnd</a>; }</div>
+<div class="line"><a name="l00400"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__printf_1_1PrintfConversionSpecifier.html#a4fa94700e282803946fc9da72452c0b7">  400</a></span>   <span class="keywordtype">unsigned</span> <a class="code" href="classclang_1_1analyze__printf_1_1PrintfConversionSpecifier.html#a4fa94700e282803946fc9da72452c0b7">getLength</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00401"></a><span class="lineno">  401</span>       <span class="comment">// Conversion specifiers currently only are represented by</span></div>
+<div class="line"><a name="l00402"></a><span class="lineno">  402</span>       <span class="comment">// single characters, but we be flexible.</span></div>
+<div class="line"><a name="l00403"></a><span class="lineno">  403</span>     <span class="keywordflow">return</span> 1;</div>
+<div class="line"><a name="l00404"></a><span class="lineno">  404</span>   }</div>
+<div class="line"><a name="l00405"></a><span class="lineno">  405</span> </div>
+<div class="line"><a name="l00406"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__printf_1_1PrintfConversionSpecifier.html#a30ca934b3e365bc5857020301cf44bbf">  406</a></span>   <span class="keyword">static</span> <span class="keywordtype">bool</span> <a class="code" href="classclang_1_1analyze__printf_1_1PrintfConversionSpecifier.html#a30ca934b3e365bc5857020301cf44bbf">classof</a>(<span class="keyword">const</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html">analyze_format_string::ConversionSpecifier</a> *CS) {</div>
+<div class="line"><a name="l00407"></a><span class="lineno">  407</span>     <span class="keywordflow">return</span> CS-><a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#ab338cbec5869e8fba6e4504696d7ec0b">isPrintfKind</a>();</div>
+<div class="line"><a name="l00408"></a><span class="lineno">  408</span>   }</div>
+<div class="line"><a name="l00409"></a><span class="lineno">  409</span> };</div>
+<div class="line"><a name="l00410"></a><span class="lineno">  410</span> </div>
+<div class="line"><a name="l00411"></a><span class="lineno">  411</span> <span class="keyword">using</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ArgType.html">analyze_format_string::ArgType</a>;</div>
+<div class="line"><a name="l00412"></a><span class="lineno">  412</span> <span class="keyword">using</span> <a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html" title="Represents the length modifier in a format string in scanf/printf.">analyze_format_string::LengthModifier</a>;</div>
+<div class="line"><a name="l00413"></a><span class="lineno">  413</span> <span class="keyword">using</span> <a class="code" href="classclang_1_1analyze__format__string_1_1OptionalAmount.html">analyze_format_string::OptionalAmount</a>;</div>
+<div class="line"><a name="l00414"></a><span class="lineno">  414</span> <span class="keyword">using</span> <a class="code" href="classclang_1_1analyze__format__string_1_1OptionalFlag.html">analyze_format_string::OptionalFlag</a>;</div>
+<div class="line"><a name="l00415"></a><span class="lineno">  415</span> </div>
+<div class="line"><a name="l00416"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__printf_1_1PrintfSpecifier.html">  416</a></span> <span class="keyword">class </span><a class="code" href="classclang_1_1analyze__printf_1_1PrintfSpecifier.html">PrintfSpecifier</a> : <span class="keyword">public</span> <a class="code" href="classclang_1_1analyze__format__string_1_1FormatSpecifier.html">analyze_format_string::FormatSpecifier</a> {</div>
+<div class="line"><a name="l00417"></a><span class="lineno">  417</span>   OptionalFlag HasThousandsGrouping; <span class="comment">// ''', POSIX extension.</span></div>
+<div class="line"><a name="l00418"></a><span class="lineno">  418</span>   OptionalFlag IsLeftJustified; <span class="comment">// '-'</span></div>
+<div class="line"><a name="l00419"></a><span class="lineno">  419</span>   OptionalFlag HasPlusPrefix; <span class="comment">// '+'</span></div>
+<div class="line"><a name="l00420"></a><span class="lineno">  420</span>   OptionalFlag HasSpacePrefix; <span class="comment">// ' '</span></div>
+<div class="line"><a name="l00421"></a><span class="lineno">  421</span>   OptionalFlag HasAlternativeForm; <span class="comment">// '#'</span></div>
+<div class="line"><a name="l00422"></a><span class="lineno">  422</span>   OptionalFlag HasLeadingZeroes; <span class="comment">// '0'</span></div>
+<div class="line"><a name="l00423"></a><span class="lineno">  423</span>   OptionalAmount Precision;</div>
+<div class="line"><a name="l00424"></a><span class="lineno">  424</span> <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00425"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__printf_1_1PrintfSpecifier.html#a7a51ef3d8b6da085965163bfc3d942f6">  425</a></span>   <a class="code" href="classclang_1_1analyze__printf_1_1PrintfSpecifier.html#a7a51ef3d8b6da085965163bfc3d942f6">PrintfSpecifier</a>() :</div>
+<div class="line"><a name="l00426"></a><span class="lineno">  426</span>     <a class="code" href="classclang_1_1analyze__format__string_1_1FormatSpecifier.html#a9569e0b660642cabcb93d12807ac0fcc">FormatSpecifier</a>(<span class="comment">/* isPrintf = */</span> <a class="code" href="stdbool_8h.html#a41f9c5fb8b08eb5dc3edce4dcb37fee7">true</a>),</div>
+<div class="line"><a name="l00427"></a><span class="lineno">  427</span>     HasThousandsGrouping(<span class="stringliteral">"'"</span>), IsLeftJustified(<span class="stringliteral">"-"</span>), HasPlusPrefix(<span class="stringliteral">"+"</span>),</div>
+<div class="line"><a name="l00428"></a><span class="lineno">  428</span>     HasSpacePrefix(<span class="stringliteral">" "</span>), HasAlternativeForm(<span class="stringliteral">"#"</span>), HasLeadingZeroes(<span class="stringliteral">"0"</span>) {}</div>
+<div class="line"><a name="l00429"></a><span class="lineno">  429</span> </div>
+<div class="line"><a name="l00430"></a><span class="lineno">  430</span>   <span class="keyword">static</span> <a class="code" href="classclang_1_1analyze__printf_1_1PrintfSpecifier.html">PrintfSpecifier</a> <a class="code" href="classclang_1_1analyze__printf_1_1PrintfSpecifier.html#a3d83ff7d4f10374d7e2c628619941563">Parse</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *beg, <span class="keyword">const</span> <span class="keywordtype">char</span> *end);</div>
+<div class="line"><a name="l00431"></a><span class="lineno">  431</span> </div>
+<div class="line"><a name="l00432"></a><span class="lineno">  432</span>     <span class="comment">// Methods for incrementally constructing the PrintfSpecifier.</span></div>
+<div class="line"><a name="l00433"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__printf_1_1PrintfSpecifier.html#af97739aa1069314c94bacad296099277">  433</a></span>   <span class="keywordtype">void</span> <a class="code" href="classclang_1_1analyze__printf_1_1PrintfSpecifier.html#af97739aa1069314c94bacad296099277">setConversionSpecifier</a>(<span class="keyword">const</span> <a class="code" href="classclang_1_1analyze__printf_1_1PrintfConversionSpecifier.html">PrintfConversionSpecifier</a> &cs) {</div>
+<div class="line"><a name="l00434"></a><span class="lineno">  434</span>     <a class="code" href="classclang_1_1analyze__format__string_1_1FormatSpecifier.html#aace736b8c6fb2b53754eaa0b28202197">CS</a> = cs;</div>
+<div class="line"><a name="l00435"></a><span class="lineno">  435</span>   }</div>
+<div class="line"><a name="l00436"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__printf_1_1PrintfSpecifier.html#a2fcb3a5dce559af80804348d75f7dc3e">  436</a></span>   <span class="keywordtype">void</span> <a class="code" href="classclang_1_1analyze__printf_1_1PrintfSpecifier.html#a2fcb3a5dce559af80804348d75f7dc3e">setHasThousandsGrouping</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *position) {</div>
+<div class="line"><a name="l00437"></a><span class="lineno">  437</span>     HasThousandsGrouping = <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00438"></a><span class="lineno">  438</span>     HasThousandsGrouping.setPosition(position);</div>
+<div class="line"><a name="l00439"></a><span class="lineno">  439</span>   }</div>
+<div class="line"><a name="l00440"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__printf_1_1PrintfSpecifier.html#a4f766d5d02bd7717722a34a5903267ba">  440</a></span>   <span class="keywordtype">void</span> <a class="code" href="classclang_1_1analyze__printf_1_1PrintfSpecifier.html#a4f766d5d02bd7717722a34a5903267ba">setIsLeftJustified</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *position) {</div>
+<div class="line"><a name="l00441"></a><span class="lineno">  441</span>     IsLeftJustified = <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00442"></a><span class="lineno">  442</span>     IsLeftJustified.setPosition(position);</div>
+<div class="line"><a name="l00443"></a><span class="lineno">  443</span>   }</div>
+<div class="line"><a name="l00444"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__printf_1_1PrintfSpecifier.html#a73a4f0289f7fe23d24e19c1a2ac7edc8">  444</a></span>   <span class="keywordtype">void</span> <a class="code" href="classclang_1_1analyze__printf_1_1PrintfSpecifier.html#a73a4f0289f7fe23d24e19c1a2ac7edc8">setHasPlusPrefix</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *position) {</div>
+<div class="line"><a name="l00445"></a><span class="lineno">  445</span>     HasPlusPrefix = <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00446"></a><span class="lineno">  446</span>     HasPlusPrefix.setPosition(position);</div>
+<div class="line"><a name="l00447"></a><span class="lineno">  447</span>   }</div>
+<div class="line"><a name="l00448"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__printf_1_1PrintfSpecifier.html#a216b9238ac123b4efdfa5aa184116564">  448</a></span>   <span class="keywordtype">void</span> <a class="code" href="classclang_1_1analyze__printf_1_1PrintfSpecifier.html#a216b9238ac123b4efdfa5aa184116564">setHasSpacePrefix</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *position) {</div>
+<div class="line"><a name="l00449"></a><span class="lineno">  449</span>     HasSpacePrefix = <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00450"></a><span class="lineno">  450</span>     HasSpacePrefix.setPosition(position);</div>
+<div class="line"><a name="l00451"></a><span class="lineno">  451</span>   }</div>
+<div class="line"><a name="l00452"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__printf_1_1PrintfSpecifier.html#a09309997a093665db3d1207d155c1841">  452</a></span>   <span class="keywordtype">void</span> <a class="code" href="classclang_1_1analyze__printf_1_1PrintfSpecifier.html#a09309997a093665db3d1207d155c1841">setHasAlternativeForm</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *position) {</div>
+<div class="line"><a name="l00453"></a><span class="lineno">  453</span>     HasAlternativeForm = <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00454"></a><span class="lineno">  454</span>     HasAlternativeForm.setPosition(position);</div>
+<div class="line"><a name="l00455"></a><span class="lineno">  455</span>   }</div>
+<div class="line"><a name="l00456"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__printf_1_1PrintfSpecifier.html#a84f75544771361bd6d0530c1e967c534">  456</a></span>   <span class="keywordtype">void</span> <a class="code" href="classclang_1_1analyze__printf_1_1PrintfSpecifier.html#a84f75544771361bd6d0530c1e967c534">setHasLeadingZeros</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *position) {</div>
+<div class="line"><a name="l00457"></a><span class="lineno">  457</span>     HasLeadingZeroes = <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00458"></a><span class="lineno">  458</span>     HasLeadingZeroes.setPosition(position);</div>
+<div class="line"><a name="l00459"></a><span class="lineno">  459</span>   }</div>
+<div class="line"><a name="l00460"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__printf_1_1PrintfSpecifier.html#aa2b8f5d3041cdcb21bee038a9acf34d8">  460</a></span>   <span class="keywordtype">void</span> <a class="code" href="classclang_1_1analyze__printf_1_1PrintfSpecifier.html#aa2b8f5d3041cdcb21bee038a9acf34d8">setUsesPositionalArg</a>() { <a class="code" href="classclang_1_1analyze__format__string_1_1FormatSpecifier.html#ade2fd6c364b8d6209d0b27320629ccc8">UsesPositionalArg</a> = <span class="keyword">true</span>; }</div>
+<div class="line"><a name="l00461"></a><span class="lineno">  461</span> </div>
+<div class="line"><a name="l00462"></a><span class="lineno">  462</span>     <span class="comment">// Methods for querying the format specifier.</span></div>
+<div class="line"><a name="l00463"></a><span class="lineno">  463</span> </div>
+<div class="line"><a name="l00464"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__printf_1_1PrintfSpecifier.html#a4e7feaf91987120bcdeac9529e952c08">  464</a></span>   <span class="keyword">const</span> <a class="code" href="classclang_1_1analyze__printf_1_1PrintfConversionSpecifier.html">PrintfConversionSpecifier</a> &<a class="code" href="classclang_1_1analyze__printf_1_1PrintfSpecifier.html#a4e7feaf91987120bcdeac9529e952c08">getConversionSpecifier</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00465"></a><span class="lineno">  465</span>     <span class="keywordflow">return</span> cast<PrintfConversionSpecifier>(<a class="code" href="classclang_1_1analyze__format__string_1_1FormatSpecifier.html#aace736b8c6fb2b53754eaa0b28202197">CS</a>);</div>
+<div class="line"><a name="l00466"></a><span class="lineno">  466</span>   }</div>
+<div class="line"><a name="l00467"></a><span class="lineno">  467</span> </div>
+<div class="line"><a name="l00468"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__printf_1_1PrintfSpecifier.html#accdfbbae33599877454e64ae6e9f0dba">  468</a></span>   <span class="keywordtype">void</span> <a class="code" href="classclang_1_1analyze__printf_1_1PrintfSpecifier.html#accdfbbae33599877454e64ae6e9f0dba">setPrecision</a>(<span class="keyword">const</span> OptionalAmount &Amt) {</div>
+<div class="line"><a name="l00469"></a><span class="lineno">  469</span>     Precision = Amt;</div>
+<div class="line"><a name="l00470"></a><span class="lineno">  470</span>     Precision.setUsesDotPrefix();</div>
+<div class="line"><a name="l00471"></a><span class="lineno">  471</span>   }</div>
+<div class="line"><a name="l00472"></a><span class="lineno">  472</span> </div>
+<div class="line"><a name="l00473"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__printf_1_1PrintfSpecifier.html#a2f6718e64d07f6a302b277ffd83a5775">  473</a></span>   <span class="keyword">const</span> OptionalAmount &<a class="code" href="classclang_1_1analyze__printf_1_1PrintfSpecifier.html#a2f6718e64d07f6a302b277ffd83a5775">getPrecision</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00474"></a><span class="lineno">  474</span>     <span class="keywordflow">return</span> Precision;</div>
+<div class="line"><a name="l00475"></a><span class="lineno">  475</span>   }</div>
+<div class="line"><a name="l00476"></a><span class="lineno">  476</span> </div>
+<div class="line"><a name="l00477"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__printf_1_1PrintfSpecifier.html#afb7cace578d8e438e021413a4bb01150">  477</a></span>   <span class="keywordtype">bool</span> <a class="code" href="classclang_1_1analyze__printf_1_1PrintfSpecifier.html#afb7cace578d8e438e021413a4bb01150">consumesDataArgument</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00478"></a><span class="lineno">  478</span>     <span class="keywordflow">return</span> <a class="code" href="classclang_1_1analyze__printf_1_1PrintfSpecifier.html#a4e7feaf91987120bcdeac9529e952c08">getConversionSpecifier</a>().<a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a0436843bec3bd58a671bb0da0cdc5efa">consumesDataArgument</a>();</div>
+<div class="line"><a name="l00479"></a><span class="lineno">  479</span>   }</div>
+<div class="line"><a name="l00480"></a><span class="lineno">  480</span> <span class="comment"></span></div>
+<div class="line"><a name="l00481"></a><span class="lineno">  481</span> <span class="comment">  /// \brief Returns the builtin type that a data argument</span></div>
+<div class="line"><a name="l00482"></a><span class="lineno">  482</span> <span class="comment">  /// paired with this format specifier should have.  This method</span></div>
+<div class="line"><a name="l00483"></a><span class="lineno">  483</span> <span class="comment">  /// will return null if the format specifier does not have</span></div>
+<div class="line"><a name="l00484"></a><span class="lineno">  484</span> <span class="comment">  /// a matching data argument or the matching argument matches</span></div>
+<div class="line"><a name="l00485"></a><span class="lineno">  485</span> <span class="comment">  /// more than one type.</span></div>
+<div class="line"><a name="l00486"></a><span class="lineno">  486</span> <span class="comment"></span>  ArgType <a class="code" href="classclang_1_1analyze__printf_1_1PrintfSpecifier.html#a27fd37dd5543a4e6f5731a79c729bd27" title="Returns the builtin type that a data argument paired with this format specifier should have...">getArgType</a>(<a class="code" href="classclang_1_1ASTContext.html" title="Holds long-lived AST nodes (such as types and decls) that can be referred to throughout the semantic ...">ASTContext</a> &Ctx, <span class="keywordtype">bool</span> IsObjCLiteral) <span class="keyword">const</span>;</div>
+<div class="line"><a name="l00487"></a><span class="lineno">  487</span> </div>
+<div class="line"><a name="l00488"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__printf_1_1PrintfSpecifier.html#af8b96632763f9cd53743a10dfc449ab6">  488</a></span>   <span class="keyword">const</span> OptionalFlag &<a class="code" href="classclang_1_1analyze__printf_1_1PrintfSpecifier.html#af8b96632763f9cd53743a10dfc449ab6">hasThousandsGrouping</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00489"></a><span class="lineno">  489</span>       <span class="keywordflow">return</span> HasThousandsGrouping;</div>
+<div class="line"><a name="l00490"></a><span class="lineno">  490</span>   }</div>
+<div class="line"><a name="l00491"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__printf_1_1PrintfSpecifier.html#ad7f3f05a759dc553d38de2ab6b1d31d7">  491</a></span>   <span class="keyword">const</span> OptionalFlag &<a class="code" href="classclang_1_1analyze__printf_1_1PrintfSpecifier.html#ad7f3f05a759dc553d38de2ab6b1d31d7">isLeftJustified</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> IsLeftJustified; }</div>
+<div class="line"><a name="l00492"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__printf_1_1PrintfSpecifier.html#a7619e089862d49a7dec6b091f5142aa4">  492</a></span>   <span class="keyword">const</span> OptionalFlag &<a class="code" href="classclang_1_1analyze__printf_1_1PrintfSpecifier.html#a7619e089862d49a7dec6b091f5142aa4">hasPlusPrefix</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> HasPlusPrefix; }</div>
+<div class="line"><a name="l00493"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__printf_1_1PrintfSpecifier.html#a202e24d4766cd2c025238afe709c1c47">  493</a></span>   <span class="keyword">const</span> OptionalFlag &<a class="code" href="classclang_1_1analyze__printf_1_1PrintfSpecifier.html#a202e24d4766cd2c025238afe709c1c47">hasAlternativeForm</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> HasAlternativeForm; }</div>
+<div class="line"><a name="l00494"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__printf_1_1PrintfSpecifier.html#acac97f738079ce4d80491fba588e6325">  494</a></span>   <span class="keyword">const</span> OptionalFlag &<a class="code" href="classclang_1_1analyze__printf_1_1PrintfSpecifier.html#acac97f738079ce4d80491fba588e6325">hasLeadingZeros</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> HasLeadingZeroes; }</div>
+<div class="line"><a name="l00495"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__printf_1_1PrintfSpecifier.html#a9d31315d97f31e678c7127799e85f557">  495</a></span>   <span class="keyword">const</span> OptionalFlag &<a class="code" href="classclang_1_1analyze__printf_1_1PrintfSpecifier.html#a9d31315d97f31e678c7127799e85f557">hasSpacePrefix</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> HasSpacePrefix; }</div>
+<div class="line"><a name="l00496"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__printf_1_1PrintfSpecifier.html#a9d9da6dd9387cb683a3285ec49dde2c5">  496</a></span>   <span class="keywordtype">bool</span> <a class="code" href="classclang_1_1analyze__printf_1_1PrintfSpecifier.html#a9d9da6dd9387cb683a3285ec49dde2c5">usesPositionalArg</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="classclang_1_1analyze__format__string_1_1FormatSpecifier.html#ade2fd6c364b8d6209d0b27320629ccc8">UsesPositionalArg</a>; }</div>
+<div class="line"><a name="l00497"></a><span class="lineno">  497</span> <span class="comment"></span></div>
+<div class="line"><a name="l00498"></a><span class="lineno">  498</span> <span class="comment">  /// Changes the specifier and length according to a QualType, retaining any</span></div>
+<div class="line"><a name="l00499"></a><span class="lineno">  499</span> <span class="comment">  /// flags or options. Returns true on success, or false when a conversion</span></div>
+<div class="line"><a name="l00500"></a><span class="lineno">  500</span> <span class="comment">  /// was not successful.</span></div>
+<div class="line"><a name="l00501"></a><span class="lineno">  501</span> <span class="comment"></span>  <span class="keywordtype">bool</span> <a class="code" href="classclang_1_1analyze__printf_1_1PrintfSpecifier.html#a53f052c5f7e6c353207d915d4dfc8259">fixType</a>(<a class="code" href="classclang_1_1QualType.html">QualType</a> QT, <span class="keyword">const</span> <a class="code" href="classclang_1_1LangOptions.html" title="Keeps track of the various options that can be enabled, which controls the dialect of C or C++ that i...">LangOptions</a> &LangOpt, <a class="code" href="classclang_1_1ASTContext.html" title="Holds long-lived AST nodes (such as types and decls) that can be referred to throughout the semantic ...">ASTContext</a> &Ctx,</div>
+<div class="line"><a name="l00502"></a><span class="lineno">  502</span>                <span class="keywordtype">bool</span> IsObjCLiteral);</div>
+<div class="line"><a name="l00503"></a><span class="lineno">  503</span> </div>
+<div class="line"><a name="l00504"></a><span class="lineno">  504</span>   <span class="keywordtype">void</span> <a class="code" href="classclang_1_1analyze__printf_1_1PrintfSpecifier.html#a89435131305ce4d3bda1708c44bb3c18">toString</a>(raw_ostream &os) <span class="keyword">const</span>;</div>
+<div class="line"><a name="l00505"></a><span class="lineno">  505</span> </div>
+<div class="line"><a name="l00506"></a><span class="lineno">  506</span>   <span class="comment">// Validation methods - to check if any element results in undefined behavior</span></div>
+<div class="line"><a name="l00507"></a><span class="lineno">  507</span>   <span class="keywordtype">bool</span> <a class="code" href="classclang_1_1analyze__printf_1_1PrintfSpecifier.html#aa071fda2fa93eb7a55a1282b4f8b26b0">hasValidPlusPrefix</a>() <span class="keyword">const</span>;</div>
+<div class="line"><a name="l00508"></a><span class="lineno">  508</span>   <span class="keywordtype">bool</span> <a class="code" href="classclang_1_1analyze__printf_1_1PrintfSpecifier.html#aaef6ff30a9d255483474f7594d76db88">hasValidAlternativeForm</a>() <span class="keyword">const</span>;</div>
+<div class="line"><a name="l00509"></a><span class="lineno">  509</span>   <span class="keywordtype">bool</span> <a class="code" href="classclang_1_1analyze__printf_1_1PrintfSpecifier.html#a55216406d60587c52294f1d3c3a0b8cf">hasValidLeadingZeros</a>() <span class="keyword">const</span>;</div>
+<div class="line"><a name="l00510"></a><span class="lineno">  510</span>   <span class="keywordtype">bool</span> <a class="code" href="classclang_1_1analyze__printf_1_1PrintfSpecifier.html#a68dd4929ecc459e187bd84275bbeeb00">hasValidSpacePrefix</a>() <span class="keyword">const</span>;</div>
+<div class="line"><a name="l00511"></a><span class="lineno">  511</span>   <span class="keywordtype">bool</span> <a class="code" href="classclang_1_1analyze__printf_1_1PrintfSpecifier.html#af99ae96c3a959d675f61017894c3e853">hasValidLeftJustified</a>() <span class="keyword">const</span>;</div>
+<div class="line"><a name="l00512"></a><span class="lineno">  512</span>   <span class="keywordtype">bool</span> <a class="code" href="classclang_1_1analyze__printf_1_1PrintfSpecifier.html#a02576b727287130b58f175763f282bac">hasValidThousandsGroupingPrefix</a>() <span class="keyword">const</span>;</div>
+<div class="line"><a name="l00513"></a><span class="lineno">  513</span> </div>
+<div class="line"><a name="l00514"></a><span class="lineno">  514</span>   <span class="keywordtype">bool</span> <a class="code" href="classclang_1_1analyze__printf_1_1PrintfSpecifier.html#a9bc21400ee8c8651be8fdbe185054874">hasValidPrecision</a>() <span class="keyword">const</span>;</div>
+<div class="line"><a name="l00515"></a><span class="lineno">  515</span>   <span class="keywordtype">bool</span> <a class="code" href="classclang_1_1analyze__printf_1_1PrintfSpecifier.html#ac352b9d249cf6938870eb60db48a87d1">hasValidFieldWidth</a>() <span class="keyword">const</span>;</div>
+<div class="line"><a name="l00516"></a><span class="lineno">  516</span> };</div>
+<div class="line"><a name="l00517"></a><span class="lineno">  517</span> }  <span class="comment">// end analyze_printf namespace</span></div>
+<div class="line"><a name="l00518"></a><span class="lineno">  518</span> </div>
+<div class="line"><a name="l00519"></a><span class="lineno">  519</span> <span class="comment">//===----------------------------------------------------------------------===//</span><span class="comment"></span></div>
+<div class="line"><a name="l00520"></a><span class="lineno">  520</span> <span class="comment">/// Pieces specific to fscanf format strings.</span></div>
+<div class="line"><a name="l00521"></a><span class="lineno">  521</span> <span class="comment"></span></div>
+<div class="line"><a name="l00522"></a><span class="lineno"><a class="code" href="namespaceclang_1_1analyze__scanf.html">  522</a></span> <span class="keyword">namespace </span>analyze_scanf {</div>
+<div class="line"><a name="l00523"></a><span class="lineno">  523</span> </div>
+<div class="line"><a name="l00524"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__scanf_1_1ScanfConversionSpecifier.html">  524</a></span> <span class="keyword">class </span><a class="code" href="classclang_1_1analyze__scanf_1_1ScanfConversionSpecifier.html">ScanfConversionSpecifier</a> :</div>
+<div class="line"><a name="l00525"></a><span class="lineno">  525</span>     <span class="keyword">public</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html">analyze_format_string::ConversionSpecifier</a>  {</div>
+<div class="line"><a name="l00526"></a><span class="lineno">  526</span> <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00527"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__scanf_1_1ScanfConversionSpecifier.html#aed1ee3b84c15865a7228b979df9e97fb">  527</a></span>   <a class="code" href="classclang_1_1analyze__scanf_1_1ScanfConversionSpecifier.html#aed1ee3b84c15865a7228b979df9e97fb">ScanfConversionSpecifier</a>()</div>
+<div class="line"><a name="l00528"></a><span class="lineno">  528</span>     : <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a1a8222200b810a2380489d185bfc430e">ConversionSpecifier</a>(<a class="code" href="stdbool_8h.html#a65e9886d74aaee76545e83dd09011727">false</a>, 0, <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1a205c5b4cb2a9ca10f0a2a1f930f61c6d">InvalidSpecifier</a>) {}</div>
+<div class="line"><a name="l00529"></a><span class="lineno">  529</span> </div>
+<div class="line"><a name="l00530"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__scanf_1_1ScanfConversionSpecifier.html#aa7cc3098df7528adb4bacde46dec9333">  530</a></span>   <a class="code" href="classclang_1_1analyze__scanf_1_1ScanfConversionSpecifier.html#aed1ee3b84c15865a7228b979df9e97fb">ScanfConversionSpecifier</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *pos, <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a031ac8e2230ee671c2add5ac3d1a21d1">Kind</a> k)</div>
+<div class="line"><a name="l00531"></a><span class="lineno">  531</span>     : <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a1a8222200b810a2380489d185bfc430e">ConversionSpecifier</a>(<a class="code" href="stdbool_8h.html#a65e9886d74aaee76545e83dd09011727">false</a>, pos, k) {}</div>
+<div class="line"><a name="l00532"></a><span class="lineno">  532</span> </div>
+<div class="line"><a name="l00533"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__scanf_1_1ScanfConversionSpecifier.html#ab70cd6fbf8283afde86c3cfb17bdb1e7">  533</a></span>   <span class="keywordtype">void</span> <a class="code" href="classclang_1_1analyze__scanf_1_1ScanfConversionSpecifier.html#ab70cd6fbf8283afde86c3cfb17bdb1e7">setEndScanList</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *pos) { <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a75e679bedc9f94b582f2f7333a9c96bd">EndScanList</a> = pos; }</div>
+<div class="line"><a name="l00534"></a><span class="lineno">  534</span> </div>
+<div class="line"><a name="l00535"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__scanf_1_1ScanfConversionSpecifier.html#af85a57e8ab2fea7272fc802aee92b507">  535</a></span>   <span class="keyword">static</span> <span class="keywordtype">bool</span> <a class="code" href="classclang_1_1analyze__scanf_1_1ScanfConversionSpecifier.html#af85a57e8ab2fea7272fc802aee92b507">classof</a>(<span class="keyword">const</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html">analyze_format_string::ConversionSpecifier</a> *CS) {</div>
+<div class="line"><a name="l00536"></a><span class="lineno">  536</span>     <span class="keywordflow">return</span> !CS-><a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#ab338cbec5869e8fba6e4504696d7ec0b">isPrintfKind</a>();</div>
+<div class="line"><a name="l00537"></a><span class="lineno">  537</span>   }</div>
+<div class="line"><a name="l00538"></a><span class="lineno">  538</span> };</div>
+<div class="line"><a name="l00539"></a><span class="lineno">  539</span> </div>
+<div class="line"><a name="l00540"></a><span class="lineno">  540</span> <span class="keyword">using</span> <a class="code" href="classclang_1_1analyze__format__string_1_1ArgType.html">analyze_format_string::ArgType</a>;</div>
+<div class="line"><a name="l00541"></a><span class="lineno">  541</span> <span class="keyword">using</span> <a class="code" href="classclang_1_1analyze__format__string_1_1LengthModifier.html" title="Represents the length modifier in a format string in scanf/printf.">analyze_format_string::LengthModifier</a>;</div>
+<div class="line"><a name="l00542"></a><span class="lineno">  542</span> <span class="keyword">using</span> <a class="code" href="classclang_1_1analyze__format__string_1_1OptionalAmount.html">analyze_format_string::OptionalAmount</a>;</div>
+<div class="line"><a name="l00543"></a><span class="lineno">  543</span> <span class="keyword">using</span> <a class="code" href="classclang_1_1analyze__format__string_1_1OptionalFlag.html">analyze_format_string::OptionalFlag</a>;</div>
+<div class="line"><a name="l00544"></a><span class="lineno">  544</span> </div>
+<div class="line"><a name="l00545"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__scanf_1_1ScanfSpecifier.html">  545</a></span> <span class="keyword">class </span><a class="code" href="classclang_1_1analyze__scanf_1_1ScanfSpecifier.html">ScanfSpecifier</a> : <span class="keyword">public</span> <a class="code" href="classclang_1_1analyze__format__string_1_1FormatSpecifier.html">analyze_format_string::FormatSpecifier</a> {</div>
+<div class="line"><a name="l00546"></a><span class="lineno">  546</span>   OptionalFlag SuppressAssignment; <span class="comment">// '*'</span></div>
+<div class="line"><a name="l00547"></a><span class="lineno">  547</span> <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00548"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__scanf_1_1ScanfSpecifier.html#a77adb36f7d009dda928deb6180087ccd">  548</a></span>   <a class="code" href="classclang_1_1analyze__scanf_1_1ScanfSpecifier.html#a77adb36f7d009dda928deb6180087ccd">ScanfSpecifier</a>() :</div>
+<div class="line"><a name="l00549"></a><span class="lineno">  549</span>     <a class="code" href="classclang_1_1analyze__format__string_1_1FormatSpecifier.html#a9569e0b660642cabcb93d12807ac0fcc">FormatSpecifier</a>(<span class="comment">/* isPrintf = */</span> <a class="code" href="stdbool_8h.html#a65e9886d74aaee76545e83dd09011727">false</a>),</div>
+<div class="line"><a name="l00550"></a><span class="lineno">  550</span>     SuppressAssignment(<span class="stringliteral">"*"</span>) {}</div>
+<div class="line"><a name="l00551"></a><span class="lineno">  551</span> </div>
+<div class="line"><a name="l00552"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__scanf_1_1ScanfSpecifier.html#acf478843dd36eb34dae1a51465c68caf">  552</a></span>   <span class="keywordtype">void</span> <a class="code" href="classclang_1_1analyze__scanf_1_1ScanfSpecifier.html#acf478843dd36eb34dae1a51465c68caf">setSuppressAssignment</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *position) {</div>
+<div class="line"><a name="l00553"></a><span class="lineno">  553</span>     SuppressAssignment = <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00554"></a><span class="lineno">  554</span>     SuppressAssignment.setPosition(position);</div>
+<div class="line"><a name="l00555"></a><span class="lineno">  555</span>   }</div>
+<div class="line"><a name="l00556"></a><span class="lineno">  556</span> </div>
+<div class="line"><a name="l00557"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__scanf_1_1ScanfSpecifier.html#a5bb29d85fd558f7b4bbde3511a3667e6">  557</a></span>   <span class="keyword">const</span> OptionalFlag &<a class="code" href="classclang_1_1analyze__scanf_1_1ScanfSpecifier.html#a5bb29d85fd558f7b4bbde3511a3667e6">getSuppressAssignment</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00558"></a><span class="lineno">  558</span>     <span class="keywordflow">return</span> SuppressAssignment;</div>
+<div class="line"><a name="l00559"></a><span class="lineno">  559</span>   }</div>
+<div class="line"><a name="l00560"></a><span class="lineno">  560</span> </div>
+<div class="line"><a name="l00561"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__scanf_1_1ScanfSpecifier.html#ab18c8b552afbd33b1e766021e15c4eef">  561</a></span>   <span class="keywordtype">void</span> <a class="code" href="classclang_1_1analyze__scanf_1_1ScanfSpecifier.html#ab18c8b552afbd33b1e766021e15c4eef">setConversionSpecifier</a>(<span class="keyword">const</span> <a class="code" href="classclang_1_1analyze__scanf_1_1ScanfConversionSpecifier.html">ScanfConversionSpecifier</a> &cs) {</div>
+<div class="line"><a name="l00562"></a><span class="lineno">  562</span>     <a class="code" href="classclang_1_1analyze__format__string_1_1FormatSpecifier.html#aace736b8c6fb2b53754eaa0b28202197">CS</a> = cs;</div>
+<div class="line"><a name="l00563"></a><span class="lineno">  563</span>   }</div>
+<div class="line"><a name="l00564"></a><span class="lineno">  564</span> </div>
+<div class="line"><a name="l00565"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__scanf_1_1ScanfSpecifier.html#a83e18110d56e417722152feb036ef698">  565</a></span>   <span class="keyword">const</span> <a class="code" href="classclang_1_1analyze__scanf_1_1ScanfConversionSpecifier.html">ScanfConversionSpecifier</a> &<a class="code" href="classclang_1_1analyze__scanf_1_1ScanfSpecifier.html#a83e18110d56e417722152feb036ef698">getConversionSpecifier</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00566"></a><span class="lineno">  566</span>     <span class="keywordflow">return</span> cast<ScanfConversionSpecifier>(<a class="code" href="classclang_1_1analyze__format__string_1_1FormatSpecifier.html#aace736b8c6fb2b53754eaa0b28202197">CS</a>);</div>
+<div class="line"><a name="l00567"></a><span class="lineno">  567</span>   }</div>
+<div class="line"><a name="l00568"></a><span class="lineno">  568</span> </div>
+<div class="line"><a name="l00569"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__scanf_1_1ScanfSpecifier.html#a3bf1be14240de0a95a76f157dbe5ca70">  569</a></span>   <span class="keywordtype">bool</span> <a class="code" href="classclang_1_1analyze__scanf_1_1ScanfSpecifier.html#a3bf1be14240de0a95a76f157dbe5ca70">consumesDataArgument</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00570"></a><span class="lineno">  570</span>     <span class="keywordflow">return</span> <a class="code" href="classclang_1_1analyze__format__string_1_1FormatSpecifier.html#aace736b8c6fb2b53754eaa0b28202197">CS</a>.<a class="code" href="classclang_1_1analyze__format__string_1_1ConversionSpecifier.html#a0436843bec3bd58a671bb0da0cdc5efa">consumesDataArgument</a>() && !SuppressAssignment;</div>
+<div class="line"><a name="l00571"></a><span class="lineno">  571</span>   }</div>
+<div class="line"><a name="l00572"></a><span class="lineno">  572</span> </div>
+<div class="line"><a name="l00573"></a><span class="lineno">  573</span>   ArgType <a class="code" href="classclang_1_1analyze__scanf_1_1ScanfSpecifier.html#a0a02eecb52cb3f9bc302cc7d5159b058">getArgType</a>(<a class="code" href="classclang_1_1ASTContext.html" title="Holds long-lived AST nodes (such as types and decls) that can be referred to throughout the semantic ...">ASTContext</a> &Ctx) <span class="keyword">const</span>;</div>
+<div class="line"><a name="l00574"></a><span class="lineno">  574</span> </div>
+<div class="line"><a name="l00575"></a><span class="lineno">  575</span>   <span class="keywordtype">bool</span> <a class="code" href="classclang_1_1analyze__scanf_1_1ScanfSpecifier.html#af221b74797cf9f97b898d26bbac08f06">fixType</a>(<a class="code" href="classclang_1_1QualType.html">QualType</a> QT, <span class="keyword">const</span> <a class="code" href="classclang_1_1LangOptions.html" title="Keeps track of the various options that can be enabled, which controls the dialect of C or C++ that i...">LangOptions</a> &LangOpt, <a class="code" href="classclang_1_1ASTContext.html" title="Holds long-lived AST nodes (such as types and decls) that can be referred to throughout the semantic ...">ASTContext</a> &Ctx);</div>
+<div class="line"><a name="l00576"></a><span class="lineno">  576</span> </div>
+<div class="line"><a name="l00577"></a><span class="lineno">  577</span>   <span class="keywordtype">void</span> <a class="code" href="classclang_1_1analyze__scanf_1_1ScanfSpecifier.html#ad09401ad2d4c1d88015bd6f511f3ebce">toString</a>(raw_ostream &os) <span class="keyword">const</span>;</div>
+<div class="line"><a name="l00578"></a><span class="lineno">  578</span> </div>
+<div class="line"><a name="l00579"></a><span class="lineno">  579</span>   <span class="keyword">static</span> <a class="code" href="classclang_1_1analyze__scanf_1_1ScanfSpecifier.html">ScanfSpecifier</a> <a class="code" href="classclang_1_1analyze__scanf_1_1ScanfSpecifier.html#a339d23fbcc2d695c410fceea39d42a61">Parse</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *beg, <span class="keyword">const</span> <span class="keywordtype">char</span> *end);</div>
+<div class="line"><a name="l00580"></a><span class="lineno">  580</span> };</div>
+<div class="line"><a name="l00581"></a><span class="lineno">  581</span> </div>
+<div class="line"><a name="l00582"></a><span class="lineno">  582</span> } <span class="comment">// end analyze_scanf namespace</span></div>
+<div class="line"><a name="l00583"></a><span class="lineno">  583</span> </div>
+<div class="line"><a name="l00584"></a><span class="lineno">  584</span> <span class="comment">//===----------------------------------------------------------------------===//</span></div>
+<div class="line"><a name="l00585"></a><span class="lineno">  585</span> <span class="comment">// Parsing and processing of format strings (both fprintf and fscanf).</span></div>
+<div class="line"><a name="l00586"></a><span class="lineno">  586</span> </div>
+<div class="line"><a name="l00587"></a><span class="lineno">  587</span> <span class="keyword">namespace </span>analyze_format_string {</div>
+<div class="line"><a name="l00588"></a><span class="lineno">  588</span> </div>
+<div class="line"><a name="l00589"></a><span class="lineno"><a class="code" href="namespaceclang_1_1analyze__format__string.html#ac609d0752a325cdc9217edc037c6a31faecd94e985c42a37fae84ad5938522b20">  589</a></span> <span class="keyword">enum</span> <a class="code" href="namespaceclang_1_1analyze__format__string.html#ac609d0752a325cdc9217edc037c6a31f">PositionContext</a> { <a class="code" href="namespaceclang_1_1analyze__format__string.html#ac609d0752a325cdc9217edc037c6a31fa8b4abdf44e62e1dd2daec8ba593e1a11">FieldWidthPos</a> = 0, <a class="code" href="namespaceclang_1_1analyze__format__string.html#ac609d0752a325cdc9217edc037c6a31faecd94e985c42a37fae84ad5938522b20">PrecisionPos</a> = 1 };</div>
+<div class="line"><a name="l00590"></a><span class="lineno">  590</span> </div>
+<div class="line"><a name="l00591"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1FormatStringHandler.html">  591</a></span> <span class="keyword">class </span><a class="code" href="classclang_1_1analyze__format__string_1_1FormatStringHandler.html">FormatStringHandler</a> {</div>
+<div class="line"><a name="l00592"></a><span class="lineno">  592</span> <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00593"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1FormatStringHandler.html#affe8657c73d21cfa9a96fc9c05cfce05">  593</a></span>   <a class="code" href="classclang_1_1analyze__format__string_1_1FormatStringHandler.html#affe8657c73d21cfa9a96fc9c05cfce05">FormatStringHandler</a>() {}</div>
+<div class="line"><a name="l00594"></a><span class="lineno">  594</span>   <span class="keyword">virtual</span> <a class="code" href="classclang_1_1analyze__format__string_1_1FormatStringHandler.html#ab9bb524cb0f4573060564755f70e0a8d">~FormatStringHandler</a>();</div>
+<div class="line"><a name="l00595"></a><span class="lineno">  595</span> </div>
+<div class="line"><a name="l00596"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1FormatStringHandler.html#a9c1f8e30343640d08cac15dae21f76b6">  596</a></span>   <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classclang_1_1analyze__format__string_1_1FormatStringHandler.html#a9c1f8e30343640d08cac15dae21f76b6">HandleNullChar</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *nullCharacter) {}</div>
+<div class="line"><a name="l00597"></a><span class="lineno">  597</span> </div>
+<div class="line"><a name="l00598"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1FormatStringHandler.html#abb30308269f8f7e68d9320633c2eb11a">  598</a></span>   <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classclang_1_1analyze__format__string_1_1FormatStringHandler.html#abb30308269f8f7e68d9320633c2eb11a">HandlePosition</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *startPos, <span class="keywordtype">unsigned</span> posLen) {}</div>
+<div class="line"><a name="l00599"></a><span class="lineno">  599</span> </div>
+<div class="line"><a name="l00600"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1FormatStringHandler.html#ac530271593736374f8df5b2d3365190f">  600</a></span>   <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classclang_1_1analyze__format__string_1_1FormatStringHandler.html#ac530271593736374f8df5b2d3365190f">HandleInvalidPosition</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *startPos, <span class="keywordtype">unsigned</span> posLen,</div>
+<div class="line"><a name="l00601"></a><span class="lineno">  601</span>                                      <a class="code" href="namespaceclang_1_1analyze__format__string.html#ac609d0752a325cdc9217edc037c6a31f">PositionContext</a> p) {}</div>
+<div class="line"><a name="l00602"></a><span class="lineno">  602</span> </div>
+<div class="line"><a name="l00603"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1FormatStringHandler.html#aceff92e78278795d82fd62ae69c214df">  603</a></span>   <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classclang_1_1analyze__format__string_1_1FormatStringHandler.html#aceff92e78278795d82fd62ae69c214df">HandleZeroPosition</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *startPos, <span class="keywordtype">unsigned</span> posLen) {}</div>
+<div class="line"><a name="l00604"></a><span class="lineno">  604</span> </div>
+<div class="line"><a name="l00605"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1FormatStringHandler.html#ad26d531598d5b071215064ed67a02bcd">  605</a></span>   <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classclang_1_1analyze__format__string_1_1FormatStringHandler.html#ad26d531598d5b071215064ed67a02bcd">HandleIncompleteSpecifier</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *startSpecifier,</div>
+<div class="line"><a name="l00606"></a><span class="lineno">  606</span>                                          <span class="keywordtype">unsigned</span> specifierLen) {}</div>
+<div class="line"><a name="l00607"></a><span class="lineno">  607</span> </div>
+<div class="line"><a name="l00608"></a><span class="lineno">  608</span>   <span class="comment">// Printf-specific handlers.</span></div>
+<div class="line"><a name="l00609"></a><span class="lineno">  609</span> </div>
+<div class="line"><a name="l00610"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1FormatStringHandler.html#a1c92a01898d6c0c42c855ca99c066f59">  610</a></span>   <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classclang_1_1analyze__format__string_1_1FormatStringHandler.html#a1c92a01898d6c0c42c855ca99c066f59">HandleInvalidPrintfConversionSpecifier</a>(</div>
+<div class="line"><a name="l00611"></a><span class="lineno">  611</span>                                       <span class="keyword">const</span> <a class="code" href="classclang_1_1analyze__printf_1_1PrintfSpecifier.html">analyze_printf::PrintfSpecifier</a> &FS,</div>
+<div class="line"><a name="l00612"></a><span class="lineno">  612</span>                                       <span class="keyword">const</span> <span class="keywordtype">char</span> *startSpecifier,</div>
+<div class="line"><a name="l00613"></a><span class="lineno">  613</span>                                       <span class="keywordtype">unsigned</span> specifierLen) {</div>
+<div class="line"><a name="l00614"></a><span class="lineno">  614</span>     <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00615"></a><span class="lineno">  615</span>   }</div>
+<div class="line"><a name="l00616"></a><span class="lineno">  616</span> </div>
+<div class="line"><a name="l00617"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1FormatStringHandler.html#a1204be1a3e872d743ec960f76f43fd11">  617</a></span>   <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classclang_1_1analyze__format__string_1_1FormatStringHandler.html#a1204be1a3e872d743ec960f76f43fd11">HandlePrintfSpecifier</a>(<span class="keyword">const</span> <a class="code" href="classclang_1_1analyze__printf_1_1PrintfSpecifier.html">analyze_printf::PrintfSpecifier</a> &FS,</div>
+<div class="line"><a name="l00618"></a><span class="lineno">  618</span>                                      <span class="keyword">const</span> <span class="keywordtype">char</span> *startSpecifier,</div>
+<div class="line"><a name="l00619"></a><span class="lineno">  619</span>                                      <span class="keywordtype">unsigned</span> specifierLen) {</div>
+<div class="line"><a name="l00620"></a><span class="lineno">  620</span>     <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00621"></a><span class="lineno">  621</span>   }</div>
+<div class="line"><a name="l00622"></a><span class="lineno">  622</span> </div>
+<div class="line"><a name="l00623"></a><span class="lineno">  623</span>     <span class="comment">// Scanf-specific handlers.</span></div>
+<div class="line"><a name="l00624"></a><span class="lineno">  624</span> </div>
+<div class="line"><a name="l00625"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1FormatStringHandler.html#afc5ecd927d044433bda337f0171e7809">  625</a></span>   <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classclang_1_1analyze__format__string_1_1FormatStringHandler.html#afc5ecd927d044433bda337f0171e7809">HandleInvalidScanfConversionSpecifier</a>(</div>
+<div class="line"><a name="l00626"></a><span class="lineno">  626</span>                                         <span class="keyword">const</span> <a class="code" href="classclang_1_1analyze__scanf_1_1ScanfSpecifier.html">analyze_scanf::ScanfSpecifier</a> &FS,</div>
+<div class="line"><a name="l00627"></a><span class="lineno">  627</span>                                         <span class="keyword">const</span> <span class="keywordtype">char</span> *startSpecifier,</div>
+<div class="line"><a name="l00628"></a><span class="lineno">  628</span>                                         <span class="keywordtype">unsigned</span> specifierLen) {</div>
+<div class="line"><a name="l00629"></a><span class="lineno">  629</span>     <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00630"></a><span class="lineno">  630</span>   }</div>
+<div class="line"><a name="l00631"></a><span class="lineno">  631</span> </div>
+<div class="line"><a name="l00632"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1FormatStringHandler.html#aeac4749d62478cc736cebd4f6fe7c9bc">  632</a></span>   <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classclang_1_1analyze__format__string_1_1FormatStringHandler.html#aeac4749d62478cc736cebd4f6fe7c9bc">HandleScanfSpecifier</a>(<span class="keyword">const</span> <a class="code" href="classclang_1_1analyze__scanf_1_1ScanfSpecifier.html">analyze_scanf::ScanfSpecifier</a> &FS,</div>
+<div class="line"><a name="l00633"></a><span class="lineno">  633</span>                                     <span class="keyword">const</span> <span class="keywordtype">char</span> *startSpecifier,</div>
+<div class="line"><a name="l00634"></a><span class="lineno">  634</span>                                     <span class="keywordtype">unsigned</span> specifierLen) {</div>
+<div class="line"><a name="l00635"></a><span class="lineno">  635</span>     <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00636"></a><span class="lineno">  636</span>   }</div>
+<div class="line"><a name="l00637"></a><span class="lineno">  637</span> </div>
+<div class="line"><a name="l00638"></a><span class="lineno"><a class="code" href="classclang_1_1analyze__format__string_1_1FormatStringHandler.html#a959fb76b8aff05e12290c6742fc07f53">  638</a></span>   <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classclang_1_1analyze__format__string_1_1FormatStringHandler.html#a959fb76b8aff05e12290c6742fc07f53">HandleIncompleteScanList</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *start, <span class="keyword">const</span> <span class="keywordtype">char</span> *end) {}</div>
+<div class="line"><a name="l00639"></a><span class="lineno">  639</span> };</div>
+<div class="line"><a name="l00640"></a><span class="lineno">  640</span> </div>
+<div class="line"><a name="l00641"></a><span class="lineno">  641</span> <span class="keywordtype">bool</span> <a class="code" href="namespaceclang_1_1analyze__format__string.html#ae7ccf18a079e318bcbf0f690be71a423">ParsePrintfString</a>(FormatStringHandler &H,</div>
+<div class="line"><a name="l00642"></a><span class="lineno">  642</span>                        <span class="keyword">const</span> <span class="keywordtype">char</span> *beg, <span class="keyword">const</span> <span class="keywordtype">char</span> *end, <span class="keyword">const</span> <a class="code" href="classclang_1_1LangOptions.html" title="Keeps track of the various options that can be enabled, which controls the dialect of C or C++ that i...">LangOptions</a> &LO,</div>
+<div class="line"><a name="l00643"></a><span class="lineno">  643</span>                        <span class="keyword">const</span> <a class="code" href="classclang_1_1TargetInfo.html" title="Exposes information about the current target.">TargetInfo</a> &Target);</div>
+<div class="line"><a name="l00644"></a><span class="lineno">  644</span> </div>
+<div class="line"><a name="l00645"></a><span class="lineno">  645</span> <span class="keywordtype">bool</span> <a class="code" href="namespaceclang_1_1analyze__format__string.html#af090016fd7bafde22c843e925d696b3d">ParseScanfString</a>(FormatStringHandler &H,</div>
+<div class="line"><a name="l00646"></a><span class="lineno">  646</span>                       <span class="keyword">const</span> <span class="keywordtype">char</span> *beg, <span class="keyword">const</span> <span class="keywordtype">char</span> *end, <span class="keyword">const</span> <a class="code" href="classclang_1_1LangOptions.html" title="Keeps track of the various options that can be enabled, which controls the dialect of C or C++ that i...">LangOptions</a> &LO,</div>
+<div class="line"><a name="l00647"></a><span class="lineno">  647</span>                       <span class="keyword">const</span> <a class="code" href="classclang_1_1TargetInfo.html" title="Exposes information about the current target.">TargetInfo</a> &Target);</div>
+<div class="line"><a name="l00648"></a><span class="lineno">  648</span> </div>
+<div class="line"><a name="l00649"></a><span class="lineno">  649</span> } <span class="comment">// end analyze_format_string namespace</span></div>
+<div class="line"><a name="l00650"></a><span class="lineno">  650</span> } <span class="comment">// end clang namespace</span></div>
+<div class="line"><a name="l00651"></a><span class="lineno">  651</span> <span class="preprocessor">#endif</span></div>
+</div><!-- fragment --></div><!-- contents -->
+<hr>
+<p class="footer">
+Generated on Mon May 12 2014 12:13:39 for r$LatestRev$ by <a href="http://www.doxygen.org">Doxygen 
+1.8.3.1</a>.</p>
+<p class="footer">
+See the <a href="http://clang.llvm.org">Main Clang Web Page</a> for more 
+information.</p>
+</body>
+</html>

Added: www-releases/trunk/3.5.1/tools/clang/docs/doxygen/html/FormatToken_8cpp_source.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/3.5.1/tools/clang/docs/doxygen/html/FormatToken_8cpp_source.html?rev=225843&view=auto
==============================================================================
--- www-releases/trunk/3.5.1/tools/clang/docs/doxygen/html/FormatToken_8cpp_source.html (added)
+++ www-releases/trunk/3.5.1/tools/clang/docs/doxygen/html/FormatToken_8cpp_source.html Tue Jan 13 16:55:20 2015
@@ -0,0 +1,283 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<html><head>
+<meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
+<meta name="keywords" content="clang,LLVM,Low Level Virtual Machine,C,C++,doxygen,API,frontend,documentation"/>
+<meta name="description" content="C++ source code API documentation for clang."/>
+<title>clang: FormatToken.cpp Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head><body>
+<p class="title">clang API Documentation</p>
+<!-- Generated by Doxygen 1.8.3.1 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main Page</span></a></li>
+      <li><a href="pages.html"><span>Related Pages</span></a></li>
+      <li><a href="modules.html"><span>Modules</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li><a href="annotated.html"><span>Classes</span></a></li>
+      <li class="current"><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="files.html"><span>File List</span></a></li>
+      <li><a href="globals.html"><span>File Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark"> </span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark"> </span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark"> </span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark"> </span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark"> </span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark"> </span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark"> </span>Typedefs</a><a class="SelectItem" href="javascript:void
 (0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark"> </span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark"> </span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark"> </span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark"> </span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(11)"><span class="SelectionMark"> </span>Groups</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(12)"><span class="SelectionMark"> </span>Pages</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_f65986501076cc710d4b9355ae3fe06d.html">clang</a></li><li class="navelem"><a class="el" href="dir_87e2a7550f83bd8cbfc92736891468fc.html">lib</a></li><li class="navelem"><a class="el" href="dir_ffab4b0006501d4be8b843d944947a1c.html">Format</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">FormatToken.cpp</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="FormatToken_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span> <span class="comment">//===--- FormatToken.cpp - Format C++ code --------------------------------===//</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span> <span class="comment">//</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno">    3</span> <span class="comment">//                     The LLVM Compiler Infrastructure</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span> <span class="comment">//</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span> <span class="comment">// This file is distributed under the University of Illinois Open Source</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span> <span class="comment">// License. See LICENSE.TXT for details.</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span> <span class="comment">//</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span> <span class="comment">//===----------------------------------------------------------------------===//</span><span class="comment"></span></div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span> <span class="comment">///</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span> <span class="comment">/// \file</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span> <span class="comment">/// \brief This file implements specific functions of \c FormatTokens and their</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span> <span class="comment">/// roles.</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span> <span class="comment">///</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span> <span class="comment"></span><span class="comment">//===----------------------------------------------------------------------===//</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span> </div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span> <span class="preprocessor">#include "<a class="code" href="FormatToken_8h.html" title="This file contains the declaration of the FormatToken, a wrapper around Token with additional informa...">FormatToken.h</a>"</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span> <span class="preprocessor">#include "<a class="code" href="ContinuationIndenter_8h.html" title="This file implements an indenter that manages the indentation of continuations.">ContinuationIndenter.h</a>"</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span> <span class="preprocessor">#include "<a class="code" href="Format_8h.html">clang/Format/Format.h</a>"</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span> <span class="preprocessor">#include "llvm/ADT/SmallVector.h"</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span> <span class="preprocessor">#include "llvm/Support/Debug.h"</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno">   21</span> </div>
+<div class="line"><a name="l00022"></a><span class="lineno">   22</span> <span class="keyword">namespace </span>clang {</div>
+<div class="line"><a name="l00023"></a><span class="lineno">   23</span> <span class="keyword">namespace </span>format {</div>
+<div class="line"><a name="l00024"></a><span class="lineno">   24</span> </div>
+<div class="line"><a name="l00025"></a><span class="lineno"><a class="code" href="classclang_1_1format_1_1TokenRole.html#ae78d6a220114fcc7f2a2fdf8f0b49943">   25</a></span> <a class="code" href="classclang_1_1format_1_1TokenRole.html#ae78d6a220114fcc7f2a2fdf8f0b49943">TokenRole::~TokenRole</a>() {}</div>
+<div class="line"><a name="l00026"></a><span class="lineno">   26</span> </div>
+<div class="line"><a name="l00027"></a><span class="lineno"><a class="code" href="classclang_1_1format_1_1TokenRole.html#a16c2035d3702379596da2fd39a2cab10">   27</a></span> <span class="keywordtype">void</span> <a class="code" href="classclang_1_1format_1_1TokenRole.html#a16c2035d3702379596da2fd39a2cab10" title="After the TokenAnnotator has finished annotating all the tokens, this function precomputes required i...">TokenRole::precomputeFormattingInfos</a>(<span class="keyword">const</span> <a class="code" href="structclang_1_1format_1_1FormatToken.html" title="A wrapper around a Token storing information about the whitespace characters preceeding it...">FormatToken</a> *<a class="code" href="classclang_1_1Token.html">Token</a>) {}</div>
+<div class="line"><a name="l00028"></a><span class="lineno">   28</span> </div>
+<div class="line"><a name="l00029"></a><span class="lineno"><a class="code" href="classclang_1_1format_1_1CommaSeparatedList.html#a6f2b9d7fccee3dbbfcd830d024b10b8e">   29</a></span> <span class="keywordtype">unsigned</span> <a class="code" href="classclang_1_1format_1_1CommaSeparatedList.html#a6f2b9d7fccee3dbbfcd830d024b10b8e" title="Apply the special formatting that the given role demands.">CommaSeparatedList::format</a>(<a class="code" href="structclang_1_1format_1_1LineState.html" title="The current state when indenting a unwrapped line.">LineState</a> &<a class="code" href="Format_8cpp.html#a83e9e4ff6cb05dbdf72ab2a01aa289c0">State</a>,</div>
+<div class="line"><a name="l00030"></a><span class="lineno">   30</span>                                     <a class="code" href="classclang_1_1format_1_1ContinuationIndenter.html">ContinuationIndenter</a> *<a class="code" href="Format_8cpp.html#a397c3fbc45eefcefc8736ca29eb8d0ea">Indenter</a>,</div>
+<div class="line"><a name="l00031"></a><span class="lineno">   31</span>                                     <span class="keywordtype">bool</span> DryRun) {</div>
+<div class="line"><a name="l00032"></a><span class="lineno">   32</span>   <span class="keywordflow">if</span> (!State.<a class="code" href="structclang_1_1format_1_1LineState.html#aebb3f7e264539956840e020e3aac94d1" title="The token that needs to be next formatted.">NextToken</a>-><a class="code" href="structclang_1_1format_1_1FormatToken.html#afd2b1b6774edaba6ab37660e457e3a04">Previous</a> || !State.<a class="code" href="structclang_1_1format_1_1LineState.html#aebb3f7e264539956840e020e3aac94d1" title="The token that needs to be next formatted.">NextToken</a>-><a class="code" href="structclang_1_1format_1_1FormatToken.html#afd2b1b6774edaba6ab37660e457e3a04">Previous</a>-><a class="code" href="structclang_1_1format_1_1FormatToken.html#afd2b1b6774edaba6ab37660e457e3a04">Previous</a> ||</div>
+<div class="line"><a name="l00033"></a><span class="lineno">   33</span>       Commas.size() <= 2)</div>
+<div class="line"><a name="l00034"></a><span class="lineno">   34</span>     <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00035"></a><span class="lineno">   35</span> </div>
+<div class="line"><a name="l00036"></a><span class="lineno">   36</span>   <span class="comment">// Ensure that we start on the opening brace.</span></div>
+<div class="line"><a name="l00037"></a><span class="lineno">   37</span>   <span class="keyword">const</span> <a class="code" href="structclang_1_1format_1_1FormatToken.html" title="A wrapper around a Token storing information about the whitespace characters preceeding it...">FormatToken</a> *LBrace = State.<a class="code" href="structclang_1_1format_1_1LineState.html#aebb3f7e264539956840e020e3aac94d1" title="The token that needs to be next formatted.">NextToken</a>-><a class="code" href="structclang_1_1format_1_1FormatToken.html#afd2b1b6774edaba6ab37660e457e3a04">Previous</a>-><a class="code" href="structclang_1_1format_1_1FormatToken.html#afd2b1b6774edaba6ab37660e457e3a04">Previous</a>;</div>
+<div class="line"><a name="l00038"></a><span class="lineno">   38</span>   <span class="keywordflow">if</span> (LBrace-><a class="code" href="structclang_1_1format_1_1FormatToken.html#a70cb2af212cf1462b3e533de7867fa51">isNot</a>(tok::l_brace) ||</div>
+<div class="line"><a name="l00039"></a><span class="lineno">   39</span>       LBrace-><a class="code" href="structclang_1_1format_1_1FormatToken.html#a8535587de7dd43ab56e32b88279ea917" title="Contains the kind of block if this token is a brace.">BlockKind</a> == <a class="code" href="namespaceclang_1_1format.html#af3efd684dd7c9ad4cd48fd4d28ecaaeaac0cd3adbed48a71039a2855df3fe8036">BK_Block</a> ||</div>
+<div class="line"><a name="l00040"></a><span class="lineno">   40</span>       LBrace-><a class="code" href="structclang_1_1format_1_1FormatToken.html#acc9a4d3e0add22535846930962df8943">Type</a> == <a class="code" href="namespaceclang_1_1format.html#a41859d19e0a15b9356d655e8c11d8430a1539e9e36f093ea30703159731670a0d">TT_DictLiteral</a> ||</div>
+<div class="line"><a name="l00041"></a><span class="lineno">   41</span>       LBrace-><a class="code" href="structclang_1_1format_1_1FormatToken.html#a69a581e676a2af19891855ab81e0a0c6">Next</a>-><a class="code" href="structclang_1_1format_1_1FormatToken.html#acc9a4d3e0add22535846930962df8943">Type</a> == <a class="code" href="namespaceclang_1_1format.html#a41859d19e0a15b9356d655e8c11d8430af3ff69cf1759e24f4f7d8f3c5ca01d69">TT_DesignatedInitializerPeriod</a>)</div>
+<div class="line"><a name="l00042"></a><span class="lineno">   42</span>     <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00043"></a><span class="lineno">   43</span> </div>
+<div class="line"><a name="l00044"></a><span class="lineno">   44</span>   <span class="comment">// Calculate the number of code points we have to format this list. As the</span></div>
+<div class="line"><a name="l00045"></a><span class="lineno">   45</span>   <span class="comment">// first token is already placed, we have to subtract it.</span></div>
+<div class="line"><a name="l00046"></a><span class="lineno">   46</span>   <span class="keywordtype">unsigned</span> RemainingCodePoints = <a class="code" href="classclang_1_1format_1_1TokenRole.html#a5924b5484f0f8f27c7fcf43eb89231b1">Style</a>.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#afe9550cc9c7c93fbc3506cb0b140593c" title="The column limit.">ColumnLimit</a> - State.<a class="code" href="structclang_1_1format_1_1LineState.html#a4738f13ffbb9ada85645918e807fcb9c" title="The number of used columns in the current line.">Column</a> +</div>
+<div class="line"><a name="l00047"></a><span class="lineno">   47</span>                                  State.<a class="code" href="structclang_1_1format_1_1LineState.html#aebb3f7e264539956840e020e3aac94d1" title="The token that needs to be next formatted.">NextToken</a>-><a class="code" href="structclang_1_1format_1_1FormatToken.html#afd2b1b6774edaba6ab37660e457e3a04">Previous</a>-><a class="code" href="structclang_1_1format_1_1FormatToken.html#a93569d64f8649501a001718995b8ba88" title="The width of the non-whitespace parts of the token (or its first line for multi-line tokens) in colum...">ColumnWidth</a>;</div>
+<div class="line"><a name="l00048"></a><span class="lineno">   48</span> </div>
+<div class="line"><a name="l00049"></a><span class="lineno">   49</span>   <span class="comment">// Find the best ColumnFormat, i.e. the best number of columns to use.</span></div>
+<div class="line"><a name="l00050"></a><span class="lineno">   50</span>   <span class="keyword">const</span> ColumnFormat *Format = getColumnFormat(RemainingCodePoints);</div>
+<div class="line"><a name="l00051"></a><span class="lineno">   51</span>   <span class="keywordflow">if</span> (!Format)</div>
+<div class="line"><a name="l00052"></a><span class="lineno">   52</span>     <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00053"></a><span class="lineno">   53</span> </div>
+<div class="line"><a name="l00054"></a><span class="lineno">   54</span>   <span class="comment">// Format the entire list.</span></div>
+<div class="line"><a name="l00055"></a><span class="lineno">   55</span>   <span class="keywordtype">unsigned</span> Penalty = 0;</div>
+<div class="line"><a name="l00056"></a><span class="lineno">   56</span>   <span class="keywordtype">unsigned</span> <a class="code" href="Format_8cpp.html#a1eea5be0eff1070e17b69bc5b9f281ae">Column</a> = 0;</div>
+<div class="line"><a name="l00057"></a><span class="lineno">   57</span>   <span class="keywordtype">unsigned</span> Item = 0;</div>
+<div class="line"><a name="l00058"></a><span class="lineno">   58</span>   <span class="keywordflow">while</span> (State.<a class="code" href="structclang_1_1format_1_1LineState.html#aebb3f7e264539956840e020e3aac94d1" title="The token that needs to be next formatted.">NextToken</a> != LBrace-><a class="code" href="structclang_1_1format_1_1FormatToken.html#af12eecf8720255ffb8111c004ea75a93">MatchingParen</a>) {</div>
+<div class="line"><a name="l00059"></a><span class="lineno">   59</span>     <span class="keywordtype">bool</span> <a class="code" href="Format_8cpp.html#a5034b09b7876fa69430159948e9a403e">NewLine</a> = <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00060"></a><span class="lineno">   60</span>     <span class="keywordtype">unsigned</span> ExtraSpaces = 0;</div>
+<div class="line"><a name="l00061"></a><span class="lineno">   61</span> </div>
+<div class="line"><a name="l00062"></a><span class="lineno">   62</span>     <span class="comment">// If the previous token was one of our commas, we are now on the next item.</span></div>
+<div class="line"><a name="l00063"></a><span class="lineno">   63</span>     <span class="keywordflow">if</span> (Item < Commas.size() && State.<a class="code" href="structclang_1_1format_1_1LineState.html#aebb3f7e264539956840e020e3aac94d1" title="The token that needs to be next formatted.">NextToken</a>-><a class="code" href="structclang_1_1format_1_1FormatToken.html#afd2b1b6774edaba6ab37660e457e3a04">Previous</a> == Commas[Item]) {</div>
+<div class="line"><a name="l00064"></a><span class="lineno">   64</span>       <span class="keywordflow">if</span> (!State.<a class="code" href="structclang_1_1format_1_1LineState.html#aebb3f7e264539956840e020e3aac94d1" title="The token that needs to be next formatted.">NextToken</a>-><a class="code" href="structclang_1_1format_1_1FormatToken.html#a810285a2ad890ec1f70b823433ad9f94">isTrailingComment</a>()) {</div>
+<div class="line"><a name="l00065"></a><span class="lineno">   65</span>         ExtraSpaces += Format->ColumnSizes[<a class="code" href="Format_8cpp.html#a1eea5be0eff1070e17b69bc5b9f281ae">Column</a>] - ItemLengths[Item];</div>
+<div class="line"><a name="l00066"></a><span class="lineno">   66</span>         ++<a class="code" href="Format_8cpp.html#a1eea5be0eff1070e17b69bc5b9f281ae">Column</a>;</div>
+<div class="line"><a name="l00067"></a><span class="lineno">   67</span>       }</div>
+<div class="line"><a name="l00068"></a><span class="lineno">   68</span>       ++Item;</div>
+<div class="line"><a name="l00069"></a><span class="lineno">   69</span>     }</div>
+<div class="line"><a name="l00070"></a><span class="lineno">   70</span> </div>
+<div class="line"><a name="l00071"></a><span class="lineno">   71</span>     <span class="keywordflow">if</span> (Column == Format->Columns || State.<a class="code" href="structclang_1_1format_1_1LineState.html#aebb3f7e264539956840e020e3aac94d1" title="The token that needs to be next formatted.">NextToken</a>-><a class="code" href="structclang_1_1format_1_1FormatToken.html#a7bf92e943c028898d14a5516969e25d9" title="Whether there must be a line break before this token.">MustBreakBefore</a>) {</div>
+<div class="line"><a name="l00072"></a><span class="lineno">   72</span>       Column = 0;</div>
+<div class="line"><a name="l00073"></a><span class="lineno">   73</span>       NewLine = <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00074"></a><span class="lineno">   74</span>     }</div>
+<div class="line"><a name="l00075"></a><span class="lineno">   75</span> </div>
+<div class="line"><a name="l00076"></a><span class="lineno">   76</span>     <span class="comment">// Place token using the continuation indenter and store the penalty.</span></div>
+<div class="line"><a name="l00077"></a><span class="lineno">   77</span>     Penalty += Indenter-><a class="code" href="classclang_1_1format_1_1ContinuationIndenter.html#a556415a6f3870120dac6b0b2849e6083" title="Appends the next token to State and updates information necessary for indentation.">addTokenToState</a>(State, NewLine, DryRun, ExtraSpaces);</div>
+<div class="line"><a name="l00078"></a><span class="lineno">   78</span>   }</div>
+<div class="line"><a name="l00079"></a><span class="lineno">   79</span>   <span class="keywordflow">return</span> Penalty;</div>
+<div class="line"><a name="l00080"></a><span class="lineno">   80</span> }</div>
+<div class="line"><a name="l00081"></a><span class="lineno">   81</span> </div>
+<div class="line"><a name="l00082"></a><span class="lineno">   82</span> <span class="comment">// Returns the lengths in code points between Begin and End (both included),</span></div>
+<div class="line"><a name="l00083"></a><span class="lineno">   83</span> <span class="comment">// assuming that the entire sequence is put on a single line.</span></div>
+<div class="line"><a name="l00084"></a><span class="lineno"><a class="code" href="namespaceclang_1_1format.html#aae5d1d387154b424ef2498d5d64739c1">   84</a></span> <span class="keyword">static</span> <span class="keywordtype">unsigned</span> <a class="code" href="namespaceclang_1_1format.html#aae5d1d387154b424ef2498d5d64739c1">CodePointsBetween</a>(<span class="keyword">const</span> <a class="code" href="structclang_1_1format_1_1FormatToken.html" title="A wrapper around a Token storing information about the whitespace characters preceeding it...">FormatToken</a> *Begin,</div>
+<div class="line"><a name="l00085"></a><span class="lineno">   85</span>                                   <span class="keyword">const</span> <a class="code" href="structclang_1_1format_1_1FormatToken.html" title="A wrapper around a Token storing information about the whitespace characters preceeding it...">FormatToken</a> *End) {</div>
+<div class="line"><a name="l00086"></a><span class="lineno">   86</span>   assert(End-><a class="code" href="structclang_1_1format_1_1FormatToken.html#ac2b733f2b528aeab33b9c9189a05dc7a" title="The total length of the unwrapped line up to and including this token.">TotalLength</a> >= Begin-><a class="code" href="structclang_1_1format_1_1FormatToken.html#ac2b733f2b528aeab33b9c9189a05dc7a" title="The total length of the unwrapped line up to and including this token.">TotalLength</a>);</div>
+<div class="line"><a name="l00087"></a><span class="lineno">   87</span>   <span class="keywordflow">return</span> End-><a class="code" href="structclang_1_1format_1_1FormatToken.html#ac2b733f2b528aeab33b9c9189a05dc7a" title="The total length of the unwrapped line up to and including this token.">TotalLength</a> - Begin-><a class="code" href="structclang_1_1format_1_1FormatToken.html#ac2b733f2b528aeab33b9c9189a05dc7a" title="The total length of the unwrapped line up to and including this token.">TotalLength</a> + Begin-><a class="code" href="structclang_1_1format_1_1FormatToken.html#a93569d64f8649501a001718995b8ba88" title="The width of the non-whitespace parts of the token (or its first line for multi-line tokens) in colum...">ColumnWidth</a>;</div>
+<div class="line"><a name="l00088"></a><span class="lineno">   88</span> }</div>
+<div class="line"><a name="l00089"></a><span class="lineno">   89</span> </div>
+<div class="line"><a name="l00090"></a><span class="lineno"><a class="code" href="classclang_1_1format_1_1CommaSeparatedList.html#a3beb9328e1e6df12ebea3540625e22a9">   90</a></span> <span class="keywordtype">void</span> <a class="code" href="classclang_1_1format_1_1CommaSeparatedList.html#a3beb9328e1e6df12ebea3540625e22a9" title="After the TokenAnnotator has finished annotating all the tokens, this function precomputes required i...">CommaSeparatedList::precomputeFormattingInfos</a>(<span class="keyword">const</span> <a class="code" href="structclang_1_1format_1_1FormatToken.html" title="A wrapper around a Token storing information about the whitespace characters preceeding it...">FormatToken</a> *<a class="code" href="classclang_1_1Token.html">Token</a>) {</div>
+<div class="line"><a name="l00091"></a><span class="lineno">   91</span>   <span class="comment">// FIXME: At some point we might want to do this for other lists, too.</span></div>
+<div class="line"><a name="l00092"></a><span class="lineno">   92</span>   <span class="keywordflow">if</span> (!Token-><a class="code" href="structclang_1_1format_1_1FormatToken.html#af12eecf8720255ffb8111c004ea75a93">MatchingParen</a> || Token-><a class="code" href="structclang_1_1format_1_1FormatToken.html#a70cb2af212cf1462b3e533de7867fa51">isNot</a>(tok::l_brace))</div>
+<div class="line"><a name="l00093"></a><span class="lineno">   93</span>     <span class="keywordflow">return</span>;</div>
+<div class="line"><a name="l00094"></a><span class="lineno">   94</span> </div>
+<div class="line"><a name="l00095"></a><span class="lineno">   95</span>   <a class="code" href="structclang_1_1format_1_1FormatToken.html" title="A wrapper around a Token storing information about the whitespace characters preceeding it...">FormatToken</a> *ItemBegin = Token-><a class="code" href="structclang_1_1format_1_1FormatToken.html#a69a581e676a2af19891855ab81e0a0c6">Next</a>;</div>
+<div class="line"><a name="l00096"></a><span class="lineno">   96</span>   <a class="code" href="classllvm_1_1SmallVector.html">SmallVector<bool, 8></a> MustBreakBeforeItem;</div>
+<div class="line"><a name="l00097"></a><span class="lineno">   97</span> </div>
+<div class="line"><a name="l00098"></a><span class="lineno">   98</span>   <span class="comment">// The lengths of an item if it is put at the end of the line. This includes</span></div>
+<div class="line"><a name="l00099"></a><span class="lineno">   99</span>   <span class="comment">// trailing comments which are otherwise ignored for column alignment.</span></div>
+<div class="line"><a name="l00100"></a><span class="lineno">  100</span>   <a class="code" href="classllvm_1_1SmallVector.html">SmallVector<unsigned, 8></a> EndOfLineItemLength;</div>
+<div class="line"><a name="l00101"></a><span class="lineno">  101</span> </div>
+<div class="line"><a name="l00102"></a><span class="lineno">  102</span>   <span class="keywordtype">bool</span> HasNestedBracedList = <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00103"></a><span class="lineno">  103</span>   <span class="keywordflow">for</span> (<span class="keywordtype">unsigned</span> i = 0, e = Commas.size() + 1; i != e; ++i) {</div>
+<div class="line"><a name="l00104"></a><span class="lineno">  104</span>     <span class="comment">// Skip comments on their own line.</span></div>
+<div class="line"><a name="l00105"></a><span class="lineno">  105</span>     <span class="keywordflow">while</span> (ItemBegin-><a class="code" href="structclang_1_1format_1_1FormatToken.html#a417deb217e49152e9db65ca39a48d9ba" title="Whether there is at least one unescaped newline before the Token.">HasUnescapedNewline</a> && ItemBegin-><a class="code" href="structclang_1_1format_1_1FormatToken.html#a810285a2ad890ec1f70b823433ad9f94">isTrailingComment</a>())</div>
+<div class="line"><a name="l00106"></a><span class="lineno">  106</span>       ItemBegin = ItemBegin-><a class="code" href="structclang_1_1format_1_1FormatToken.html#a69a581e676a2af19891855ab81e0a0c6">Next</a>;</div>
+<div class="line"><a name="l00107"></a><span class="lineno">  107</span> </div>
+<div class="line"><a name="l00108"></a><span class="lineno">  108</span>     MustBreakBeforeItem.push_back(ItemBegin-><a class="code" href="structclang_1_1format_1_1FormatToken.html#a7bf92e943c028898d14a5516969e25d9" title="Whether there must be a line break before this token.">MustBreakBefore</a>);</div>
+<div class="line"><a name="l00109"></a><span class="lineno">  109</span>     <span class="keywordflow">if</span> (ItemBegin-><a class="code" href="structclang_1_1format_1_1FormatToken.html#a5902dd2b3abaad59721ec364ee50bcad">is</a>(tok::l_brace))</div>
+<div class="line"><a name="l00110"></a><span class="lineno">  110</span>       HasNestedBracedList = <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00111"></a><span class="lineno">  111</span>     <span class="keyword">const</span> <a class="code" href="structclang_1_1format_1_1FormatToken.html" title="A wrapper around a Token storing information about the whitespace characters preceeding it...">FormatToken</a> *ItemEnd = <a class="code" href="stddef_8h.html#a070d2ce7b6bb7e5c05602aa8c308d0c4">NULL</a>;</div>
+<div class="line"><a name="l00112"></a><span class="lineno">  112</span>     <span class="keywordflow">if</span> (i == Commas.size()) {</div>
+<div class="line"><a name="l00113"></a><span class="lineno">  113</span>       ItemEnd = Token-><a class="code" href="structclang_1_1format_1_1FormatToken.html#af12eecf8720255ffb8111c004ea75a93">MatchingParen</a>;</div>
+<div class="line"><a name="l00114"></a><span class="lineno">  114</span>       <span class="keyword">const</span> <a class="code" href="structclang_1_1format_1_1FormatToken.html" title="A wrapper around a Token storing information about the whitespace characters preceeding it...">FormatToken</a> *NonCommentEnd = ItemEnd-><a class="code" href="structclang_1_1format_1_1FormatToken.html#ad359be5e70de0e24a609d8c7018b3d1e" title="Returns the previous token ignoring comments.">getPreviousNonComment</a>();</div>
+<div class="line"><a name="l00115"></a><span class="lineno">  115</span>       ItemLengths.push_back(<a class="code" href="namespaceclang_1_1format.html#aae5d1d387154b424ef2498d5d64739c1">CodePointsBetween</a>(ItemBegin, NonCommentEnd));</div>
+<div class="line"><a name="l00116"></a><span class="lineno">  116</span>       <span class="keywordflow">if</span> (<a class="code" href="classclang_1_1format_1_1TokenRole.html#a5924b5484f0f8f27c7fcf43eb89231b1">Style</a>.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#a082f72ed255395cea133365999de70a1" title="If true, format braced lists as best suited for C++11 braced lists.">Cpp11BracedListStyle</a>) {</div>
+<div class="line"><a name="l00117"></a><span class="lineno">  117</span>         <span class="comment">// In Cpp11 braced list style, the } and possibly other subsequent</span></div>
+<div class="line"><a name="l00118"></a><span class="lineno">  118</span>         <span class="comment">// tokens will need to stay on a line with the last element.</span></div>
+<div class="line"><a name="l00119"></a><span class="lineno">  119</span>         <span class="keywordflow">while</span> (ItemEnd-><a class="code" href="structclang_1_1format_1_1FormatToken.html#a69a581e676a2af19891855ab81e0a0c6">Next</a> && !ItemEnd-><a class="code" href="structclang_1_1format_1_1FormatToken.html#a69a581e676a2af19891855ab81e0a0c6">Next</a>-><a class="code" href="structclang_1_1format_1_1FormatToken.html#a8f4e8957198b4e546e719860c8d9668b" title="true if it is allowed to break before this token.">CanBreakBefore</a>)</div>
+<div class="line"><a name="l00120"></a><span class="lineno">  120</span>           ItemEnd = ItemEnd-><a class="code" href="structclang_1_1format_1_1FormatToken.html#a69a581e676a2af19891855ab81e0a0c6">Next</a>;</div>
+<div class="line"><a name="l00121"></a><span class="lineno">  121</span>       } <span class="keywordflow">else</span> {</div>
+<div class="line"><a name="l00122"></a><span class="lineno">  122</span>         <span class="comment">// In other braced lists styles, the "}" can be wrapped to the new line.</span></div>
+<div class="line"><a name="l00123"></a><span class="lineno">  123</span>         ItemEnd = Token-><a class="code" href="structclang_1_1format_1_1FormatToken.html#af12eecf8720255ffb8111c004ea75a93">MatchingParen</a>-><a class="code" href="structclang_1_1format_1_1FormatToken.html#afd2b1b6774edaba6ab37660e457e3a04">Previous</a>;</div>
+<div class="line"><a name="l00124"></a><span class="lineno">  124</span>       }</div>
+<div class="line"><a name="l00125"></a><span class="lineno">  125</span>     } <span class="keywordflow">else</span> {</div>
+<div class="line"><a name="l00126"></a><span class="lineno">  126</span>       ItemEnd = Commas[i];</div>
+<div class="line"><a name="l00127"></a><span class="lineno">  127</span>       <span class="comment">// The comma is counted as part of the item when calculating the length.</span></div>
+<div class="line"><a name="l00128"></a><span class="lineno">  128</span>       ItemLengths.push_back(<a class="code" href="namespaceclang_1_1format.html#aae5d1d387154b424ef2498d5d64739c1">CodePointsBetween</a>(ItemBegin, ItemEnd));</div>
+<div class="line"><a name="l00129"></a><span class="lineno">  129</span>       <span class="comment">// Consume trailing comments so the are included in EndOfLineItemLength.</span></div>
+<div class="line"><a name="l00130"></a><span class="lineno">  130</span>       <span class="keywordflow">if</span> (ItemEnd-><a class="code" href="structclang_1_1format_1_1FormatToken.html#a69a581e676a2af19891855ab81e0a0c6">Next</a> && !ItemEnd-><a class="code" href="structclang_1_1format_1_1FormatToken.html#a69a581e676a2af19891855ab81e0a0c6">Next</a>-><a class="code" href="structclang_1_1format_1_1FormatToken.html#a417deb217e49152e9db65ca39a48d9ba" title="Whether there is at least one unescaped newline before the Token.">HasUnescapedNewline</a> &&</div>
+<div class="line"><a name="l00131"></a><span class="lineno">  131</span>           ItemEnd-><a class="code" href="structclang_1_1format_1_1FormatToken.html#a69a581e676a2af19891855ab81e0a0c6">Next</a>-><a class="code" href="structclang_1_1format_1_1FormatToken.html#a810285a2ad890ec1f70b823433ad9f94">isTrailingComment</a>())</div>
+<div class="line"><a name="l00132"></a><span class="lineno">  132</span>         ItemEnd = ItemEnd-><a class="code" href="structclang_1_1format_1_1FormatToken.html#a69a581e676a2af19891855ab81e0a0c6">Next</a>;</div>
+<div class="line"><a name="l00133"></a><span class="lineno">  133</span>     }</div>
+<div class="line"><a name="l00134"></a><span class="lineno">  134</span>     EndOfLineItemLength.push_back(<a class="code" href="namespaceclang_1_1format.html#aae5d1d387154b424ef2498d5d64739c1">CodePointsBetween</a>(ItemBegin, ItemEnd));</div>
+<div class="line"><a name="l00135"></a><span class="lineno">  135</span>     <span class="comment">// If there is a trailing comma in the list, the next item will start at the</span></div>
+<div class="line"><a name="l00136"></a><span class="lineno">  136</span>     <span class="comment">// closing brace. Don't create an extra item for this.</span></div>
+<div class="line"><a name="l00137"></a><span class="lineno">  137</span>     <span class="keywordflow">if</span> (ItemEnd-><a class="code" href="structclang_1_1format_1_1FormatToken.html#af553e2911fcfe2ee149a158cf2ae6bed" title="Returns the next token ignoring comments.">getNextNonComment</a>() == Token-><a class="code" href="structclang_1_1format_1_1FormatToken.html#af12eecf8720255ffb8111c004ea75a93">MatchingParen</a>)</div>
+<div class="line"><a name="l00138"></a><span class="lineno">  138</span>       <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00139"></a><span class="lineno">  139</span>     ItemBegin = ItemEnd-><a class="code" href="structclang_1_1format_1_1FormatToken.html#a69a581e676a2af19891855ab81e0a0c6">Next</a>;</div>
+<div class="line"><a name="l00140"></a><span class="lineno">  140</span>   }</div>
+<div class="line"><a name="l00141"></a><span class="lineno">  141</span> </div>
+<div class="line"><a name="l00142"></a><span class="lineno">  142</span>   <span class="comment">// We can never place more than ColumnLimit / 3 items in a row (because of the</span></div>
+<div class="line"><a name="l00143"></a><span class="lineno">  143</span>   <span class="comment">// spaces and the comma).</span></div>
+<div class="line"><a name="l00144"></a><span class="lineno">  144</span>   <span class="keywordflow">for</span> (<span class="keywordtype">unsigned</span> Columns = 1; Columns <= <a class="code" href="classclang_1_1format_1_1TokenRole.html#a5924b5484f0f8f27c7fcf43eb89231b1">Style</a>.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#afe9550cc9c7c93fbc3506cb0b140593c" title="The column limit.">ColumnLimit</a> / 3; ++Columns) {</div>
+<div class="line"><a name="l00145"></a><span class="lineno">  145</span>     ColumnFormat Format;</div>
+<div class="line"><a name="l00146"></a><span class="lineno">  146</span>     Format.Columns = Columns;</div>
+<div class="line"><a name="l00147"></a><span class="lineno">  147</span>     Format.ColumnSizes.resize(Columns);</div>
+<div class="line"><a name="l00148"></a><span class="lineno">  148</span>     Format.LineCount = 1;</div>
+<div class="line"><a name="l00149"></a><span class="lineno">  149</span>     <span class="keywordtype">bool</span> HasRowWithSufficientColumns = <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00150"></a><span class="lineno">  150</span>     <span class="keywordtype">unsigned</span> <a class="code" href="Format_8cpp.html#a1eea5be0eff1070e17b69bc5b9f281ae">Column</a> = 0;</div>
+<div class="line"><a name="l00151"></a><span class="lineno">  151</span>     <span class="keywordflow">for</span> (<span class="keywordtype">unsigned</span> i = 0, e = ItemLengths.size(); i != e; ++i) {</div>
+<div class="line"><a name="l00152"></a><span class="lineno">  152</span>       assert(i < MustBreakBeforeItem.size());</div>
+<div class="line"><a name="l00153"></a><span class="lineno">  153</span>       <span class="keywordflow">if</span> (MustBreakBeforeItem[i] || Column == Columns) {</div>
+<div class="line"><a name="l00154"></a><span class="lineno">  154</span>         ++Format.LineCount;</div>
+<div class="line"><a name="l00155"></a><span class="lineno">  155</span>         Column = 0;</div>
+<div class="line"><a name="l00156"></a><span class="lineno">  156</span>       }</div>
+<div class="line"><a name="l00157"></a><span class="lineno">  157</span>       <span class="keywordflow">if</span> (Column == Columns - 1)</div>
+<div class="line"><a name="l00158"></a><span class="lineno">  158</span>         HasRowWithSufficientColumns = <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00159"></a><span class="lineno">  159</span>       <span class="keywordtype">unsigned</span> length =</div>
+<div class="line"><a name="l00160"></a><span class="lineno">  160</span>           (Column == Columns - 1) ? EndOfLineItemLength[i] : ItemLengths[i];</div>
+<div class="line"><a name="l00161"></a><span class="lineno">  161</span>       Format.ColumnSizes[<a class="code" href="Format_8cpp.html#a1eea5be0eff1070e17b69bc5b9f281ae">Column</a>] =</div>
+<div class="line"><a name="l00162"></a><span class="lineno">  162</span>           std::max(Format.ColumnSizes[Column], length);</div>
+<div class="line"><a name="l00163"></a><span class="lineno">  163</span>       ++<a class="code" href="Format_8cpp.html#a1eea5be0eff1070e17b69bc5b9f281ae">Column</a>;</div>
+<div class="line"><a name="l00164"></a><span class="lineno">  164</span>     }</div>
+<div class="line"><a name="l00165"></a><span class="lineno">  165</span>     <span class="comment">// If all rows are terminated early (e.g. by trailing comments), we don't</span></div>
+<div class="line"><a name="l00166"></a><span class="lineno">  166</span>     <span class="comment">// need to look further.</span></div>
+<div class="line"><a name="l00167"></a><span class="lineno">  167</span>     <span class="keywordflow">if</span> (!HasRowWithSufficientColumns)</div>
+<div class="line"><a name="l00168"></a><span class="lineno">  168</span>       <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00169"></a><span class="lineno">  169</span>     Format.TotalWidth = Columns - 1; <span class="comment">// Width of the N-1 spaces.</span></div>
+<div class="line"><a name="l00170"></a><span class="lineno">  170</span>     <span class="keywordflow">for</span> (<span class="keywordtype">unsigned</span> i = 0; i < Columns; ++i) {</div>
+<div class="line"><a name="l00171"></a><span class="lineno">  171</span>       Format.TotalWidth += Format.ColumnSizes[i];</div>
+<div class="line"><a name="l00172"></a><span class="lineno">  172</span>     }</div>
+<div class="line"><a name="l00173"></a><span class="lineno">  173</span> </div>
+<div class="line"><a name="l00174"></a><span class="lineno">  174</span>     <span class="comment">// Ignore layouts that are bound to violate the column limit.</span></div>
+<div class="line"><a name="l00175"></a><span class="lineno">  175</span>     <span class="keywordflow">if</span> (Format.TotalWidth > <a class="code" href="classclang_1_1format_1_1TokenRole.html#a5924b5484f0f8f27c7fcf43eb89231b1">Style</a>.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#afe9550cc9c7c93fbc3506cb0b140593c" title="The column limit.">ColumnLimit</a>)</div>
+<div class="line"><a name="l00176"></a><span class="lineno">  176</span>       <span class="keywordflow">continue</span>;</div>
+<div class="line"><a name="l00177"></a><span class="lineno">  177</span> </div>
+<div class="line"><a name="l00178"></a><span class="lineno">  178</span>     <span class="comment">// If this braced list has nested braced list, we format it either with one</span></div>
+<div class="line"><a name="l00179"></a><span class="lineno">  179</span>     <span class="comment">// element per line or with all elements on one line.</span></div>
+<div class="line"><a name="l00180"></a><span class="lineno">  180</span>     <span class="keywordflow">if</span> (HasNestedBracedList && Columns > 1 && Format.LineCount > 1)</div>
+<div class="line"><a name="l00181"></a><span class="lineno">  181</span>       <span class="keywordflow">continue</span>;</div>
+<div class="line"><a name="l00182"></a><span class="lineno">  182</span> </div>
+<div class="line"><a name="l00183"></a><span class="lineno">  183</span>     Formats.push_back(Format);</div>
+<div class="line"><a name="l00184"></a><span class="lineno">  184</span>   }</div>
+<div class="line"><a name="l00185"></a><span class="lineno">  185</span> }</div>
+<div class="line"><a name="l00186"></a><span class="lineno">  186</span> </div>
+<div class="line"><a name="l00187"></a><span class="lineno">  187</span> <span class="keyword">const</span> CommaSeparatedList::ColumnFormat *</div>
+<div class="line"><a name="l00188"></a><span class="lineno">  188</span> CommaSeparatedList::getColumnFormat(<span class="keywordtype">unsigned</span> RemainingCharacters)<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00189"></a><span class="lineno">  189</span>   <span class="keyword">const</span> ColumnFormat *BestFormat = <a class="code" href="stddef_8h.html#a070d2ce7b6bb7e5c05602aa8c308d0c4">NULL</a>;</div>
+<div class="line"><a name="l00190"></a><span class="lineno">  190</span>   <span class="keywordflow">for</span> (<a class="code" href="classllvm_1_1SmallVector.html">SmallVector<ColumnFormat, 4>::const_reverse_iterator</a></div>
+<div class="line"><a name="l00191"></a><span class="lineno">  191</span>            I = Formats.rbegin(),</div>
+<div class="line"><a name="l00192"></a><span class="lineno">  192</span>            E = Formats.rend();</div>
+<div class="line"><a name="l00193"></a><span class="lineno">  193</span>        I != E; ++I) {</div>
+<div class="line"><a name="l00194"></a><span class="lineno">  194</span>     <span class="keywordflow">if</span> (I->TotalWidth <= RemainingCharacters) {</div>
+<div class="line"><a name="l00195"></a><span class="lineno">  195</span>       <span class="keywordflow">if</span> (BestFormat && I->LineCount > BestFormat->LineCount)</div>
+<div class="line"><a name="l00196"></a><span class="lineno">  196</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00197"></a><span class="lineno">  197</span>       BestFormat = &*I;</div>
+<div class="line"><a name="l00198"></a><span class="lineno">  198</span>     }</div>
+<div class="line"><a name="l00199"></a><span class="lineno">  199</span>   }</div>
+<div class="line"><a name="l00200"></a><span class="lineno">  200</span>   <span class="keywordflow">return</span> BestFormat;</div>
+<div class="line"><a name="l00201"></a><span class="lineno">  201</span> }</div>
+<div class="line"><a name="l00202"></a><span class="lineno">  202</span> </div>
+<div class="line"><a name="l00203"></a><span class="lineno">  203</span> } <span class="comment">// namespace format</span></div>
+<div class="line"><a name="l00204"></a><span class="lineno">  204</span> } <span class="comment">// namespace clang</span></div>
+</div><!-- fragment --></div><!-- contents -->
+<hr>
+<p class="footer">
+Generated on Mon May 12 2014 12:13:39 for r$LatestRev$ by <a href="http://www.doxygen.org">Doxygen 
+1.8.3.1</a>.</p>
+<p class="footer">
+See the <a href="http://clang.llvm.org">Main Clang Web Page</a> for more 
+information.</p>
+</body>
+</html>

Added: www-releases/trunk/3.5.1/tools/clang/docs/doxygen/html/FormatToken_8d_source.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/3.5.1/tools/clang/docs/doxygen/html/FormatToken_8d_source.html?rev=225843&view=auto
==============================================================================
--- www-releases/trunk/3.5.1/tools/clang/docs/doxygen/html/FormatToken_8d_source.html (added)
+++ www-releases/trunk/3.5.1/tools/clang/docs/doxygen/html/FormatToken_8d_source.html Tue Jan 13 16:55:20 2015
@@ -0,0 +1,299 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<html><head>
+<meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
+<meta name="keywords" content="clang,LLVM,Low Level Virtual Machine,C,C++,doxygen,API,frontend,documentation"/>
+<meta name="description" content="C++ source code API documentation for clang."/>
+<title>clang: FormatToken.d Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head><body>
+<p class="title">clang API Documentation</p>
+<!-- Generated by Doxygen 1.8.3.1 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main Page</span></a></li>
+      <li><a href="pages.html"><span>Related Pages</span></a></li>
+      <li><a href="modules.html"><span>Modules</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li><a href="annotated.html"><span>Classes</span></a></li>
+      <li class="current"><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="files.html"><span>File List</span></a></li>
+      <li><a href="globals.html"><span>File Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark"> </span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark"> </span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark"> </span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark"> </span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark"> </span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark"> </span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark"> </span>Typedefs</a><a class="SelectItem" href="javascript:void
 (0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark"> </span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark"> </span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark"> </span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark"> </span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(11)"><span class="SelectionMark"> </span>Groups</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(12)"><span class="SelectionMark"> </span>Pages</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_f65986501076cc710d4b9355ae3fe06d.html">clang</a></li><li class="navelem"><a class="el" href="dir_87e2a7550f83bd8cbfc92736891468fc.html">lib</a></li><li class="navelem"><a class="el" href="dir_ffab4b0006501d4be8b843d944947a1c.html">Format</a></li><li class="navelem"><a class="el" href="dir_44489bf775064c0a1fac45ff4ce7e6b1.html">Release+Asserts</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">FormatToken.d</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="FormatToken_8d.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span> /home/tstellar/llvm/tools/clang/lib/Format/Release+Asserts/FormatToken.o \</div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>  /home/tstellar/llvm/tools/clang/lib/Format/Release+Asserts/FormatToken.d: \</div>
+<div class="line"><a name="l00003"></a><span class="lineno">    3</span>  FormatToken.cpp FormatToken.h \</div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span>  /home/tstellar/llvm/tools/clang/lib/Format/../../include/clang/Basic/OperatorPrecedence.h \</div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>  /home/tstellar/llvm/tools/clang/lib/Format/../../include/clang/Basic/TokenKinds.h \</div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>  /home/tstellar/llvm/tools/clang/lib/Format/../../include/clang/Basic/TokenKinds.def \</div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>  /home/tstellar/llvm/tools/clang/lib/Format/../../include/clang/Format/Format.h \</div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>  /home/tstellar/llvm/tools/clang/lib/Format/../../include/clang/Frontend/FrontendAction.h \</div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span>  /home/tstellar/llvm/tools/clang/lib/Format/../../include/clang/Basic/LLVM.h \</div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>  /home/tstellar/llvm/include/llvm/Support/Casting.h \</div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span>  /home/tstellar/llvm/include/llvm/Support/type_traits.h \</div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>  /home/tstellar/llvm/include/llvm/Support/DataTypes.h \</div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>  /home/tstellar/llvm/include/llvm/ADT/None.h \</div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span>  /home/tstellar/llvm/tools/clang/lib/Format/../../include/clang/Basic/LangOptions.h \</div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span>  /home/tstellar/llvm/tools/clang/lib/Format/../../include/clang/Basic/CommentOptions.h \</div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>  /home/tstellar/llvm/tools/clang/lib/Format/../../include/clang/Basic/ObjCRuntime.h \</div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span>  /home/tstellar/llvm/tools/clang/lib/Format/../../include/clang/Basic/VersionTuple.h \</div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span>  /home/tstellar/llvm/include/llvm/ADT/Optional.h \</div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span>  /home/tstellar/llvm/include/llvm/Support/Compiler.h \</div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span>  /home/tstellar/llvm/include/llvm/Config/llvm-config.h \</div>
+<div class="line"><a name="l00021"></a><span class="lineno">   21</span>  /home/tstellar/llvm/include/llvm/Support/AlignOf.h \</div>
+<div class="line"><a name="l00022"></a><span class="lineno">   22</span>  /home/tstellar/llvm/include/llvm/ADT/Triple.h \</div>
+<div class="line"><a name="l00023"></a><span class="lineno">   23</span>  /home/tstellar/llvm/include/llvm/ADT/Twine.h \</div>
+<div class="line"><a name="l00024"></a><span class="lineno">   24</span>  /home/tstellar/llvm/include/llvm/ADT/StringRef.h \</div>
+<div class="line"><a name="l00025"></a><span class="lineno">   25</span>  /home/tstellar/llvm/include/llvm/Support/ErrorHandling.h \</div>
+<div class="line"><a name="l00026"></a><span class="lineno">   26</span>  /home/tstellar/llvm/tools/clang/lib/Format/../../include/clang/Basic/<a class="code" href="namespaceclang.html#afbab15cd4aa598c4e6d9192f7ac4f102" title="Describes the different kinds of visibility that a declaration may have.">Visibility</a>.h \</div>
+<div class="line"><a name="l00027"></a><span class="lineno">   27</span>  /home/tstellar/llvm/tools/clang/lib/Format/../../include/clang/Basic/<a class="code" href="namespaceclang.html#a78aadfeaf316ded55fdd2d1a9c8815b6" title="Describes the different kinds of linkage (C++ [basic.link], C99 6.2.2) that an entity may have...">Linkage</a>.h \</div>
+<div class="line"><a name="l00028"></a><span class="lineno">   28</span>  /home/tstellar/llvm/include/llvm/ADT/IntrusiveRefCntPtr.h \</div>
+<div class="line"><a name="l00029"></a><span class="lineno">   29</span>  /home/tstellar/llvm/tools/clang/lib/Format/../../include/clang/Basic/Sanitizers.def \</div>
+<div class="line"><a name="l00030"></a><span class="lineno">   30</span>  /home/tstellar/llvm/tools/clang/lib/Format/../../include/clang/Basic/LangOptions.def \</div>
+<div class="line"><a name="l00031"></a><span class="lineno">   31</span>  /home/tstellar/llvm/tools/clang/lib/Format/../../include/clang/Basic/OpenCLExtensions.def \</div>
+<div class="line"><a name="l00032"></a><span class="lineno">   32</span>  /home/tstellar/llvm/tools/clang/lib/Format/../../include/clang/Frontend/FrontendOptions.h \</div>
+<div class="line"><a name="l00033"></a><span class="lineno">   33</span>  /home/tstellar/llvm/tools/clang/lib/Format/../../include/clang/Frontend/CommandLineSourceLoc.h \</div>
+<div class="line"><a name="l00034"></a><span class="lineno">   34</span>  /home/tstellar/llvm/include/llvm/Support/<a class="code" href="JSONCompilationDatabase_8cpp.html#aff1eaf11bcfc05c142268512eeb4e134">CommandLine</a>.h \</div>
+<div class="line"><a name="l00035"></a><span class="lineno">   35</span>  /home/tstellar/llvm/include/llvm/ADT/SmallVector.h \</div>
+<div class="line"><a name="l00036"></a><span class="lineno">   36</span>  /home/tstellar/llvm/include/llvm/Support/MathExtras.h \</div>
+<div class="line"><a name="l00037"></a><span class="lineno">   37</span>  /home/tstellar/llvm/include/llvm/Support/SwapByteOrder.h \</div>
+<div class="line"><a name="l00038"></a><span class="lineno">   38</span>  /home/tstellar/llvm/include/llvm/ADT/StringMap.h \</div>
+<div class="line"><a name="l00039"></a><span class="lineno">   39</span>  /home/tstellar/llvm/include/llvm/Support/<a class="code" href="Format_8cpp.html#a0805f884ee63233d49322f71926371de">Allocator</a>.h \</div>
+<div class="line"><a name="l00040"></a><span class="lineno">   40</span>  /home/tstellar/llvm/include/llvm/Support/raw_ostream.h \</div>
+<div class="line"><a name="l00041"></a><span class="lineno">   41</span>  /home/tstellar/llvm/include/llvm/Support/FileSystem.h \</div>
+<div class="line"><a name="l00042"></a><span class="lineno">   42</span>  /home/tstellar/llvm/include/llvm/ADT/OwningPtr.h \</div>
+<div class="line"><a name="l00043"></a><span class="lineno">   43</span>  /home/tstellar/llvm/include/llvm/ADT/SmallString.h \</div>
+<div class="line"><a name="l00044"></a><span class="lineno">   44</span>  /home/tstellar/llvm/include/llvm/Support/TimeValue.h \</div>
+<div class="line"><a name="l00045"></a><span class="lineno">   45</span>  /home/tstellar/llvm/include/llvm/Support/system_error.h \</div>
+<div class="line"><a name="l00046"></a><span class="lineno">   46</span>  /home/tstellar/llvm/tools/clang/lib/Format/../../include/clang/Sema/<a class="code" href="classCodeCompleteOptions.html" title="Options controlling the behavior of code completion.">CodeCompleteOptions</a>.h \</div>
+<div class="line"><a name="l00047"></a><span class="lineno">   47</span>  /home/tstellar/llvm/tools/clang/lib/Format/../../include/clang/Tooling/Refactoring.h \</div>
+<div class="line"><a name="l00048"></a><span class="lineno">   48</span>  /home/tstellar/llvm/tools/clang/lib/Format/../../include/clang/Basic/SourceLocation.h \</div>
+<div class="line"><a name="l00049"></a><span class="lineno">   49</span>  /home/tstellar/llvm/include/llvm/Support/PointerLikeTypeTraits.h \</div>
+<div class="line"><a name="l00050"></a><span class="lineno">   50</span>  /home/tstellar/llvm/tools/clang/lib/Format/../../include/clang/Tooling/Tooling.h \</div>
+<div class="line"><a name="l00051"></a><span class="lineno">   51</span>  /home/tstellar/llvm/tools/clang/lib/Format/../../include/clang/Basic/Diagnostic.h \</div>
+<div class="line"><a name="l00052"></a><span class="lineno">   52</span>  /home/tstellar/llvm/tools/clang/lib/Format/../../include/clang/Basic/DiagnosticIDs.h \</div>
+<div class="line"><a name="l00053"></a><span class="lineno">   53</span>  /home/tstellar/llvm/tools/clang/lib/Format/../../include/clang/Basic/DiagnosticCommonKinds.inc \</div>
+<div class="line"><a name="l00054"></a><span class="lineno">   54</span>  /home/tstellar/llvm/tools/clang/lib/Format/../../include/clang/Basic/DiagnosticOptions.h \</div>
+<div class="line"><a name="l00055"></a><span class="lineno">   55</span>  /home/tstellar/llvm/tools/clang/lib/Format/../../include/clang/Basic/DiagnosticOptions.def \</div>
+<div class="line"><a name="l00056"></a><span class="lineno">   56</span>  /home/tstellar/llvm/include/llvm/ADT/ArrayRef.h \</div>
+<div class="line"><a name="l00057"></a><span class="lineno">   57</span>  /home/tstellar/llvm/include/llvm/ADT/DenseMap.h \</div>
+<div class="line"><a name="l00058"></a><span class="lineno">   58</span>  /home/tstellar/llvm/include/llvm/ADT/DenseMapInfo.h \</div>
+<div class="line"><a name="l00059"></a><span class="lineno">   59</span>  /home/tstellar/llvm/tools/clang/lib/Format/../../include/clang/Basic/FileManager.h \</div>
+<div class="line"><a name="l00060"></a><span class="lineno">   60</span>  /home/tstellar/llvm/tools/clang/lib/Format/../../include/clang/Basic/FileSystemOptions.h \</div>
+<div class="line"><a name="l00061"></a><span class="lineno">   61</span>  /home/tstellar/llvm/tools/clang/lib/Format/../../include/clang/Driver/Util.h \</div>
+<div class="line"><a name="l00062"></a><span class="lineno">   62</span>  /home/tstellar/llvm/tools/clang/lib/Format/../../include/clang/Tooling/ArgumentsAdjusters.h \</div>
+<div class="line"><a name="l00063"></a><span class="lineno">   63</span>  /home/tstellar/llvm/tools/clang/lib/Format/../../include/clang/Tooling/CompilationDatabase.h \</div>
+<div class="line"><a name="l00064"></a><span class="lineno">   64</span>  /home/tstellar/llvm/tools/clang/lib/Format/../../include/clang/<a class="code" href="Format_8cpp.html#af225acf665df209626523284f00162d4">Lex</a>/Lexer.h \</div>
+<div class="line"><a name="l00065"></a><span class="lineno">   65</span>  /home/tstellar/llvm/tools/clang/lib/Format/../../include/clang/<a class="code" href="Format_8cpp.html#af225acf665df209626523284f00162d4">Lex</a>/PreprocessorLexer.h \</div>
+<div class="line"><a name="l00066"></a><span class="lineno">   66</span>  /home/tstellar/llvm/tools/clang/lib/Format/../../include/clang/<a class="code" href="Format_8cpp.html#af225acf665df209626523284f00162d4">Lex</a>/MultipleIncludeOpt.h \</div>
+<div class="line"><a name="l00067"></a><span class="lineno">   67</span>  /home/tstellar/llvm/tools/clang/lib/Format/../../include/clang/<a class="code" href="Format_8cpp.html#af225acf665df209626523284f00162d4">Lex</a>/<a class="code" href="UnwrappedLineParser_8cpp.html#ac39165965ffcb0218343355d1f482d64">Token</a>.h \</div>
+<div class="line"><a name="l00068"></a><span class="lineno">   68</span>  /home/tstellar/llvm/tools/clang/lib/Format/../../include/clang/Basic/OperatorKinds.h \</div>
+<div class="line"><a name="l00069"></a><span class="lineno">   69</span>  /home/tstellar/llvm/tools/clang/lib/Format/../../include/clang/Basic/OperatorKinds.def \</div>
+<div class="line"><a name="l00070"></a><span class="lineno">   70</span>  /home/tstellar/llvm/tools/clang/lib/Format/../../include/clang/Basic/TemplateKinds.h \
+ ContinuationIndenter.h <a class="code" href="Format_8cpp.html#a432f0ba7405248d8ed58e1ef357eb5cc">Encoding</a>.h \</div>
+<div class="line"><a name="l00071"></a><span class="lineno">   71</span>  /home/tstellar/llvm/include/llvm/Support/ConvertUTF.h \</div>
+<div class="line"><a name="l00072"></a><span class="lineno">   72</span>  /home/tstellar/llvm/include/llvm/Support/Unicode.h \</div>
+<div class="line"><a name="l00073"></a><span class="lineno">   73</span>  /home/tstellar/llvm/include/llvm/Support/Debug.h</div>
+<div class="line"><a name="l00074"></a><span class="lineno">   74</span> </div>
+<div class="line"><a name="l00075"></a><span class="lineno">   75</span> FormatToken.h:</div>
+<div class="line"><a name="l00076"></a><span class="lineno">   76</span> </div>
+<div class="line"><a name="l00077"></a><span class="lineno">   77</span> /home/tstellar/llvm/tools/clang/lib/Format/../../include/clang/Basic/OperatorPrecedence.h:</div>
+<div class="line"><a name="l00078"></a><span class="lineno">   78</span> </div>
+<div class="line"><a name="l00079"></a><span class="lineno">   79</span> /home/tstellar/llvm/tools/clang/lib/Format/../../include/clang/Basic/TokenKinds.h:</div>
+<div class="line"><a name="l00080"></a><span class="lineno">   80</span> </div>
+<div class="line"><a name="l00081"></a><span class="lineno">   81</span> /home/tstellar/llvm/tools/clang/lib/Format/../../include/clang/Basic/TokenKinds.def:</div>
+<div class="line"><a name="l00082"></a><span class="lineno">   82</span> </div>
+<div class="line"><a name="l00083"></a><span class="lineno">   83</span> /home/tstellar/llvm/tools/clang/lib/Format/../../include/clang/Format/Format.h:</div>
+<div class="line"><a name="l00084"></a><span class="lineno">   84</span> </div>
+<div class="line"><a name="l00085"></a><span class="lineno">   85</span> /home/tstellar/llvm/tools/clang/lib/Format/../../include/clang/Frontend/FrontendAction.h:</div>
+<div class="line"><a name="l00086"></a><span class="lineno">   86</span> </div>
+<div class="line"><a name="l00087"></a><span class="lineno">   87</span> /home/tstellar/llvm/tools/clang/lib/Format/../../include/clang/Basic/LLVM.h:</div>
+<div class="line"><a name="l00088"></a><span class="lineno">   88</span> </div>
+<div class="line"><a name="l00089"></a><span class="lineno">   89</span> /home/tstellar/llvm/include/llvm/Support/Casting.h:</div>
+<div class="line"><a name="l00090"></a><span class="lineno">   90</span> </div>
+<div class="line"><a name="l00091"></a><span class="lineno">   91</span> /home/tstellar/llvm/include/llvm/Support/type_traits.h:</div>
+<div class="line"><a name="l00092"></a><span class="lineno">   92</span> </div>
+<div class="line"><a name="l00093"></a><span class="lineno">   93</span> /home/tstellar/llvm/include/llvm/Support/DataTypes.h:</div>
+<div class="line"><a name="l00094"></a><span class="lineno">   94</span> </div>
+<div class="line"><a name="l00095"></a><span class="lineno">   95</span> /home/tstellar/llvm/include/llvm/ADT/None.h:</div>
+<div class="line"><a name="l00096"></a><span class="lineno">   96</span> </div>
+<div class="line"><a name="l00097"></a><span class="lineno">   97</span> /home/tstellar/llvm/tools/clang/lib/Format/../../include/clang/Basic/LangOptions.h:</div>
+<div class="line"><a name="l00098"></a><span class="lineno">   98</span> </div>
+<div class="line"><a name="l00099"></a><span class="lineno">   99</span> /home/tstellar/llvm/tools/clang/lib/Format/../../include/clang/Basic/CommentOptions.h:</div>
+<div class="line"><a name="l00100"></a><span class="lineno">  100</span> </div>
+<div class="line"><a name="l00101"></a><span class="lineno">  101</span> /home/tstellar/llvm/tools/clang/lib/Format/../../include/clang/Basic/ObjCRuntime.h:</div>
+<div class="line"><a name="l00102"></a><span class="lineno">  102</span> </div>
+<div class="line"><a name="l00103"></a><span class="lineno">  103</span> /home/tstellar/llvm/tools/clang/lib/Format/../../include/clang/Basic/VersionTuple.h:</div>
+<div class="line"><a name="l00104"></a><span class="lineno">  104</span> </div>
+<div class="line"><a name="l00105"></a><span class="lineno">  105</span> /home/tstellar/llvm/include/llvm/ADT/Optional.h:</div>
+<div class="line"><a name="l00106"></a><span class="lineno">  106</span> </div>
+<div class="line"><a name="l00107"></a><span class="lineno">  107</span> /home/tstellar/llvm/include/llvm/Support/Compiler.h:</div>
+<div class="line"><a name="l00108"></a><span class="lineno">  108</span> </div>
+<div class="line"><a name="l00109"></a><span class="lineno">  109</span> /home/tstellar/llvm/include/llvm/Config/llvm-config.h:</div>
+<div class="line"><a name="l00110"></a><span class="lineno">  110</span> </div>
+<div class="line"><a name="l00111"></a><span class="lineno">  111</span> /home/tstellar/llvm/include/llvm/Support/AlignOf.h:</div>
+<div class="line"><a name="l00112"></a><span class="lineno">  112</span> </div>
+<div class="line"><a name="l00113"></a><span class="lineno">  113</span> /home/tstellar/llvm/include/llvm/ADT/Triple.h:</div>
+<div class="line"><a name="l00114"></a><span class="lineno">  114</span> </div>
+<div class="line"><a name="l00115"></a><span class="lineno">  115</span> /home/tstellar/llvm/include/llvm/ADT/Twine.h:</div>
+<div class="line"><a name="l00116"></a><span class="lineno">  116</span> </div>
+<div class="line"><a name="l00117"></a><span class="lineno">  117</span> /home/tstellar/llvm/include/llvm/ADT/StringRef.h:</div>
+<div class="line"><a name="l00118"></a><span class="lineno">  118</span> </div>
+<div class="line"><a name="l00119"></a><span class="lineno">  119</span> /home/tstellar/llvm/include/llvm/Support/ErrorHandling.h:</div>
+<div class="line"><a name="l00120"></a><span class="lineno">  120</span> </div>
+<div class="line"><a name="l00121"></a><span class="lineno">  121</span> /home/tstellar/llvm/tools/clang/lib/Format/../../include/clang/Basic/<a class="code" href="namespaceclang.html#afbab15cd4aa598c4e6d9192f7ac4f102" title="Describes the different kinds of visibility that a declaration may have.">Visibility</a>.h:</div>
+<div class="line"><a name="l00122"></a><span class="lineno">  122</span> </div>
+<div class="line"><a name="l00123"></a><span class="lineno">  123</span> /home/tstellar/llvm/tools/clang/lib/Format/../../include/clang/Basic/<a class="code" href="namespaceclang.html#a78aadfeaf316ded55fdd2d1a9c8815b6" title="Describes the different kinds of linkage (C++ [basic.link], C99 6.2.2) that an entity may have...">Linkage</a>.h:</div>
+<div class="line"><a name="l00124"></a><span class="lineno">  124</span> </div>
+<div class="line"><a name="l00125"></a><span class="lineno">  125</span> /home/tstellar/llvm/include/llvm/ADT/IntrusiveRefCntPtr.h:</div>
+<div class="line"><a name="l00126"></a><span class="lineno">  126</span> </div>
+<div class="line"><a name="l00127"></a><span class="lineno">  127</span> /home/tstellar/llvm/tools/clang/lib/Format/../../include/clang/Basic/Sanitizers.def:</div>
+<div class="line"><a name="l00128"></a><span class="lineno">  128</span> </div>
+<div class="line"><a name="l00129"></a><span class="lineno">  129</span> /home/tstellar/llvm/tools/clang/lib/Format/../../include/clang/Basic/LangOptions.def:</div>
+<div class="line"><a name="l00130"></a><span class="lineno">  130</span> </div>
+<div class="line"><a name="l00131"></a><span class="lineno">  131</span> /home/tstellar/llvm/tools/clang/lib/Format/../../include/clang/Basic/OpenCLExtensions.def:</div>
+<div class="line"><a name="l00132"></a><span class="lineno">  132</span> </div>
+<div class="line"><a name="l00133"></a><span class="lineno">  133</span> /home/tstellar/llvm/tools/clang/lib/Format/../../include/clang/Frontend/FrontendOptions.h:</div>
+<div class="line"><a name="l00134"></a><span class="lineno">  134</span> </div>
+<div class="line"><a name="l00135"></a><span class="lineno">  135</span> /home/tstellar/llvm/tools/clang/lib/Format/../../include/clang/Frontend/CommandLineSourceLoc.h:</div>
+<div class="line"><a name="l00136"></a><span class="lineno">  136</span> </div>
+<div class="line"><a name="l00137"></a><span class="lineno">  137</span> /home/tstellar/llvm/include/llvm/Support/<a class="code" href="JSONCompilationDatabase_8cpp.html#aff1eaf11bcfc05c142268512eeb4e134">CommandLine</a>.h:</div>
+<div class="line"><a name="l00138"></a><span class="lineno">  138</span> </div>
+<div class="line"><a name="l00139"></a><span class="lineno">  139</span> /home/tstellar/llvm/include/llvm/ADT/SmallVector.h:</div>
+<div class="line"><a name="l00140"></a><span class="lineno">  140</span> </div>
+<div class="line"><a name="l00141"></a><span class="lineno">  141</span> /home/tstellar/llvm/include/llvm/Support/MathExtras.h:</div>
+<div class="line"><a name="l00142"></a><span class="lineno">  142</span> </div>
+<div class="line"><a name="l00143"></a><span class="lineno">  143</span> /home/tstellar/llvm/include/llvm/Support/SwapByteOrder.h:</div>
+<div class="line"><a name="l00144"></a><span class="lineno">  144</span> </div>
+<div class="line"><a name="l00145"></a><span class="lineno">  145</span> /home/tstellar/llvm/include/llvm/ADT/StringMap.h:</div>
+<div class="line"><a name="l00146"></a><span class="lineno">  146</span> </div>
+<div class="line"><a name="l00147"></a><span class="lineno">  147</span> /home/tstellar/llvm/include/llvm/Support/<a class="code" href="Format_8cpp.html#a0805f884ee63233d49322f71926371de">Allocator</a>.h:</div>
+<div class="line"><a name="l00148"></a><span class="lineno">  148</span> </div>
+<div class="line"><a name="l00149"></a><span class="lineno">  149</span> /home/tstellar/llvm/include/llvm/Support/raw_ostream.h:</div>
+<div class="line"><a name="l00150"></a><span class="lineno">  150</span> </div>
+<div class="line"><a name="l00151"></a><span class="lineno">  151</span> /home/tstellar/llvm/include/llvm/Support/FileSystem.h:</div>
+<div class="line"><a name="l00152"></a><span class="lineno">  152</span> </div>
+<div class="line"><a name="l00153"></a><span class="lineno">  153</span> /home/tstellar/llvm/include/llvm/ADT/OwningPtr.h:</div>
+<div class="line"><a name="l00154"></a><span class="lineno">  154</span> </div>
+<div class="line"><a name="l00155"></a><span class="lineno">  155</span> /home/tstellar/llvm/include/llvm/ADT/SmallString.h:</div>
+<div class="line"><a name="l00156"></a><span class="lineno">  156</span> </div>
+<div class="line"><a name="l00157"></a><span class="lineno">  157</span> /home/tstellar/llvm/include/llvm/Support/TimeValue.h:</div>
+<div class="line"><a name="l00158"></a><span class="lineno">  158</span> </div>
+<div class="line"><a name="l00159"></a><span class="lineno">  159</span> /home/tstellar/llvm/include/llvm/Support/system_error.h:</div>
+<div class="line"><a name="l00160"></a><span class="lineno">  160</span> </div>
+<div class="line"><a name="l00161"></a><span class="lineno">  161</span> /home/tstellar/llvm/tools/clang/lib/Format/../../include/clang/Sema/<a class="code" href="classCodeCompleteOptions.html" title="Options controlling the behavior of code completion.">CodeCompleteOptions</a>.h:</div>
+<div class="line"><a name="l00162"></a><span class="lineno">  162</span> </div>
+<div class="line"><a name="l00163"></a><span class="lineno">  163</span> /home/tstellar/llvm/tools/clang/lib/Format/../../include/clang/Tooling/Refactoring.h:</div>
+<div class="line"><a name="l00164"></a><span class="lineno">  164</span> </div>
+<div class="line"><a name="l00165"></a><span class="lineno">  165</span> /home/tstellar/llvm/tools/clang/lib/Format/../../include/clang/Basic/SourceLocation.h:</div>
+<div class="line"><a name="l00166"></a><span class="lineno">  166</span> </div>
+<div class="line"><a name="l00167"></a><span class="lineno">  167</span> /home/tstellar/llvm/include/llvm/Support/PointerLikeTypeTraits.h:</div>
+<div class="line"><a name="l00168"></a><span class="lineno">  168</span> </div>
+<div class="line"><a name="l00169"></a><span class="lineno">  169</span> /home/tstellar/llvm/tools/clang/lib/Format/../../include/clang/Tooling/Tooling.h:</div>
+<div class="line"><a name="l00170"></a><span class="lineno">  170</span> </div>
+<div class="line"><a name="l00171"></a><span class="lineno">  171</span> /home/tstellar/llvm/tools/clang/lib/Format/../../include/clang/Basic/Diagnostic.h:</div>
+<div class="line"><a name="l00172"></a><span class="lineno">  172</span> </div>
+<div class="line"><a name="l00173"></a><span class="lineno">  173</span> /home/tstellar/llvm/tools/clang/lib/Format/../../include/clang/Basic/DiagnosticIDs.h:</div>
+<div class="line"><a name="l00174"></a><span class="lineno">  174</span> </div>
+<div class="line"><a name="l00175"></a><span class="lineno">  175</span> /home/tstellar/llvm/tools/clang/lib/Format/../../include/clang/Basic/DiagnosticCommonKinds.inc:</div>
+<div class="line"><a name="l00176"></a><span class="lineno">  176</span> </div>
+<div class="line"><a name="l00177"></a><span class="lineno">  177</span> /home/tstellar/llvm/tools/clang/lib/Format/../../include/clang/Basic/DiagnosticOptions.h:</div>
+<div class="line"><a name="l00178"></a><span class="lineno">  178</span> </div>
+<div class="line"><a name="l00179"></a><span class="lineno">  179</span> /home/tstellar/llvm/tools/clang/lib/Format/../../include/clang/Basic/DiagnosticOptions.def:</div>
+<div class="line"><a name="l00180"></a><span class="lineno">  180</span> </div>
+<div class="line"><a name="l00181"></a><span class="lineno">  181</span> /home/tstellar/llvm/include/llvm/ADT/ArrayRef.h:</div>
+<div class="line"><a name="l00182"></a><span class="lineno">  182</span> </div>
+<div class="line"><a name="l00183"></a><span class="lineno">  183</span> /home/tstellar/llvm/include/llvm/ADT/DenseMap.h:</div>
+<div class="line"><a name="l00184"></a><span class="lineno">  184</span> </div>
+<div class="line"><a name="l00185"></a><span class="lineno">  185</span> /home/tstellar/llvm/include/llvm/ADT/DenseMapInfo.h:</div>
+<div class="line"><a name="l00186"></a><span class="lineno">  186</span> </div>
+<div class="line"><a name="l00187"></a><span class="lineno">  187</span> /home/tstellar/llvm/tools/clang/lib/Format/../../include/clang/Basic/FileManager.h:</div>
+<div class="line"><a name="l00188"></a><span class="lineno">  188</span> </div>
+<div class="line"><a name="l00189"></a><span class="lineno">  189</span> /home/tstellar/llvm/tools/clang/lib/Format/../../include/clang/Basic/FileSystemOptions.h:</div>
+<div class="line"><a name="l00190"></a><span class="lineno">  190</span> </div>
+<div class="line"><a name="l00191"></a><span class="lineno">  191</span> /home/tstellar/llvm/tools/clang/lib/Format/../../include/clang/Driver/Util.h:</div>
+<div class="line"><a name="l00192"></a><span class="lineno">  192</span> </div>
+<div class="line"><a name="l00193"></a><span class="lineno">  193</span> /home/tstellar/llvm/tools/clang/lib/Format/../../include/clang/Tooling/ArgumentsAdjusters.h:</div>
+<div class="line"><a name="l00194"></a><span class="lineno">  194</span> </div>
+<div class="line"><a name="l00195"></a><span class="lineno">  195</span> /home/tstellar/llvm/tools/clang/lib/Format/../../include/clang/Tooling/CompilationDatabase.h:</div>
+<div class="line"><a name="l00196"></a><span class="lineno">  196</span> </div>
+<div class="line"><a name="l00197"></a><span class="lineno">  197</span> /home/tstellar/llvm/tools/clang/lib/Format/../../include/clang/<a class="code" href="Format_8cpp.html#af225acf665df209626523284f00162d4">Lex</a>/Lexer.h:</div>
+<div class="line"><a name="l00198"></a><span class="lineno">  198</span> </div>
+<div class="line"><a name="l00199"></a><span class="lineno">  199</span> /home/tstellar/llvm/tools/clang/lib/Format/../../include/clang/<a class="code" href="Format_8cpp.html#af225acf665df209626523284f00162d4">Lex</a>/PreprocessorLexer.h:</div>
+<div class="line"><a name="l00200"></a><span class="lineno">  200</span> </div>
+<div class="line"><a name="l00201"></a><span class="lineno">  201</span> /home/tstellar/llvm/tools/clang/lib/Format/../../include/clang/<a class="code" href="Format_8cpp.html#af225acf665df209626523284f00162d4">Lex</a>/MultipleIncludeOpt.h:</div>
+<div class="line"><a name="l00202"></a><span class="lineno">  202</span> </div>
+<div class="line"><a name="l00203"></a><span class="lineno">  203</span> /home/tstellar/llvm/tools/clang/lib/Format/../../include/clang/<a class="code" href="Format_8cpp.html#af225acf665df209626523284f00162d4">Lex</a>/<a class="code" href="UnwrappedLineParser_8cpp.html#ac39165965ffcb0218343355d1f482d64">Token</a>.h:</div>
+<div class="line"><a name="l00204"></a><span class="lineno">  204</span> </div>
+<div class="line"><a name="l00205"></a><span class="lineno">  205</span> /home/tstellar/llvm/tools/clang/lib/Format/../../include/clang/Basic/OperatorKinds.h:</div>
+<div class="line"><a name="l00206"></a><span class="lineno">  206</span> </div>
+<div class="line"><a name="l00207"></a><span class="lineno">  207</span> /home/tstellar/llvm/tools/clang/lib/Format/../../include/clang/Basic/OperatorKinds.def:</div>
+<div class="line"><a name="l00208"></a><span class="lineno">  208</span> </div>
+<div class="line"><a name="l00209"></a><span class="lineno">  209</span> /home/tstellar/llvm/tools/clang/lib/Format/../../include/clang/Basic/TemplateKinds.h:</div>
+<div class="line"><a name="l00210"></a><span class="lineno">  210</span> </div>
+<div class="line"><a name="l00211"></a><span class="lineno">  211</span> ContinuationIndenter.h:</div>
+<div class="line"><a name="l00212"></a><span class="lineno">  212</span> </div>
+<div class="line"><a name="l00213"></a><span class="lineno">  213</span> <a class="code" href="Format_8cpp.html#a432f0ba7405248d8ed58e1ef357eb5cc">Encoding</a>.h:</div>
+<div class="line"><a name="l00214"></a><span class="lineno">  214</span> </div>
+<div class="line"><a name="l00215"></a><span class="lineno">  215</span> /home/tstellar/llvm/include/llvm/Support/ConvertUTF.h:</div>
+<div class="line"><a name="l00216"></a><span class="lineno">  216</span> </div>
+<div class="line"><a name="l00217"></a><span class="lineno">  217</span> /home/tstellar/llvm/include/llvm/Support/Unicode.h:</div>
+<div class="line"><a name="l00218"></a><span class="lineno">  218</span> </div>
+<div class="line"><a name="l00219"></a><span class="lineno">  219</span> /home/tstellar/llvm/include/llvm/Support/Debug.h:</div>
+<div class="line"><a name="l00220"></a><span class="lineno">  220</span> </div><!-- fragment --></div><!-- contents -->
+<hr>
+<p class="footer">
+Generated on Mon May 12 2014 12:13:39 for r$LatestRev$ by <a href="http://www.doxygen.org">Doxygen 
+1.8.3.1</a>.</p>
+<p class="footer">
+See the <a href="http://clang.llvm.org">Main Clang Web Page</a> for more 
+information.</p>
+</body>
+</html>

Added: www-releases/trunk/3.5.1/tools/clang/docs/doxygen/html/FormatToken_8h_source.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/3.5.1/tools/clang/docs/doxygen/html/FormatToken_8h_source.html?rev=225843&view=auto
==============================================================================
--- www-releases/trunk/3.5.1/tools/clang/docs/doxygen/html/FormatToken_8h_source.html (added)
+++ www-releases/trunk/3.5.1/tools/clang/docs/doxygen/html/FormatToken_8h_source.html Tue Jan 13 16:55:20 2015
@@ -0,0 +1,531 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<html><head>
+<meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
+<meta name="keywords" content="clang,LLVM,Low Level Virtual Machine,C,C++,doxygen,API,frontend,documentation"/>
+<meta name="description" content="C++ source code API documentation for clang."/>
+<title>clang: FormatToken.h Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head><body>
+<p class="title">clang API Documentation</p>
+<!-- Generated by Doxygen 1.8.3.1 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main Page</span></a></li>
+      <li><a href="pages.html"><span>Related Pages</span></a></li>
+      <li><a href="modules.html"><span>Modules</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li><a href="annotated.html"><span>Classes</span></a></li>
+      <li class="current"><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="files.html"><span>File List</span></a></li>
+      <li><a href="globals.html"><span>File Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark"> </span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark"> </span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark"> </span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark"> </span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark"> </span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark"> </span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark"> </span>Typedefs</a><a class="SelectItem" href="javascript:void
 (0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark"> </span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark"> </span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark"> </span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark"> </span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(11)"><span class="SelectionMark"> </span>Groups</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(12)"><span class="SelectionMark"> </span>Pages</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_f65986501076cc710d4b9355ae3fe06d.html">clang</a></li><li class="navelem"><a class="el" href="dir_87e2a7550f83bd8cbfc92736891468fc.html">lib</a></li><li class="navelem"><a class="el" href="dir_ffab4b0006501d4be8b843d944947a1c.html">Format</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">FormatToken.h</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="FormatToken_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span> <span class="comment">//===--- FormatToken.h - Format C++ code ------------------------*- C++ -*-===//</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span> <span class="comment">//</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno">    3</span> <span class="comment">//                     The LLVM Compiler Infrastructure</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span> <span class="comment">//</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span> <span class="comment">// This file is distributed under the University of Illinois Open Source</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span> <span class="comment">// License. See LICENSE.TXT for details.</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span> <span class="comment">//</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span> <span class="comment">//===----------------------------------------------------------------------===//</span><span class="comment"></span></div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span> <span class="comment">///</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span> <span class="comment">/// \file</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span> <span class="comment">/// \brief This file contains the declaration of the FormatToken, a wrapper</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span> <span class="comment">/// around Token with additional information related to formatting.</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span> <span class="comment">///</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span> <span class="comment"></span><span class="comment">//===----------------------------------------------------------------------===//</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span> </div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span> <span class="preprocessor">#ifndef LLVM_CLANG_FORMAT_FORMAT_TOKEN_H</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span> <span class="preprocessor"></span><span class="preprocessor">#define LLVM_CLANG_FORMAT_FORMAT_TOKEN_H</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span> <span class="preprocessor"></span></div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span> <span class="preprocessor">#include "<a class="code" href="OperatorPrecedence_8h.html" title="Defines and computes precedence levels for binary/ternary operators.">clang/Basic/OperatorPrecedence.h</a>"</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span> <span class="preprocessor">#include "<a class="code" href="Format_8h.html">clang/Format/Format.h</a>"</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno">   21</span> <span class="preprocessor">#include "<a class="code" href="Lexer_8h.html">clang/Lex/Lexer.h</a>"</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno">   22</span> <span class="preprocessor">#include "llvm/ADT/OwningPtr.h"</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno">   23</span> </div>
+<div class="line"><a name="l00024"></a><span class="lineno">   24</span> <span class="keyword">namespace </span>clang {</div>
+<div class="line"><a name="l00025"></a><span class="lineno">   25</span> <span class="keyword">namespace </span>format {</div>
+<div class="line"><a name="l00026"></a><span class="lineno">   26</span> </div>
+<div class="line"><a name="l00027"></a><span class="lineno"><a class="code" href="namespaceclang_1_1format.html#a41859d19e0a15b9356d655e8c11d8430">   27</a></span> <span class="keyword">enum</span> <a class="code" href="namespaceclang_1_1format.html#a41859d19e0a15b9356d655e8c11d8430">TokenType</a> {</div>
+<div class="line"><a name="l00028"></a><span class="lineno"><a class="code" href="namespaceclang_1_1format.html#a41859d19e0a15b9356d655e8c11d8430a2e3762edd81fd8c2e1d9e783484df5b8">   28</a></span>   <a class="code" href="namespaceclang_1_1format.html#a41859d19e0a15b9356d655e8c11d8430a2e3762edd81fd8c2e1d9e783484df5b8">TT_ArrayInitializerLSquare</a>,</div>
+<div class="line"><a name="l00029"></a><span class="lineno"><a class="code" href="namespaceclang_1_1format.html#a41859d19e0a15b9356d655e8c11d8430a43e8488d842d361a0e6522cde916f226">   29</a></span>   <a class="code" href="namespaceclang_1_1format.html#a41859d19e0a15b9356d655e8c11d8430a43e8488d842d361a0e6522cde916f226">TT_ArraySubscriptLSquare</a>,</div>
+<div class="line"><a name="l00030"></a><span class="lineno"><a class="code" href="namespaceclang_1_1format.html#a41859d19e0a15b9356d655e8c11d8430ac424678f6a37ee16439f51854e058118">   30</a></span>   <a class="code" href="namespaceclang_1_1format.html#a41859d19e0a15b9356d655e8c11d8430ac424678f6a37ee16439f51854e058118">TT_BinaryOperator</a>,</div>
+<div class="line"><a name="l00031"></a><span class="lineno"><a class="code" href="namespaceclang_1_1format.html#a41859d19e0a15b9356d655e8c11d8430a350d9ecdaaad2af24e7a554d7585c3ec">   31</a></span>   <a class="code" href="namespaceclang_1_1format.html#a41859d19e0a15b9356d655e8c11d8430a350d9ecdaaad2af24e7a554d7585c3ec">TT_BitFieldColon</a>,</div>
+<div class="line"><a name="l00032"></a><span class="lineno"><a class="code" href="namespaceclang_1_1format.html#a41859d19e0a15b9356d655e8c11d8430a859fe314630fc3f13b072c9ad016de0e">   32</a></span>   <a class="code" href="namespaceclang_1_1format.html#a41859d19e0a15b9356d655e8c11d8430a859fe314630fc3f13b072c9ad016de0e">TT_BlockComment</a>,</div>
+<div class="line"><a name="l00033"></a><span class="lineno"><a class="code" href="namespaceclang_1_1format.html#a41859d19e0a15b9356d655e8c11d8430a277e8a7fed5c710335cf32f68ccea541">   33</a></span>   <a class="code" href="namespaceclang_1_1format.html#a41859d19e0a15b9356d655e8c11d8430a277e8a7fed5c710335cf32f68ccea541">TT_CastRParen</a>,</div>
+<div class="line"><a name="l00034"></a><span class="lineno"><a class="code" href="namespaceclang_1_1format.html#a41859d19e0a15b9356d655e8c11d8430abe66d25c228b849cfb3ff9b26e9379fe">   34</a></span>   <a class="code" href="namespaceclang_1_1format.html#a41859d19e0a15b9356d655e8c11d8430abe66d25c228b849cfb3ff9b26e9379fe">TT_ConditionalExpr</a>,</div>
+<div class="line"><a name="l00035"></a><span class="lineno"><a class="code" href="namespaceclang_1_1format.html#a41859d19e0a15b9356d655e8c11d8430a76f2f9f6c4be0da59735260a6ea561fc">   35</a></span>   <a class="code" href="namespaceclang_1_1format.html#a41859d19e0a15b9356d655e8c11d8430a76f2f9f6c4be0da59735260a6ea561fc">TT_CtorInitializerColon</a>,</div>
+<div class="line"><a name="l00036"></a><span class="lineno"><a class="code" href="namespaceclang_1_1format.html#a41859d19e0a15b9356d655e8c11d8430a03da0da0ed401d7753ad639cc5309ee8">   36</a></span>   <a class="code" href="namespaceclang_1_1format.html#a41859d19e0a15b9356d655e8c11d8430a03da0da0ed401d7753ad639cc5309ee8">TT_CtorInitializerComma</a>,</div>
+<div class="line"><a name="l00037"></a><span class="lineno"><a class="code" href="namespaceclang_1_1format.html#a41859d19e0a15b9356d655e8c11d8430af3ff69cf1759e24f4f7d8f3c5ca01d69">   37</a></span>   <a class="code" href="namespaceclang_1_1format.html#a41859d19e0a15b9356d655e8c11d8430af3ff69cf1759e24f4f7d8f3c5ca01d69">TT_DesignatedInitializerPeriod</a>,</div>
+<div class="line"><a name="l00038"></a><span class="lineno"><a class="code" href="namespaceclang_1_1format.html#a41859d19e0a15b9356d655e8c11d8430a1539e9e36f093ea30703159731670a0d">   38</a></span>   <a class="code" href="namespaceclang_1_1format.html#a41859d19e0a15b9356d655e8c11d8430a1539e9e36f093ea30703159731670a0d">TT_DictLiteral</a>,</div>
+<div class="line"><a name="l00039"></a><span class="lineno"><a class="code" href="namespaceclang_1_1format.html#a41859d19e0a15b9356d655e8c11d8430ab8c273d0514d57f2acdd371ff781e28a">   39</a></span>   <a class="code" href="namespaceclang_1_1format.html#a41859d19e0a15b9356d655e8c11d8430ab8c273d0514d57f2acdd371ff781e28a">TT_ImplicitStringLiteral</a>,</div>
+<div class="line"><a name="l00040"></a><span class="lineno"><a class="code" href="namespaceclang_1_1format.html#a41859d19e0a15b9356d655e8c11d8430a33b3706da41c3de553b666d042fd5f23">   40</a></span>   <a class="code" href="namespaceclang_1_1format.html#a41859d19e0a15b9356d655e8c11d8430a33b3706da41c3de553b666d042fd5f23">TT_InlineASMColon</a>,</div>
+<div class="line"><a name="l00041"></a><span class="lineno"><a class="code" href="namespaceclang_1_1format.html#a41859d19e0a15b9356d655e8c11d8430a7df61bb8e6d255a45a95a69a797a96cc">   41</a></span>   <a class="code" href="namespaceclang_1_1format.html#a41859d19e0a15b9356d655e8c11d8430a7df61bb8e6d255a45a95a69a797a96cc">TT_InheritanceColon</a>,</div>
+<div class="line"><a name="l00042"></a><span class="lineno"><a class="code" href="namespaceclang_1_1format.html#a41859d19e0a15b9356d655e8c11d8430a84ab3c91dc352c25f65c0e8b1efe1ac2">   42</a></span>   <a class="code" href="namespaceclang_1_1format.html#a41859d19e0a15b9356d655e8c11d8430a84ab3c91dc352c25f65c0e8b1efe1ac2">TT_FunctionTypeLParen</a>,</div>
+<div class="line"><a name="l00043"></a><span class="lineno"><a class="code" href="namespaceclang_1_1format.html#a41859d19e0a15b9356d655e8c11d8430a466ba5ab307713221b528114f86e3ca7">   43</a></span>   <a class="code" href="namespaceclang_1_1format.html#a41859d19e0a15b9356d655e8c11d8430a466ba5ab307713221b528114f86e3ca7">TT_LambdaLSquare</a>,</div>
+<div class="line"><a name="l00044"></a><span class="lineno"><a class="code" href="namespaceclang_1_1format.html#a41859d19e0a15b9356d655e8c11d8430a83fdf1f81a2b707b6a6f0203a186b3d6">   44</a></span>   <a class="code" href="namespaceclang_1_1format.html#a41859d19e0a15b9356d655e8c11d8430a83fdf1f81a2b707b6a6f0203a186b3d6">TT_LineComment</a>,</div>
+<div class="line"><a name="l00045"></a><span class="lineno"><a class="code" href="namespaceclang_1_1format.html#a41859d19e0a15b9356d655e8c11d8430a25b0a211f5fab1ebac77a4c3309e0055">   45</a></span>   <a class="code" href="namespaceclang_1_1format.html#a41859d19e0a15b9356d655e8c11d8430a25b0a211f5fab1ebac77a4c3309e0055">TT_ObjCBlockLParen</a>,</div>
+<div class="line"><a name="l00046"></a><span class="lineno"><a class="code" href="namespaceclang_1_1format.html#a41859d19e0a15b9356d655e8c11d8430a7b3e38742b33e0d8f99ddc7d70c774c7">   46</a></span>   <a class="code" href="namespaceclang_1_1format.html#a41859d19e0a15b9356d655e8c11d8430a7b3e38742b33e0d8f99ddc7d70c774c7">TT_ObjCDecl</a>,</div>
+<div class="line"><a name="l00047"></a><span class="lineno"><a class="code" href="namespaceclang_1_1format.html#a41859d19e0a15b9356d655e8c11d8430af7c7bb8763c134340d6c6197f9f0fa39">   47</a></span>   <a class="code" href="namespaceclang_1_1format.html#a41859d19e0a15b9356d655e8c11d8430af7c7bb8763c134340d6c6197f9f0fa39">TT_ObjCForIn</a>,</div>
+<div class="line"><a name="l00048"></a><span class="lineno"><a class="code" href="namespaceclang_1_1format.html#a41859d19e0a15b9356d655e8c11d8430a9d3cc1d7cf8da7870bc3589c39ae081e">   48</a></span>   <a class="code" href="namespaceclang_1_1format.html#a41859d19e0a15b9356d655e8c11d8430a9d3cc1d7cf8da7870bc3589c39ae081e">TT_ObjCMethodExpr</a>,</div>
+<div class="line"><a name="l00049"></a><span class="lineno"><a class="code" href="namespaceclang_1_1format.html#a41859d19e0a15b9356d655e8c11d8430aac59d74efedf027d39f1a8e99c729d82">   49</a></span>   <a class="code" href="namespaceclang_1_1format.html#a41859d19e0a15b9356d655e8c11d8430aac59d74efedf027d39f1a8e99c729d82">TT_ObjCMethodSpecifier</a>,</div>
+<div class="line"><a name="l00050"></a><span class="lineno"><a class="code" href="namespaceclang_1_1format.html#a41859d19e0a15b9356d655e8c11d8430aa8a444a60a5dc84fdf99bd6c0a84b143">   50</a></span>   <a class="code" href="namespaceclang_1_1format.html#a41859d19e0a15b9356d655e8c11d8430aa8a444a60a5dc84fdf99bd6c0a84b143">TT_ObjCProperty</a>,</div>
+<div class="line"><a name="l00051"></a><span class="lineno"><a class="code" href="namespaceclang_1_1format.html#a41859d19e0a15b9356d655e8c11d8430a62238766a6793dfe08767e6453ed7847">   51</a></span>   <a class="code" href="namespaceclang_1_1format.html#a41859d19e0a15b9356d655e8c11d8430a62238766a6793dfe08767e6453ed7847">TT_ObjCSelectorName</a>,</div>
+<div class="line"><a name="l00052"></a><span class="lineno"><a class="code" href="namespaceclang_1_1format.html#a41859d19e0a15b9356d655e8c11d8430a470c5e9de483f14fc8e61d840c5bd1c5">   52</a></span>   <a class="code" href="namespaceclang_1_1format.html#a41859d19e0a15b9356d655e8c11d8430a470c5e9de483f14fc8e61d840c5bd1c5">TT_OverloadedOperator</a>,</div>
+<div class="line"><a name="l00053"></a><span class="lineno"><a class="code" href="namespaceclang_1_1format.html#a41859d19e0a15b9356d655e8c11d8430ad1a611931ea285385dc0e34e95a32a09">   53</a></span>   <a class="code" href="namespaceclang_1_1format.html#a41859d19e0a15b9356d655e8c11d8430ad1a611931ea285385dc0e34e95a32a09">TT_OverloadedOperatorLParen</a>,</div>
+<div class="line"><a name="l00054"></a><span class="lineno"><a class="code" href="namespaceclang_1_1format.html#a41859d19e0a15b9356d655e8c11d8430a94f4375f7d99c163d0df602dd4c39e4f">   54</a></span>   <a class="code" href="namespaceclang_1_1format.html#a41859d19e0a15b9356d655e8c11d8430a94f4375f7d99c163d0df602dd4c39e4f">TT_PointerOrReference</a>,</div>
+<div class="line"><a name="l00055"></a><span class="lineno"><a class="code" href="namespaceclang_1_1format.html#a41859d19e0a15b9356d655e8c11d8430add3bc4fc843a7079cec3895febda862f">   55</a></span>   <a class="code" href="namespaceclang_1_1format.html#a41859d19e0a15b9356d655e8c11d8430add3bc4fc843a7079cec3895febda862f">TT_PureVirtualSpecifier</a>,</div>
+<div class="line"><a name="l00056"></a><span class="lineno"><a class="code" href="namespaceclang_1_1format.html#a41859d19e0a15b9356d655e8c11d8430a4f95490aebc878c9d6de73ec7337ade9">   56</a></span>   <a class="code" href="namespaceclang_1_1format.html#a41859d19e0a15b9356d655e8c11d8430a4f95490aebc878c9d6de73ec7337ade9">TT_RangeBasedForLoopColon</a>,</div>
+<div class="line"><a name="l00057"></a><span class="lineno"><a class="code" href="namespaceclang_1_1format.html#a41859d19e0a15b9356d655e8c11d8430a53ade488c5de2055aa5bab57dcb1bf57">   57</a></span>   <a class="code" href="namespaceclang_1_1format.html#a41859d19e0a15b9356d655e8c11d8430a53ade488c5de2055aa5bab57dcb1bf57">TT_StartOfName</a>,</div>
+<div class="line"><a name="l00058"></a><span class="lineno"><a class="code" href="namespaceclang_1_1format.html#a41859d19e0a15b9356d655e8c11d8430ae0f5f7054e11f208cdde909bce37ab92">   58</a></span>   <a class="code" href="namespaceclang_1_1format.html#a41859d19e0a15b9356d655e8c11d8430ae0f5f7054e11f208cdde909bce37ab92">TT_TemplateCloser</a>,</div>
+<div class="line"><a name="l00059"></a><span class="lineno"><a class="code" href="namespaceclang_1_1format.html#a41859d19e0a15b9356d655e8c11d8430a34a613aee8d51353e36c166d3b674db6">   59</a></span>   <a class="code" href="namespaceclang_1_1format.html#a41859d19e0a15b9356d655e8c11d8430a34a613aee8d51353e36c166d3b674db6">TT_TemplateOpener</a>,</div>
+<div class="line"><a name="l00060"></a><span class="lineno"><a class="code" href="namespaceclang_1_1format.html#a41859d19e0a15b9356d655e8c11d8430a20e62872527d10ed17a66bb4efa784ba">   60</a></span>   <a class="code" href="namespaceclang_1_1format.html#a41859d19e0a15b9356d655e8c11d8430a20e62872527d10ed17a66bb4efa784ba">TT_TrailingReturnArrow</a>,</div>
+<div class="line"><a name="l00061"></a><span class="lineno"><a class="code" href="namespaceclang_1_1format.html#a41859d19e0a15b9356d655e8c11d8430ad459b11b464aba30cdbfa9bafd4cfbe3">   61</a></span>   <a class="code" href="namespaceclang_1_1format.html#a41859d19e0a15b9356d655e8c11d8430ad459b11b464aba30cdbfa9bafd4cfbe3">TT_TrailingUnaryOperator</a>,</div>
+<div class="line"><a name="l00062"></a><span class="lineno"><a class="code" href="namespaceclang_1_1format.html#a41859d19e0a15b9356d655e8c11d8430abf7cc8fa98d8d1989deadbd7dbe7766b">   62</a></span>   <a class="code" href="namespaceclang_1_1format.html#a41859d19e0a15b9356d655e8c11d8430abf7cc8fa98d8d1989deadbd7dbe7766b">TT_UnaryOperator</a>,</div>
+<div class="line"><a name="l00063"></a><span class="lineno"><a class="code" href="namespaceclang_1_1format.html#a41859d19e0a15b9356d655e8c11d8430a090276a6e6d07dca09db497faac8c36c">   63</a></span>   <a class="code" href="namespaceclang_1_1format.html#a41859d19e0a15b9356d655e8c11d8430a090276a6e6d07dca09db497faac8c36c">TT_Unknown</a></div>
+<div class="line"><a name="l00064"></a><span class="lineno">   64</span> };</div>
+<div class="line"><a name="l00065"></a><span class="lineno">   65</span> </div>
+<div class="line"><a name="l00066"></a><span class="lineno">   66</span> <span class="comment">// Represents what type of block a set of braces open.</span></div>
+<div class="line"><a name="l00067"></a><span class="lineno"><a class="code" href="namespaceclang_1_1format.html#af3efd684dd7c9ad4cd48fd4d28ecaaea">   67</a></span> <span class="keyword">enum</span> <a class="code" href="namespaceclang_1_1format.html#af3efd684dd7c9ad4cd48fd4d28ecaaea">BraceBlockKind</a> {</div>
+<div class="line"><a name="l00068"></a><span class="lineno"><a class="code" href="namespaceclang_1_1format.html#af3efd684dd7c9ad4cd48fd4d28ecaaeaabc206459d88deb858f2709556db71017">   68</a></span>   <a class="code" href="namespaceclang_1_1format.html#af3efd684dd7c9ad4cd48fd4d28ecaaeaabc206459d88deb858f2709556db71017">BK_Unknown</a>,</div>
+<div class="line"><a name="l00069"></a><span class="lineno"><a class="code" href="namespaceclang_1_1format.html#af3efd684dd7c9ad4cd48fd4d28ecaaeaac0cd3adbed48a71039a2855df3fe8036">   69</a></span>   <a class="code" href="namespaceclang_1_1format.html#af3efd684dd7c9ad4cd48fd4d28ecaaeaac0cd3adbed48a71039a2855df3fe8036">BK_Block</a>,</div>
+<div class="line"><a name="l00070"></a><span class="lineno"><a class="code" href="namespaceclang_1_1format.html#af3efd684dd7c9ad4cd48fd4d28ecaaeaae56a45f3e07dfba04c28c70b668c2bdd">   70</a></span>   <a class="code" href="namespaceclang_1_1format.html#af3efd684dd7c9ad4cd48fd4d28ecaaeaae56a45f3e07dfba04c28c70b668c2bdd">BK_BracedInit</a></div>
+<div class="line"><a name="l00071"></a><span class="lineno">   71</span> };</div>
+<div class="line"><a name="l00072"></a><span class="lineno">   72</span> </div>
+<div class="line"><a name="l00073"></a><span class="lineno">   73</span> <span class="comment">// The packing kind of a function's parameters.</span></div>
+<div class="line"><a name="l00074"></a><span class="lineno"><a class="code" href="namespaceclang_1_1format.html#a452b34c08537cab02deca443e342bec6">   74</a></span> <span class="keyword">enum</span> <a class="code" href="namespaceclang_1_1format.html#a452b34c08537cab02deca443e342bec6">ParameterPackingKind</a> {</div>
+<div class="line"><a name="l00075"></a><span class="lineno"><a class="code" href="namespaceclang_1_1format.html#a452b34c08537cab02deca443e342bec6a3e1e85534f0f7b91f01b7574f4d4adf5">   75</a></span>   <a class="code" href="namespaceclang_1_1format.html#a452b34c08537cab02deca443e342bec6a3e1e85534f0f7b91f01b7574f4d4adf5">PPK_BinPacked</a>,</div>
+<div class="line"><a name="l00076"></a><span class="lineno"><a class="code" href="namespaceclang_1_1format.html#a452b34c08537cab02deca443e342bec6af698c50de2f16b48e6eec09e447ebf99">   76</a></span>   <a class="code" href="namespaceclang_1_1format.html#a452b34c08537cab02deca443e342bec6af698c50de2f16b48e6eec09e447ebf99">PPK_OnePerLine</a>,</div>
+<div class="line"><a name="l00077"></a><span class="lineno"><a class="code" href="namespaceclang_1_1format.html#a452b34c08537cab02deca443e342bec6aa198a0d4cbb39979341cb7388e93e97b">   77</a></span>   <a class="code" href="namespaceclang_1_1format.html#a452b34c08537cab02deca443e342bec6aa198a0d4cbb39979341cb7388e93e97b">PPK_Inconclusive</a></div>
+<div class="line"><a name="l00078"></a><span class="lineno">   78</span> };</div>
+<div class="line"><a name="l00079"></a><span class="lineno">   79</span> </div>
+<div class="line"><a name="l00080"></a><span class="lineno"><a class="code" href="namespaceclang_1_1format.html#a3409598f12699626b6997dfdd18c6929">   80</a></span> <span class="keyword">enum</span> <a class="code" href="namespaceclang_1_1format.html#a3409598f12699626b6997dfdd18c6929">FormatDecision</a> {</div>
+<div class="line"><a name="l00081"></a><span class="lineno"><a class="code" href="namespaceclang_1_1format.html#a3409598f12699626b6997dfdd18c6929a8da12d86e1be42ee8d8d458d1f5dfc25">   81</a></span>   <a class="code" href="namespaceclang_1_1format.html#a3409598f12699626b6997dfdd18c6929a8da12d86e1be42ee8d8d458d1f5dfc25">FD_Unformatted</a>,</div>
+<div class="line"><a name="l00082"></a><span class="lineno"><a class="code" href="namespaceclang_1_1format.html#a3409598f12699626b6997dfdd18c6929a98df366120a9a0c1f0eaec09b1555cff">   82</a></span>   <a class="code" href="namespaceclang_1_1format.html#a3409598f12699626b6997dfdd18c6929a98df366120a9a0c1f0eaec09b1555cff">FD_Continue</a>,</div>
+<div class="line"><a name="l00083"></a><span class="lineno"><a class="code" href="namespaceclang_1_1format.html#a3409598f12699626b6997dfdd18c6929a77ad2a14db7203e0c45a0e9aacf50745">   83</a></span>   <a class="code" href="namespaceclang_1_1format.html#a3409598f12699626b6997dfdd18c6929a77ad2a14db7203e0c45a0e9aacf50745">FD_Break</a></div>
+<div class="line"><a name="l00084"></a><span class="lineno">   84</span> };</div>
+<div class="line"><a name="l00085"></a><span class="lineno">   85</span> </div>
+<div class="line"><a name="l00086"></a><span class="lineno">   86</span> <span class="keyword">class </span>TokenRole;</div>
+<div class="line"><a name="l00087"></a><span class="lineno">   87</span> <span class="keyword">class </span>AnnotatedLine;</div>
+<div class="line"><a name="l00088"></a><span class="lineno">   88</span> <span class="comment"></span></div>
+<div class="line"><a name="l00089"></a><span class="lineno">   89</span> <span class="comment">/// \brief A wrapper around a \c Token storing information about the</span></div>
+<div class="line"><a name="l00090"></a><span class="lineno">   90</span> <span class="comment">/// whitespace characters preceeding it.</span></div>
+<div class="line"><a name="l00091"></a><span class="lineno"><a class="code" href="structclang_1_1format_1_1FormatToken.html">   91</a></span> <span class="comment"></span><span class="keyword">struct </span><a class="code" href="structclang_1_1format_1_1FormatToken.html" title="A wrapper around a Token storing information about the whitespace characters preceeding it...">FormatToken</a> {</div>
+<div class="line"><a name="l00092"></a><span class="lineno"><a class="code" href="structclang_1_1format_1_1FormatToken.html#ac23dc39b2fee0d4a1c8c83bf55b6123b">   92</a></span>   <a class="code" href="structclang_1_1format_1_1FormatToken.html#ac23dc39b2fee0d4a1c8c83bf55b6123b">FormatToken</a>()</div>
+<div class="line"><a name="l00093"></a><span class="lineno">   93</span>       : <a class="code" href="structclang_1_1format_1_1FormatToken.html#a72f16c0fdd775e9545918812f2eb2b17" title="The number of newlines immediately before the Token.">NewlinesBefore</a>(0), <a class="code" href="structclang_1_1format_1_1FormatToken.html#a417deb217e49152e9db65ca39a48d9ba" title="Whether there is at least one unescaped newline before the Token.">HasUnescapedNewline</a>(<a class="code" href="stdbool_8h.html#a65e9886d74aaee76545e83dd09011727">false</a>), <a class="code" href="structclang_1_1format_1_1FormatToken.html#a4edfb74c77faf5ae1aefd45294a70c67" title="The offset just past the last ' ' in this token's leading whitespace (relative to WhiteSpaceStart)...">LastNewlineOffset</a>(0),</div>
+<div class="line"><a name="l00094"></a><span class="lineno">   94</span>         <a class="code" href="structclang_1_1format_1_1FormatToken.html#a93569d64f8649501a001718995b8ba88" title="The width of the non-whitespace parts of the token (or its first line for multi-line tokens) in colum...">ColumnWidth</a>(0), <a class="code" href="structclang_1_1format_1_1FormatToken.html#ab719098ee6275e50caf2aaa183aa6cf4" title="Contains the width in columns of the last line of a multi-line token.">LastLineColumnWidth</a>(0), <a class="code" href="structclang_1_1format_1_1FormatToken.html#a70bb88056e95d29a53586f074baa21b4" title="Whether the token text contains newlines (escaped or not).">IsMultiline</a>(<a class="code" href="stdbool_8h.html#a65e9886d74aaee76545e83dd09011727">false</a>),</div>
+<div class="line"><a name="l00095"></a><span class="lineno">   95</span>         <a class="code" href="structclang_1_1format_1_1FormatToken.html#ade509cfc6b5db2122888001ed48244c5" title="Indicates that this is the first token.">IsFirst</a>(<a class="code" href="stdbool_8h.html#a65e9886d74aaee76545e83dd09011727">false</a>), <a class="code" href="structclang_1_1format_1_1FormatToken.html#a7bf92e943c028898d14a5516969e25d9" title="Whether there must be a line break before this token.">MustBreakBefore</a>(<a class="code" href="stdbool_8h.html#a65e9886d74aaee76545e83dd09011727">false</a>), <a class="code" href="structclang_1_1format_1_1FormatToken.html#aa03b5ffdd70212f8a526b33371c2fcd7" title="Set to true if this token is an unterminated literal.">IsUnterminatedLiteral</a>(<a class="code" href="stdbool_8h.html#a65e9886d74aaee76545e83dd09011727">false</a>),</div>
+<div class="line"><a name="l00096"></a><span class="lineno">   96</span>         <a class="code" href="structclang_1_1format_1_1FormatToken.html#a8535587de7dd43ab56e32b88279ea917" title="Contains the kind of block if this token is a brace.">BlockKind</a>(<a class="code" href="namespaceclang_1_1format.html#af3efd684dd7c9ad4cd48fd4d28ecaaeaabc206459d88deb858f2709556db71017">BK_Unknown</a>), <a class="code" href="classclang_1_1Type.html">Type</a>(<a class="code" href="namespaceclang_1_1format.html#a41859d19e0a15b9356d655e8c11d8430a090276a6e6d07dca09db497faac8c36c">TT_Unknown</a>), <a class="code" href="structclang_1_1format_1_1FormatToken.html#a7b69d38383565c6694cc6a1194e4b415" title="The number of spaces that should be inserted before this token.">SpacesRequiredBefore</a>(0),</div>
+<div class="line"><a name="l00097"></a><span class="lineno">   97</span>         <a class="code" href="structclang_1_1format_1_1FormatToken.html#a8f4e8957198b4e546e719860c8d9668b" title="true if it is allowed to break before this token.">CanBreakBefore</a>(<a class="code" href="stdbool_8h.html#a65e9886d74aaee76545e83dd09011727">false</a>), <a class="code" href="structclang_1_1format_1_1FormatToken.html#a45ae7a4a00d3d8d31a00da0054944362">ClosesTemplateDeclaration</a>(<a class="code" href="stdbool_8h.html#a65e9886d74aaee76545e83dd09011727">false</a>),</div>
+<div class="line"><a name="l00098"></a><span class="lineno">   98</span>         <a class="code" href="structclang_1_1format_1_1FormatToken.html#ae90cdc897b40e34d38a97c3960ca6305" title="Number of parameters, if this is "(", "[" or "<".">ParameterCount</a>(0), <a class="code" href="structclang_1_1format_1_1FormatToken.html#a96efcb686568bd37e85ac6d0dd16c8bf" title="If this is an opening parenthesis, how are the parameters packed?">PackingKind</a>(<a class="code" href="namespaceclang_1_1format.html#a452b34c08537cab02deca443e342bec6aa198a0d4cbb39979341cb7388e93e97b">PPK_Inconclusive</a>), <a class="code" href="structclang_1_1format_1_1FormatToken.html#ac2b733f2b528aeab33b9c9189a05dc7a" title="The total length of the unwrapped line up to and including this token.">TotalLength</a>(0),</div>
+<div class="line"><a name="l00099"></a><span class="lineno">   99</span>         <a class="code" href="structclang_1_1format_1_1FormatToken.html#ab404887ac13f8c9a424887e936d3290b" title="The length of following tokens until the next natural split point, or the next token that can be brok...">UnbreakableTailLength</a>(0), <a class="code" href="structclang_1_1format_1_1FormatToken.html#a23387284a8f9d75f12b68f9be1aeb467" title="The binding strength of a token. This is a combined value of operator precedence, parenthesis nesting...">BindingStrength</a>(0), <a class="code" href="structclang_1_1format_1_1FormatToken.html#a4f0196cff50715366a1d83c49b08964e" title="Penalty for inserting a line break before this token.">SplitPenalty</a>(0),</div>
+<div class="line"><a name="l00100"></a><span class="lineno">  100</span>         <a class="code" href="structclang_1_1format_1_1FormatToken.html#a40e51d1e0f79dba69b2da861b0b6fa3c" title="If this is the first ObjC selector name in an ObjC method definition or call, this contains the lengt...">LongestObjCSelectorName</a>(0), <a class="code" href="structclang_1_1format_1_1FormatToken.html#a059052a817efb1d6712041927f3264c1" title="Insert this many fake ) after this token for correct indentation.">FakeRParens</a>(0),</div>
+<div class="line"><a name="l00101"></a><span class="lineno">  101</span>         <a class="code" href="structclang_1_1format_1_1FormatToken.html#af46e943ec6822966d41011b39a9f3a37" title="true if this token starts a binary expression, i.e. has at least one fake l_paren with a precedence g...">StartsBinaryExpression</a>(<a class="code" href="stdbool_8h.html#a65e9886d74aaee76545e83dd09011727">false</a>), <a class="code" href="structclang_1_1format_1_1FormatToken.html#a2deef3f679166d2f9e755986a4d07874" title="true if this token ends a binary expression.">EndsBinaryExpression</a>(<a class="code" href="stdbool_8h.html#a65e9886d74aaee76545e83dd09011727">false</a>),</div>
+<div class="line"><a name="l00102"></a><span class="lineno">  102</span>         <a class="code" href="structclang_1_1format_1_1FormatToken.html#a82a0c7fa7be6b82a0c55dfe241f86d1b" title="Is this the last "." or "->" in a builder-type call?">LastInChainOfCalls</a>(<a class="code" href="stdbool_8h.html#a65e9886d74aaee76545e83dd09011727">false</a>), <a class="code" href="structclang_1_1format_1_1FormatToken.html#a223490cc21236e8f24bc5bb96125a06f" title="Is this token part of a DeclStmt defining multiple variables?">PartOfMultiVariableDeclStmt</a>(<a class="code" href="stdbool_8h.html#a65e9886d74aaee76545e83dd09011727">false</a>),</div>
+<div class="line"><a name="l00103"></a><span class="lineno">  103</span>         <a class="code" href="structclang_1_1format_1_1FormatToken.html#af12eecf8720255ffb8111c004ea75a93">MatchingParen</a>(<a class="code" href="stddef_8h.html#a070d2ce7b6bb7e5c05602aa8c308d0c4">NULL</a>), <a class="code" href="structclang_1_1format_1_1FormatToken.html#afd2b1b6774edaba6ab37660e457e3a04">Previous</a>(<a class="code" href="stddef_8h.html#a070d2ce7b6bb7e5c05602aa8c308d0c4">NULL</a>), <a class="code" href="structclang_1_1format_1_1FormatToken.html#a69a581e676a2af19891855ab81e0a0c6">Next</a>(<a class="code" href="stddef_8h.html#a070d2ce7b6bb7e5c05602aa8c308d0c4">NULL</a>),</div>
+<div class="line"><a name="l00104"></a><span class="lineno">  104</span>         <a class="code" href="structclang_1_1format_1_1FormatToken.html#a009e204f96f46355e68a38a84eeb0f69" title="Stores the formatting decision for the token once it was made.">Decision</a>(<a class="code" href="namespaceclang_1_1format.html#a3409598f12699626b6997dfdd18c6929a8da12d86e1be42ee8d8d458d1f5dfc25">FD_Unformatted</a>), <a class="code" href="structclang_1_1format_1_1FormatToken.html#ae83a4324a22c9e4a4f589c7bb87d6f49" title="If true, this token has been fully formatted (indented and potentially re-formatted inside)...">Finalized</a>(<a class="code" href="stdbool_8h.html#a65e9886d74aaee76545e83dd09011727">false</a>) {}</div>
+<div class="line"><a name="l00105"></a><span class="lineno">  105</span> <span class="comment"></span></div>
+<div class="line"><a name="l00106"></a><span class="lineno">  106</span> <span class="comment">  /// \brief The \c Token.</span></div>
+<div class="line"><a name="l00107"></a><span class="lineno"><a class="code" href="structclang_1_1format_1_1FormatToken.html#ad5faf26454fb42c93ed4fe3757cb4481">  107</a></span> <span class="comment"></span>  <a class="code" href="classclang_1_1Token.html">Token</a> <a class="code" href="structclang_1_1format_1_1FormatToken.html#ad5faf26454fb42c93ed4fe3757cb4481" title="The Token.">Tok</a>;</div>
+<div class="line"><a name="l00108"></a><span class="lineno">  108</span> <span class="comment"></span></div>
+<div class="line"><a name="l00109"></a><span class="lineno">  109</span> <span class="comment">  /// \brief The number of newlines immediately before the \c Token.</span></div>
+<div class="line"><a name="l00110"></a><span class="lineno">  110</span> <span class="comment">  ///</span></div>
+<div class="line"><a name="l00111"></a><span class="lineno">  111</span> <span class="comment">  /// This can be used to determine what the user wrote in the original code</span></div>
+<div class="line"><a name="l00112"></a><span class="lineno">  112</span> <span class="comment">  /// and thereby e.g. leave an empty line between two function definitions.</span></div>
+<div class="line"><a name="l00113"></a><span class="lineno"><a class="code" href="structclang_1_1format_1_1FormatToken.html#a72f16c0fdd775e9545918812f2eb2b17">  113</a></span> <span class="comment"></span>  <span class="keywordtype">unsigned</span> <a class="code" href="structclang_1_1format_1_1FormatToken.html#a72f16c0fdd775e9545918812f2eb2b17" title="The number of newlines immediately before the Token.">NewlinesBefore</a>;</div>
+<div class="line"><a name="l00114"></a><span class="lineno">  114</span> <span class="comment"></span></div>
+<div class="line"><a name="l00115"></a><span class="lineno">  115</span> <span class="comment">  /// \brief Whether there is at least one unescaped newline before the \c</span></div>
+<div class="line"><a name="l00116"></a><span class="lineno">  116</span> <span class="comment">  /// Token.</span></div>
+<div class="line"><a name="l00117"></a><span class="lineno"><a class="code" href="structclang_1_1format_1_1FormatToken.html#a417deb217e49152e9db65ca39a48d9ba">  117</a></span> <span class="comment"></span>  <span class="keywordtype">bool</span> <a class="code" href="structclang_1_1format_1_1FormatToken.html#a417deb217e49152e9db65ca39a48d9ba" title="Whether there is at least one unescaped newline before the Token.">HasUnescapedNewline</a>;</div>
+<div class="line"><a name="l00118"></a><span class="lineno">  118</span> <span class="comment"></span></div>
+<div class="line"><a name="l00119"></a><span class="lineno">  119</span> <span class="comment">  /// \brief The range of the whitespace immediately preceeding the \c Token.</span></div>
+<div class="line"><a name="l00120"></a><span class="lineno"><a class="code" href="structclang_1_1format_1_1FormatToken.html#aebc21aac53563fe7b3b1acabc08f3a6f">  120</a></span> <span class="comment"></span>  <a class="code" href="classclang_1_1SourceRange.html" title="A trival tuple used to represent a source range.">SourceRange</a> <a class="code" href="structclang_1_1format_1_1FormatToken.html#aebc21aac53563fe7b3b1acabc08f3a6f" title="The range of the whitespace immediately preceeding the Token.">WhitespaceRange</a>;</div>
+<div class="line"><a name="l00121"></a><span class="lineno">  121</span> <span class="comment"></span></div>
+<div class="line"><a name="l00122"></a><span class="lineno">  122</span> <span class="comment">  /// \brief The offset just past the last '\n' in this token's leading</span></div>
+<div class="line"><a name="l00123"></a><span class="lineno">  123</span> <span class="comment">  /// whitespace (relative to \c WhiteSpaceStart). 0 if there is no '\n'.</span></div>
+<div class="line"><a name="l00124"></a><span class="lineno"><a class="code" href="structclang_1_1format_1_1FormatToken.html#a4edfb74c77faf5ae1aefd45294a70c67">  124</a></span> <span class="comment"></span>  <span class="keywordtype">unsigned</span> <a class="code" href="structclang_1_1format_1_1FormatToken.html#a4edfb74c77faf5ae1aefd45294a70c67" title="The offset just past the last ' ' in this token's leading whitespace (relative to WhiteSpaceStart)...">LastNewlineOffset</a>;</div>
+<div class="line"><a name="l00125"></a><span class="lineno">  125</span> <span class="comment"></span></div>
+<div class="line"><a name="l00126"></a><span class="lineno">  126</span> <span class="comment">  /// \brief The width of the non-whitespace parts of the token (or its first</span></div>
+<div class="line"><a name="l00127"></a><span class="lineno">  127</span> <span class="comment">  /// line for multi-line tokens) in columns.</span></div>
+<div class="line"><a name="l00128"></a><span class="lineno">  128</span> <span class="comment">  /// We need this to correctly measure number of columns a token spans.</span></div>
+<div class="line"><a name="l00129"></a><span class="lineno"><a class="code" href="structclang_1_1format_1_1FormatToken.html#a93569d64f8649501a001718995b8ba88">  129</a></span> <span class="comment"></span>  <span class="keywordtype">unsigned</span> <a class="code" href="structclang_1_1format_1_1FormatToken.html#a93569d64f8649501a001718995b8ba88" title="The width of the non-whitespace parts of the token (or its first line for multi-line tokens) in colum...">ColumnWidth</a>;</div>
+<div class="line"><a name="l00130"></a><span class="lineno">  130</span> <span class="comment"></span></div>
+<div class="line"><a name="l00131"></a><span class="lineno">  131</span> <span class="comment">  /// \brief Contains the width in columns of the last line of a multi-line</span></div>
+<div class="line"><a name="l00132"></a><span class="lineno">  132</span> <span class="comment">  /// token.</span></div>
+<div class="line"><a name="l00133"></a><span class="lineno"><a class="code" href="structclang_1_1format_1_1FormatToken.html#ab719098ee6275e50caf2aaa183aa6cf4">  133</a></span> <span class="comment"></span>  <span class="keywordtype">unsigned</span> <a class="code" href="structclang_1_1format_1_1FormatToken.html#ab719098ee6275e50caf2aaa183aa6cf4" title="Contains the width in columns of the last line of a multi-line token.">LastLineColumnWidth</a>;</div>
+<div class="line"><a name="l00134"></a><span class="lineno">  134</span> <span class="comment"></span></div>
+<div class="line"><a name="l00135"></a><span class="lineno">  135</span> <span class="comment">  /// \brief Whether the token text contains newlines (escaped or not).</span></div>
+<div class="line"><a name="l00136"></a><span class="lineno"><a class="code" href="structclang_1_1format_1_1FormatToken.html#a70bb88056e95d29a53586f074baa21b4">  136</a></span> <span class="comment"></span>  <span class="keywordtype">bool</span> <a class="code" href="structclang_1_1format_1_1FormatToken.html#a70bb88056e95d29a53586f074baa21b4" title="Whether the token text contains newlines (escaped or not).">IsMultiline</a>;</div>
+<div class="line"><a name="l00137"></a><span class="lineno">  137</span> <span class="comment"></span></div>
+<div class="line"><a name="l00138"></a><span class="lineno">  138</span> <span class="comment">  /// \brief Indicates that this is the first token.</span></div>
+<div class="line"><a name="l00139"></a><span class="lineno"><a class="code" href="structclang_1_1format_1_1FormatToken.html#ade509cfc6b5db2122888001ed48244c5">  139</a></span> <span class="comment"></span>  <span class="keywordtype">bool</span> <a class="code" href="structclang_1_1format_1_1FormatToken.html#ade509cfc6b5db2122888001ed48244c5" title="Indicates that this is the first token.">IsFirst</a>;</div>
+<div class="line"><a name="l00140"></a><span class="lineno">  140</span> <span class="comment"></span></div>
+<div class="line"><a name="l00141"></a><span class="lineno">  141</span> <span class="comment">  /// \brief Whether there must be a line break before this token.</span></div>
+<div class="line"><a name="l00142"></a><span class="lineno">  142</span> <span class="comment">  ///</span></div>
+<div class="line"><a name="l00143"></a><span class="lineno">  143</span> <span class="comment">  /// This happens for example when a preprocessor directive ended directly</span></div>
+<div class="line"><a name="l00144"></a><span class="lineno">  144</span> <span class="comment">  /// before the token.</span></div>
+<div class="line"><a name="l00145"></a><span class="lineno"><a class="code" href="structclang_1_1format_1_1FormatToken.html#a7bf92e943c028898d14a5516969e25d9">  145</a></span> <span class="comment"></span>  <span class="keywordtype">bool</span> <a class="code" href="structclang_1_1format_1_1FormatToken.html#a7bf92e943c028898d14a5516969e25d9" title="Whether there must be a line break before this token.">MustBreakBefore</a>;</div>
+<div class="line"><a name="l00146"></a><span class="lineno">  146</span> <span class="comment"></span></div>
+<div class="line"><a name="l00147"></a><span class="lineno">  147</span> <span class="comment">  /// \brief Returns actual token start location without leading escaped</span></div>
+<div class="line"><a name="l00148"></a><span class="lineno">  148</span> <span class="comment">  /// newlines and whitespace.</span></div>
+<div class="line"><a name="l00149"></a><span class="lineno">  149</span> <span class="comment">  ///</span></div>
+<div class="line"><a name="l00150"></a><span class="lineno">  150</span> <span class="comment">  /// This can be different to Tok.getLocation(), which includes leading escaped</span></div>
+<div class="line"><a name="l00151"></a><span class="lineno">  151</span> <span class="comment">  /// newlines.</span></div>
+<div class="line"><a name="l00152"></a><span class="lineno"><a class="code" href="structclang_1_1format_1_1FormatToken.html#afb7a439a00fdfbfe7a58bee248fcbddb">  152</a></span> <span class="comment"></span>  <a class="code" href="classclang_1_1SourceLocation.html" title="Encodes a location in the source. The SourceManager can decode this to get at the full include stack...">SourceLocation</a> <a class="code" href="structclang_1_1format_1_1FormatToken.html#afb7a439a00fdfbfe7a58bee248fcbddb" title="Returns actual token start location without leading escaped newlines and whitespace.">getStartOfNonWhitespace</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00153"></a><span class="lineno">  153</span>     <span class="keywordflow">return</span> <a class="code" href="structclang_1_1format_1_1FormatToken.html#aebc21aac53563fe7b3b1acabc08f3a6f" title="The range of the whitespace immediately preceeding the Token.">WhitespaceRange</a>.<a class="code" href="classclang_1_1SourceRange.html#a982d28235ad96ce81b3e8144b7b245c0">getEnd</a>();</div>
+<div class="line"><a name="l00154"></a><span class="lineno">  154</span>   }</div>
+<div class="line"><a name="l00155"></a><span class="lineno">  155</span> <span class="comment"></span></div>
+<div class="line"><a name="l00156"></a><span class="lineno">  156</span> <span class="comment">  /// \brief The raw text of the token.</span></div>
+<div class="line"><a name="l00157"></a><span class="lineno">  157</span> <span class="comment">  ///</span></div>
+<div class="line"><a name="l00158"></a><span class="lineno">  158</span> <span class="comment">  /// Contains the raw token text without leading whitespace and without leading</span></div>
+<div class="line"><a name="l00159"></a><span class="lineno">  159</span> <span class="comment">  /// escaped newlines.</span></div>
+<div class="line"><a name="l00160"></a><span class="lineno"><a class="code" href="structclang_1_1format_1_1FormatToken.html#a3cc91cf32fe4b5428465da8d57a0234b">  160</a></span> <span class="comment"></span>  StringRef <a class="code" href="structclang_1_1format_1_1FormatToken.html#a3cc91cf32fe4b5428465da8d57a0234b" title="The raw text of the token.">TokenText</a>;</div>
+<div class="line"><a name="l00161"></a><span class="lineno">  161</span> <span class="comment"></span></div>
+<div class="line"><a name="l00162"></a><span class="lineno">  162</span> <span class="comment">  /// \brief Set to \c true if this token is an unterminated literal.</span></div>
+<div class="line"><a name="l00163"></a><span class="lineno"><a class="code" href="structclang_1_1format_1_1FormatToken.html#aa03b5ffdd70212f8a526b33371c2fcd7">  163</a></span> <span class="comment"></span>  <span class="keywordtype">bool</span> <a class="code" href="structclang_1_1format_1_1FormatToken.html#aa03b5ffdd70212f8a526b33371c2fcd7" title="Set to true if this token is an unterminated literal.">IsUnterminatedLiteral</a>;</div>
+<div class="line"><a name="l00164"></a><span class="lineno">  164</span> <span class="comment"></span></div>
+<div class="line"><a name="l00165"></a><span class="lineno">  165</span> <span class="comment">  /// \brief Contains the kind of block if this token is a brace.</span></div>
+<div class="line"><a name="l00166"></a><span class="lineno"><a class="code" href="structclang_1_1format_1_1FormatToken.html#a8535587de7dd43ab56e32b88279ea917">  166</a></span> <span class="comment"></span>  <a class="code" href="namespaceclang_1_1format.html#af3efd684dd7c9ad4cd48fd4d28ecaaea">BraceBlockKind</a> <a class="code" href="structclang_1_1format_1_1FormatToken.html#a8535587de7dd43ab56e32b88279ea917" title="Contains the kind of block if this token is a brace.">BlockKind</a>;</div>
+<div class="line"><a name="l00167"></a><span class="lineno">  167</span> </div>
+<div class="line"><a name="l00168"></a><span class="lineno"><a class="code" href="structclang_1_1format_1_1FormatToken.html#acc9a4d3e0add22535846930962df8943">  168</a></span>   <a class="code" href="namespaceclang_1_1format.html#a41859d19e0a15b9356d655e8c11d8430">TokenType</a> <a class="code" href="structclang_1_1format_1_1FormatToken.html#acc9a4d3e0add22535846930962df8943">Type</a>;</div>
+<div class="line"><a name="l00169"></a><span class="lineno">  169</span> <span class="comment"></span></div>
+<div class="line"><a name="l00170"></a><span class="lineno">  170</span> <span class="comment">  /// \brief The number of spaces that should be inserted before this token.</span></div>
+<div class="line"><a name="l00171"></a><span class="lineno"><a class="code" href="structclang_1_1format_1_1FormatToken.html#a7b69d38383565c6694cc6a1194e4b415">  171</a></span> <span class="comment"></span>  <span class="keywordtype">unsigned</span> <a class="code" href="structclang_1_1format_1_1FormatToken.html#a7b69d38383565c6694cc6a1194e4b415" title="The number of spaces that should be inserted before this token.">SpacesRequiredBefore</a>;</div>
+<div class="line"><a name="l00172"></a><span class="lineno">  172</span> <span class="comment"></span></div>
+<div class="line"><a name="l00173"></a><span class="lineno">  173</span> <span class="comment">  /// \brief \c true if it is allowed to break before this token.</span></div>
+<div class="line"><a name="l00174"></a><span class="lineno"><a class="code" href="structclang_1_1format_1_1FormatToken.html#a8f4e8957198b4e546e719860c8d9668b">  174</a></span> <span class="comment"></span>  <span class="keywordtype">bool</span> <a class="code" href="structclang_1_1format_1_1FormatToken.html#a8f4e8957198b4e546e719860c8d9668b" title="true if it is allowed to break before this token.">CanBreakBefore</a>;</div>
+<div class="line"><a name="l00175"></a><span class="lineno">  175</span> </div>
+<div class="line"><a name="l00176"></a><span class="lineno"><a class="code" href="structclang_1_1format_1_1FormatToken.html#a45ae7a4a00d3d8d31a00da0054944362">  176</a></span>   <span class="keywordtype">bool</span> <a class="code" href="structclang_1_1format_1_1FormatToken.html#a45ae7a4a00d3d8d31a00da0054944362">ClosesTemplateDeclaration</a>;</div>
+<div class="line"><a name="l00177"></a><span class="lineno">  177</span> <span class="comment"></span></div>
+<div class="line"><a name="l00178"></a><span class="lineno">  178</span> <span class="comment">  /// \brief Number of parameters, if this is "(", "[" or "<".</span></div>
+<div class="line"><a name="l00179"></a><span class="lineno">  179</span> <span class="comment">  ///</span></div>
+<div class="line"><a name="l00180"></a><span class="lineno">  180</span> <span class="comment">  /// This is initialized to 1 as we don't need to distinguish functions with</span></div>
+<div class="line"><a name="l00181"></a><span class="lineno">  181</span> <span class="comment">  /// 0 parameters from functions with 1 parameter. Thus, we can simply count</span></div>
+<div class="line"><a name="l00182"></a><span class="lineno">  182</span> <span class="comment">  /// the number of commas.</span></div>
+<div class="line"><a name="l00183"></a><span class="lineno"><a class="code" href="structclang_1_1format_1_1FormatToken.html#ae90cdc897b40e34d38a97c3960ca6305">  183</a></span> <span class="comment"></span>  <span class="keywordtype">unsigned</span> <a class="code" href="structclang_1_1format_1_1FormatToken.html#ae90cdc897b40e34d38a97c3960ca6305" title="Number of parameters, if this is "(", "[" or "<".">ParameterCount</a>;</div>
+<div class="line"><a name="l00184"></a><span class="lineno">  184</span> <span class="comment"></span></div>
+<div class="line"><a name="l00185"></a><span class="lineno">  185</span> <span class="comment">  /// \brief A token can have a special role that can carry extra information</span></div>
+<div class="line"><a name="l00186"></a><span class="lineno">  186</span> <span class="comment">  /// about the token's formatting.</span></div>
+<div class="line"><a name="l00187"></a><span class="lineno"><a class="code" href="structclang_1_1format_1_1FormatToken.html#a5f3e5ade2e606a4209cf7b11389a4b4a">  187</a></span> <span class="comment"></span>  <a class="code" href="classllvm_1_1OwningPtr.html">llvm::OwningPtr<TokenRole></a> <a class="code" href="structclang_1_1format_1_1FormatToken.html#a5f3e5ade2e606a4209cf7b11389a4b4a" title="A token can have a special role that can carry extra information about the token's formatting...">Role</a>;</div>
+<div class="line"><a name="l00188"></a><span class="lineno">  188</span> <span class="comment"></span></div>
+<div class="line"><a name="l00189"></a><span class="lineno">  189</span> <span class="comment">  /// \brief If this is an opening parenthesis, how are the parameters packed?</span></div>
+<div class="line"><a name="l00190"></a><span class="lineno"><a class="code" href="structclang_1_1format_1_1FormatToken.html#a96efcb686568bd37e85ac6d0dd16c8bf">  190</a></span> <span class="comment"></span>  <a class="code" href="namespaceclang_1_1format.html#a452b34c08537cab02deca443e342bec6">ParameterPackingKind</a> <a class="code" href="structclang_1_1format_1_1FormatToken.html#a96efcb686568bd37e85ac6d0dd16c8bf" title="If this is an opening parenthesis, how are the parameters packed?">PackingKind</a>;</div>
+<div class="line"><a name="l00191"></a><span class="lineno">  191</span> <span class="comment"></span></div>
+<div class="line"><a name="l00192"></a><span class="lineno">  192</span> <span class="comment">  /// \brief The total length of the unwrapped line up to and including this</span></div>
+<div class="line"><a name="l00193"></a><span class="lineno">  193</span> <span class="comment">  /// token.</span></div>
+<div class="line"><a name="l00194"></a><span class="lineno"><a class="code" href="structclang_1_1format_1_1FormatToken.html#ac2b733f2b528aeab33b9c9189a05dc7a">  194</a></span> <span class="comment"></span>  <span class="keywordtype">unsigned</span> <a class="code" href="structclang_1_1format_1_1FormatToken.html#ac2b733f2b528aeab33b9c9189a05dc7a" title="The total length of the unwrapped line up to and including this token.">TotalLength</a>;</div>
+<div class="line"><a name="l00195"></a><span class="lineno">  195</span> <span class="comment"></span></div>
+<div class="line"><a name="l00196"></a><span class="lineno">  196</span> <span class="comment">  /// \brief The original 0-based column of this token, including expanded tabs.</span></div>
+<div class="line"><a name="l00197"></a><span class="lineno">  197</span> <span class="comment">  /// The configured TabWidth is used as tab width.</span></div>
+<div class="line"><a name="l00198"></a><span class="lineno"><a class="code" href="structclang_1_1format_1_1FormatToken.html#a322abe2bf32da92638234e912cef2a76">  198</a></span> <span class="comment"></span>  <span class="keywordtype">unsigned</span> <a class="code" href="structclang_1_1format_1_1FormatToken.html#a322abe2bf32da92638234e912cef2a76" title="The original 0-based column of this token, including expanded tabs. The configured TabWidth is used a...">OriginalColumn</a>;</div>
+<div class="line"><a name="l00199"></a><span class="lineno">  199</span> <span class="comment"></span></div>
+<div class="line"><a name="l00200"></a><span class="lineno">  200</span> <span class="comment">  /// \brief The length of following tokens until the next natural split point,</span></div>
+<div class="line"><a name="l00201"></a><span class="lineno">  201</span> <span class="comment">  /// or the next token that can be broken.</span></div>
+<div class="line"><a name="l00202"></a><span class="lineno"><a class="code" href="structclang_1_1format_1_1FormatToken.html#ab404887ac13f8c9a424887e936d3290b">  202</a></span> <span class="comment"></span>  <span class="keywordtype">unsigned</span> <a class="code" href="structclang_1_1format_1_1FormatToken.html#ab404887ac13f8c9a424887e936d3290b" title="The length of following tokens until the next natural split point, or the next token that can be brok...">UnbreakableTailLength</a>;</div>
+<div class="line"><a name="l00203"></a><span class="lineno">  203</span> </div>
+<div class="line"><a name="l00204"></a><span class="lineno">  204</span>   <span class="comment">// FIXME: Come up with a 'cleaner' concept.</span><span class="comment"></span></div>
+<div class="line"><a name="l00205"></a><span class="lineno">  205</span> <span class="comment">  /// \brief The binding strength of a token. This is a combined value of</span></div>
+<div class="line"><a name="l00206"></a><span class="lineno">  206</span> <span class="comment">  /// operator precedence, parenthesis nesting, etc.</span></div>
+<div class="line"><a name="l00207"></a><span class="lineno"><a class="code" href="structclang_1_1format_1_1FormatToken.html#a23387284a8f9d75f12b68f9be1aeb467">  207</a></span> <span class="comment"></span>  <span class="keywordtype">unsigned</span> <a class="code" href="structclang_1_1format_1_1FormatToken.html#a23387284a8f9d75f12b68f9be1aeb467" title="The binding strength of a token. This is a combined value of operator precedence, parenthesis nesting...">BindingStrength</a>;</div>
+<div class="line"><a name="l00208"></a><span class="lineno">  208</span> <span class="comment"></span></div>
+<div class="line"><a name="l00209"></a><span class="lineno">  209</span> <span class="comment">  /// \brief Penalty for inserting a line break before this token.</span></div>
+<div class="line"><a name="l00210"></a><span class="lineno"><a class="code" href="structclang_1_1format_1_1FormatToken.html#a4f0196cff50715366a1d83c49b08964e">  210</a></span> <span class="comment"></span>  <span class="keywordtype">unsigned</span> <a class="code" href="structclang_1_1format_1_1FormatToken.html#a4f0196cff50715366a1d83c49b08964e" title="Penalty for inserting a line break before this token.">SplitPenalty</a>;</div>
+<div class="line"><a name="l00211"></a><span class="lineno">  211</span> <span class="comment"></span></div>
+<div class="line"><a name="l00212"></a><span class="lineno">  212</span> <span class="comment">  /// \brief If this is the first ObjC selector name in an ObjC method</span></div>
+<div class="line"><a name="l00213"></a><span class="lineno">  213</span> <span class="comment">  /// definition or call, this contains the length of the longest name.</span></div>
+<div class="line"><a name="l00214"></a><span class="lineno"><a class="code" href="structclang_1_1format_1_1FormatToken.html#a40e51d1e0f79dba69b2da861b0b6fa3c">  214</a></span> <span class="comment"></span>  <span class="keywordtype">unsigned</span> <a class="code" href="structclang_1_1format_1_1FormatToken.html#a40e51d1e0f79dba69b2da861b0b6fa3c" title="If this is the first ObjC selector name in an ObjC method definition or call, this contains the lengt...">LongestObjCSelectorName</a>;</div>
+<div class="line"><a name="l00215"></a><span class="lineno">  215</span> <span class="comment"></span></div>
+<div class="line"><a name="l00216"></a><span class="lineno">  216</span> <span class="comment">  /// \brief Stores the number of required fake parentheses and the</span></div>
+<div class="line"><a name="l00217"></a><span class="lineno">  217</span> <span class="comment">  /// corresponding operator precedence.</span></div>
+<div class="line"><a name="l00218"></a><span class="lineno">  218</span> <span class="comment">  ///</span></div>
+<div class="line"><a name="l00219"></a><span class="lineno">  219</span> <span class="comment">  /// If multiple fake parentheses start at a token, this vector stores them in</span></div>
+<div class="line"><a name="l00220"></a><span class="lineno">  220</span> <span class="comment">  /// reverse order, i.e. inner fake parenthesis first.</span></div>
+<div class="line"><a name="l00221"></a><span class="lineno"><a class="code" href="structclang_1_1format_1_1FormatToken.html#a600030206a7eb54cf1325f6bdb466d7b">  221</a></span> <span class="comment"></span>  <a class="code" href="classllvm_1_1SmallVector.html">SmallVector<prec::Level, 4></a> <a class="code" href="structclang_1_1format_1_1FormatToken.html#a600030206a7eb54cf1325f6bdb466d7b" title="Stores the number of required fake parentheses and the corresponding operator precedence.">FakeLParens</a>;<span class="comment"></span></div>
+<div class="line"><a name="l00222"></a><span class="lineno">  222</span> <span class="comment">  /// \brief Insert this many fake ) after this token for correct indentation.</span></div>
+<div class="line"><a name="l00223"></a><span class="lineno"><a class="code" href="structclang_1_1format_1_1FormatToken.html#a059052a817efb1d6712041927f3264c1">  223</a></span> <span class="comment"></span>  <span class="keywordtype">unsigned</span> <a class="code" href="structclang_1_1format_1_1FormatToken.html#a059052a817efb1d6712041927f3264c1" title="Insert this many fake ) after this token for correct indentation.">FakeRParens</a>;</div>
+<div class="line"><a name="l00224"></a><span class="lineno">  224</span> <span class="comment"></span></div>
+<div class="line"><a name="l00225"></a><span class="lineno">  225</span> <span class="comment">  /// \brief \c true if this token starts a binary expression, i.e. has at least</span></div>
+<div class="line"><a name="l00226"></a><span class="lineno">  226</span> <span class="comment">  /// one fake l_paren with a precedence greater than prec::Unknown.</span></div>
+<div class="line"><a name="l00227"></a><span class="lineno"><a class="code" href="structclang_1_1format_1_1FormatToken.html#af46e943ec6822966d41011b39a9f3a37">  227</a></span> <span class="comment"></span>  <span class="keywordtype">bool</span> <a class="code" href="structclang_1_1format_1_1FormatToken.html#af46e943ec6822966d41011b39a9f3a37" title="true if this token starts a binary expression, i.e. has at least one fake l_paren with a precedence g...">StartsBinaryExpression</a>;<span class="comment"></span></div>
+<div class="line"><a name="l00228"></a><span class="lineno">  228</span> <span class="comment">  /// \brief \c true if this token ends a binary expression.</span></div>
+<div class="line"><a name="l00229"></a><span class="lineno"><a class="code" href="structclang_1_1format_1_1FormatToken.html#a2deef3f679166d2f9e755986a4d07874">  229</a></span> <span class="comment"></span>  <span class="keywordtype">bool</span> <a class="code" href="structclang_1_1format_1_1FormatToken.html#a2deef3f679166d2f9e755986a4d07874" title="true if this token ends a binary expression.">EndsBinaryExpression</a>;</div>
+<div class="line"><a name="l00230"></a><span class="lineno">  230</span> <span class="comment"></span></div>
+<div class="line"><a name="l00231"></a><span class="lineno">  231</span> <span class="comment">  /// \brief Is this the last "." or "->" in a builder-type call?</span></div>
+<div class="line"><a name="l00232"></a><span class="lineno"><a class="code" href="structclang_1_1format_1_1FormatToken.html#a82a0c7fa7be6b82a0c55dfe241f86d1b">  232</a></span> <span class="comment"></span>  <span class="keywordtype">bool</span> <a class="code" href="structclang_1_1format_1_1FormatToken.html#a82a0c7fa7be6b82a0c55dfe241f86d1b" title="Is this the last "." or "->" in a builder-type call?">LastInChainOfCalls</a>;</div>
+<div class="line"><a name="l00233"></a><span class="lineno">  233</span> <span class="comment"></span></div>
+<div class="line"><a name="l00234"></a><span class="lineno">  234</span> <span class="comment">  /// \brief Is this token part of a \c DeclStmt defining multiple variables?</span></div>
+<div class="line"><a name="l00235"></a><span class="lineno">  235</span> <span class="comment">  ///</span></div>
+<div class="line"><a name="l00236"></a><span class="lineno">  236</span> <span class="comment">  /// Only set if \c Type == \c TT_StartOfName.</span></div>
+<div class="line"><a name="l00237"></a><span class="lineno"><a class="code" href="structclang_1_1format_1_1FormatToken.html#a223490cc21236e8f24bc5bb96125a06f">  237</a></span> <span class="comment"></span>  <span class="keywordtype">bool</span> <a class="code" href="structclang_1_1format_1_1FormatToken.html#a223490cc21236e8f24bc5bb96125a06f" title="Is this token part of a DeclStmt defining multiple variables?">PartOfMultiVariableDeclStmt</a>;</div>
+<div class="line"><a name="l00238"></a><span class="lineno">  238</span> </div>
+<div class="line"><a name="l00239"></a><span class="lineno"><a class="code" href="structclang_1_1format_1_1FormatToken.html#a5902dd2b3abaad59721ec364ee50bcad">  239</a></span>   <span class="keywordtype">bool</span> <a class="code" href="structclang_1_1format_1_1FormatToken.html#a5902dd2b3abaad59721ec364ee50bcad">is</a>(<a class="code" href="namespaceclang_1_1tok.html#aca39774690bea476816dc56565cb7cd5" title="Provides a simple uniform namespace for tokens from all C languages.">tok::TokenKind</a> <a class="code" href="ChrootChecker_8cpp.html#aa10c9e8951b8ccf714a59ec321bdac5b">Kind</a>)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="structclang_1_1format_1_1FormatToken.html#ad5faf26454fb42c93ed4fe3757cb4481" title="The Token.">Tok</a>.<a class="code" href="classclang_1_1Token.html#abc7c8cc4d8598e2c07148189157cf066">is</a>(Kind); }</div>
+<div class="line"><a name="l00240"></a><span class="lineno">  240</span> </div>
+<div class="line"><a name="l00241"></a><span class="lineno"><a class="code" href="structclang_1_1format_1_1FormatToken.html#afa3b82627c967554b96c7926050e5717">  241</a></span>   <span class="keywordtype">bool</span> <a class="code" href="structclang_1_1format_1_1FormatToken.html#afa3b82627c967554b96c7926050e5717">isOneOf</a>(<a class="code" href="namespaceclang_1_1tok.html#aca39774690bea476816dc56565cb7cd5" title="Provides a simple uniform namespace for tokens from all C languages.">tok::TokenKind</a> K1, <a class="code" href="namespaceclang_1_1tok.html#aca39774690bea476816dc56565cb7cd5" title="Provides a simple uniform namespace for tokens from all C languages.">tok::TokenKind</a> K2)<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00242"></a><span class="lineno">  242</span>     <span class="keywordflow">return</span> <a class="code" href="structclang_1_1format_1_1FormatToken.html#a5902dd2b3abaad59721ec364ee50bcad">is</a>(K1) || <a class="code" href="structclang_1_1format_1_1FormatToken.html#a5902dd2b3abaad59721ec364ee50bcad">is</a>(K2);</div>
+<div class="line"><a name="l00243"></a><span class="lineno">  243</span>   }</div>
+<div class="line"><a name="l00244"></a><span class="lineno">  244</span> </div>
+<div class="line"><a name="l00245"></a><span class="lineno"><a class="code" href="structclang_1_1format_1_1FormatToken.html#a76d440744eac6302e24af68e8f776312">  245</a></span>   <span class="keywordtype">bool</span> <a class="code" href="structclang_1_1format_1_1FormatToken.html#a76d440744eac6302e24af68e8f776312">isOneOf</a>(<a class="code" href="namespaceclang_1_1tok.html#aca39774690bea476816dc56565cb7cd5" title="Provides a simple uniform namespace for tokens from all C languages.">tok::TokenKind</a> K1, <a class="code" href="namespaceclang_1_1tok.html#aca39774690bea476816dc56565cb7cd5" title="Provides a simple uniform namespace for tokens from all C languages.">tok::TokenKind</a> K2, <a class="code" href="namespaceclang_1_1tok.html#aca39774690bea476816dc56565cb7cd5" title="Provides a simple uniform namespace for tokens from all C languages.">tok::TokenKind</a> K3)<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00246"></a><span class="lineno">  246</span>     <span class="keywordflow">return</span> <a class="code" href="structclang_1_1format_1_1FormatToken.html#a5902dd2b3abaad59721ec364ee50bcad">is</a>(K1) || <a class="code" href="structclang_1_1format_1_1FormatToken.html#a5902dd2b3abaad59721ec364ee50bcad">is</a>(K2) || <a class="code" href="structclang_1_1format_1_1FormatToken.html#a5902dd2b3abaad59721ec364ee50bcad">is</a>(K3);</div>
+<div class="line"><a name="l00247"></a><span class="lineno">  247</span>   }</div>
+<div class="line"><a name="l00248"></a><span class="lineno">  248</span> </div>
+<div class="line"><a name="l00249"></a><span class="lineno"><a class="code" href="structclang_1_1format_1_1FormatToken.html#ae03d5815bc211c7c0936c45979e9e21c">  249</a></span>   <span class="keywordtype">bool</span> <a class="code" href="structclang_1_1format_1_1FormatToken.html#afa3b82627c967554b96c7926050e5717">isOneOf</a>(<a class="code" href="namespaceclang_1_1tok.html#aca39774690bea476816dc56565cb7cd5" title="Provides a simple uniform namespace for tokens from all C languages.">tok::TokenKind</a> K1, <a class="code" href="namespaceclang_1_1tok.html#aca39774690bea476816dc56565cb7cd5" title="Provides a simple uniform namespace for tokens from all C languages.">tok::TokenKind</a> K2, <a class="code" href="namespaceclang_1_1tok.html#aca39774690bea476816dc56565cb7cd5" title="Provides a simple uniform namespace for tokens from all C languages.">tok::TokenKind</a> K3,</div>
+<div class="line"><a name="l00250"></a><span class="lineno">  250</span>                <a class="code" href="namespaceclang_1_1tok.html#aca39774690bea476816dc56565cb7cd5" title="Provides a simple uniform namespace for tokens from all C languages.">tok::TokenKind</a> K4, <a class="code" href="namespaceclang_1_1tok.html#aca39774690bea476816dc56565cb7cd5" title="Provides a simple uniform namespace for tokens from all C languages.">tok::TokenKind</a> K5 = tok::NUM_TOKENS,</div>
+<div class="line"><a name="l00251"></a><span class="lineno">  251</span>                <a class="code" href="namespaceclang_1_1tok.html#aca39774690bea476816dc56565cb7cd5" title="Provides a simple uniform namespace for tokens from all C languages.">tok::TokenKind</a> K6 = tok::NUM_TOKENS,</div>
+<div class="line"><a name="l00252"></a><span class="lineno">  252</span>                <a class="code" href="namespaceclang_1_1tok.html#aca39774690bea476816dc56565cb7cd5" title="Provides a simple uniform namespace for tokens from all C languages.">tok::TokenKind</a> K7 = tok::NUM_TOKENS,</div>
+<div class="line"><a name="l00253"></a><span class="lineno">  253</span>                <a class="code" href="namespaceclang_1_1tok.html#aca39774690bea476816dc56565cb7cd5" title="Provides a simple uniform namespace for tokens from all C languages.">tok::TokenKind</a> K8 = tok::NUM_TOKENS,</div>
+<div class="line"><a name="l00254"></a><span class="lineno">  254</span>                <a class="code" href="namespaceclang_1_1tok.html#aca39774690bea476816dc56565cb7cd5" title="Provides a simple uniform namespace for tokens from all C languages.">tok::TokenKind</a> K9 = tok::NUM_TOKENS,</div>
+<div class="line"><a name="l00255"></a><span class="lineno">  255</span>                <a class="code" href="namespaceclang_1_1tok.html#aca39774690bea476816dc56565cb7cd5" title="Provides a simple uniform namespace for tokens from all C languages.">tok::TokenKind</a> K10 = tok::NUM_TOKENS,</div>
+<div class="line"><a name="l00256"></a><span class="lineno">  256</span>                <a class="code" href="namespaceclang_1_1tok.html#aca39774690bea476816dc56565cb7cd5" title="Provides a simple uniform namespace for tokens from all C languages.">tok::TokenKind</a> K11 = tok::NUM_TOKENS,</div>
+<div class="line"><a name="l00257"></a><span class="lineno">  257</span>                <a class="code" href="namespaceclang_1_1tok.html#aca39774690bea476816dc56565cb7cd5" title="Provides a simple uniform namespace for tokens from all C languages.">tok::TokenKind</a> K12 = tok::NUM_TOKENS)<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00258"></a><span class="lineno">  258</span>     <span class="keywordflow">return</span> <a class="code" href="structclang_1_1format_1_1FormatToken.html#a5902dd2b3abaad59721ec364ee50bcad">is</a>(K1) || <a class="code" href="structclang_1_1format_1_1FormatToken.html#a5902dd2b3abaad59721ec364ee50bcad">is</a>(K2) || <a class="code" href="structclang_1_1format_1_1FormatToken.html#a5902dd2b3abaad59721ec364ee50bcad">is</a>(K3) || <a class="code" href="structclang_1_1format_1_1FormatToken.html#a5902dd2b3abaad59721ec364ee50bcad">is</a>(K4) || <a class="code" href="structclang_1_1format_1_1FormatToken.html#a5902dd2b3abaad59721ec364ee50bcad">is</a>(K5) || <a class="code" href="structclang_1_1format_1_1FormatToken.html#a5902dd2b3abaad59721ec364ee50bcad">is</a>(K6) || <a class="code" href="structclang_1_1format_1_1FormatToken.html#a5902dd2b3abaad59721ec364ee50bcad">is</a>(K7) ||</div>
+<div class="line"><a name="l00259"></a><span class="lineno">  259</span>            <a class="code" href="structclang_1_1format_1_1FormatToken.html#a5902dd2b3abaad59721ec364ee50bcad">is</a>(K8) || <a class="code" href="structclang_1_1format_1_1FormatToken.html#a5902dd2b3abaad59721ec364ee50bcad">is</a>(K9) || <a class="code" href="structclang_1_1format_1_1FormatToken.html#a5902dd2b3abaad59721ec364ee50bcad">is</a>(K10) || <a class="code" href="structclang_1_1format_1_1FormatToken.html#a5902dd2b3abaad59721ec364ee50bcad">is</a>(K11) || <a class="code" href="structclang_1_1format_1_1FormatToken.html#a5902dd2b3abaad59721ec364ee50bcad">is</a>(K12);</div>
+<div class="line"><a name="l00260"></a><span class="lineno">  260</span>   }</div>
+<div class="line"><a name="l00261"></a><span class="lineno">  261</span> </div>
+<div class="line"><a name="l00262"></a><span class="lineno"><a class="code" href="structclang_1_1format_1_1FormatToken.html#a70cb2af212cf1462b3e533de7867fa51">  262</a></span>   <span class="keywordtype">bool</span> <a class="code" href="structclang_1_1format_1_1FormatToken.html#a70cb2af212cf1462b3e533de7867fa51">isNot</a>(<a class="code" href="namespaceclang_1_1tok.html#aca39774690bea476816dc56565cb7cd5" title="Provides a simple uniform namespace for tokens from all C languages.">tok::TokenKind</a> <a class="code" href="ChrootChecker_8cpp.html#aa10c9e8951b8ccf714a59ec321bdac5b">Kind</a>)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="structclang_1_1format_1_1FormatToken.html#ad5faf26454fb42c93ed4fe3757cb4481" title="The Token.">Tok</a>.<a class="code" href="classclang_1_1Token.html#add9ef521a5de741af9c573525b71cb73">isNot</a>(Kind); }</div>
+<div class="line"><a name="l00263"></a><span class="lineno">  263</span> </div>
+<div class="line"><a name="l00264"></a><span class="lineno"><a class="code" href="structclang_1_1format_1_1FormatToken.html#a41acec7fe9262aed6bf19393280b3e0e">  264</a></span>   <span class="keywordtype">bool</span> <a class="code" href="structclang_1_1format_1_1FormatToken.html#a41acec7fe9262aed6bf19393280b3e0e">isObjCAtKeyword</a>(<a class="code" href="namespaceclang_1_1tok.html#a8bd1e86849bee8ef3fed043919c0a0e8" title="Provides a namespace for Objective-C keywords which start with an '@'.">tok::ObjCKeywordKind</a> <a class="code" href="ChrootChecker_8cpp.html#aa10c9e8951b8ccf714a59ec321bdac5b">Kind</a>)<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00265"></a><span class="lineno">  265</span>     <span class="keywordflow">return</span> <a class="code" href="structclang_1_1format_1_1FormatToken.html#ad5faf26454fb42c93ed4fe3757cb4481" title="The Token.">Tok</a>.<a class="code" href="classclang_1_1Token.html#a5761d2afabf61a167722a8d2ac7a9f51" title="Return true if we have an ObjC keyword identifier.">isObjCAtKeyword</a>(Kind);</div>
+<div class="line"><a name="l00266"></a><span class="lineno">  266</span>   }</div>
+<div class="line"><a name="l00267"></a><span class="lineno">  267</span> </div>
+<div class="line"><a name="l00268"></a><span class="lineno"><a class="code" href="structclang_1_1format_1_1FormatToken.html#ada8a3c11fbb9918fe8054cd93839bd36">  268</a></span>   <span class="keywordtype">bool</span> <a class="code" href="structclang_1_1format_1_1FormatToken.html#ada8a3c11fbb9918fe8054cd93839bd36">isAccessSpecifier</a>(<span class="keywordtype">bool</span> ColonRequired = <span class="keyword">true</span>)<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00269"></a><span class="lineno">  269</span>     <span class="keywordflow">return</span> <a class="code" href="structclang_1_1format_1_1FormatToken.html#afa3b82627c967554b96c7926050e5717">isOneOf</a>(tok::kw_public, tok::kw_protected, tok::kw_private) &&</div>
+<div class="line"><a name="l00270"></a><span class="lineno">  270</span>            (!ColonRequired || (<a class="code" href="structclang_1_1format_1_1FormatToken.html#a69a581e676a2af19891855ab81e0a0c6">Next</a> && <a class="code" href="structclang_1_1format_1_1FormatToken.html#a69a581e676a2af19891855ab81e0a0c6">Next</a>-><a class="code" href="structclang_1_1format_1_1FormatToken.html#a5902dd2b3abaad59721ec364ee50bcad">is</a>(tok::colon)));</div>
+<div class="line"><a name="l00271"></a><span class="lineno">  271</span>   }</div>
+<div class="line"><a name="l00272"></a><span class="lineno">  272</span> </div>
+<div class="line"><a name="l00273"></a><span class="lineno"><a class="code" href="structclang_1_1format_1_1FormatToken.html#a9c8519cfc70ee4a36fc145a288f720b7">  273</a></span>   <span class="keywordtype">bool</span> <a class="code" href="structclang_1_1format_1_1FormatToken.html#a9c8519cfc70ee4a36fc145a288f720b7">isObjCAccessSpecifier</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00274"></a><span class="lineno">  274</span>     <span class="keywordflow">return</span> <a class="code" href="structclang_1_1format_1_1FormatToken.html#a5902dd2b3abaad59721ec364ee50bcad">is</a>(tok::at) && <a class="code" href="structclang_1_1format_1_1FormatToken.html#a69a581e676a2af19891855ab81e0a0c6">Next</a> && (<a class="code" href="structclang_1_1format_1_1FormatToken.html#a69a581e676a2af19891855ab81e0a0c6">Next</a>-><a class="code" href="structclang_1_1format_1_1FormatToken.html#a41acec7fe9262aed6bf19393280b3e0e">isObjCAtKeyword</a>(tok::objc_public) ||</div>
+<div class="line"><a name="l00275"></a><span class="lineno">  275</span>                                    <a class="code" href="structclang_1_1format_1_1FormatToken.html#a69a581e676a2af19891855ab81e0a0c6">Next</a>-><a class="code" href="structclang_1_1format_1_1FormatToken.html#a41acec7fe9262aed6bf19393280b3e0e">isObjCAtKeyword</a>(tok::objc_protected) ||</div>
+<div class="line"><a name="l00276"></a><span class="lineno">  276</span>                                    <a class="code" href="structclang_1_1format_1_1FormatToken.html#a69a581e676a2af19891855ab81e0a0c6">Next</a>-><a class="code" href="structclang_1_1format_1_1FormatToken.html#a41acec7fe9262aed6bf19393280b3e0e">isObjCAtKeyword</a>(tok::objc_package) ||</div>
+<div class="line"><a name="l00277"></a><span class="lineno">  277</span>                                    <a class="code" href="structclang_1_1format_1_1FormatToken.html#a69a581e676a2af19891855ab81e0a0c6">Next</a>-><a class="code" href="structclang_1_1format_1_1FormatToken.html#a41acec7fe9262aed6bf19393280b3e0e">isObjCAtKeyword</a>(tok::objc_private));</div>
+<div class="line"><a name="l00278"></a><span class="lineno">  278</span>   }</div>
+<div class="line"><a name="l00279"></a><span class="lineno">  279</span> <span class="comment"></span></div>
+<div class="line"><a name="l00280"></a><span class="lineno">  280</span> <span class="comment">  /// \brief Returns whether \p Tok is ([{ or a template opening <.</span></div>
+<div class="line"><a name="l00281"></a><span class="lineno"><a class="code" href="structclang_1_1format_1_1FormatToken.html#a79d0d51105d04be9c8707673942ad848">  281</a></span> <span class="comment"></span>  <span class="keywordtype">bool</span> <a class="code" href="structclang_1_1format_1_1FormatToken.html#a79d0d51105d04be9c8707673942ad848" title="Returns whether Tok is ([{ or a template opening <.">opensScope</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00282"></a><span class="lineno">  282</span>     <span class="keywordflow">return</span> <a class="code" href="structclang_1_1format_1_1FormatToken.html#afa3b82627c967554b96c7926050e5717">isOneOf</a>(tok::l_paren, tok::l_brace, tok::l_square) ||</div>
+<div class="line"><a name="l00283"></a><span class="lineno">  283</span>            <a class="code" href="classclang_1_1Type.html">Type</a> == <a class="code" href="namespaceclang_1_1format.html#a41859d19e0a15b9356d655e8c11d8430a34a613aee8d51353e36c166d3b674db6">TT_TemplateOpener</a>;</div>
+<div class="line"><a name="l00284"></a><span class="lineno">  284</span>   }<span class="comment"></span></div>
+<div class="line"><a name="l00285"></a><span class="lineno">  285</span> <span class="comment">  /// \brief Returns whether \p Tok is )]} or a template closing >.</span></div>
+<div class="line"><a name="l00286"></a><span class="lineno"><a class="code" href="structclang_1_1format_1_1FormatToken.html#ae2c64a150bfee354e7ff1263649e7c62">  286</a></span> <span class="comment"></span>  <span class="keywordtype">bool</span> <a class="code" href="structclang_1_1format_1_1FormatToken.html#ae2c64a150bfee354e7ff1263649e7c62" title="Returns whether Tok is )]} or a template closing >.">closesScope</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00287"></a><span class="lineno">  287</span>     <span class="keywordflow">return</span> <a class="code" href="structclang_1_1format_1_1FormatToken.html#afa3b82627c967554b96c7926050e5717">isOneOf</a>(tok::r_paren, tok::r_brace, tok::r_square) ||</div>
+<div class="line"><a name="l00288"></a><span class="lineno">  288</span>            <a class="code" href="classclang_1_1Type.html">Type</a> == <a class="code" href="namespaceclang_1_1format.html#a41859d19e0a15b9356d655e8c11d8430ae0f5f7054e11f208cdde909bce37ab92">TT_TemplateCloser</a>;</div>
+<div class="line"><a name="l00289"></a><span class="lineno">  289</span>   }</div>
+<div class="line"><a name="l00290"></a><span class="lineno">  290</span> <span class="comment"></span></div>
+<div class="line"><a name="l00291"></a><span class="lineno">  291</span> <span class="comment">  /// \brief Returns \c true if this is a "." or "->" accessing a member.</span></div>
+<div class="line"><a name="l00292"></a><span class="lineno"><a class="code" href="structclang_1_1format_1_1FormatToken.html#afb165bbfa3bd86b014bc6975c2723afc">  292</a></span> <span class="comment"></span>  <span class="keywordtype">bool</span> <a class="code" href="structclang_1_1format_1_1FormatToken.html#afb165bbfa3bd86b014bc6975c2723afc" title="Returns true if this is a "." or "->" accessing a member.">isMemberAccess</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00293"></a><span class="lineno">  293</span>     <span class="keywordflow">return</span> <a class="code" href="structclang_1_1format_1_1FormatToken.html#afa3b82627c967554b96c7926050e5717">isOneOf</a>(tok::arrow, tok::period) &&</div>
+<div class="line"><a name="l00294"></a><span class="lineno">  294</span>            <a class="code" href="classclang_1_1Type.html">Type</a> != <a class="code" href="namespaceclang_1_1format.html#a41859d19e0a15b9356d655e8c11d8430af3ff69cf1759e24f4f7d8f3c5ca01d69">TT_DesignatedInitializerPeriod</a>;</div>
+<div class="line"><a name="l00295"></a><span class="lineno">  295</span>   }</div>
+<div class="line"><a name="l00296"></a><span class="lineno">  296</span> </div>
+<div class="line"><a name="l00297"></a><span class="lineno"><a class="code" href="structclang_1_1format_1_1FormatToken.html#a83203e20caaa10af9cfffe54b854612b">  297</a></span>   <span class="keywordtype">bool</span> <a class="code" href="structclang_1_1format_1_1FormatToken.html#a83203e20caaa10af9cfffe54b854612b">isUnaryOperator</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00298"></a><span class="lineno">  298</span>     <span class="keywordflow">switch</span> (<a class="code" href="structclang_1_1format_1_1FormatToken.html#ad5faf26454fb42c93ed4fe3757cb4481" title="The Token.">Tok</a>.<a class="code" href="classclang_1_1Token.html#a84a069f6887b650763e640eeabfeebe4">getKind</a>()) {</div>
+<div class="line"><a name="l00299"></a><span class="lineno">  299</span>     <span class="keywordflow">case</span> tok::plus:</div>
+<div class="line"><a name="l00300"></a><span class="lineno">  300</span>     <span class="keywordflow">case</span> tok::plusplus:</div>
+<div class="line"><a name="l00301"></a><span class="lineno">  301</span>     <span class="keywordflow">case</span> tok::minus:</div>
+<div class="line"><a name="l00302"></a><span class="lineno">  302</span>     <span class="keywordflow">case</span> tok::minusminus:</div>
+<div class="line"><a name="l00303"></a><span class="lineno">  303</span>     <span class="keywordflow">case</span> tok::exclaim:</div>
+<div class="line"><a name="l00304"></a><span class="lineno">  304</span>     <span class="keywordflow">case</span> tok::tilde:</div>
+<div class="line"><a name="l00305"></a><span class="lineno">  305</span>     <span class="keywordflow">case</span> tok::kw_sizeof:</div>
+<div class="line"><a name="l00306"></a><span class="lineno">  306</span>     <span class="keywordflow">case</span> tok::kw_alignof:</div>
+<div class="line"><a name="l00307"></a><span class="lineno">  307</span>       <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00308"></a><span class="lineno">  308</span>     <span class="keywordflow">default</span>:</div>
+<div class="line"><a name="l00309"></a><span class="lineno">  309</span>       <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00310"></a><span class="lineno">  310</span>     }</div>
+<div class="line"><a name="l00311"></a><span class="lineno">  311</span>   }</div>
+<div class="line"><a name="l00312"></a><span class="lineno">  312</span> </div>
+<div class="line"><a name="l00313"></a><span class="lineno"><a class="code" href="structclang_1_1format_1_1FormatToken.html#a04db72cbf2b48b8567947240570112e8">  313</a></span>   <span class="keywordtype">bool</span> <a class="code" href="structclang_1_1format_1_1FormatToken.html#a04db72cbf2b48b8567947240570112e8">isBinaryOperator</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00314"></a><span class="lineno">  314</span>     <span class="comment">// Comma is a binary operator, but does not behave as such wrt. formatting.</span></div>
+<div class="line"><a name="l00315"></a><span class="lineno">  315</span>     <span class="keywordflow">return</span> <a class="code" href="structclang_1_1format_1_1FormatToken.html#a290b3fbb5ec95d0b24b8ea1418696d78">getPrecedence</a>() > <a class="code" href="namespaceclang_1_1prec.html#a9bfbe31f4770359ea44ad42e7c7ed8ffa6d1c4fb4c0102e4d0ade0b662a8abf36">prec::Comma</a>;</div>
+<div class="line"><a name="l00316"></a><span class="lineno">  316</span>   }</div>
+<div class="line"><a name="l00317"></a><span class="lineno">  317</span> </div>
+<div class="line"><a name="l00318"></a><span class="lineno"><a class="code" href="structclang_1_1format_1_1FormatToken.html#a810285a2ad890ec1f70b823433ad9f94">  318</a></span>   <span class="keywordtype">bool</span> <a class="code" href="structclang_1_1format_1_1FormatToken.html#a810285a2ad890ec1f70b823433ad9f94">isTrailingComment</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00319"></a><span class="lineno">  319</span>     <span class="keywordflow">return</span> <a class="code" href="structclang_1_1format_1_1FormatToken.html#a5902dd2b3abaad59721ec364ee50bcad">is</a>(tok::comment) && (!<a class="code" href="structclang_1_1format_1_1FormatToken.html#a69a581e676a2af19891855ab81e0a0c6">Next</a> || <a class="code" href="structclang_1_1format_1_1FormatToken.html#a69a581e676a2af19891855ab81e0a0c6">Next</a>-><a class="code" href="structclang_1_1format_1_1FormatToken.html#a72f16c0fdd775e9545918812f2eb2b17" title="The number of newlines immediately before the Token.">NewlinesBefore</a> > 0);</div>
+<div class="line"><a name="l00320"></a><span class="lineno">  320</span>   }</div>
+<div class="line"><a name="l00321"></a><span class="lineno">  321</span> </div>
+<div class="line"><a name="l00322"></a><span class="lineno"><a class="code" href="structclang_1_1format_1_1FormatToken.html#a290b3fbb5ec95d0b24b8ea1418696d78">  322</a></span>   <a class="code" href="namespaceclang_1_1prec.html#a9bfbe31f4770359ea44ad42e7c7ed8ff">prec::Level</a> <a class="code" href="structclang_1_1format_1_1FormatToken.html#a290b3fbb5ec95d0b24b8ea1418696d78">getPrecedence</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00323"></a><span class="lineno">  323</span>     <span class="keywordflow">return</span> <a class="code" href="namespaceclang.html#aa414f649e1be6c0b862072fc39895f4c" title="Return the precedence of the specified binary operator token.">getBinOpPrecedence</a>(<a class="code" href="structclang_1_1format_1_1FormatToken.html#ad5faf26454fb42c93ed4fe3757cb4481" title="The Token.">Tok</a>.<a class="code" href="classclang_1_1Token.html#a84a069f6887b650763e640eeabfeebe4">getKind</a>(), <span class="keyword">true</span>, <span class="keyword">true</span>);</div>
+<div class="line"><a name="l00324"></a><span class="lineno">  324</span>   }</div>
+<div class="line"><a name="l00325"></a><span class="lineno">  325</span> <span class="comment"></span></div>
+<div class="line"><a name="l00326"></a><span class="lineno">  326</span> <span class="comment">  /// \brief Returns the previous token ignoring comments.</span></div>
+<div class="line"><a name="l00327"></a><span class="lineno"><a class="code" href="structclang_1_1format_1_1FormatToken.html#ad359be5e70de0e24a609d8c7018b3d1e">  327</a></span> <span class="comment"></span>  <a class="code" href="structclang_1_1format_1_1FormatToken.html" title="A wrapper around a Token storing information about the whitespace characters preceeding it...">FormatToken</a> *<a class="code" href="structclang_1_1format_1_1FormatToken.html#ad359be5e70de0e24a609d8c7018b3d1e" title="Returns the previous token ignoring comments.">getPreviousNonComment</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00328"></a><span class="lineno">  328</span>     <a class="code" href="structclang_1_1format_1_1FormatToken.html" title="A wrapper around a Token storing information about the whitespace characters preceeding it...">FormatToken</a> *<a class="code" href="structclang_1_1format_1_1FormatToken.html#ad5faf26454fb42c93ed4fe3757cb4481" title="The Token.">Tok</a> = <a class="code" href="structclang_1_1format_1_1FormatToken.html#afd2b1b6774edaba6ab37660e457e3a04">Previous</a>;</div>
+<div class="line"><a name="l00329"></a><span class="lineno">  329</span>     <span class="keywordflow">while</span> (Tok != <a class="code" href="stddef_8h.html#a070d2ce7b6bb7e5c05602aa8c308d0c4">NULL</a> && Tok-><a class="code" href="structclang_1_1format_1_1FormatToken.html#a5902dd2b3abaad59721ec364ee50bcad">is</a>(tok::comment))</div>
+<div class="line"><a name="l00330"></a><span class="lineno">  330</span>       Tok = Tok-><a class="code" href="structclang_1_1format_1_1FormatToken.html#afd2b1b6774edaba6ab37660e457e3a04">Previous</a>;</div>
+<div class="line"><a name="l00331"></a><span class="lineno">  331</span>     <span class="keywordflow">return</span> Tok;</div>
+<div class="line"><a name="l00332"></a><span class="lineno">  332</span>   }</div>
+<div class="line"><a name="l00333"></a><span class="lineno">  333</span> <span class="comment"></span></div>
+<div class="line"><a name="l00334"></a><span class="lineno">  334</span> <span class="comment">  /// \brief Returns the next token ignoring comments.</span></div>
+<div class="line"><a name="l00335"></a><span class="lineno"><a class="code" href="structclang_1_1format_1_1FormatToken.html#af553e2911fcfe2ee149a158cf2ae6bed">  335</a></span> <span class="comment"></span>  <span class="keyword">const</span> <a class="code" href="structclang_1_1format_1_1FormatToken.html" title="A wrapper around a Token storing information about the whitespace characters preceeding it...">FormatToken</a> *<a class="code" href="structclang_1_1format_1_1FormatToken.html#af553e2911fcfe2ee149a158cf2ae6bed" title="Returns the next token ignoring comments.">getNextNonComment</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00336"></a><span class="lineno">  336</span>     <span class="keyword">const</span> <a class="code" href="structclang_1_1format_1_1FormatToken.html" title="A wrapper around a Token storing information about the whitespace characters preceeding it...">FormatToken</a> *<a class="code" href="structclang_1_1format_1_1FormatToken.html#ad5faf26454fb42c93ed4fe3757cb4481" title="The Token.">Tok</a> = <a class="code" href="structclang_1_1format_1_1FormatToken.html#a69a581e676a2af19891855ab81e0a0c6">Next</a>;</div>
+<div class="line"><a name="l00337"></a><span class="lineno">  337</span>     <span class="keywordflow">while</span> (Tok != <a class="code" href="stddef_8h.html#a070d2ce7b6bb7e5c05602aa8c308d0c4">NULL</a> && Tok-><a class="code" href="structclang_1_1format_1_1FormatToken.html#a5902dd2b3abaad59721ec364ee50bcad">is</a>(tok::comment))</div>
+<div class="line"><a name="l00338"></a><span class="lineno">  338</span>       Tok = Tok-><a class="code" href="structclang_1_1format_1_1FormatToken.html#a69a581e676a2af19891855ab81e0a0c6">Next</a>;</div>
+<div class="line"><a name="l00339"></a><span class="lineno">  339</span>     <span class="keywordflow">return</span> Tok;</div>
+<div class="line"><a name="l00340"></a><span class="lineno">  340</span>   }</div>
+<div class="line"><a name="l00341"></a><span class="lineno">  341</span> <span class="comment"></span></div>
+<div class="line"><a name="l00342"></a><span class="lineno">  342</span> <span class="comment">  /// \brief Returns \c true if this tokens starts a block-type list, i.e. a</span></div>
+<div class="line"><a name="l00343"></a><span class="lineno">  343</span> <span class="comment">  /// list that should be indented with a block indent.</span></div>
+<div class="line"><a name="l00344"></a><span class="lineno"><a class="code" href="structclang_1_1format_1_1FormatToken.html#a88ca9dbfdeec7443cb7357a4ba3b4a85">  344</a></span> <span class="comment"></span>  <span class="keywordtype">bool</span> <a class="code" href="structclang_1_1format_1_1FormatToken.html#a88ca9dbfdeec7443cb7357a4ba3b4a85" title="Returns true if this tokens starts a block-type list, i.e. a list that should be indented with a bloc...">opensBlockTypeList</a>(<span class="keyword">const</span> <a class="code" href="structclang_1_1format_1_1FormatStyle.html" title="The FormatStyle is used to configure the formatting to follow specific guidelines.">FormatStyle</a> &<a class="code" href="Format_8cpp.html#abc577d80f3639e98f6457dd375101eab">Style</a>)<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00345"></a><span class="lineno">  345</span>     <span class="keywordflow">return</span> <a class="code" href="classclang_1_1Type.html">Type</a> == <a class="code" href="namespaceclang_1_1format.html#a41859d19e0a15b9356d655e8c11d8430a2e3762edd81fd8c2e1d9e783484df5b8">TT_ArrayInitializerLSquare</a> ||</div>
+<div class="line"><a name="l00346"></a><span class="lineno">  346</span>            (<a class="code" href="structclang_1_1format_1_1FormatToken.html#a5902dd2b3abaad59721ec364ee50bcad">is</a>(tok::l_brace) &&</div>
+<div class="line"><a name="l00347"></a><span class="lineno">  347</span>             (<a class="code" href="structclang_1_1format_1_1FormatToken.html#a8535587de7dd43ab56e32b88279ea917" title="Contains the kind of block if this token is a brace.">BlockKind</a> == <a class="code" href="namespaceclang_1_1format.html#af3efd684dd7c9ad4cd48fd4d28ecaaeaac0cd3adbed48a71039a2855df3fe8036">BK_Block</a> || <a class="code" href="classclang_1_1Type.html">Type</a> == <a class="code" href="namespaceclang_1_1format.html#a41859d19e0a15b9356d655e8c11d8430a1539e9e36f093ea30703159731670a0d">TT_DictLiteral</a> ||</div>
+<div class="line"><a name="l00348"></a><span class="lineno">  348</span>              !Style.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#a082f72ed255395cea133365999de70a1" title="If true, format braced lists as best suited for C++11 braced lists.">Cpp11BracedListStyle</a>));</div>
+<div class="line"><a name="l00349"></a><span class="lineno">  349</span>   }</div>
+<div class="line"><a name="l00350"></a><span class="lineno">  350</span> <span class="comment"></span></div>
+<div class="line"><a name="l00351"></a><span class="lineno">  351</span> <span class="comment">  /// \brief Same as opensBlockTypeList, but for the closing token.</span></div>
+<div class="line"><a name="l00352"></a><span class="lineno"><a class="code" href="structclang_1_1format_1_1FormatToken.html#aa5d001972c32158a787498e77c5de6e8">  352</a></span> <span class="comment"></span>  <span class="keywordtype">bool</span> <a class="code" href="structclang_1_1format_1_1FormatToken.html#aa5d001972c32158a787498e77c5de6e8" title="Same as opensBlockTypeList, but for the closing token.">closesBlockTypeList</a>(<span class="keyword">const</span> <a class="code" href="structclang_1_1format_1_1FormatStyle.html" title="The FormatStyle is used to configure the formatting to follow specific guidelines.">FormatStyle</a> &<a class="code" href="Format_8cpp.html#abc577d80f3639e98f6457dd375101eab">Style</a>)<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00353"></a><span class="lineno">  353</span>     <span class="keywordflow">return</span> <a class="code" href="structclang_1_1format_1_1FormatToken.html#af12eecf8720255ffb8111c004ea75a93">MatchingParen</a> && <a class="code" href="structclang_1_1format_1_1FormatToken.html#af12eecf8720255ffb8111c004ea75a93">MatchingParen</a>-><a class="code" href="structclang_1_1format_1_1FormatToken.html#a88ca9dbfdeec7443cb7357a4ba3b4a85" title="Returns true if this tokens starts a block-type list, i.e. a list that should be indented with a bloc...">opensBlockTypeList</a>(Style);</div>
+<div class="line"><a name="l00354"></a><span class="lineno">  354</span>   }</div>
+<div class="line"><a name="l00355"></a><span class="lineno">  355</span> </div>
+<div class="line"><a name="l00356"></a><span class="lineno"><a class="code" href="structclang_1_1format_1_1FormatToken.html#af12eecf8720255ffb8111c004ea75a93">  356</a></span>   <a class="code" href="structclang_1_1format_1_1FormatToken.html" title="A wrapper around a Token storing information about the whitespace characters preceeding it...">FormatToken</a> *<a class="code" href="structclang_1_1format_1_1FormatToken.html#af12eecf8720255ffb8111c004ea75a93">MatchingParen</a>;</div>
+<div class="line"><a name="l00357"></a><span class="lineno">  357</span> </div>
+<div class="line"><a name="l00358"></a><span class="lineno"><a class="code" href="structclang_1_1format_1_1FormatToken.html#afd2b1b6774edaba6ab37660e457e3a04">  358</a></span>   <a class="code" href="structclang_1_1format_1_1FormatToken.html" title="A wrapper around a Token storing information about the whitespace characters preceeding it...">FormatToken</a> *<a class="code" href="structclang_1_1format_1_1FormatToken.html#afd2b1b6774edaba6ab37660e457e3a04">Previous</a>;</div>
+<div class="line"><a name="l00359"></a><span class="lineno"><a class="code" href="structclang_1_1format_1_1FormatToken.html#a69a581e676a2af19891855ab81e0a0c6">  359</a></span>   <a class="code" href="structclang_1_1format_1_1FormatToken.html" title="A wrapper around a Token storing information about the whitespace characters preceeding it...">FormatToken</a> *<a class="code" href="structclang_1_1format_1_1FormatToken.html#a69a581e676a2af19891855ab81e0a0c6">Next</a>;</div>
+<div class="line"><a name="l00360"></a><span class="lineno">  360</span> </div>
+<div class="line"><a name="l00361"></a><span class="lineno"><a class="code" href="structclang_1_1format_1_1FormatToken.html#a169148f6ef24660797b7daa1a6c7113e">  361</a></span>   <a class="code" href="classllvm_1_1SmallVector.html">SmallVector<AnnotatedLine *, 1></a> <a class="code" href="structclang_1_1format_1_1FormatToken.html#a169148f6ef24660797b7daa1a6c7113e">Children</a>;</div>
+<div class="line"><a name="l00362"></a><span class="lineno">  362</span> <span class="comment"></span></div>
+<div class="line"><a name="l00363"></a><span class="lineno">  363</span> <span class="comment">  /// \brief Stores the formatting decision for the token once it was made.</span></div>
+<div class="line"><a name="l00364"></a><span class="lineno"><a class="code" href="structclang_1_1format_1_1FormatToken.html#a009e204f96f46355e68a38a84eeb0f69">  364</a></span> <span class="comment"></span>  <a class="code" href="namespaceclang_1_1format.html#a3409598f12699626b6997dfdd18c6929">FormatDecision</a> <a class="code" href="structclang_1_1format_1_1FormatToken.html#a009e204f96f46355e68a38a84eeb0f69" title="Stores the formatting decision for the token once it was made.">Decision</a>;</div>
+<div class="line"><a name="l00365"></a><span class="lineno">  365</span> <span class="comment"></span></div>
+<div class="line"><a name="l00366"></a><span class="lineno">  366</span> <span class="comment">  /// \brief If \c true, this token has been fully formatted (indented and</span></div>
+<div class="line"><a name="l00367"></a><span class="lineno">  367</span> <span class="comment">  /// potentially re-formatted inside), and we do not allow further formatting</span></div>
+<div class="line"><a name="l00368"></a><span class="lineno">  368</span> <span class="comment">  /// changes.</span></div>
+<div class="line"><a name="l00369"></a><span class="lineno"><a class="code" href="structclang_1_1format_1_1FormatToken.html#ae83a4324a22c9e4a4f589c7bb87d6f49">  369</a></span> <span class="comment"></span>  <span class="keywordtype">bool</span> <a class="code" href="structclang_1_1format_1_1FormatToken.html#ae83a4324a22c9e4a4f589c7bb87d6f49" title="If true, this token has been fully formatted (indented and potentially re-formatted inside)...">Finalized</a>;</div>
+<div class="line"><a name="l00370"></a><span class="lineno">  370</span> </div>
+<div class="line"><a name="l00371"></a><span class="lineno">  371</span> <span class="keyword">private</span>:</div>
+<div class="line"><a name="l00372"></a><span class="lineno">  372</span>   <span class="comment">// Disallow copying.</span></div>
+<div class="line"><a name="l00373"></a><span class="lineno">  373</span>   <a class="code" href="structclang_1_1format_1_1FormatToken.html#ac23dc39b2fee0d4a1c8c83bf55b6123b">FormatToken</a>(<span class="keyword">const</span> <a class="code" href="structclang_1_1format_1_1FormatToken.html" title="A wrapper around a Token storing information about the whitespace characters preceeding it...">FormatToken</a> &) LLVM_DELETED_FUNCTION;</div>
+<div class="line"><a name="l00374"></a><span class="lineno">  374</span>   <span class="keywordtype">void</span> operator=(const <a class="code" href="structclang_1_1format_1_1FormatToken.html" title="A wrapper around a Token storing information about the whitespace characters preceeding it...">FormatToken</a> &) LLVM_DELETED_FUNCTION;</div>
+<div class="line"><a name="l00375"></a><span class="lineno">  375</span> };</div>
+<div class="line"><a name="l00376"></a><span class="lineno">  376</span> </div>
+<div class="line"><a name="l00377"></a><span class="lineno">  377</span> class <a class="code" href="classclang_1_1format_1_1ContinuationIndenter.html">ContinuationIndenter</a>;</div>
+<div class="line"><a name="l00378"></a><span class="lineno">  378</span> struct <a class="code" href="structclang_1_1format_1_1LineState.html" title="The current state when indenting a unwrapped line.">LineState</a>;</div>
+<div class="line"><a name="l00379"></a><span class="lineno">  379</span> </div>
+<div class="line"><a name="l00380"></a><span class="lineno"><a class="code" href="classclang_1_1format_1_1TokenRole.html">  380</a></span> class <a class="code" href="classclang_1_1format_1_1TokenRole.html">TokenRole</a> {</div>
+<div class="line"><a name="l00381"></a><span class="lineno">  381</span> <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00382"></a><span class="lineno"><a class="code" href="classclang_1_1format_1_1TokenRole.html#acc9bd01b6dc2c92316db0a8bd4107f17">  382</a></span>   <a class="code" href="classclang_1_1format_1_1TokenRole.html#acc9bd01b6dc2c92316db0a8bd4107f17">TokenRole</a>(<span class="keyword">const</span> <a class="code" href="structclang_1_1format_1_1FormatStyle.html" title="The FormatStyle is used to configure the formatting to follow specific guidelines.">FormatStyle</a> &<a class="code" href="Format_8cpp.html#abc577d80f3639e98f6457dd375101eab">Style</a>) : Style(Style) {}</div>
+<div class="line"><a name="l00383"></a><span class="lineno">  383</span>   <span class="keyword">virtual</span> ~TokenRole();</div>
+<div class="line"><a name="l00384"></a><span class="lineno">  384</span> <span class="comment"></span></div>
+<div class="line"><a name="l00385"></a><span class="lineno">  385</span> <span class="comment">  /// \brief After the \c TokenAnnotator has finished annotating all the tokens,</span></div>
+<div class="line"><a name="l00386"></a><span class="lineno">  386</span> <span class="comment">  /// this function precomputes required information for formatting.</span></div>
+<div class="line"><a name="l00387"></a><span class="lineno">  387</span> <span class="comment"></span>  <span class="keyword">virtual</span> <span class="keywordtype">void</span> precomputeFormattingInfos(<span class="keyword">const</span> <a class="code" href="structclang_1_1format_1_1FormatToken.html" title="A wrapper around a Token storing information about the whitespace characters preceeding it...">FormatToken</a> *<a class="code" href="classclang_1_1Token.html">Token</a>);</div>
+<div class="line"><a name="l00388"></a><span class="lineno">  388</span> <span class="comment"></span></div>
+<div class="line"><a name="l00389"></a><span class="lineno">  389</span> <span class="comment">  /// \brief Apply the special formatting that the given role demands.</span></div>
+<div class="line"><a name="l00390"></a><span class="lineno">  390</span> <span class="comment">  ///</span></div>
+<div class="line"><a name="l00391"></a><span class="lineno">  391</span> <span class="comment">  /// Continues formatting from \p State leaving indentation to \p Indenter and</span></div>
+<div class="line"><a name="l00392"></a><span class="lineno">  392</span> <span class="comment">  /// returns the total penalty that this formatting incurs.</span></div>
+<div class="line"><a name="l00393"></a><span class="lineno"><a class="code" href="classclang_1_1format_1_1TokenRole.html#afbeecd5b0a727cbdce723b178a9ea1ae">  393</a></span> <span class="comment"></span>  <span class="keyword">virtual</span> <span class="keywordtype">unsigned</span> format(LineState &<a class="code" href="Format_8cpp.html#a83e9e4ff6cb05dbdf72ab2a01aa289c0">State</a>, ContinuationIndenter *<a class="code" href="Format_8cpp.html#a397c3fbc45eefcefc8736ca29eb8d0ea">Indenter</a>,</div>
+<div class="line"><a name="l00394"></a><span class="lineno">  394</span>                           <span class="keywordtype">bool</span> DryRun) {</div>
+<div class="line"><a name="l00395"></a><span class="lineno">  395</span>     <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00396"></a><span class="lineno">  396</span>   }</div>
+<div class="line"><a name="l00397"></a><span class="lineno">  397</span> <span class="comment"></span></div>
+<div class="line"><a name="l00398"></a><span class="lineno">  398</span> <span class="comment">  /// \brief Notifies the \c Role that a comma was found.</span></div>
+<div class="line"><a name="l00399"></a><span class="lineno"><a class="code" href="classclang_1_1format_1_1TokenRole.html#a931ec5bfb9c1f5b80f6ebd53e82497e6">  399</a></span> <span class="comment"></span>  <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classclang_1_1format_1_1TokenRole.html#a931ec5bfb9c1f5b80f6ebd53e82497e6" title="Notifies the Role that a comma was found.">CommaFound</a>(<span class="keyword">const</span> <a class="code" href="structclang_1_1format_1_1FormatToken.html" title="A wrapper around a Token storing information about the whitespace characters preceeding it...">FormatToken</a> *<a class="code" href="classclang_1_1Token.html">Token</a>) {}</div>
+<div class="line"><a name="l00400"></a><span class="lineno">  400</span> </div>
+<div class="line"><a name="l00401"></a><span class="lineno">  401</span> <span class="keyword">protected</span>:</div>
+<div class="line"><a name="l00402"></a><span class="lineno"><a class="code" href="classclang_1_1format_1_1TokenRole.html#a5924b5484f0f8f27c7fcf43eb89231b1">  402</a></span>   <span class="keyword">const</span> <a class="code" href="structclang_1_1format_1_1FormatStyle.html" title="The FormatStyle is used to configure the formatting to follow specific guidelines.">FormatStyle</a> &<a class="code" href="classclang_1_1format_1_1TokenRole.html#a5924b5484f0f8f27c7fcf43eb89231b1">Style</a>;</div>
+<div class="line"><a name="l00403"></a><span class="lineno">  403</span> };</div>
+<div class="line"><a name="l00404"></a><span class="lineno">  404</span> </div>
+<div class="line"><a name="l00405"></a><span class="lineno"><a class="code" href="classclang_1_1format_1_1CommaSeparatedList.html">  405</a></span> <span class="keyword">class </span><a class="code" href="classclang_1_1format_1_1CommaSeparatedList.html">CommaSeparatedList</a> : <span class="keyword">public</span> <a class="code" href="classclang_1_1format_1_1TokenRole.html">TokenRole</a> {</div>
+<div class="line"><a name="l00406"></a><span class="lineno">  406</span> <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00407"></a><span class="lineno"><a class="code" href="classclang_1_1format_1_1CommaSeparatedList.html#a8ba40d75a547eead50a34b00672322ce">  407</a></span>   <a class="code" href="classclang_1_1format_1_1CommaSeparatedList.html#a8ba40d75a547eead50a34b00672322ce">CommaSeparatedList</a>(<span class="keyword">const</span> <a class="code" href="structclang_1_1format_1_1FormatStyle.html" title="The FormatStyle is used to configure the formatting to follow specific guidelines.">FormatStyle</a> &<a class="code" href="Format_8cpp.html#abc577d80f3639e98f6457dd375101eab">Style</a>) : <a class="code" href="classclang_1_1format_1_1TokenRole.html">TokenRole</a>(Style) {}</div>
+<div class="line"><a name="l00408"></a><span class="lineno">  408</span> </div>
+<div class="line"><a name="l00409"></a><span class="lineno">  409</span>   <span class="keyword">virtual</span> <span class="keywordtype">void</span> precomputeFormattingInfos(<span class="keyword">const</span> <a class="code" href="structclang_1_1format_1_1FormatToken.html" title="A wrapper around a Token storing information about the whitespace characters preceeding it...">FormatToken</a> *<a class="code" href="classclang_1_1Token.html">Token</a>);</div>
+<div class="line"><a name="l00410"></a><span class="lineno">  410</span> </div>
+<div class="line"><a name="l00411"></a><span class="lineno">  411</span>   <span class="keyword">virtual</span> <span class="keywordtype">unsigned</span> format(<a class="code" href="structclang_1_1format_1_1LineState.html" title="The current state when indenting a unwrapped line.">LineState</a> &<a class="code" href="Format_8cpp.html#a83e9e4ff6cb05dbdf72ab2a01aa289c0">State</a>, <a class="code" href="classclang_1_1format_1_1ContinuationIndenter.html">ContinuationIndenter</a> *<a class="code" href="Format_8cpp.html#a397c3fbc45eefcefc8736ca29eb8d0ea">Indenter</a>,</div>
+<div class="line"><a name="l00412"></a><span class="lineno">  412</span>                           <span class="keywordtype">bool</span> DryRun);</div>
+<div class="line"><a name="l00413"></a><span class="lineno">  413</span> <span class="comment"></span></div>
+<div class="line"><a name="l00414"></a><span class="lineno">  414</span> <span class="comment">  /// \brief Adds \p Token as the next comma to the \c CommaSeparated list.</span></div>
+<div class="line"><a name="l00415"></a><span class="lineno"><a class="code" href="classclang_1_1format_1_1CommaSeparatedList.html#a807896655b36398ad85ffd0f976b8e5f">  415</a></span> <span class="comment"></span>  <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classclang_1_1format_1_1CommaSeparatedList.html#a807896655b36398ad85ffd0f976b8e5f" title="Adds Token as the next comma to the CommaSeparated list.">CommaFound</a>(<span class="keyword">const</span> <a class="code" href="structclang_1_1format_1_1FormatToken.html" title="A wrapper around a Token storing information about the whitespace characters preceeding it...">FormatToken</a> *<a class="code" href="classclang_1_1Token.html">Token</a>) { Commas.push_back(Token); }</div>
+<div class="line"><a name="l00416"></a><span class="lineno">  416</span> </div>
+<div class="line"><a name="l00417"></a><span class="lineno">  417</span> <span class="keyword">private</span>:<span class="comment"></span></div>
+<div class="line"><a name="l00418"></a><span class="lineno">  418</span> <span class="comment">  /// \brief A struct that holds information on how to format a given list with</span></div>
+<div class="line"><a name="l00419"></a><span class="lineno">  419</span> <span class="comment">  /// a specific number of columns.</span></div>
+<div class="line"><a name="l00420"></a><span class="lineno">  420</span> <span class="comment"></span>  <span class="keyword">struct </span>ColumnFormat {<span class="comment"></span></div>
+<div class="line"><a name="l00421"></a><span class="lineno">  421</span> <span class="comment">    /// \brief The number of columns to use.</span></div>
+<div class="line"><a name="l00422"></a><span class="lineno">  422</span> <span class="comment"></span>    <span class="keywordtype">unsigned</span> Columns;</div>
+<div class="line"><a name="l00423"></a><span class="lineno">  423</span> <span class="comment"></span></div>
+<div class="line"><a name="l00424"></a><span class="lineno">  424</span> <span class="comment">    /// \brief The total width in characters.</span></div>
+<div class="line"><a name="l00425"></a><span class="lineno">  425</span> <span class="comment"></span>    <span class="keywordtype">unsigned</span> TotalWidth;</div>
+<div class="line"><a name="l00426"></a><span class="lineno">  426</span> <span class="comment"></span></div>
+<div class="line"><a name="l00427"></a><span class="lineno">  427</span> <span class="comment">    /// \brief The number of lines required for this format.</span></div>
+<div class="line"><a name="l00428"></a><span class="lineno">  428</span> <span class="comment"></span>    <span class="keywordtype">unsigned</span> LineCount;</div>
+<div class="line"><a name="l00429"></a><span class="lineno">  429</span> <span class="comment"></span></div>
+<div class="line"><a name="l00430"></a><span class="lineno">  430</span> <span class="comment">    /// \brief The size of each column in characters.</span></div>
+<div class="line"><a name="l00431"></a><span class="lineno">  431</span> <span class="comment"></span>    <a class="code" href="classllvm_1_1SmallVector.html">SmallVector<unsigned, 8></a> ColumnSizes;</div>
+<div class="line"><a name="l00432"></a><span class="lineno">  432</span>   };</div>
+<div class="line"><a name="l00433"></a><span class="lineno">  433</span> <span class="comment"></span></div>
+<div class="line"><a name="l00434"></a><span class="lineno">  434</span> <span class="comment">  /// \brief Calculate which \c ColumnFormat fits best into</span></div>
+<div class="line"><a name="l00435"></a><span class="lineno">  435</span> <span class="comment">  /// \p RemainingCharacters.</span></div>
+<div class="line"><a name="l00436"></a><span class="lineno">  436</span> <span class="comment"></span>  <span class="keyword">const</span> ColumnFormat *getColumnFormat(<span class="keywordtype">unsigned</span> RemainingCharacters) <span class="keyword">const</span>;</div>
+<div class="line"><a name="l00437"></a><span class="lineno">  437</span> <span class="comment"></span></div>
+<div class="line"><a name="l00438"></a><span class="lineno">  438</span> <span class="comment">  /// \brief The ordered \c FormatTokens making up the commas of this list.</span></div>
+<div class="line"><a name="l00439"></a><span class="lineno">  439</span> <span class="comment"></span>  <a class="code" href="classllvm_1_1SmallVector.html">SmallVector<const FormatToken *, 8></a> Commas;</div>
+<div class="line"><a name="l00440"></a><span class="lineno">  440</span> <span class="comment"></span></div>
+<div class="line"><a name="l00441"></a><span class="lineno">  441</span> <span class="comment">  /// \brief The length of each of the list's items in characters including the</span></div>
+<div class="line"><a name="l00442"></a><span class="lineno">  442</span> <span class="comment">  /// trailing comma.</span></div>
+<div class="line"><a name="l00443"></a><span class="lineno">  443</span> <span class="comment"></span>  <a class="code" href="classllvm_1_1SmallVector.html">SmallVector<unsigned, 8></a> ItemLengths;</div>
+<div class="line"><a name="l00444"></a><span class="lineno">  444</span> <span class="comment"></span></div>
+<div class="line"><a name="l00445"></a><span class="lineno">  445</span> <span class="comment">  /// \brief Precomputed formats that can be used for this list.</span></div>
+<div class="line"><a name="l00446"></a><span class="lineno">  446</span> <span class="comment"></span>  <a class="code" href="classllvm_1_1SmallVector.html">SmallVector<ColumnFormat, 4></a> Formats;</div>
+<div class="line"><a name="l00447"></a><span class="lineno">  447</span> };</div>
+<div class="line"><a name="l00448"></a><span class="lineno">  448</span> </div>
+<div class="line"><a name="l00449"></a><span class="lineno">  449</span> } <span class="comment">// namespace format</span></div>
+<div class="line"><a name="l00450"></a><span class="lineno">  450</span> } <span class="comment">// namespace clang</span></div>
+<div class="line"><a name="l00451"></a><span class="lineno">  451</span> </div>
+<div class="line"><a name="l00452"></a><span class="lineno">  452</span> <span class="preprocessor">#endif // LLVM_CLANG_FORMAT_FORMAT_TOKEN_H</span></div>
+</div><!-- fragment --></div><!-- contents -->
+<hr>
+<p class="footer">
+Generated on Mon May 12 2014 12:13:39 for r$LatestRev$ by <a href="http://www.doxygen.org">Doxygen 
+1.8.3.1</a>.</p>
+<p class="footer">
+See the <a href="http://clang.llvm.org">Main Clang Web Page</a> for more 
+information.</p>
+</body>
+</html>

Added: www-releases/trunk/3.5.1/tools/clang/docs/doxygen/html/Format_8cpp_source.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/3.5.1/tools/clang/docs/doxygen/html/Format_8cpp_source.html?rev=225843&view=auto
==============================================================================
--- www-releases/trunk/3.5.1/tools/clang/docs/doxygen/html/Format_8cpp_source.html (added)
+++ www-releases/trunk/3.5.1/tools/clang/docs/doxygen/html/Format_8cpp_source.html Tue Jan 13 16:55:20 2015
@@ -0,0 +1,1556 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<html><head>
+<meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
+<meta name="keywords" content="clang,LLVM,Low Level Virtual Machine,C,C++,doxygen,API,frontend,documentation"/>
+<meta name="description" content="C++ source code API documentation for clang."/>
+<title>clang: Format.cpp Source File</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head><body>
+<p class="title">clang API Documentation</p>
+<!-- Generated by Doxygen 1.8.3.1 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+  <div id="navrow1" class="tabs">
+    <ul class="tablist">
+      <li><a href="index.html"><span>Main Page</span></a></li>
+      <li><a href="pages.html"><span>Related Pages</span></a></li>
+      <li><a href="modules.html"><span>Modules</span></a></li>
+      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+      <li><a href="annotated.html"><span>Classes</span></a></li>
+      <li class="current"><a href="files.html"><span>Files</span></a></li>
+      <li>
+        <div id="MSearchBox" class="MSearchBoxInactive">
+        <span class="left">
+          <img id="MSearchSelect" src="search/mag_sel.png"
+               onmouseover="return searchBox.OnSearchSelectShow()"
+               onmouseout="return searchBox.OnSearchSelectHide()"
+               alt=""/>
+          <input type="text" id="MSearchField" value="Search" accesskey="S"
+               onfocus="searchBox.OnSearchFieldFocus(true)" 
+               onblur="searchBox.OnSearchFieldFocus(false)" 
+               onkeyup="searchBox.OnSearchFieldChange(event)"/>
+          </span><span class="right">
+            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+          </span>
+        </div>
+      </li>
+    </ul>
+  </div>
+  <div id="navrow2" class="tabs2">
+    <ul class="tablist">
+      <li><a href="files.html"><span>File List</span></a></li>
+      <li><a href="globals.html"><span>File Members</span></a></li>
+    </ul>
+  </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+     onmouseover="return searchBox.OnSearchSelectShow()"
+     onmouseout="return searchBox.OnSearchSelectHide()"
+     onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark"> </span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark"> </span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark"> </span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark"> </span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark"> </span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark"> </span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark"> </span>Typedefs</a><a class="SelectItem" href="javascript:void
 (0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark"> </span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark"> </span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark"> </span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark"> </span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(11)"><span class="SelectionMark"> </span>Groups</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(12)"><span class="SelectionMark"> </span>Pages</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+  <ul>
+<li class="navelem"><a class="el" href="dir_f65986501076cc710d4b9355ae3fe06d.html">clang</a></li><li class="navelem"><a class="el" href="dir_87e2a7550f83bd8cbfc92736891468fc.html">lib</a></li><li class="navelem"><a class="el" href="dir_ffab4b0006501d4be8b843d944947a1c.html">Format</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">Format.cpp</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="Format_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span> <span class="comment">//===--- Format.cpp - Format C++ code -------------------------------------===//</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span> <span class="comment">//</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno">    3</span> <span class="comment">//                     The LLVM Compiler Infrastructure</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span> <span class="comment">//</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span> <span class="comment">// This file is distributed under the University of Illinois Open Source</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span> <span class="comment">// License. See LICENSE.TXT for details.</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span> <span class="comment">//</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span> <span class="comment">//===----------------------------------------------------------------------===//</span><span class="comment"></span></div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span> <span class="comment">///</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span> <span class="comment">/// \file</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span> <span class="comment">/// \brief This file implements functions declared in Format.h. This will be</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span> <span class="comment">/// split into separate files as we go.</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span> <span class="comment">///</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span> <span class="comment"></span><span class="comment">//===----------------------------------------------------------------------===//</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span> </div>
+<div class="line"><a name="l00016"></a><span class="lineno"><a class="code" href="Format_8cpp.html#ad78e062f62e0d6e453941fb4ca843e4d">   16</a></span> <span class="preprocessor">#define DEBUG_TYPE "format-formatter"</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span> <span class="preprocessor"></span></div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span> <span class="preprocessor">#include "<a class="code" href="ContinuationIndenter_8h.html" title="This file implements an indenter that manages the indentation of continuations.">ContinuationIndenter.h</a>"</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span> <span class="preprocessor">#include "<a class="code" href="TokenAnnotator_8h.html" title="This file implements a token annotator, i.e. creates AnnotatedTokens out of FormatTokens with require...">TokenAnnotator.h</a>"</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span> <span class="preprocessor">#include "<a class="code" href="UnwrappedLineParser_8h.html" title="This file contains the declaration of the UnwrappedLineParser, which turns a stream of tokens into Un...">UnwrappedLineParser.h</a>"</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno">   21</span> <span class="preprocessor">#include "<a class="code" href="WhitespaceManager_8h.html" title="WhitespaceManager class manages whitespace around tokens and their replacements.">WhitespaceManager.h</a>"</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno">   22</span> <span class="preprocessor">#include "<a class="code" href="Diagnostic_8h.html" title="Defines the Diagnostic-related interfaces.">clang/Basic/Diagnostic.h</a>"</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno">   23</span> <span class="preprocessor">#include "<a class="code" href="SourceManager_8h.html" title="Defines the SourceManager interface.">clang/Basic/SourceManager.h</a>"</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno">   24</span> <span class="preprocessor">#include "<a class="code" href="Format_8h.html">clang/Format/Format.h</a>"</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno">   25</span> <span class="preprocessor">#include "<a class="code" href="Lexer_8h.html">clang/Lex/Lexer.h</a>"</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno">   26</span> <span class="preprocessor">#include "llvm/ADT/STLExtras.h"</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno">   27</span> <span class="preprocessor">#include "llvm/Support/Allocator.h"</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno">   28</span> <span class="preprocessor">#include "llvm/Support/Debug.h"</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno">   29</span> <span class="preprocessor">#include "llvm/Support/YAMLTraits.h"</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno">   30</span> <span class="preprocessor">#include "llvm/Support/Path.h"</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno">   31</span> <span class="preprocessor">#include <queue></span></div>
+<div class="line"><a name="l00032"></a><span class="lineno">   32</span> <span class="preprocessor">#include <string></span></div>
+<div class="line"><a name="l00033"></a><span class="lineno">   33</span> </div>
+<div class="line"><a name="l00034"></a><span class="lineno">   34</span> <span class="keyword">namespace </span>llvm {</div>
+<div class="line"><a name="l00035"></a><span class="lineno">   35</span> <span class="keyword">namespace </span>yaml {</div>
+<div class="line"><a name="l00036"></a><span class="lineno">   36</span> <span class="keyword">template</span> <></div>
+<div class="line"><a name="l00037"></a><span class="lineno"><a class="code" href="structllvm_1_1yaml_1_1ScalarEnumerationTraits_3_01clang_1_1format_1_1FormatStyle_1_1LanguageStandard_01_4.html">   37</a></span> <span class="keyword">struct </span>ScalarEnumerationTraits<clang::format::FormatStyle::LanguageStandard> {</div>
+<div class="line"><a name="l00038"></a><span class="lineno"><a class="code" href="structllvm_1_1yaml_1_1ScalarEnumerationTraits_3_01clang_1_1format_1_1FormatStyle_1_1LanguageStandard_01_4.html#ac05f706fc96b3f5c55c391144dcf64b5">   38</a></span>   <span class="keyword">static</span> <span class="keywordtype">void</span> enumeration(IO &IO,</div>
+<div class="line"><a name="l00039"></a><span class="lineno">   39</span>                           <a class="code" href="structclang_1_1format_1_1FormatStyle.html#a54639a373da7c4e1e7f4296b9c2adc39" title="Supported language standards.">clang::format::FormatStyle::LanguageStandard</a> &<a class="code" href="UninitializedValues_8cpp.html#a896c037a32087c5c20d97e64a1786880">Value</a>) {</div>
+<div class="line"><a name="l00040"></a><span class="lineno">   40</span>     IO.enumCase(Value, <span class="stringliteral">"Cpp03"</span>, <a class="code" href="structclang_1_1format_1_1FormatStyle.html#a54639a373da7c4e1e7f4296b9c2adc39ad690e77384ec0503c47e9f4e238a58a5" title="Use C++03-compatible syntax.">clang::format::FormatStyle::LS_Cpp03</a>);</div>
+<div class="line"><a name="l00041"></a><span class="lineno">   41</span>     IO.enumCase(Value, <span class="stringliteral">"C++03"</span>, <a class="code" href="structclang_1_1format_1_1FormatStyle.html#a54639a373da7c4e1e7f4296b9c2adc39ad690e77384ec0503c47e9f4e238a58a5" title="Use C++03-compatible syntax.">clang::format::FormatStyle::LS_Cpp03</a>);</div>
+<div class="line"><a name="l00042"></a><span class="lineno">   42</span>     IO.enumCase(Value, <span class="stringliteral">"Cpp11"</span>, <a class="code" href="structclang_1_1format_1_1FormatStyle.html#a54639a373da7c4e1e7f4296b9c2adc39ac2adca34064745a7171f70ba7e600095">clang::format::FormatStyle::LS_Cpp11</a>);</div>
+<div class="line"><a name="l00043"></a><span class="lineno">   43</span>     IO.enumCase(Value, <span class="stringliteral">"C++11"</span>, <a class="code" href="structclang_1_1format_1_1FormatStyle.html#a54639a373da7c4e1e7f4296b9c2adc39ac2adca34064745a7171f70ba7e600095">clang::format::FormatStyle::LS_Cpp11</a>);</div>
+<div class="line"><a name="l00044"></a><span class="lineno">   44</span>     IO.enumCase(Value, <span class="stringliteral">"Auto"</span>, <a class="code" href="structclang_1_1format_1_1FormatStyle.html#a54639a373da7c4e1e7f4296b9c2adc39ad54fa310d0a1bb4f4893fab021db1eaf" title="Automatic detection based on the input.">clang::format::FormatStyle::LS_Auto</a>);</div>
+<div class="line"><a name="l00045"></a><span class="lineno">   45</span>   }</div>
+<div class="line"><a name="l00046"></a><span class="lineno">   46</span> };</div>
+<div class="line"><a name="l00047"></a><span class="lineno">   47</span> </div>
+<div class="line"><a name="l00048"></a><span class="lineno">   48</span> <span class="keyword">template</span> <></div>
+<div class="line"><a name="l00049"></a><span class="lineno"><a class="code" href="structllvm_1_1yaml_1_1ScalarEnumerationTraits_3_01clang_1_1format_1_1FormatStyle_1_1UseTabStyle_01_4.html">   49</a></span> <span class="keyword">struct </span>ScalarEnumerationTraits<clang::format::FormatStyle::UseTabStyle> {</div>
+<div class="line"><a name="l00050"></a><span class="lineno"><a class="code" href="structllvm_1_1yaml_1_1ScalarEnumerationTraits_3_01clang_1_1format_1_1FormatStyle_1_1UseTabStyle_01_4.html#a89f1f955072e5cb9a88df3e7f567af8d">   50</a></span>   <span class="keyword">static</span> <span class="keywordtype">void</span> enumeration(IO &IO,</div>
+<div class="line"><a name="l00051"></a><span class="lineno">   51</span>                           <a class="code" href="structclang_1_1format_1_1FormatStyle.html#a45a4057e4a661ece92683d81c6164510" title="Different ways to use tab in formatting.">clang::format::FormatStyle::UseTabStyle</a> &<a class="code" href="UninitializedValues_8cpp.html#a896c037a32087c5c20d97e64a1786880">Value</a>) {</div>
+<div class="line"><a name="l00052"></a><span class="lineno">   52</span>     IO.enumCase(Value, <span class="stringliteral">"Never"</span>, <a class="code" href="structclang_1_1format_1_1FormatStyle.html#a45a4057e4a661ece92683d81c6164510afd12c70df29dd36bbb5971672f08bd12" title="Never use tab.">clang::format::FormatStyle::UT_Never</a>);</div>
+<div class="line"><a name="l00053"></a><span class="lineno">   53</span>     IO.enumCase(Value, <span class="stringliteral">"false"</span>, <a class="code" href="structclang_1_1format_1_1FormatStyle.html#a45a4057e4a661ece92683d81c6164510afd12c70df29dd36bbb5971672f08bd12" title="Never use tab.">clang::format::FormatStyle::UT_Never</a>);</div>
+<div class="line"><a name="l00054"></a><span class="lineno">   54</span>     IO.enumCase(Value, <span class="stringliteral">"Always"</span>, <a class="code" href="structclang_1_1format_1_1FormatStyle.html#a45a4057e4a661ece92683d81c6164510ac5fc60e5d09b7daadafd5e12d266d30a">clang::format::FormatStyle::UT_Always</a>);</div>
+<div class="line"><a name="l00055"></a><span class="lineno">   55</span>     IO.enumCase(Value, <span class="stringliteral">"true"</span>, <a class="code" href="structclang_1_1format_1_1FormatStyle.html#a45a4057e4a661ece92683d81c6164510ac5fc60e5d09b7daadafd5e12d266d30a">clang::format::FormatStyle::UT_Always</a>);</div>
+<div class="line"><a name="l00056"></a><span class="lineno">   56</span>     IO.enumCase(Value, <span class="stringliteral">"ForIndentation"</span>,</div>
+<div class="line"><a name="l00057"></a><span class="lineno">   57</span>                 <a class="code" href="structclang_1_1format_1_1FormatStyle.html#a45a4057e4a661ece92683d81c6164510a98348a0ed9ac4d191ce1bb3cb3e541fb" title="Use tabs only for indentation.">clang::format::FormatStyle::UT_ForIndentation</a>);</div>
+<div class="line"><a name="l00058"></a><span class="lineno">   58</span>   }</div>
+<div class="line"><a name="l00059"></a><span class="lineno">   59</span> };</div>
+<div class="line"><a name="l00060"></a><span class="lineno">   60</span> </div>
+<div class="line"><a name="l00061"></a><span class="lineno">   61</span> <span class="keyword">template</span> <></div>
+<div class="line"><a name="l00062"></a><span class="lineno"><a class="code" href="structllvm_1_1yaml_1_1ScalarEnumerationTraits_3_01clang_1_1format_1_1FormatStyle_1_1BraceBreakingStyle_01_4.html">   62</a></span> <span class="keyword">struct </span>ScalarEnumerationTraits<clang::format::FormatStyle::BraceBreakingStyle> {</div>
+<div class="line"><a name="l00063"></a><span class="lineno">   63</span>   <span class="keyword">static</span> <span class="keywordtype">void</span></div>
+<div class="line"><a name="l00064"></a><span class="lineno"><a class="code" href="structllvm_1_1yaml_1_1ScalarEnumerationTraits_3_01clang_1_1format_1_1FormatStyle_1_1BraceBreakingStyle_01_4.html#aa8fbb54a14ea390f2ea84cce772eabce">   64</a></span>   <a class="code" href="structllvm_1_1yaml_1_1ScalarEnumerationTraits_3_01clang_1_1format_1_1FormatStyle_1_1BraceBreakingStyle_01_4.html#aa8fbb54a14ea390f2ea84cce772eabce">enumeration</a>(IO &IO, <a class="code" href="structclang_1_1format_1_1FormatStyle.html#a2a6788e882cdfc0594579426e19707b3" title="Different ways to attach braces to their surrounding context.">clang::format::FormatStyle::BraceBreakingStyle</a> &<a class="code" href="UninitializedValues_8cpp.html#a896c037a32087c5c20d97e64a1786880">Value</a>) {</div>
+<div class="line"><a name="l00065"></a><span class="lineno">   65</span>     IO.enumCase(Value, <span class="stringliteral">"Attach"</span>, <a class="code" href="structclang_1_1format_1_1FormatStyle.html#a2a6788e882cdfc0594579426e19707b3aea9196ec59731ddd6e997f063ae9cabc" title="Always attach braces to surrounding context.">clang::format::FormatStyle::BS_Attach</a>);</div>
+<div class="line"><a name="l00066"></a><span class="lineno">   66</span>     IO.enumCase(Value, <span class="stringliteral">"Linux"</span>, <a class="code" href="structclang_1_1format_1_1FormatStyle.html#a2a6788e882cdfc0594579426e19707b3a90651ce12fddb7c4099d48b10457059b">clang::format::FormatStyle::BS_Linux</a>);</div>
+<div class="line"><a name="l00067"></a><span class="lineno">   67</span>     IO.enumCase(Value, <span class="stringliteral">"Stroustrup"</span>, <a class="code" href="structclang_1_1format_1_1FormatStyle.html#a2a6788e882cdfc0594579426e19707b3a791f92a5bb45f402345d9c92669a02a6" title="Like Attach, but break before function definitions.">clang::format::FormatStyle::BS_Stroustrup</a>);</div>
+<div class="line"><a name="l00068"></a><span class="lineno">   68</span>     IO.enumCase(Value, <span class="stringliteral">"Allman"</span>, <a class="code" href="structclang_1_1format_1_1FormatStyle.html#a2a6788e882cdfc0594579426e19707b3a7916b04cf2c230741a0f9d7c18fd86ff" title="Always break before braces.">clang::format::FormatStyle::BS_Allman</a>);</div>
+<div class="line"><a name="l00069"></a><span class="lineno">   69</span>   }</div>
+<div class="line"><a name="l00070"></a><span class="lineno">   70</span> };</div>
+<div class="line"><a name="l00071"></a><span class="lineno">   71</span> </div>
+<div class="line"><a name="l00072"></a><span class="lineno">   72</span> <span class="keyword">template</span> <></div>
+<div class="line"><a name="l00073"></a><span class="lineno"><a class="code" href="structllvm_1_1yaml_1_1ScalarEnumerationTraits_3_01clang_1_1format_1_1FormatStyle_1_1NamespaceIndentationKind_01_4.html">   73</a></span> <span class="keyword">struct </span>ScalarEnumerationTraits<</div>
+<div class="line"><a name="l00074"></a><span class="lineno">   74</span>     clang::format::FormatStyle::NamespaceIndentationKind> {</div>
+<div class="line"><a name="l00075"></a><span class="lineno">   75</span>   <span class="keyword">static</span> <span class="keywordtype">void</span></div>
+<div class="line"><a name="l00076"></a><span class="lineno"><a class="code" href="structllvm_1_1yaml_1_1ScalarEnumerationTraits_3_01clang_1_1format_1_1FormatStyle_1_1NamespaceIndentationKind_01_4.html#a6255762bf0814a6f33d72d967f0d95db">   76</a></span>   enumeration(IO &IO,</div>
+<div class="line"><a name="l00077"></a><span class="lineno">   77</span>               <a class="code" href="structclang_1_1format_1_1FormatStyle.html#a792627527ce5d5ae7372f9f95c74fc68" title="Different ways to indent namespace contents.">clang::format::FormatStyle::NamespaceIndentationKind</a> &<a class="code" href="UninitializedValues_8cpp.html#a896c037a32087c5c20d97e64a1786880">Value</a>) {</div>
+<div class="line"><a name="l00078"></a><span class="lineno">   78</span>     IO.enumCase(Value, <span class="stringliteral">"None"</span>, <a class="code" href="structclang_1_1format_1_1FormatStyle.html#a792627527ce5d5ae7372f9f95c74fc68a3c968534afc99a13a8b0bcbe43f9cc63" title="Don't indent in namespaces.">clang::format::FormatStyle::NI_None</a>);</div>
+<div class="line"><a name="l00079"></a><span class="lineno">   79</span>     IO.enumCase(Value, <span class="stringliteral">"Inner"</span>, <a class="code" href="structclang_1_1format_1_1FormatStyle.html#a792627527ce5d5ae7372f9f95c74fc68af27aaa38ae3f4444e11ed3395f2152e4" title="Indent only in inner namespaces (nested in other namespaces).">clang::format::FormatStyle::NI_Inner</a>);</div>
+<div class="line"><a name="l00080"></a><span class="lineno">   80</span>     IO.enumCase(Value, <span class="stringliteral">"All"</span>, <a class="code" href="structclang_1_1format_1_1FormatStyle.html#a792627527ce5d5ae7372f9f95c74fc68a621fbb46f7cdc63d335e071054b18f1b" title="Indent in all namespaces.">clang::format::FormatStyle::NI_All</a>);</div>
+<div class="line"><a name="l00081"></a><span class="lineno">   81</span>   }</div>
+<div class="line"><a name="l00082"></a><span class="lineno">   82</span> };</div>
+<div class="line"><a name="l00083"></a><span class="lineno">   83</span> </div>
+<div class="line"><a name="l00084"></a><span class="lineno"><a class="code" href="structllvm_1_1yaml_1_1MappingTraits_3_01clang_1_1format_1_1FormatStyle_01_4.html">   84</a></span> <span class="keyword">template</span> <> <span class="keyword">struct </span>MappingTraits<clang::format::FormatStyle> {</div>
+<div class="line"><a name="l00085"></a><span class="lineno"><a class="code" href="structllvm_1_1yaml_1_1MappingTraits_3_01clang_1_1format_1_1FormatStyle_01_4.html#aa037b4d651ddcd66117480911ba53b28">   85</a></span>   <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="structllvm_1_1yaml_1_1MappingTraits_3_01clang_1_1format_1_1FormatStyle_01_4.html#aa037b4d651ddcd66117480911ba53b28">mapping</a>(llvm::yaml::IO &IO, <a class="code" href="structclang_1_1format_1_1FormatStyle.html" title="The FormatStyle is used to configure the formatting to follow specific guidelines.">clang::format::FormatStyle</a> &<a class="code" href="Format_8cpp.html#abc577d80f3639e98f6457dd375101eab">Style</a>) {</div>
+<div class="line"><a name="l00086"></a><span class="lineno">   86</span>     <span class="keywordflow">if</span> (IO.outputting()) {</div>
+<div class="line"><a name="l00087"></a><span class="lineno">   87</span>       StringRef StylesArray[] = { <span class="stringliteral">"LLVM"</span>,    <span class="stringliteral">"Google"</span>, <span class="stringliteral">"Chromium"</span>,</div>
+<div class="line"><a name="l00088"></a><span class="lineno">   88</span>                                   <span class="stringliteral">"Mozilla"</span>, <span class="stringliteral">"WebKit"</span> };</div>
+<div class="line"><a name="l00089"></a><span class="lineno">   89</span>       <a class="code" href="classllvm_1_1ArrayRef.html">ArrayRef<StringRef></a> Styles(StylesArray);</div>
+<div class="line"><a name="l00090"></a><span class="lineno">   90</span>       <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> i = 0, e = Styles.size(); i < e; ++i) {</div>
+<div class="line"><a name="l00091"></a><span class="lineno">   91</span>         StringRef StyleName(Styles[i]);</div>
+<div class="line"><a name="l00092"></a><span class="lineno">   92</span>         <a class="code" href="structclang_1_1format_1_1FormatStyle.html" title="The FormatStyle is used to configure the formatting to follow specific guidelines.">clang::format::FormatStyle</a> PredefinedStyle;</div>
+<div class="line"><a name="l00093"></a><span class="lineno">   93</span>         <span class="keywordflow">if</span> (<a class="code" href="namespaceclang_1_1format.html#a0b628eb78915243b2a7f7ee9e7537ce2" title="Gets a predefined style by name.">clang::format::getPredefinedStyle</a>(StyleName, &PredefinedStyle) &&</div>
+<div class="line"><a name="l00094"></a><span class="lineno">   94</span>             Style == PredefinedStyle) {</div>
+<div class="line"><a name="l00095"></a><span class="lineno">   95</span>           IO.mapOptional(<span class="stringliteral">"# BasedOnStyle"</span>, StyleName);</div>
+<div class="line"><a name="l00096"></a><span class="lineno">   96</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00097"></a><span class="lineno">   97</span>         }</div>
+<div class="line"><a name="l00098"></a><span class="lineno">   98</span>       }</div>
+<div class="line"><a name="l00099"></a><span class="lineno">   99</span>     } <span class="keywordflow">else</span> {</div>
+<div class="line"><a name="l00100"></a><span class="lineno">  100</span>       StringRef BasedOnStyle;</div>
+<div class="line"><a name="l00101"></a><span class="lineno">  101</span>       IO.mapOptional(<span class="stringliteral">"BasedOnStyle"</span>, BasedOnStyle);</div>
+<div class="line"><a name="l00102"></a><span class="lineno">  102</span>       <span class="keywordflow">if</span> (!BasedOnStyle.empty())</div>
+<div class="line"><a name="l00103"></a><span class="lineno">  103</span>         <span class="keywordflow">if</span> (!<a class="code" href="namespaceclang_1_1format.html#a0b628eb78915243b2a7f7ee9e7537ce2" title="Gets a predefined style by name.">clang::format::getPredefinedStyle</a>(BasedOnStyle, &Style)) {</div>
+<div class="line"><a name="l00104"></a><span class="lineno">  104</span>           IO.setError(Twine(<span class="stringliteral">"Unknown value for BasedOnStyle: "</span>, BasedOnStyle));</div>
+<div class="line"><a name="l00105"></a><span class="lineno">  105</span>           <span class="keywordflow">return</span>;</div>
+<div class="line"><a name="l00106"></a><span class="lineno">  106</span>         }</div>
+<div class="line"><a name="l00107"></a><span class="lineno">  107</span>     }</div>
+<div class="line"><a name="l00108"></a><span class="lineno">  108</span> </div>
+<div class="line"><a name="l00109"></a><span class="lineno">  109</span>     IO.mapOptional(<span class="stringliteral">"AccessModifierOffset"</span>, Style.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#a534fd6ed422571ccff12fc5864b49bc3" title="The extra indent or outdent of access modifiers, e.g. public:.">AccessModifierOffset</a>);</div>
+<div class="line"><a name="l00110"></a><span class="lineno">  110</span>     IO.mapOptional(<span class="stringliteral">"ConstructorInitializerIndentWidth"</span>,</div>
+<div class="line"><a name="l00111"></a><span class="lineno">  111</span>                    Style.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#a87a31c95b98c7ba6c606237473f61981" title="The number of characters to use for indentation of constructor initializer lists.">ConstructorInitializerIndentWidth</a>);</div>
+<div class="line"><a name="l00112"></a><span class="lineno">  112</span>     IO.mapOptional(<span class="stringliteral">"AlignEscapedNewlinesLeft"</span>, Style.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#a4d17cd37260d136936d4dfa4c65aa2d1" title="If true, aligns escaped newlines as far left as possible. Otherwise puts them into the right-most col...">AlignEscapedNewlinesLeft</a>);</div>
+<div class="line"><a name="l00113"></a><span class="lineno">  113</span>     IO.mapOptional(<span class="stringliteral">"AlignTrailingComments"</span>, Style.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#a368a5d9261eeb7e586f5bf70e91a23a5" title="If true, aligns trailing comments.">AlignTrailingComments</a>);</div>
+<div class="line"><a name="l00114"></a><span class="lineno">  114</span>     IO.mapOptional(<span class="stringliteral">"AllowAllParametersOfDeclarationOnNextLine"</span>,</div>
+<div class="line"><a name="l00115"></a><span class="lineno">  115</span>                    Style.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#aa6eeb36c958dfb1e4f15876c82cef2ce" title="Allow putting all parameters of a function declaration onto the next line even if BinPackParameters i...">AllowAllParametersOfDeclarationOnNextLine</a>);</div>
+<div class="line"><a name="l00116"></a><span class="lineno">  116</span>     IO.mapOptional(<span class="stringliteral">"AllowShortIfStatementsOnASingleLine"</span>,</div>
+<div class="line"><a name="l00117"></a><span class="lineno">  117</span>                    Style.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#a91cea76ad14c5e46d199d8e9aca56d8e" title="If true, if (a) return; can be put on a single line.">AllowShortIfStatementsOnASingleLine</a>);</div>
+<div class="line"><a name="l00118"></a><span class="lineno">  118</span>     IO.mapOptional(<span class="stringliteral">"AllowShortLoopsOnASingleLine"</span>,</div>
+<div class="line"><a name="l00119"></a><span class="lineno">  119</span>                    Style.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#a52ca039b50313d5b5de5207a8c9b2dfa" title="If true, while (true) continue; can be put on a single line.">AllowShortLoopsOnASingleLine</a>);</div>
+<div class="line"><a name="l00120"></a><span class="lineno">  120</span>     IO.mapOptional(<span class="stringliteral">"AlwaysBreakTemplateDeclarations"</span>,</div>
+<div class="line"><a name="l00121"></a><span class="lineno">  121</span>                    Style.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#a1cecad8e59e6cbe721865134c0823a1a" title="If true, always break after the template<...> of a template declaration.">AlwaysBreakTemplateDeclarations</a>);</div>
+<div class="line"><a name="l00122"></a><span class="lineno">  122</span>     IO.mapOptional(<span class="stringliteral">"AlwaysBreakBeforeMultilineStrings"</span>,</div>
+<div class="line"><a name="l00123"></a><span class="lineno">  123</span>                    Style.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#a03a80b6fa3e1785c7c59becbc621212d" title="If true, always break before multiline string literals.">AlwaysBreakBeforeMultilineStrings</a>);</div>
+<div class="line"><a name="l00124"></a><span class="lineno">  124</span>     IO.mapOptional(<span class="stringliteral">"BreakBeforeBinaryOperators"</span>,</div>
+<div class="line"><a name="l00125"></a><span class="lineno">  125</span>                    Style.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#af02c827f82aac1f6182e575004b3ea4c" title="If true, binary operators will be placed after line breaks.">BreakBeforeBinaryOperators</a>);</div>
+<div class="line"><a name="l00126"></a><span class="lineno">  126</span>     IO.mapOptional(<span class="stringliteral">"BreakBeforeTernaryOperators"</span>,</div>
+<div class="line"><a name="l00127"></a><span class="lineno">  127</span>                    Style.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#af83c3653a76e6e749391f7d3663a8ce5" title="If true, ternary operators will be placed after line breaks.">BreakBeforeTernaryOperators</a>);</div>
+<div class="line"><a name="l00128"></a><span class="lineno">  128</span>     IO.mapOptional(<span class="stringliteral">"BreakConstructorInitializersBeforeComma"</span>,</div>
+<div class="line"><a name="l00129"></a><span class="lineno">  129</span>                    Style.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#ab817689d9226e0058764619a2a4be915" title="Always break constructor initializers before commas and align the commas with the colon...">BreakConstructorInitializersBeforeComma</a>);</div>
+<div class="line"><a name="l00130"></a><span class="lineno">  130</span>     IO.mapOptional(<span class="stringliteral">"BinPackParameters"</span>, Style.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#a861528acbc8f4088e276034ce4dbbe1b" title="If false, a function call's or function definition's parameters will either all be on the same line o...">BinPackParameters</a>);</div>
+<div class="line"><a name="l00131"></a><span class="lineno">  131</span>     IO.mapOptional(<span class="stringliteral">"ColumnLimit"</span>, Style.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#afe9550cc9c7c93fbc3506cb0b140593c" title="The column limit.">ColumnLimit</a>);</div>
+<div class="line"><a name="l00132"></a><span class="lineno">  132</span>     IO.mapOptional(<span class="stringliteral">"ConstructorInitializerAllOnOneLineOrOnePerLine"</span>,</div>
+<div class="line"><a name="l00133"></a><span class="lineno">  133</span>                    Style.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#a914cb53dad8427f0f59a2ac97be860b0" title="If the constructor initializers don't fit on a line, put each initializer on its own line...">ConstructorInitializerAllOnOneLineOrOnePerLine</a>);</div>
+<div class="line"><a name="l00134"></a><span class="lineno">  134</span>     IO.mapOptional(<span class="stringliteral">"DerivePointerBinding"</span>, Style.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#a4a222a69f52d7e84e16be612505b407c" title="If true, analyze the formatted file for the most common binding.">DerivePointerBinding</a>);</div>
+<div class="line"><a name="l00135"></a><span class="lineno">  135</span>     IO.mapOptional(<span class="stringliteral">"ExperimentalAutoDetectBinPacking"</span>,</div>
+<div class="line"><a name="l00136"></a><span class="lineno">  136</span>                    Style.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#a5ecc064cf590382856b68c4568c0ce24" title="If true, clang-format detects whether function calls and definitions are formatted with one parameter...">ExperimentalAutoDetectBinPacking</a>);</div>
+<div class="line"><a name="l00137"></a><span class="lineno">  137</span>     IO.mapOptional(<span class="stringliteral">"IndentCaseLabels"</span>, Style.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#a178999cdea92868a4f3dc332b36cc285" title="Indent case labels one level from the switch statement.">IndentCaseLabels</a>);</div>
+<div class="line"><a name="l00138"></a><span class="lineno">  138</span>     IO.mapOptional(<span class="stringliteral">"MaxEmptyLinesToKeep"</span>, Style.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#aafca7a61d6d72ab0adf276ace30155d5" title="The maximum number of consecutive empty lines to keep.">MaxEmptyLinesToKeep</a>);</div>
+<div class="line"><a name="l00139"></a><span class="lineno">  139</span>     IO.mapOptional(<span class="stringliteral">"NamespaceIndentation"</span>, Style.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#a5a74c72d0ca5b345b9d5cf6d40da0adf" title="The indentation used for namespaces.">NamespaceIndentation</a>);</div>
+<div class="line"><a name="l00140"></a><span class="lineno">  140</span>     IO.mapOptional(<span class="stringliteral">"ObjCSpaceBeforeProtocolList"</span>,</div>
+<div class="line"><a name="l00141"></a><span class="lineno">  141</span>                    Style.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#a3b0c9f0c4bb6b9b4e07704865a4acde6" title="Add a space in front of an Objective-C protocol list, i.e. use Foo <Protocol> instead of Foo<Protocol...">ObjCSpaceBeforeProtocolList</a>);</div>
+<div class="line"><a name="l00142"></a><span class="lineno">  142</span>     IO.mapOptional(<span class="stringliteral">"PenaltyBreakBeforeFirstCallParameter"</span>,</div>
+<div class="line"><a name="l00143"></a><span class="lineno">  143</span>                    Style.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#a2256bfa6b34a5916077066fb05ad92d2" title="The penalty for breaking a function call after "call(".">PenaltyBreakBeforeFirstCallParameter</a>);</div>
+<div class="line"><a name="l00144"></a><span class="lineno">  144</span>     IO.mapOptional(<span class="stringliteral">"PenaltyBreakComment"</span>, Style.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#ae6b9c9cefa83f57a7075e9115bceac5c" title="The penalty for each line break introduced inside a comment.">PenaltyBreakComment</a>);</div>
+<div class="line"><a name="l00145"></a><span class="lineno">  145</span>     IO.mapOptional(<span class="stringliteral">"PenaltyBreakString"</span>, Style.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#ade360c8aa3ede11110a1e13d31a7516f" title="The penalty for each line break introduced inside a string literal.">PenaltyBreakString</a>);</div>
+<div class="line"><a name="l00146"></a><span class="lineno">  146</span>     IO.mapOptional(<span class="stringliteral">"PenaltyBreakFirstLessLess"</span>,</div>
+<div class="line"><a name="l00147"></a><span class="lineno">  147</span>                    Style.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#a4e7375a939438afdd39c267da5bda3ec" title="The penalty for breaking before the first <<.">PenaltyBreakFirstLessLess</a>);</div>
+<div class="line"><a name="l00148"></a><span class="lineno">  148</span>     IO.mapOptional(<span class="stringliteral">"PenaltyExcessCharacter"</span>, Style.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#a7f2b485ba27597314723b0b11e47f099" title="The penalty for each character outside of the column limit.">PenaltyExcessCharacter</a>);</div>
+<div class="line"><a name="l00149"></a><span class="lineno">  149</span>     IO.mapOptional(<span class="stringliteral">"PenaltyReturnTypeOnItsOwnLine"</span>,</div>
+<div class="line"><a name="l00150"></a><span class="lineno">  150</span>                    Style.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#a96be8e4382866d0ce27a63786d5f8057" title="Penalty for putting the return type of a function onto its own line.">PenaltyReturnTypeOnItsOwnLine</a>);</div>
+<div class="line"><a name="l00151"></a><span class="lineno">  151</span>     IO.mapOptional(<span class="stringliteral">"PointerBindsToType"</span>, Style.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#addd86a0c8325719b25de1677238463a6" title="Set whether & and * bind to the type as opposed to the variable.">PointerBindsToType</a>);</div>
+<div class="line"><a name="l00152"></a><span class="lineno">  152</span>     IO.mapOptional(<span class="stringliteral">"SpacesBeforeTrailingComments"</span>,</div>
+<div class="line"><a name="l00153"></a><span class="lineno">  153</span>                    Style.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#a2c45bd6563a2837d105771d0c3ea7882" title="The number of spaces to before trailing line comments.">SpacesBeforeTrailingComments</a>);</div>
+<div class="line"><a name="l00154"></a><span class="lineno">  154</span>     IO.mapOptional(<span class="stringliteral">"Cpp11BracedListStyle"</span>, Style.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#a082f72ed255395cea133365999de70a1" title="If true, format braced lists as best suited for C++11 braced lists.">Cpp11BracedListStyle</a>);</div>
+<div class="line"><a name="l00155"></a><span class="lineno">  155</span>     IO.mapOptional(<span class="stringliteral">"Standard"</span>, Style.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#a044e29dde38856beac53b1a307e444da" title="Format compatible with this standard, e.g. use A<A<int> > instead of A<A<int>> for LS_Cpp03...">Standard</a>);</div>
+<div class="line"><a name="l00156"></a><span class="lineno">  156</span>     IO.mapOptional(<span class="stringliteral">"IndentWidth"</span>, Style.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#a0e1f96ea453f4d8fc16ab55bc31baeb2" title="The number of columns to use for indentation.">IndentWidth</a>);</div>
+<div class="line"><a name="l00157"></a><span class="lineno">  157</span>     IO.mapOptional(<span class="stringliteral">"TabWidth"</span>, Style.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#a488265e26e22037ba7fed6489a21028e" title="The number of columns used for tab stops.">TabWidth</a>);</div>
+<div class="line"><a name="l00158"></a><span class="lineno">  158</span>     IO.mapOptional(<span class="stringliteral">"UseTab"</span>, Style.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#af0d526918c493f4e47259fa33beddf81" title="The way to use tab characters in the resulting file.">UseTab</a>);</div>
+<div class="line"><a name="l00159"></a><span class="lineno">  159</span>     IO.mapOptional(<span class="stringliteral">"BreakBeforeBraces"</span>, Style.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#a7bb74cb37f57d469d6760ec09e466647" title="The brace breaking style to use.">BreakBeforeBraces</a>);</div>
+<div class="line"><a name="l00160"></a><span class="lineno">  160</span>     IO.mapOptional(<span class="stringliteral">"IndentFunctionDeclarationAfterType"</span>,</div>
+<div class="line"><a name="l00161"></a><span class="lineno">  161</span>                    Style.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#abcc4fc50942deabd17bcf25ed9c938dd" title="If true, indent when breaking function declarations which are not also definitions after the type...">IndentFunctionDeclarationAfterType</a>);</div>
+<div class="line"><a name="l00162"></a><span class="lineno">  162</span>     IO.mapOptional(<span class="stringliteral">"SpacesInParentheses"</span>, Style.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#a5a530af94f5ed0f89d8fac26894155d4" title="If true, spaces will be inserted after '(' and before ')'.">SpacesInParentheses</a>);</div>
+<div class="line"><a name="l00163"></a><span class="lineno">  163</span>     IO.mapOptional(<span class="stringliteral">"SpacesInAngles"</span>, Style.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#ae1bb2497d3a07251af3a9fa2aa1c4ffe" title="If true, spaces will be inserted after '<' and before '>' in template argument lists...">SpacesInAngles</a>);</div>
+<div class="line"><a name="l00164"></a><span class="lineno">  164</span>     IO.mapOptional(<span class="stringliteral">"SpaceInEmptyParentheses"</span>, Style.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#a21b252e549c87fbfb9be7dc5d63492c9" title="If false, spaces may be inserted into '()'.">SpaceInEmptyParentheses</a>);</div>
+<div class="line"><a name="l00165"></a><span class="lineno">  165</span>     IO.mapOptional(<span class="stringliteral">"SpacesInCStyleCastParentheses"</span>,</div>
+<div class="line"><a name="l00166"></a><span class="lineno">  166</span>                    Style.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#afd554010a49e3cbd23f957555e6d8f8d" title="If false, spaces may be inserted into C style casts.">SpacesInCStyleCastParentheses</a>);</div>
+<div class="line"><a name="l00167"></a><span class="lineno">  167</span>     IO.mapOptional(<span class="stringliteral">"SpaceAfterControlStatementKeyword"</span>,</div>
+<div class="line"><a name="l00168"></a><span class="lineno">  168</span>                    Style.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#a2d9bf947c4f28a451e6360129aacc30d" title="If true, spaces will be inserted between 'for'/'if'/'while'/... and '('.">SpaceAfterControlStatementKeyword</a>);</div>
+<div class="line"><a name="l00169"></a><span class="lineno">  169</span>     IO.mapOptional(<span class="stringliteral">"SpaceBeforeAssignmentOperators"</span>,</div>
+<div class="line"><a name="l00170"></a><span class="lineno">  170</span>                    Style.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#a915fe4216df56e63f64b37568b82a3c3" title="If false, spaces will be removed before assignment operators.">SpaceBeforeAssignmentOperators</a>);</div>
+<div class="line"><a name="l00171"></a><span class="lineno">  171</span>     IO.mapOptional(<span class="stringliteral">"ContinuationIndentWidth"</span>, Style.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#a0384417b961b70560004a52de799d7cc" title="Indent width for line continuations.">ContinuationIndentWidth</a>);</div>
+<div class="line"><a name="l00172"></a><span class="lineno">  172</span>   }</div>
+<div class="line"><a name="l00173"></a><span class="lineno">  173</span> };</div>
+<div class="line"><a name="l00174"></a><span class="lineno">  174</span> }</div>
+<div class="line"><a name="l00175"></a><span class="lineno">  175</span> }</div>
+<div class="line"><a name="l00176"></a><span class="lineno">  176</span> </div>
+<div class="line"><a name="l00177"></a><span class="lineno">  177</span> <span class="keyword">namespace </span>clang {</div>
+<div class="line"><a name="l00178"></a><span class="lineno">  178</span> <span class="keyword">namespace </span>format {</div>
+<div class="line"><a name="l00179"></a><span class="lineno">  179</span> </div>
+<div class="line"><a name="l00180"></a><span class="lineno"><a class="code" href="namespaceclang_1_1format.html#a0bf0dc04c250edc75420f9e2fc1dad9f">  180</a></span> <span class="keywordtype">void</span> <a class="code" href="namespaceclang_1_1format.html#a0bf0dc04c250edc75420f9e2fc1dad9f">setDefaultPenalties</a>(<a class="code" href="structclang_1_1format_1_1FormatStyle.html" title="The FormatStyle is used to configure the formatting to follow specific guidelines.">FormatStyle</a> &<a class="code" href="Format_8cpp.html#abc577d80f3639e98f6457dd375101eab">Style</a>) {</div>
+<div class="line"><a name="l00181"></a><span class="lineno">  181</span>   Style.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#ae6b9c9cefa83f57a7075e9115bceac5c" title="The penalty for each line break introduced inside a comment.">PenaltyBreakComment</a> = 60;</div>
+<div class="line"><a name="l00182"></a><span class="lineno">  182</span>   Style.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#a4e7375a939438afdd39c267da5bda3ec" title="The penalty for breaking before the first <<.">PenaltyBreakFirstLessLess</a> = 120;</div>
+<div class="line"><a name="l00183"></a><span class="lineno">  183</span>   Style.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#ade360c8aa3ede11110a1e13d31a7516f" title="The penalty for each line break introduced inside a string literal.">PenaltyBreakString</a> = 1000;</div>
+<div class="line"><a name="l00184"></a><span class="lineno">  184</span>   Style.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#a7f2b485ba27597314723b0b11e47f099" title="The penalty for each character outside of the column limit.">PenaltyExcessCharacter</a> = 1000000;</div>
+<div class="line"><a name="l00185"></a><span class="lineno">  185</span> }</div>
+<div class="line"><a name="l00186"></a><span class="lineno">  186</span> </div>
+<div class="line"><a name="l00187"></a><span class="lineno"><a class="code" href="namespaceclang_1_1format.html#aafb8657f00b80e806e1971948922c83f">  187</a></span> <a class="code" href="structclang_1_1format_1_1FormatStyle.html" title="The FormatStyle is used to configure the formatting to follow specific guidelines.">FormatStyle</a> <a class="code" href="namespaceclang_1_1format.html#aafb8657f00b80e806e1971948922c83f" title="Returns a format style complying with the LLVM coding standards: http://llvm.org/docs/CodingStandards...">getLLVMStyle</a>() {</div>
+<div class="line"><a name="l00188"></a><span class="lineno">  188</span>   <a class="code" href="structclang_1_1format_1_1FormatStyle.html" title="The FormatStyle is used to configure the formatting to follow specific guidelines.">FormatStyle</a> LLVMStyle;</div>
+<div class="line"><a name="l00189"></a><span class="lineno">  189</span>   LLVMStyle.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#a534fd6ed422571ccff12fc5864b49bc3" title="The extra indent or outdent of access modifiers, e.g. public:.">AccessModifierOffset</a> = -2;</div>
+<div class="line"><a name="l00190"></a><span class="lineno">  190</span>   LLVMStyle.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#a4d17cd37260d136936d4dfa4c65aa2d1" title="If true, aligns escaped newlines as far left as possible. Otherwise puts them into the right-most col...">AlignEscapedNewlinesLeft</a> = <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00191"></a><span class="lineno">  191</span>   LLVMStyle.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#a368a5d9261eeb7e586f5bf70e91a23a5" title="If true, aligns trailing comments.">AlignTrailingComments</a> = <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00192"></a><span class="lineno">  192</span>   LLVMStyle.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#aa6eeb36c958dfb1e4f15876c82cef2ce" title="Allow putting all parameters of a function declaration onto the next line even if BinPackParameters i...">AllowAllParametersOfDeclarationOnNextLine</a> = <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00193"></a><span class="lineno">  193</span>   LLVMStyle.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#a91cea76ad14c5e46d199d8e9aca56d8e" title="If true, if (a) return; can be put on a single line.">AllowShortIfStatementsOnASingleLine</a> = <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00194"></a><span class="lineno">  194</span>   LLVMStyle.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#a52ca039b50313d5b5de5207a8c9b2dfa" title="If true, while (true) continue; can be put on a single line.">AllowShortLoopsOnASingleLine</a> = <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00195"></a><span class="lineno">  195</span>   LLVMStyle.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#a03a80b6fa3e1785c7c59becbc621212d" title="If true, always break before multiline string literals.">AlwaysBreakBeforeMultilineStrings</a> = <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00196"></a><span class="lineno">  196</span>   LLVMStyle.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#a1cecad8e59e6cbe721865134c0823a1a" title="If true, always break after the template<...> of a template declaration.">AlwaysBreakTemplateDeclarations</a> = <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00197"></a><span class="lineno">  197</span>   LLVMStyle.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#a861528acbc8f4088e276034ce4dbbe1b" title="If false, a function call's or function definition's parameters will either all be on the same line o...">BinPackParameters</a> = <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00198"></a><span class="lineno">  198</span>   LLVMStyle.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#af02c827f82aac1f6182e575004b3ea4c" title="If true, binary operators will be placed after line breaks.">BreakBeforeBinaryOperators</a> = <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00199"></a><span class="lineno">  199</span>   LLVMStyle.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#af83c3653a76e6e749391f7d3663a8ce5" title="If true, ternary operators will be placed after line breaks.">BreakBeforeTernaryOperators</a> = <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00200"></a><span class="lineno">  200</span>   LLVMStyle.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#a7bb74cb37f57d469d6760ec09e466647" title="The brace breaking style to use.">BreakBeforeBraces</a> = <a class="code" href="structclang_1_1format_1_1FormatStyle.html#a2a6788e882cdfc0594579426e19707b3aea9196ec59731ddd6e997f063ae9cabc" title="Always attach braces to surrounding context.">FormatStyle::BS_Attach</a>;</div>
+<div class="line"><a name="l00201"></a><span class="lineno">  201</span>   LLVMStyle.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#ab817689d9226e0058764619a2a4be915" title="Always break constructor initializers before commas and align the commas with the colon...">BreakConstructorInitializersBeforeComma</a> = <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00202"></a><span class="lineno">  202</span>   LLVMStyle.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#afe9550cc9c7c93fbc3506cb0b140593c" title="The column limit.">ColumnLimit</a> = 80;</div>
+<div class="line"><a name="l00203"></a><span class="lineno">  203</span>   LLVMStyle.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#a914cb53dad8427f0f59a2ac97be860b0" title="If the constructor initializers don't fit on a line, put each initializer on its own line...">ConstructorInitializerAllOnOneLineOrOnePerLine</a> = <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00204"></a><span class="lineno">  204</span>   LLVMStyle.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#a87a31c95b98c7ba6c606237473f61981" title="The number of characters to use for indentation of constructor initializer lists.">ConstructorInitializerIndentWidth</a> = 4;</div>
+<div class="line"><a name="l00205"></a><span class="lineno">  205</span>   LLVMStyle.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#a082f72ed255395cea133365999de70a1" title="If true, format braced lists as best suited for C++11 braced lists.">Cpp11BracedListStyle</a> = <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00206"></a><span class="lineno">  206</span>   LLVMStyle.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#a4a222a69f52d7e84e16be612505b407c" title="If true, analyze the formatted file for the most common binding.">DerivePointerBinding</a> = <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00207"></a><span class="lineno">  207</span>   LLVMStyle.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#a5ecc064cf590382856b68c4568c0ce24" title="If true, clang-format detects whether function calls and definitions are formatted with one parameter...">ExperimentalAutoDetectBinPacking</a> = <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00208"></a><span class="lineno">  208</span>   LLVMStyle.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#a178999cdea92868a4f3dc332b36cc285" title="Indent case labels one level from the switch statement.">IndentCaseLabels</a> = <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00209"></a><span class="lineno">  209</span>   LLVMStyle.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#abcc4fc50942deabd17bcf25ed9c938dd" title="If true, indent when breaking function declarations which are not also definitions after the type...">IndentFunctionDeclarationAfterType</a> = <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00210"></a><span class="lineno">  210</span>   LLVMStyle.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#a0e1f96ea453f4d8fc16ab55bc31baeb2" title="The number of columns to use for indentation.">IndentWidth</a> = 2;</div>
+<div class="line"><a name="l00211"></a><span class="lineno">  211</span>   LLVMStyle.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#a488265e26e22037ba7fed6489a21028e" title="The number of columns used for tab stops.">TabWidth</a> = 8;</div>
+<div class="line"><a name="l00212"></a><span class="lineno">  212</span>   LLVMStyle.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#aafca7a61d6d72ab0adf276ace30155d5" title="The maximum number of consecutive empty lines to keep.">MaxEmptyLinesToKeep</a> = 1;</div>
+<div class="line"><a name="l00213"></a><span class="lineno">  213</span>   LLVMStyle.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#a5a74c72d0ca5b345b9d5cf6d40da0adf" title="The indentation used for namespaces.">NamespaceIndentation</a> = <a class="code" href="structclang_1_1format_1_1FormatStyle.html#a792627527ce5d5ae7372f9f95c74fc68a3c968534afc99a13a8b0bcbe43f9cc63" title="Don't indent in namespaces.">FormatStyle::NI_None</a>;</div>
+<div class="line"><a name="l00214"></a><span class="lineno">  214</span>   LLVMStyle.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#a3b0c9f0c4bb6b9b4e07704865a4acde6" title="Add a space in front of an Objective-C protocol list, i.e. use Foo <Protocol> instead of Foo<Protocol...">ObjCSpaceBeforeProtocolList</a> = <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00215"></a><span class="lineno">  215</span>   LLVMStyle.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#addd86a0c8325719b25de1677238463a6" title="Set whether & and * bind to the type as opposed to the variable.">PointerBindsToType</a> = <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00216"></a><span class="lineno">  216</span>   LLVMStyle.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#a2c45bd6563a2837d105771d0c3ea7882" title="The number of spaces to before trailing line comments.">SpacesBeforeTrailingComments</a> = 1;</div>
+<div class="line"><a name="l00217"></a><span class="lineno">  217</span>   LLVMStyle.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#a044e29dde38856beac53b1a307e444da" title="Format compatible with this standard, e.g. use A<A<int> > instead of A<A<int>> for LS_Cpp03...">Standard</a> = <a class="code" href="structclang_1_1format_1_1FormatStyle.html#a54639a373da7c4e1e7f4296b9c2adc39ad690e77384ec0503c47e9f4e238a58a5" title="Use C++03-compatible syntax.">FormatStyle::LS_Cpp03</a>;</div>
+<div class="line"><a name="l00218"></a><span class="lineno">  218</span>   LLVMStyle.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#af0d526918c493f4e47259fa33beddf81" title="The way to use tab characters in the resulting file.">UseTab</a> = <a class="code" href="structclang_1_1format_1_1FormatStyle.html#a45a4057e4a661ece92683d81c6164510afd12c70df29dd36bbb5971672f08bd12" title="Never use tab.">FormatStyle::UT_Never</a>;</div>
+<div class="line"><a name="l00219"></a><span class="lineno">  219</span>   LLVMStyle.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#a5a530af94f5ed0f89d8fac26894155d4" title="If true, spaces will be inserted after '(' and before ')'.">SpacesInParentheses</a> = <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00220"></a><span class="lineno">  220</span>   LLVMStyle.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#a21b252e549c87fbfb9be7dc5d63492c9" title="If false, spaces may be inserted into '()'.">SpaceInEmptyParentheses</a> = <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00221"></a><span class="lineno">  221</span>   LLVMStyle.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#afd554010a49e3cbd23f957555e6d8f8d" title="If false, spaces may be inserted into C style casts.">SpacesInCStyleCastParentheses</a> = <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00222"></a><span class="lineno">  222</span>   LLVMStyle.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#a2d9bf947c4f28a451e6360129aacc30d" title="If true, spaces will be inserted between 'for'/'if'/'while'/... and '('.">SpaceAfterControlStatementKeyword</a> = <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00223"></a><span class="lineno">  223</span>   LLVMStyle.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#a915fe4216df56e63f64b37568b82a3c3" title="If false, spaces will be removed before assignment operators.">SpaceBeforeAssignmentOperators</a> = <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00224"></a><span class="lineno">  224</span>   LLVMStyle.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#a0384417b961b70560004a52de799d7cc" title="Indent width for line continuations.">ContinuationIndentWidth</a> = 4;</div>
+<div class="line"><a name="l00225"></a><span class="lineno">  225</span>   LLVMStyle.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#ae1bb2497d3a07251af3a9fa2aa1c4ffe" title="If true, spaces will be inserted after '<' and before '>' in template argument lists...">SpacesInAngles</a> = <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00226"></a><span class="lineno">  226</span> </div>
+<div class="line"><a name="l00227"></a><span class="lineno">  227</span>   <a class="code" href="namespaceclang_1_1format.html#a0bf0dc04c250edc75420f9e2fc1dad9f">setDefaultPenalties</a>(LLVMStyle);</div>
+<div class="line"><a name="l00228"></a><span class="lineno">  228</span>   LLVMStyle.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#a96be8e4382866d0ce27a63786d5f8057" title="Penalty for putting the return type of a function onto its own line.">PenaltyReturnTypeOnItsOwnLine</a> = 60;</div>
+<div class="line"><a name="l00229"></a><span class="lineno">  229</span>   LLVMStyle.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#a2256bfa6b34a5916077066fb05ad92d2" title="The penalty for breaking a function call after "call(".">PenaltyBreakBeforeFirstCallParameter</a> = 19;</div>
+<div class="line"><a name="l00230"></a><span class="lineno">  230</span> </div>
+<div class="line"><a name="l00231"></a><span class="lineno">  231</span>   <span class="keywordflow">return</span> LLVMStyle;</div>
+<div class="line"><a name="l00232"></a><span class="lineno">  232</span> }</div>
+<div class="line"><a name="l00233"></a><span class="lineno">  233</span> </div>
+<div class="line"><a name="l00234"></a><span class="lineno"><a class="code" href="namespaceclang_1_1format.html#a069414119d622898a3b2ac8b48d08980">  234</a></span> <a class="code" href="structclang_1_1format_1_1FormatStyle.html" title="The FormatStyle is used to configure the formatting to follow specific guidelines.">FormatStyle</a> <a class="code" href="namespaceclang_1_1format.html#a069414119d622898a3b2ac8b48d08980" title="Returns a format style complying with Google's C++ style guide: http://google-styleguide.googlecode.com/svn/trunk/cppguide.xml.">getGoogleStyle</a>() {</div>
+<div class="line"><a name="l00235"></a><span class="lineno">  235</span>   <a class="code" href="structclang_1_1format_1_1FormatStyle.html" title="The FormatStyle is used to configure the formatting to follow specific guidelines.">FormatStyle</a> GoogleStyle;</div>
+<div class="line"><a name="l00236"></a><span class="lineno">  236</span>   GoogleStyle.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#a534fd6ed422571ccff12fc5864b49bc3" title="The extra indent or outdent of access modifiers, e.g. public:.">AccessModifierOffset</a> = -1;</div>
+<div class="line"><a name="l00237"></a><span class="lineno">  237</span>   GoogleStyle.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#a4d17cd37260d136936d4dfa4c65aa2d1" title="If true, aligns escaped newlines as far left as possible. Otherwise puts them into the right-most col...">AlignEscapedNewlinesLeft</a> = <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00238"></a><span class="lineno">  238</span>   GoogleStyle.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#a368a5d9261eeb7e586f5bf70e91a23a5" title="If true, aligns trailing comments.">AlignTrailingComments</a> = <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00239"></a><span class="lineno">  239</span>   GoogleStyle.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#aa6eeb36c958dfb1e4f15876c82cef2ce" title="Allow putting all parameters of a function declaration onto the next line even if BinPackParameters i...">AllowAllParametersOfDeclarationOnNextLine</a> = <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00240"></a><span class="lineno">  240</span>   GoogleStyle.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#a91cea76ad14c5e46d199d8e9aca56d8e" title="If true, if (a) return; can be put on a single line.">AllowShortIfStatementsOnASingleLine</a> = <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00241"></a><span class="lineno">  241</span>   GoogleStyle.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#a52ca039b50313d5b5de5207a8c9b2dfa" title="If true, while (true) continue; can be put on a single line.">AllowShortLoopsOnASingleLine</a> = <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00242"></a><span class="lineno">  242</span>   GoogleStyle.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#a03a80b6fa3e1785c7c59becbc621212d" title="If true, always break before multiline string literals.">AlwaysBreakBeforeMultilineStrings</a> = <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00243"></a><span class="lineno">  243</span>   GoogleStyle.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#a1cecad8e59e6cbe721865134c0823a1a" title="If true, always break after the template<...> of a template declaration.">AlwaysBreakTemplateDeclarations</a> = <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00244"></a><span class="lineno">  244</span>   GoogleStyle.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#a861528acbc8f4088e276034ce4dbbe1b" title="If false, a function call's or function definition's parameters will either all be on the same line o...">BinPackParameters</a> = <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00245"></a><span class="lineno">  245</span>   GoogleStyle.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#af02c827f82aac1f6182e575004b3ea4c" title="If true, binary operators will be placed after line breaks.">BreakBeforeBinaryOperators</a> = <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00246"></a><span class="lineno">  246</span>   GoogleStyle.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#af83c3653a76e6e749391f7d3663a8ce5" title="If true, ternary operators will be placed after line breaks.">BreakBeforeTernaryOperators</a> = <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00247"></a><span class="lineno">  247</span>   GoogleStyle.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#a7bb74cb37f57d469d6760ec09e466647" title="The brace breaking style to use.">BreakBeforeBraces</a> = <a class="code" href="structclang_1_1format_1_1FormatStyle.html#a2a6788e882cdfc0594579426e19707b3aea9196ec59731ddd6e997f063ae9cabc" title="Always attach braces to surrounding context.">FormatStyle::BS_Attach</a>;</div>
+<div class="line"><a name="l00248"></a><span class="lineno">  248</span>   GoogleStyle.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#ab817689d9226e0058764619a2a4be915" title="Always break constructor initializers before commas and align the commas with the colon...">BreakConstructorInitializersBeforeComma</a> = <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00249"></a><span class="lineno">  249</span>   GoogleStyle.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#afe9550cc9c7c93fbc3506cb0b140593c" title="The column limit.">ColumnLimit</a> = 80;</div>
+<div class="line"><a name="l00250"></a><span class="lineno">  250</span>   GoogleStyle.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#a914cb53dad8427f0f59a2ac97be860b0" title="If the constructor initializers don't fit on a line, put each initializer on its own line...">ConstructorInitializerAllOnOneLineOrOnePerLine</a> = <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00251"></a><span class="lineno">  251</span>   GoogleStyle.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#a87a31c95b98c7ba6c606237473f61981" title="The number of characters to use for indentation of constructor initializer lists.">ConstructorInitializerIndentWidth</a> = 4;</div>
+<div class="line"><a name="l00252"></a><span class="lineno">  252</span>   GoogleStyle.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#a082f72ed255395cea133365999de70a1" title="If true, format braced lists as best suited for C++11 braced lists.">Cpp11BracedListStyle</a> = <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00253"></a><span class="lineno">  253</span>   GoogleStyle.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#a4a222a69f52d7e84e16be612505b407c" title="If true, analyze the formatted file for the most common binding.">DerivePointerBinding</a> = <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00254"></a><span class="lineno">  254</span>   GoogleStyle.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#a5ecc064cf590382856b68c4568c0ce24" title="If true, clang-format detects whether function calls and definitions are formatted with one parameter...">ExperimentalAutoDetectBinPacking</a> = <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00255"></a><span class="lineno">  255</span>   GoogleStyle.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#a178999cdea92868a4f3dc332b36cc285" title="Indent case labels one level from the switch statement.">IndentCaseLabels</a> = <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00256"></a><span class="lineno">  256</span>   GoogleStyle.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#abcc4fc50942deabd17bcf25ed9c938dd" title="If true, indent when breaking function declarations which are not also definitions after the type...">IndentFunctionDeclarationAfterType</a> = <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00257"></a><span class="lineno">  257</span>   GoogleStyle.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#a0e1f96ea453f4d8fc16ab55bc31baeb2" title="The number of columns to use for indentation.">IndentWidth</a> = 2;</div>
+<div class="line"><a name="l00258"></a><span class="lineno">  258</span>   GoogleStyle.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#a488265e26e22037ba7fed6489a21028e" title="The number of columns used for tab stops.">TabWidth</a> = 8;</div>
+<div class="line"><a name="l00259"></a><span class="lineno">  259</span>   GoogleStyle.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#aafca7a61d6d72ab0adf276ace30155d5" title="The maximum number of consecutive empty lines to keep.">MaxEmptyLinesToKeep</a> = 1;</div>
+<div class="line"><a name="l00260"></a><span class="lineno">  260</span>   GoogleStyle.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#a5a74c72d0ca5b345b9d5cf6d40da0adf" title="The indentation used for namespaces.">NamespaceIndentation</a> = <a class="code" href="structclang_1_1format_1_1FormatStyle.html#a792627527ce5d5ae7372f9f95c74fc68a3c968534afc99a13a8b0bcbe43f9cc63" title="Don't indent in namespaces.">FormatStyle::NI_None</a>;</div>
+<div class="line"><a name="l00261"></a><span class="lineno">  261</span>   GoogleStyle.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#a3b0c9f0c4bb6b9b4e07704865a4acde6" title="Add a space in front of an Objective-C protocol list, i.e. use Foo <Protocol> instead of Foo<Protocol...">ObjCSpaceBeforeProtocolList</a> = <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00262"></a><span class="lineno">  262</span>   GoogleStyle.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#addd86a0c8325719b25de1677238463a6" title="Set whether & and * bind to the type as opposed to the variable.">PointerBindsToType</a> = <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00263"></a><span class="lineno">  263</span>   GoogleStyle.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#a2c45bd6563a2837d105771d0c3ea7882" title="The number of spaces to before trailing line comments.">SpacesBeforeTrailingComments</a> = 2;</div>
+<div class="line"><a name="l00264"></a><span class="lineno">  264</span>   GoogleStyle.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#a044e29dde38856beac53b1a307e444da" title="Format compatible with this standard, e.g. use A<A<int> > instead of A<A<int>> for LS_Cpp03...">Standard</a> = <a class="code" href="structclang_1_1format_1_1FormatStyle.html#a54639a373da7c4e1e7f4296b9c2adc39ad54fa310d0a1bb4f4893fab021db1eaf" title="Automatic detection based on the input.">FormatStyle::LS_Auto</a>;</div>
+<div class="line"><a name="l00265"></a><span class="lineno">  265</span>   GoogleStyle.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#af0d526918c493f4e47259fa33beddf81" title="The way to use tab characters in the resulting file.">UseTab</a> = <a class="code" href="structclang_1_1format_1_1FormatStyle.html#a45a4057e4a661ece92683d81c6164510afd12c70df29dd36bbb5971672f08bd12" title="Never use tab.">FormatStyle::UT_Never</a>;</div>
+<div class="line"><a name="l00266"></a><span class="lineno">  266</span>   GoogleStyle.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#a5a530af94f5ed0f89d8fac26894155d4" title="If true, spaces will be inserted after '(' and before ')'.">SpacesInParentheses</a> = <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00267"></a><span class="lineno">  267</span>   GoogleStyle.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#a21b252e549c87fbfb9be7dc5d63492c9" title="If false, spaces may be inserted into '()'.">SpaceInEmptyParentheses</a> = <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00268"></a><span class="lineno">  268</span>   GoogleStyle.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#afd554010a49e3cbd23f957555e6d8f8d" title="If false, spaces may be inserted into C style casts.">SpacesInCStyleCastParentheses</a> = <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00269"></a><span class="lineno">  269</span>   GoogleStyle.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#a2d9bf947c4f28a451e6360129aacc30d" title="If true, spaces will be inserted between 'for'/'if'/'while'/... and '('.">SpaceAfterControlStatementKeyword</a> = <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00270"></a><span class="lineno">  270</span>   GoogleStyle.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#a915fe4216df56e63f64b37568b82a3c3" title="If false, spaces will be removed before assignment operators.">SpaceBeforeAssignmentOperators</a> = <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00271"></a><span class="lineno">  271</span>   GoogleStyle.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#a0384417b961b70560004a52de799d7cc" title="Indent width for line continuations.">ContinuationIndentWidth</a> = 4;</div>
+<div class="line"><a name="l00272"></a><span class="lineno">  272</span>   GoogleStyle.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#ae1bb2497d3a07251af3a9fa2aa1c4ffe" title="If true, spaces will be inserted after '<' and before '>' in template argument lists...">SpacesInAngles</a> = <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00273"></a><span class="lineno">  273</span> </div>
+<div class="line"><a name="l00274"></a><span class="lineno">  274</span>   <a class="code" href="namespaceclang_1_1format.html#a0bf0dc04c250edc75420f9e2fc1dad9f">setDefaultPenalties</a>(GoogleStyle);</div>
+<div class="line"><a name="l00275"></a><span class="lineno">  275</span>   GoogleStyle.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#a96be8e4382866d0ce27a63786d5f8057" title="Penalty for putting the return type of a function onto its own line.">PenaltyReturnTypeOnItsOwnLine</a> = 200;</div>
+<div class="line"><a name="l00276"></a><span class="lineno">  276</span>   GoogleStyle.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#a2256bfa6b34a5916077066fb05ad92d2" title="The penalty for breaking a function call after "call(".">PenaltyBreakBeforeFirstCallParameter</a> = 1;</div>
+<div class="line"><a name="l00277"></a><span class="lineno">  277</span> </div>
+<div class="line"><a name="l00278"></a><span class="lineno">  278</span>   <span class="keywordflow">return</span> GoogleStyle;</div>
+<div class="line"><a name="l00279"></a><span class="lineno">  279</span> }</div>
+<div class="line"><a name="l00280"></a><span class="lineno">  280</span> </div>
+<div class="line"><a name="l00281"></a><span class="lineno"><a class="code" href="namespaceclang_1_1format.html#ab8a84310a0049cedb3afcba985164679">  281</a></span> <a class="code" href="structclang_1_1format_1_1FormatStyle.html" title="The FormatStyle is used to configure the formatting to follow specific guidelines.">FormatStyle</a> <a class="code" href="namespaceclang_1_1format.html#ab8a84310a0049cedb3afcba985164679" title="Returns a format style complying with Chromium's style guide: http://www.chromium.org/developers/coding-style.">getChromiumStyle</a>() {</div>
+<div class="line"><a name="l00282"></a><span class="lineno">  282</span>   <a class="code" href="structclang_1_1format_1_1FormatStyle.html" title="The FormatStyle is used to configure the formatting to follow specific guidelines.">FormatStyle</a> ChromiumStyle = <a class="code" href="namespaceclang_1_1format.html#a069414119d622898a3b2ac8b48d08980" title="Returns a format style complying with Google's C++ style guide: http://google-styleguide.googlecode.com/svn/trunk/cppguide.xml.">getGoogleStyle</a>();</div>
+<div class="line"><a name="l00283"></a><span class="lineno">  283</span>   ChromiumStyle.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#aa6eeb36c958dfb1e4f15876c82cef2ce" title="Allow putting all parameters of a function declaration onto the next line even if BinPackParameters i...">AllowAllParametersOfDeclarationOnNextLine</a> = <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00284"></a><span class="lineno">  284</span>   ChromiumStyle.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#a91cea76ad14c5e46d199d8e9aca56d8e" title="If true, if (a) return; can be put on a single line.">AllowShortIfStatementsOnASingleLine</a> = <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00285"></a><span class="lineno">  285</span>   ChromiumStyle.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#a52ca039b50313d5b5de5207a8c9b2dfa" title="If true, while (true) continue; can be put on a single line.">AllowShortLoopsOnASingleLine</a> = <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00286"></a><span class="lineno">  286</span>   ChromiumStyle.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#a861528acbc8f4088e276034ce4dbbe1b" title="If false, a function call's or function definition's parameters will either all be on the same line o...">BinPackParameters</a> = <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00287"></a><span class="lineno">  287</span>   ChromiumStyle.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#a4a222a69f52d7e84e16be612505b407c" title="If true, analyze the formatted file for the most common binding.">DerivePointerBinding</a> = <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00288"></a><span class="lineno">  288</span>   ChromiumStyle.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#a044e29dde38856beac53b1a307e444da" title="Format compatible with this standard, e.g. use A<A<int> > instead of A<A<int>> for LS_Cpp03...">Standard</a> = <a class="code" href="structclang_1_1format_1_1FormatStyle.html#a54639a373da7c4e1e7f4296b9c2adc39ad690e77384ec0503c47e9f4e238a58a5" title="Use C++03-compatible syntax.">FormatStyle::LS_Cpp03</a>;</div>
+<div class="line"><a name="l00289"></a><span class="lineno">  289</span>   <span class="keywordflow">return</span> ChromiumStyle;</div>
+<div class="line"><a name="l00290"></a><span class="lineno">  290</span> }</div>
+<div class="line"><a name="l00291"></a><span class="lineno">  291</span> </div>
+<div class="line"><a name="l00292"></a><span class="lineno"><a class="code" href="namespaceclang_1_1format.html#aa342c0dc9c7831f9b8571c3ef81637d6">  292</a></span> <a class="code" href="structclang_1_1format_1_1FormatStyle.html" title="The FormatStyle is used to configure the formatting to follow specific guidelines.">FormatStyle</a> <a class="code" href="namespaceclang_1_1format.html#aa342c0dc9c7831f9b8571c3ef81637d6" title="Returns a format style complying with Mozilla's style guide: https://developer.mozilla.org/en-US/docs/Developer_Guide/Coding_Style.">getMozillaStyle</a>() {</div>
+<div class="line"><a name="l00293"></a><span class="lineno">  293</span>   <a class="code" href="structclang_1_1format_1_1FormatStyle.html" title="The FormatStyle is used to configure the formatting to follow specific guidelines.">FormatStyle</a> MozillaStyle = <a class="code" href="namespaceclang_1_1format.html#aafb8657f00b80e806e1971948922c83f" title="Returns a format style complying with the LLVM coding standards: http://llvm.org/docs/CodingStandards...">getLLVMStyle</a>();</div>
+<div class="line"><a name="l00294"></a><span class="lineno">  294</span>   MozillaStyle.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#aa6eeb36c958dfb1e4f15876c82cef2ce" title="Allow putting all parameters of a function declaration onto the next line even if BinPackParameters i...">AllowAllParametersOfDeclarationOnNextLine</a> = <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00295"></a><span class="lineno">  295</span>   MozillaStyle.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#a914cb53dad8427f0f59a2ac97be860b0" title="If the constructor initializers don't fit on a line, put each initializer on its own line...">ConstructorInitializerAllOnOneLineOrOnePerLine</a> = <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00296"></a><span class="lineno">  296</span>   MozillaStyle.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#a4a222a69f52d7e84e16be612505b407c" title="If true, analyze the formatted file for the most common binding.">DerivePointerBinding</a> = <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00297"></a><span class="lineno">  297</span>   MozillaStyle.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#a178999cdea92868a4f3dc332b36cc285" title="Indent case labels one level from the switch statement.">IndentCaseLabels</a> = <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00298"></a><span class="lineno">  298</span>   MozillaStyle.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#a3b0c9f0c4bb6b9b4e07704865a4acde6" title="Add a space in front of an Objective-C protocol list, i.e. use Foo <Protocol> instead of Foo<Protocol...">ObjCSpaceBeforeProtocolList</a> = <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00299"></a><span class="lineno">  299</span>   MozillaStyle.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#a96be8e4382866d0ce27a63786d5f8057" title="Penalty for putting the return type of a function onto its own line.">PenaltyReturnTypeOnItsOwnLine</a> = 200;</div>
+<div class="line"><a name="l00300"></a><span class="lineno">  300</span>   MozillaStyle.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#addd86a0c8325719b25de1677238463a6" title="Set whether & and * bind to the type as opposed to the variable.">PointerBindsToType</a> = <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00301"></a><span class="lineno">  301</span>   <span class="keywordflow">return</span> MozillaStyle;</div>
+<div class="line"><a name="l00302"></a><span class="lineno">  302</span> }</div>
+<div class="line"><a name="l00303"></a><span class="lineno">  303</span> </div>
+<div class="line"><a name="l00304"></a><span class="lineno"><a class="code" href="namespaceclang_1_1format.html#a1614d4d536703b03a0b101ec206b4ea8">  304</a></span> <a class="code" href="structclang_1_1format_1_1FormatStyle.html" title="The FormatStyle is used to configure the formatting to follow specific guidelines.">FormatStyle</a> <a class="code" href="namespaceclang_1_1format.html#a1614d4d536703b03a0b101ec206b4ea8" title="Returns a format style complying with Webkit's style guide: http://www.webkit.org/coding/coding-style...">getWebKitStyle</a>() {</div>
+<div class="line"><a name="l00305"></a><span class="lineno">  305</span>   <a class="code" href="structclang_1_1format_1_1FormatStyle.html" title="The FormatStyle is used to configure the formatting to follow specific guidelines.">FormatStyle</a> <a class="code" href="Format_8cpp.html#abc577d80f3639e98f6457dd375101eab">Style</a> = <a class="code" href="namespaceclang_1_1format.html#aafb8657f00b80e806e1971948922c83f" title="Returns a format style complying with the LLVM coding standards: http://llvm.org/docs/CodingStandards...">getLLVMStyle</a>();</div>
+<div class="line"><a name="l00306"></a><span class="lineno">  306</span>   Style.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#a534fd6ed422571ccff12fc5864b49bc3" title="The extra indent or outdent of access modifiers, e.g. public:.">AccessModifierOffset</a> = -4;</div>
+<div class="line"><a name="l00307"></a><span class="lineno">  307</span>   Style.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#a368a5d9261eeb7e586f5bf70e91a23a5" title="If true, aligns trailing comments.">AlignTrailingComments</a> = <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00308"></a><span class="lineno">  308</span>   Style.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#af02c827f82aac1f6182e575004b3ea4c" title="If true, binary operators will be placed after line breaks.">BreakBeforeBinaryOperators</a> = <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00309"></a><span class="lineno">  309</span>   Style.<a class="code" href="structclang_1_1format_1_1FormatStyle.html#a7bb74cb37f57d469d6760ec09e466647" title="The brace breaking style to use.">BreakBeforeBraces</a> = <a class="code" href="structclang_1_1format_1_1FormatStyle.html#a2a6788e882cdfc0594579426e19707b3a791f92a5