[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/AttrParsedAttrKinds_8inc_source.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/3.5.1/tools/clang/docs/doxygen/html/AttrParsedAttrKinds_8inc_source.html?rev=225843&view=auto
==============================================================================
--- www-releases/trunk/3.5.1/tools/clang/docs/doxygen/html/AttrParsedAttrKinds_8inc_source.html (added)
+++ www-releases/trunk/3.5.1/tools/clang/docs/doxygen/html/AttrParsedAttrKinds_8inc_source.html Tue Jan 13 16:55:20 2015
@@ -0,0 +1,1515 @@
+<!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: AttrParsedAttrKinds.inc 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_d527ffe6334522956bc19a2da6aab47c.html">Sema</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">AttrParsedAttrKinds.inc</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="AttrParsedAttrKinds_8inc.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">/*===- TableGen'erated file -------------------------------------*- 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">|*Attribute name matcher                                                      *|</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">|* Automatically generated file, do not edit!                                 *|</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span> <span class="comment">|*                                                                            *|</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> </div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span> <span class="keyword">static</span> <a class="code" href="ChrootChecker_8cpp.html#aa10c9e8951b8ccf714a59ec321bdac5b">AttributeList::Kind</a> getAttrKind(StringRef Name) {</div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>   <span class="keywordflow">switch</span> (Name.size()) {</div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span>   <span class="keywordflow">default</span>: <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>   <span class="keywordflow">case</span> 3:  <span class="comment">// 2 strings to match.</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>     <span class="keywordflow">switch</span> (Name[0]) {</div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span>     <span class="keywordflow">default</span>: <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span>     <span class="keywordflow">case</span> <span class="charliteral">'h'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"ot"</span>, 2))</div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span>       <span class="keywordflow">return</span> AttributeList::AT_Hot;  <span class="comment">// "hot"</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span>     <span class="keywordflow">case</span> <span class="charliteral">'p'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"cs"</span>, 2))</div>
+<div class="line"><a name="l00021"></a><span class="lineno">   21</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00022"></a><span class="lineno">   22</span>       <span class="keywordflow">return</span> AttributeList::AT_Pcs;  <span class="comment">// "pcs"</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="keywordflow">break</span>;</div>
+<div class="line"><a name="l00025"></a><span class="lineno">   25</span>   <span class="keywordflow">case</span> 4:  <span class="comment">// 7 strings to match.</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno">   26</span>     <span class="keywordflow">switch</span> (Name[0]) {</div>
+<div class="line"><a name="l00027"></a><span class="lineno">   27</span>     <span class="keywordflow">default</span>: <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00028"></a><span class="lineno">   28</span>     <span class="keywordflow">case</span> <span class="charliteral">'c'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno">   29</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"old"</span>, 3))</div>
+<div class="line"><a name="l00030"></a><span class="lineno">   30</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00031"></a><span class="lineno">   31</span>       <span class="keywordflow">return</span> AttributeList::AT_Cold;   <span class="comment">// "cold"</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno">   32</span>     <span class="keywordflow">case</span> <span class="charliteral">'h'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno">   33</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"ost"</span>, 3))</div>
+<div class="line"><a name="l00034"></a><span class="lineno">   34</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00035"></a><span class="lineno">   35</span>       <span class="keywordflow">return</span> AttributeList::AT_CUDAHost;   <span class="comment">// "host"</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno">   36</span>     <span class="keywordflow">case</span> <span class="charliteral">'m'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00037"></a><span class="lineno">   37</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"ode"</span>, 3))</div>
+<div class="line"><a name="l00038"></a><span class="lineno">   38</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00039"></a><span class="lineno">   39</span>       <span class="keywordflow">return</span> AttributeList::AT_Mode;   <span class="comment">// "mode"</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno">   40</span>     <span class="keywordflow">case</span> <span class="charliteral">'p'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00041"></a><span class="lineno">   41</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"ure"</span>, 3))</div>
+<div class="line"><a name="l00042"></a><span class="lineno">   42</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00043"></a><span class="lineno">   43</span>       <span class="keywordflow">return</span> AttributeList::AT_Pure;   <span class="comment">// "pure"</span></div>
+<div class="line"><a name="l00044"></a><span class="lineno">   44</span>     <span class="keywordflow">case</span> <span class="charliteral">'u'</span>:  <span class="comment">// 2 strings to match.</span></div>
+<div class="line"><a name="l00045"></a><span class="lineno">   45</span>       <span class="keywordflow">switch</span> (Name[1]) {</div>
+<div class="line"><a name="l00046"></a><span class="lineno">   46</span>       <span class="keywordflow">default</span>: <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00047"></a><span class="lineno">   47</span>       <span class="keywordflow">case</span> <span class="charliteral">'s'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00048"></a><span class="lineno">   48</span>         <span class="keywordflow">if</span> (memcmp(Name.data()+2, <span class="stringliteral">"ed"</span>, 2))</div>
+<div class="line"><a name="l00049"></a><span class="lineno">   49</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00050"></a><span class="lineno">   50</span>         <span class="keywordflow">return</span> AttributeList::AT_Used;   <span class="comment">// "used"</span></div>
+<div class="line"><a name="l00051"></a><span class="lineno">   51</span>       <span class="keywordflow">case</span> <span class="charliteral">'u'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00052"></a><span class="lineno">   52</span>         <span class="keywordflow">if</span> (memcmp(Name.data()+2, <span class="stringliteral">"id"</span>, 2))</div>
+<div class="line"><a name="l00053"></a><span class="lineno">   53</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00054"></a><span class="lineno">   54</span>         <span class="keywordflow">return</span> AttributeList::AT_Uuid;   <span class="comment">// "uuid"</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>     <span class="keywordflow">case</span> <span class="charliteral">'w'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00058"></a><span class="lineno">   58</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"eak"</span>, 3))</div>
+<div class="line"><a name="l00059"></a><span class="lineno">   59</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00060"></a><span class="lineno">   60</span>       <span class="keywordflow">return</span> AttributeList::AT_Weak;   <span class="comment">// "weak"</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>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00063"></a><span class="lineno">   63</span>   <span class="keywordflow">case</span> 5:  <span class="comment">// 6 strings to match.</span></div>
+<div class="line"><a name="l00064"></a><span class="lineno">   64</span>     <span class="keywordflow">switch</span> (Name[0]) {</div>
+<div class="line"><a name="l00065"></a><span class="lineno">   65</span>     <span class="keywordflow">default</span>: <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00066"></a><span class="lineno">   66</span>     <span class="keywordflow">case</span> <span class="charliteral">'_'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00067"></a><span class="lineno">   67</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"_w64"</span>, 4))</div>
+<div class="line"><a name="l00068"></a><span class="lineno">   68</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00069"></a><span class="lineno">   69</span>       <span class="keywordflow">return</span> AttributeList::AT_Win64;  <span class="comment">// "__w64"</span></div>
+<div class="line"><a name="l00070"></a><span class="lineno">   70</span>     <span class="keywordflow">case</span> <span class="charliteral">'a'</span>:  <span class="comment">// 2 strings to match.</span></div>
+<div class="line"><a name="l00071"></a><span class="lineno">   71</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"li"</span>, 2))</div>
+<div class="line"><a name="l00072"></a><span class="lineno">   72</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00073"></a><span class="lineno">   73</span>       <span class="keywordflow">switch</span> (Name[3]) {</div>
+<div class="line"><a name="l00074"></a><span class="lineno">   74</span>       <span class="keywordflow">default</span>: <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00075"></a><span class="lineno">   75</span>       <span class="keywordflow">case</span> <span class="charliteral">'a'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00076"></a><span class="lineno">   76</span>         <span class="keywordflow">if</span> (Name[4] != <span class="charliteral">'s'</span>)</div>
+<div class="line"><a name="l00077"></a><span class="lineno">   77</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00078"></a><span class="lineno">   78</span>         <span class="keywordflow">return</span> AttributeList::AT_Alias;  <span class="comment">// "alias"</span></div>
+<div class="line"><a name="l00079"></a><span class="lineno">   79</span>       <span class="keywordflow">case</span> <span class="charliteral">'g'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00080"></a><span class="lineno">   80</span>         <span class="keywordflow">if</span> (Name[4] != <span class="charliteral">'n'</span>)</div>
+<div class="line"><a name="l00081"></a><span class="lineno">   81</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00082"></a><span class="lineno">   82</span>         <span class="keywordflow">return</span> AttributeList::AT_Aligned;  <span class="comment">// "align"</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>       <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00085"></a><span class="lineno">   85</span>     <span class="keywordflow">case</span> <span class="charliteral">'c'</span>:  <span class="comment">// 2 strings to match.</span></div>
+<div class="line"><a name="l00086"></a><span class="lineno">   86</span>       <span class="keywordflow">switch</span> (Name[1]) {</div>
+<div class="line"><a name="l00087"></a><span class="lineno">   87</span>       <span class="keywordflow">default</span>: <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00088"></a><span class="lineno">   88</span>       <span class="keywordflow">case</span> <span class="charliteral">'d'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00089"></a><span class="lineno">   89</span>         <span class="keywordflow">if</span> (memcmp(Name.data()+2, <span class="stringliteral">"ecl"</span>, 3))</div>
+<div class="line"><a name="l00090"></a><span class="lineno">   90</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00091"></a><span class="lineno">   91</span>         <span class="keywordflow">return</span> AttributeList::AT_CDecl;  <span class="comment">// "cdecl"</span></div>
+<div class="line"><a name="l00092"></a><span class="lineno">   92</span>       <span class="keywordflow">case</span> <span class="charliteral">'o'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00093"></a><span class="lineno">   93</span>         <span class="keywordflow">if</span> (memcmp(Name.data()+2, <span class="stringliteral">"nst"</span>, 3))</div>
+<div class="line"><a name="l00094"></a><span class="lineno">   94</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00095"></a><span class="lineno">   95</span>         <span class="keywordflow">return</span> AttributeList::AT_Const;  <span class="comment">// "const"</span></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">break</span>;</div>
+<div class="line"><a name="l00098"></a><span class="lineno">   98</span>     <span class="keywordflow">case</span> <span class="charliteral">'n'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00099"></a><span class="lineno">   99</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"aked"</span>, 4))</div>
+<div class="line"><a name="l00100"></a><span class="lineno">  100</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00101"></a><span class="lineno">  101</span>       <span class="keywordflow">return</span> AttributeList::AT_Naked;  <span class="comment">// "naked"</span></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>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00104"></a><span class="lineno">  104</span>   <span class="keywordflow">case</span> 6:  <span class="comment">// 16 strings to match.</span></div>
+<div class="line"><a name="l00105"></a><span class="lineno">  105</span>     <span class="keywordflow">switch</span> (Name[0]) {</div>
+<div class="line"><a name="l00106"></a><span class="lineno">  106</span>     <span class="keywordflow">default</span>: <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00107"></a><span class="lineno">  107</span>     <span class="keywordflow">case</span> <span class="charliteral">'_'</span>:  <span class="comment">// 3 strings to match.</span></div>
+<div class="line"><a name="l00108"></a><span class="lineno">  108</span>       <span class="keywordflow">switch</span> (Name[1]) {</div>
+<div class="line"><a name="l00109"></a><span class="lineno">  109</span>       <span class="keywordflow">default</span>: <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00110"></a><span class="lineno">  110</span>       <span class="keywordflow">case</span> <span class="charliteral">'_'</span>:  <span class="comment">// 2 strings to match.</span></div>
+<div class="line"><a name="l00111"></a><span class="lineno">  111</span>         <span class="keywordflow">switch</span> (Name[2]) {</div>
+<div class="line"><a name="l00112"></a><span class="lineno">  112</span>         <span class="keywordflow">default</span>: <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00113"></a><span class="lineno">  113</span>         <span class="keywordflow">case</span> <span class="charliteral">'s'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00114"></a><span class="lineno">  114</span>           <span class="keywordflow">if</span> (memcmp(Name.data()+3, <span class="stringliteral">"ptr"</span>, 3))</div>
+<div class="line"><a name="l00115"></a><span class="lineno">  115</span>             <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00116"></a><span class="lineno">  116</span>           <span class="keywordflow">return</span> AttributeList::AT_SPtr;   <span class="comment">// "__sptr"</span></div>
+<div class="line"><a name="l00117"></a><span class="lineno">  117</span>         <span class="keywordflow">case</span> <span class="charliteral">'u'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00118"></a><span class="lineno">  118</span>           <span class="keywordflow">if</span> (memcmp(Name.data()+3, <span class="stringliteral">"ptr"</span>, 3))</div>
+<div class="line"><a name="l00119"></a><span class="lineno">  119</span>             <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00120"></a><span class="lineno">  120</span>           <span class="keywordflow">return</span> AttributeList::AT_UPtr;   <span class="comment">// "__uptr"</span></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>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00123"></a><span class="lineno">  123</span>       <span class="keywordflow">case</span> <span class="charliteral">'c'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00124"></a><span class="lineno">  124</span>         <span class="keywordflow">if</span> (memcmp(Name.data()+2, <span class="stringliteral">"decl"</span>, 4))</div>
+<div class="line"><a name="l00125"></a><span class="lineno">  125</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00126"></a><span class="lineno">  126</span>         <span class="keywordflow">return</span> AttributeList::AT_CDecl;  <span class="comment">// "_cdecl"</span></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>       <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00129"></a><span class="lineno">  129</span>     <span class="keywordflow">case</span> <span class="charliteral">'b'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00130"></a><span class="lineno">  130</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"locks"</span>, 5))</div>
+<div class="line"><a name="l00131"></a><span class="lineno">  131</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00132"></a><span class="lineno">  132</span>       <span class="keywordflow">return</span> AttributeList::AT_Blocks;   <span class="comment">// "blocks"</span></div>
+<div class="line"><a name="l00133"></a><span class="lineno">  133</span>     <span class="keywordflow">case</span> <span class="charliteral">'c'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00134"></a><span class="lineno">  134</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"ommon"</span>, 5))</div>
+<div class="line"><a name="l00135"></a><span class="lineno">  135</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00136"></a><span class="lineno">  136</span>       <span class="keywordflow">return</span> AttributeList::AT_Common;   <span class="comment">// "common"</span></div>
+<div class="line"><a name="l00137"></a><span class="lineno">  137</span>     <span class="keywordflow">case</span> <span class="charliteral">'d'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00138"></a><span class="lineno">  138</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"evice"</span>, 5))</div>
+<div class="line"><a name="l00139"></a><span class="lineno">  139</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00140"></a><span class="lineno">  140</span>       <span class="keywordflow">return</span> AttributeList::AT_CUDADevice;   <span class="comment">// "device"</span></div>
+<div class="line"><a name="l00141"></a><span class="lineno">  141</span>     <span class="keywordflow">case</span> <span class="charliteral">'f'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00142"></a><span class="lineno">  142</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"ormat"</span>, 5))</div>
+<div class="line"><a name="l00143"></a><span class="lineno">  143</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00144"></a><span class="lineno">  144</span>       <span class="keywordflow">return</span> AttributeList::AT_Format;   <span class="comment">// "format"</span></div>
+<div class="line"><a name="l00145"></a><span class="lineno">  145</span>     <span class="keywordflow">case</span> <span class="charliteral">'g'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00146"></a><span class="lineno">  146</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"lobal"</span>, 5))</div>
+<div class="line"><a name="l00147"></a><span class="lineno">  147</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00148"></a><span class="lineno">  148</span>       <span class="keywordflow">return</span> AttributeList::AT_CUDAGlobal;   <span class="comment">// "global"</span></div>
+<div class="line"><a name="l00149"></a><span class="lineno">  149</span>     <span class="keywordflow">case</span> <span class="charliteral">'k'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00150"></a><span class="lineno">  150</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"ernel"</span>, 5))</div>
+<div class="line"><a name="l00151"></a><span class="lineno">  151</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00152"></a><span class="lineno">  152</span>       <span class="keywordflow">return</span> AttributeList::AT_OpenCLKernel;   <span class="comment">// "kernel"</span></div>
+<div class="line"><a name="l00153"></a><span class="lineno">  153</span>     <span class="keywordflow">case</span> <span class="charliteral">'m'</span>:  <span class="comment">// 3 strings to match.</span></div>
+<div class="line"><a name="l00154"></a><span class="lineno">  154</span>       <span class="keywordflow">switch</span> (Name[1]) {</div>
+<div class="line"><a name="l00155"></a><span class="lineno">  155</span>       <span class="keywordflow">default</span>: <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00156"></a><span class="lineno">  156</span>       <span class="keywordflow">case</span> <span class="charliteral">'a'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00157"></a><span class="lineno">  157</span>         <span class="keywordflow">if</span> (memcmp(Name.data()+2, <span class="stringliteral">"lloc"</span>, 4))</div>
+<div class="line"><a name="l00158"></a><span class="lineno">  158</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00159"></a><span class="lineno">  159</span>         <span class="keywordflow">return</span> AttributeList::AT_Malloc;   <span class="comment">// "malloc"</span></div>
+<div class="line"><a name="l00160"></a><span class="lineno">  160</span>       <span class="keywordflow">case</span> <span class="charliteral">'i'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00161"></a><span class="lineno">  161</span>         <span class="keywordflow">if</span> (memcmp(Name.data()+2, <span class="stringliteral">"ps16"</span>, 4))</div>
+<div class="line"><a name="l00162"></a><span class="lineno">  162</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00163"></a><span class="lineno">  163</span>         <span class="keywordflow">return</span> AttributeList::AT_Mips16;   <span class="comment">// "mips16"</span></div>
+<div class="line"><a name="l00164"></a><span class="lineno">  164</span>       <span class="keywordflow">case</span> <span class="charliteral">'s'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00165"></a><span class="lineno">  165</span>         <span class="keywordflow">if</span> (memcmp(Name.data()+2, <span class="stringliteral">"_abi"</span>, 4))</div>
+<div class="line"><a name="l00166"></a><span class="lineno">  166</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00167"></a><span class="lineno">  167</span>         <span class="keywordflow">return</span> AttributeList::AT_MSABI;  <span class="comment">// "ms_abi"</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>       <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00170"></a><span class="lineno">  170</span>     <span class="keywordflow">case</span> <span class="charliteral">'p'</span>:  <span class="comment">// 2 strings to match.</span></div>
+<div class="line"><a name="l00171"></a><span class="lineno">  171</span>       <span class="keywordflow">if</span> (Name[1] != <span class="charliteral">'a'</span>)</div>
+<div class="line"><a name="l00172"></a><span class="lineno">  172</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00173"></a><span class="lineno">  173</span>       <span class="keywordflow">switch</span> (Name[2]) {</div>
+<div class="line"><a name="l00174"></a><span class="lineno">  174</span>       <span class="keywordflow">default</span>: <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00175"></a><span class="lineno">  175</span>       <span class="keywordflow">case</span> <span class="charliteral">'c'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00176"></a><span class="lineno">  176</span>         <span class="keywordflow">if</span> (memcmp(Name.data()+3, <span class="stringliteral">"ked"</span>, 3))</div>
+<div class="line"><a name="l00177"></a><span class="lineno">  177</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00178"></a><span class="lineno">  178</span>         <span class="keywordflow">return</span> AttributeList::AT_Packed;   <span class="comment">// "packed"</span></div>
+<div class="line"><a name="l00179"></a><span class="lineno">  179</span>       <span class="keywordflow">case</span> <span class="charliteral">'s'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00180"></a><span class="lineno">  180</span>         <span class="keywordflow">if</span> (memcmp(Name.data()+3, <span class="stringliteral">"cal"</span>, 3))</div>
+<div class="line"><a name="l00181"></a><span class="lineno">  181</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00182"></a><span class="lineno">  182</span>         <span class="keywordflow">return</span> AttributeList::AT_Pascal;   <span class="comment">// "pascal"</span></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>       <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00185"></a><span class="lineno">  185</span>     <span class="keywordflow">case</span> <span class="charliteral">'s'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00186"></a><span class="lineno">  186</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"hared"</span>, 5))</div>
+<div class="line"><a name="l00187"></a><span class="lineno">  187</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00188"></a><span class="lineno">  188</span>       <span class="keywordflow">return</span> AttributeList::AT_CUDAShared;   <span class="comment">// "shared"</span></div>
+<div class="line"><a name="l00189"></a><span class="lineno">  189</span>     <span class="keywordflow">case</span> <span class="charliteral">'u'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00190"></a><span class="lineno">  190</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"nused"</span>, 5))</div>
+<div class="line"><a name="l00191"></a><span class="lineno">  191</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00192"></a><span class="lineno">  192</span>       <span class="keywordflow">return</span> AttributeList::AT_Unused;   <span class="comment">// "unused"</span></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>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00195"></a><span class="lineno">  195</span>   <span class="keywordflow">case</span> 7:  <span class="comment">// 18 strings to match.</span></div>
+<div class="line"><a name="l00196"></a><span class="lineno">  196</span>     <span class="keywordflow">switch</span> (Name[0]) {</div>
+<div class="line"><a name="l00197"></a><span class="lineno">  197</span>     <span class="keywordflow">default</span>: <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00198"></a><span class="lineno">  198</span>     <span class="keywordflow">case</span> <span class="charliteral">'_'</span>:  <span class="comment">// 5 strings to match.</span></div>
+<div class="line"><a name="l00199"></a><span class="lineno">  199</span>       <span class="keywordflow">switch</span> (Name[1]) {</div>
+<div class="line"><a name="l00200"></a><span class="lineno">  200</span>       <span class="keywordflow">default</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">'_'</span>:  <span class="comment">// 4 strings to match.</span></div>
+<div class="line"><a name="l00202"></a><span class="lineno">  202</span>         <span class="keywordflow">switch</span> (Name[2]) {</div>
+<div class="line"><a name="l00203"></a><span class="lineno">  203</span>         <span class="keywordflow">default</span>: <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">'c'</span>:  <span class="comment">// 2 strings to match.</span></div>
+<div class="line"><a name="l00205"></a><span class="lineno">  205</span>           <span class="keywordflow">switch</span> (Name[3]) {</div>
+<div class="line"><a name="l00206"></a><span class="lineno">  206</span>           <span class="keywordflow">default</span>: <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00207"></a><span class="lineno">  207</span>           <span class="keywordflow">case</span> <span class="charliteral">'d'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00208"></a><span class="lineno">  208</span>             <span class="keywordflow">if</span> (memcmp(Name.data()+4, <span class="stringliteral">"ecl"</span>, 3))</div>
+<div class="line"><a name="l00209"></a><span class="lineno">  209</span>               <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00210"></a><span class="lineno">  210</span>             <span class="keywordflow">return</span> AttributeList::AT_CDecl;  <span class="comment">// "__cdecl"</span></div>
+<div class="line"><a name="l00211"></a><span class="lineno">  211</span>           <span class="keywordflow">case</span> <span class="charliteral">'o'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00212"></a><span class="lineno">  212</span>             <span class="keywordflow">if</span> (memcmp(Name.data()+4, <span class="stringliteral">"nst"</span>, 3))</div>
+<div class="line"><a name="l00213"></a><span class="lineno">  213</span>               <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00214"></a><span class="lineno">  214</span>             <span class="keywordflow">return</span> AttributeList::AT_Const;  <span class="comment">// "__const"</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>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00217"></a><span class="lineno">  217</span>         <span class="keywordflow">case</span> <span class="charliteral">'p'</span>:  <span class="comment">// 2 strings to match.</span></div>
+<div class="line"><a name="l00218"></a><span class="lineno">  218</span>           <span class="keywordflow">if</span> (memcmp(Name.data()+3, <span class="stringliteral">"tr"</span>, 2))</div>
+<div class="line"><a name="l00219"></a><span class="lineno">  219</span>             <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00220"></a><span class="lineno">  220</span>           <span class="keywordflow">switch</span> (Name[5]) {</div>
+<div class="line"><a name="l00221"></a><span class="lineno">  221</span>           <span class="keywordflow">default</span>: <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00222"></a><span class="lineno">  222</span>           <span class="keywordflow">case</span> <span class="charliteral">'3'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00223"></a><span class="lineno">  223</span>             <span class="keywordflow">if</span> (Name[6] != <span class="charliteral">'2'</span>)</div>
+<div class="line"><a name="l00224"></a><span class="lineno">  224</span>               <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00225"></a><span class="lineno">  225</span>             <span class="keywordflow">return</span> AttributeList::AT_Ptr32;  <span class="comment">// "__ptr32"</span></div>
+<div class="line"><a name="l00226"></a><span class="lineno">  226</span>           <span class="keywordflow">case</span> <span class="charliteral">'6'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00227"></a><span class="lineno">  227</span>             <span class="keywordflow">if</span> (Name[6] != <span class="charliteral">'4'</span>)</div>
+<div class="line"><a name="l00228"></a><span class="lineno">  228</span>               <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00229"></a><span class="lineno">  229</span>             <span class="keywordflow">return</span> AttributeList::AT_Ptr64;  <span class="comment">// "__ptr64"</span></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">break</span>;</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>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00234"></a><span class="lineno">  234</span>       <span class="keywordflow">case</span> <span class="charliteral">'p'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00235"></a><span class="lineno">  235</span>         <span class="keywordflow">if</span> (memcmp(Name.data()+2, <span class="stringliteral">"ascal"</span>, 5))</div>
+<div class="line"><a name="l00236"></a><span class="lineno">  236</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00237"></a><span class="lineno">  237</span>         <span class="keywordflow">return</span> AttributeList::AT_Pascal;   <span class="comment">// "_pascal"</span></div>
+<div class="line"><a name="l00238"></a><span class="lineno">  238</span>       }</div>
+<div class="line"><a name="l00239"></a><span class="lineno">  239</span>       <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00240"></a><span class="lineno">  240</span>     <span class="keywordflow">case</span> <span class="charliteral">'a'</span>:  <span class="comment">// 2 strings to match.</span></div>
+<div class="line"><a name="l00241"></a><span class="lineno">  241</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"lign"</span>, 4))</div>
+<div class="line"><a name="l00242"></a><span class="lineno">  242</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00243"></a><span class="lineno">  243</span>       <span class="keywordflow">switch</span> (Name[5]) {</div>
+<div class="line"><a name="l00244"></a><span class="lineno">  244</span>       <span class="keywordflow">default</span>: <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00245"></a><span class="lineno">  245</span>       <span class="keywordflow">case</span> <span class="charliteral">'a'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00246"></a><span class="lineno">  246</span>         <span class="keywordflow">if</span> (Name[6] != <span class="charliteral">'s'</span>)</div>
+<div class="line"><a name="l00247"></a><span class="lineno">  247</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00248"></a><span class="lineno">  248</span>         <span class="keywordflow">return</span> AttributeList::AT_Aligned;  <span class="comment">// "alignas"</span></div>
+<div class="line"><a name="l00249"></a><span class="lineno">  249</span>       <span class="keywordflow">case</span> <span class="charliteral">'e'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00250"></a><span class="lineno">  250</span>         <span class="keywordflow">if</span> (Name[6] != <span class="charliteral">'d'</span>)</div>
+<div class="line"><a name="l00251"></a><span class="lineno">  251</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00252"></a><span class="lineno">  252</span>         <span class="keywordflow">return</span> AttributeList::AT_Aligned;  <span class="comment">// "aligned"</span></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>       <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00255"></a><span class="lineno">  255</span>     <span class="keywordflow">case</span> <span class="charliteral">'b'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00256"></a><span class="lineno">  256</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"ounded"</span>, 6))</div>
+<div class="line"><a name="l00257"></a><span class="lineno">  257</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00258"></a><span class="lineno">  258</span>       <span class="keywordflow">return</span> AttributeList::IgnoredAttribute;  <span class="comment">// "bounded"</span></div>
+<div class="line"><a name="l00259"></a><span class="lineno">  259</span>     <span class="keywordflow">case</span> <span class="charliteral">'c'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00260"></a><span class="lineno">  260</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"leanup"</span>, 6))</div>
+<div class="line"><a name="l00261"></a><span class="lineno">  261</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00262"></a><span class="lineno">  262</span>       <span class="keywordflow">return</span> AttributeList::AT_Cleanup;  <span class="comment">// "cleanup"</span></div>
+<div class="line"><a name="l00263"></a><span class="lineno">  263</span>     <span class="keywordflow">case</span> <span class="charliteral">'m'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00264"></a><span class="lineno">  264</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"insize"</span>, 6))</div>
+<div class="line"><a name="l00265"></a><span class="lineno">  265</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00266"></a><span class="lineno">  266</span>       <span class="keywordflow">return</span> AttributeList::AT_MinSize;  <span class="comment">// "minsize"</span></div>
+<div class="line"><a name="l00267"></a><span class="lineno">  267</span>     <span class="keywordflow">case</span> <span class="charliteral">'n'</span>:  <span class="comment">// 3 strings to match.</span></div>
+<div class="line"><a name="l00268"></a><span class="lineno">  268</span>       <span class="keywordflow">if</span> (Name[1] != <span class="charliteral">'o'</span>)</div>
+<div class="line"><a name="l00269"></a><span class="lineno">  269</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00270"></a><span class="lineno">  270</span>       <span class="keywordflow">switch</span> (Name[2]) {</div>
+<div class="line"><a name="l00271"></a><span class="lineno">  271</span>       <span class="keywordflow">default</span>: <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00272"></a><span class="lineno">  272</span>       <span class="keywordflow">case</span> <span class="charliteral">'d'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00273"></a><span class="lineno">  273</span>         <span class="keywordflow">if</span> (memcmp(Name.data()+3, <span class="stringliteral">"ebug"</span>, 4))</div>
+<div class="line"><a name="l00274"></a><span class="lineno">  274</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00275"></a><span class="lineno">  275</span>         <span class="keywordflow">return</span> AttributeList::AT_NoDebug;  <span class="comment">// "nodebug"</span></div>
+<div class="line"><a name="l00276"></a><span class="lineno">  276</span>       <span class="keywordflow">case</span> <span class="charliteral">'n'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00277"></a><span class="lineno">  277</span>         <span class="keywordflow">if</span> (memcmp(Name.data()+3, <span class="stringliteral">"null"</span>, 4))</div>
+<div class="line"><a name="l00278"></a><span class="lineno">  278</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00279"></a><span class="lineno">  279</span>         <span class="keywordflow">return</span> AttributeList::AT_NonNull;  <span class="comment">// "nonnull"</span></div>
+<div class="line"><a name="l00280"></a><span class="lineno">  280</span>       <span class="keywordflow">case</span> <span class="charliteral">'t'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00281"></a><span class="lineno">  281</span>         <span class="keywordflow">if</span> (memcmp(Name.data()+3, <span class="stringliteral">"hrow"</span>, 4))</div>
+<div class="line"><a name="l00282"></a><span class="lineno">  282</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00283"></a><span class="lineno">  283</span>         <span class="keywordflow">return</span> AttributeList::AT_NoThrow;  <span class="comment">// "nothrow"</span></div>
+<div class="line"><a name="l00284"></a><span class="lineno">  284</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> <span class="charliteral">'o'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00287"></a><span class="lineno">  287</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"bjc_gc"</span>, 6))</div>
+<div class="line"><a name="l00288"></a><span class="lineno">  288</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00289"></a><span class="lineno">  289</span>       <span class="keywordflow">return</span> AttributeList::AT_ObjCGC;   <span class="comment">// "objc_gc"</span></div>
+<div class="line"><a name="l00290"></a><span class="lineno">  290</span>     <span class="keywordflow">case</span> <span class="charliteral">'r'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00291"></a><span class="lineno">  291</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"egparm"</span>, 6))</div>
+<div class="line"><a name="l00292"></a><span class="lineno">  292</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00293"></a><span class="lineno">  293</span>       <span class="keywordflow">return</span> AttributeList::AT_Regparm;  <span class="comment">// "regparm"</span></div>
+<div class="line"><a name="l00294"></a><span class="lineno">  294</span>     <span class="keywordflow">case</span> <span class="charliteral">'s'</span>:  <span class="comment">// 2 strings to match.</span></div>
+<div class="line"><a name="l00295"></a><span class="lineno">  295</span>       <span class="keywordflow">switch</span> (Name[1]) {</div>
+<div class="line"><a name="l00296"></a><span class="lineno">  296</span>       <span class="keywordflow">default</span>: <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00297"></a><span class="lineno">  297</span>       <span class="keywordflow">case</span> <span class="charliteral">'e'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00298"></a><span class="lineno">  298</span>         <span class="keywordflow">if</span> (memcmp(Name.data()+2, <span class="stringliteral">"ction"</span>, 5))</div>
+<div class="line"><a name="l00299"></a><span class="lineno">  299</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00300"></a><span class="lineno">  300</span>         <span class="keywordflow">return</span> AttributeList::AT_Section;  <span class="comment">// "section"</span></div>
+<div class="line"><a name="l00301"></a><span class="lineno">  301</span>       <span class="keywordflow">case</span> <span class="charliteral">'t'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00302"></a><span class="lineno">  302</span>         <span class="keywordflow">if</span> (memcmp(Name.data()+2, <span class="stringliteral">"dcall"</span>, 5))</div>
+<div class="line"><a name="l00303"></a><span class="lineno">  303</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00304"></a><span class="lineno">  304</span>         <span class="keywordflow">return</span> AttributeList::AT_StdCall;  <span class="comment">// "stdcall"</span></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>       <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00307"></a><span class="lineno">  307</span>     <span class="keywordflow">case</span> <span class="charliteral">'w'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00308"></a><span class="lineno">  308</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"eakref"</span>, 6))</div>
+<div class="line"><a name="l00309"></a><span class="lineno">  309</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00310"></a><span class="lineno">  310</span>       <span class="keywordflow">return</span> AttributeList::AT_WeakRef;  <span class="comment">// "weakref"</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>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00313"></a><span class="lineno">  313</span>   <span class="keywordflow">case</span> 8:  <span class="comment">// 21 strings to match.</span></div>
+<div class="line"><a name="l00314"></a><span class="lineno">  314</span>     <span class="keywordflow">switch</span> (Name[0]) {</div>
+<div class="line"><a name="l00315"></a><span class="lineno">  315</span>     <span class="keywordflow">default</span>: <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00316"></a><span class="lineno">  316</span>     <span class="keywordflow">case</span> <span class="charliteral">'N'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00317"></a><span class="lineno">  317</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"SObject"</span>, 7))</div>
+<div class="line"><a name="l00318"></a><span class="lineno">  318</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00319"></a><span class="lineno">  319</span>       <span class="keywordflow">return</span> AttributeList::AT_ObjCNSObject;   <span class="comment">// "NSObject"</span></div>
+<div class="line"><a name="l00320"></a><span class="lineno">  320</span>     <span class="keywordflow">case</span> <span class="charliteral">'_'</span>:  <span class="comment">// 4 strings to match.</span></div>
+<div class="line"><a name="l00321"></a><span class="lineno">  321</span>       <span class="keywordflow">switch</span> (Name[1]) {</div>
+<div class="line"><a name="l00322"></a><span class="lineno">  322</span>       <span class="keywordflow">default</span>: <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00323"></a><span class="lineno">  323</span>       <span class="keywordflow">case</span> <span class="charliteral">'A'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00324"></a><span class="lineno">  324</span>         <span class="keywordflow">if</span> (memcmp(Name.data()+2, <span class="stringliteral">"lignas"</span>, 6))</div>
+<div class="line"><a name="l00325"></a><span class="lineno">  325</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00326"></a><span class="lineno">  326</span>         <span class="keywordflow">return</span> AttributeList::AT_Aligned;  <span class="comment">// "_Alignas"</span></div>
+<div class="line"><a name="l00327"></a><span class="lineno">  327</span>       <span class="keywordflow">case</span> <span class="charliteral">'_'</span>:  <span class="comment">// 2 strings to match.</span></div>
+<div class="line"><a name="l00328"></a><span class="lineno">  328</span>         <span class="keywordflow">switch</span> (Name[2]) {</div>
+<div class="line"><a name="l00329"></a><span class="lineno">  329</span>         <span class="keywordflow">default</span>: <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00330"></a><span class="lineno">  330</span>         <span class="keywordflow">case</span> <span class="charliteral">'k'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00331"></a><span class="lineno">  331</span>           <span class="keywordflow">if</span> (memcmp(Name.data()+3, <span class="stringliteral">"ernel"</span>, 5))</div>
+<div class="line"><a name="l00332"></a><span class="lineno">  332</span>             <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00333"></a><span class="lineno">  333</span>           <span class="keywordflow">return</span> AttributeList::AT_OpenCLKernel;   <span class="comment">// "__kernel"</span></div>
+<div class="line"><a name="l00334"></a><span class="lineno">  334</span>         <span class="keywordflow">case</span> <span class="charliteral">'p'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00335"></a><span class="lineno">  335</span>           <span class="keywordflow">if</span> (memcmp(Name.data()+3, <span class="stringliteral">"ascal"</span>, 5))</div>
+<div class="line"><a name="l00336"></a><span class="lineno">  336</span>             <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00337"></a><span class="lineno">  337</span>           <span class="keywordflow">return</span> AttributeList::AT_Pascal;   <span class="comment">// "__pascal"</span></div>
+<div class="line"><a name="l00338"></a><span class="lineno">  338</span>         }</div>
+<div class="line"><a name="l00339"></a><span class="lineno">  339</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00340"></a><span class="lineno">  340</span>       <span class="keywordflow">case</span> <span class="charliteral">'s'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00341"></a><span class="lineno">  341</span>         <span class="keywordflow">if</span> (memcmp(Name.data()+2, <span class="stringliteral">"tdcall"</span>, 6))</div>
+<div class="line"><a name="l00342"></a><span class="lineno">  342</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00343"></a><span class="lineno">  343</span>         <span class="keywordflow">return</span> AttributeList::AT_StdCall;  <span class="comment">// "_stdcall"</span></div>
+<div class="line"><a name="l00344"></a><span class="lineno">  344</span>       }</div>
+<div class="line"><a name="l00345"></a><span class="lineno">  345</span>       <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00346"></a><span class="lineno">  346</span>     <span class="keywordflow">case</span> <span class="charliteral">'a'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00347"></a><span class="lineno">  347</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"nnotate"</span>, 7))</div>
+<div class="line"><a name="l00348"></a><span class="lineno">  348</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00349"></a><span class="lineno">  349</span>       <span class="keywordflow">return</span> AttributeList::AT_Annotate;   <span class="comment">// "annotate"</span></div>
+<div class="line"><a name="l00350"></a><span class="lineno">  350</span>     <span class="keywordflow">case</span> <span class="charliteral">'c'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00351"></a><span class="lineno">  351</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"onstant"</span>, 7))</div>
+<div class="line"><a name="l00352"></a><span class="lineno">  352</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00353"></a><span class="lineno">  353</span>       <span class="keywordflow">return</span> AttributeList::AT_CUDAConstant;   <span class="comment">// "constant"</span></div>
+<div class="line"><a name="l00354"></a><span class="lineno">  354</span>     <span class="keywordflow">case</span> <span class="charliteral">'f'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00355"></a><span class="lineno">  355</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"astcall"</span>, 7))</div>
+<div class="line"><a name="l00356"></a><span class="lineno">  356</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00357"></a><span class="lineno">  357</span>       <span class="keywordflow">return</span> AttributeList::AT_FastCall;   <span class="comment">// "fastcall"</span></div>
+<div class="line"><a name="l00358"></a><span class="lineno">  358</span>     <span class="keywordflow">case</span> <span class="charliteral">'g'</span>:  <span class="comment">// 2 strings to match.</span></div>
+<div class="line"><a name="l00359"></a><span class="lineno">  359</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"nu::"</span>, 4))</div>
+<div class="line"><a name="l00360"></a><span class="lineno">  360</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00361"></a><span class="lineno">  361</span>       <span class="keywordflow">switch</span> (Name[5]) {</div>
+<div class="line"><a name="l00362"></a><span class="lineno">  362</span>       <span class="keywordflow">default</span>: <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00363"></a><span class="lineno">  363</span>       <span class="keywordflow">case</span> <span class="charliteral">'h'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00364"></a><span class="lineno">  364</span>         <span class="keywordflow">if</span> (memcmp(Name.data()+6, <span class="stringliteral">"ot"</span>, 2))</div>
+<div class="line"><a name="l00365"></a><span class="lineno">  365</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00366"></a><span class="lineno">  366</span>         <span class="keywordflow">return</span> AttributeList::AT_Hot;  <span class="comment">// "gnu::hot"</span></div>
+<div class="line"><a name="l00367"></a><span class="lineno">  367</span>       <span class="keywordflow">case</span> <span class="charliteral">'p'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00368"></a><span class="lineno">  368</span>         <span class="keywordflow">if</span> (memcmp(Name.data()+6, <span class="stringliteral">"cs"</span>, 2))</div>
+<div class="line"><a name="l00369"></a><span class="lineno">  369</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00370"></a><span class="lineno">  370</span>         <span class="keywordflow">return</span> AttributeList::AT_Pcs;  <span class="comment">// "gnu::pcs"</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="keywordflow">break</span>;</div>
+<div class="line"><a name="l00373"></a><span class="lineno">  373</span>     <span class="keywordflow">case</span> <span class="charliteral">'i'</span>:  <span class="comment">// 2 strings to match.</span></div>
+<div class="line"><a name="l00374"></a><span class="lineno">  374</span>       <span class="keywordflow">if</span> (Name[1] != <span class="charliteral">'b'</span>)</div>
+<div class="line"><a name="l00375"></a><span class="lineno">  375</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00376"></a><span class="lineno">  376</span>       <span class="keywordflow">switch</span> (Name[2]) {</div>
+<div class="line"><a name="l00377"></a><span class="lineno">  377</span>       <span class="keywordflow">default</span>: <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00378"></a><span class="lineno">  378</span>       <span class="keywordflow">case</span> <span class="charliteral">'a'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00379"></a><span class="lineno">  379</span>         <span class="keywordflow">if</span> (memcmp(Name.data()+3, <span class="stringliteral">"ction"</span>, 5))</div>
+<div class="line"><a name="l00380"></a><span class="lineno">  380</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00381"></a><span class="lineno">  381</span>         <span class="keywordflow">return</span> AttributeList::AT_IBAction;   <span class="comment">// "ibaction"</span></div>
+<div class="line"><a name="l00382"></a><span class="lineno">  382</span>       <span class="keywordflow">case</span> <span class="charliteral">'o'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00383"></a><span class="lineno">  383</span>         <span class="keywordflow">if</span> (memcmp(Name.data()+3, <span class="stringliteral">"utlet"</span>, 5))</div>
+<div class="line"><a name="l00384"></a><span class="lineno">  384</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00385"></a><span class="lineno">  385</span>         <span class="keywordflow">return</span> AttributeList::AT_IBOutlet;   <span class="comment">// "iboutlet"</span></div>
+<div class="line"><a name="l00386"></a><span class="lineno">  386</span>       }</div>
+<div class="line"><a name="l00387"></a><span class="lineno">  387</span>       <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00388"></a><span class="lineno">  388</span>     <span class="keywordflow">case</span> <span class="charliteral">'l'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00389"></a><span class="lineno">  389</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"ockable"</span>, 7))</div>
+<div class="line"><a name="l00390"></a><span class="lineno">  390</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00391"></a><span class="lineno">  391</span>       <span class="keywordflow">return</span> AttributeList::AT_Lockable;   <span class="comment">// "lockable"</span></div>
+<div class="line"><a name="l00392"></a><span class="lineno">  392</span>     <span class="keywordflow">case</span> <span class="charliteral">'n'</span>:  <span class="comment">// 4 strings to match.</span></div>
+<div class="line"><a name="l00393"></a><span class="lineno">  393</span>       <span class="keywordflow">if</span> (Name[1] != <span class="charliteral">'o'</span>)</div>
+<div class="line"><a name="l00394"></a><span class="lineno">  394</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00395"></a><span class="lineno">  395</span>       <span class="keywordflow">switch</span> (Name[2]) {</div>
+<div class="line"><a name="l00396"></a><span class="lineno">  396</span>       <span class="keywordflow">default</span>: <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00397"></a><span class="lineno">  397</span>       <span class="keywordflow">case</span> <span class="charliteral">'c'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00398"></a><span class="lineno">  398</span>         <span class="keywordflow">if</span> (memcmp(Name.data()+3, <span class="stringliteral">"ommon"</span>, 5))</div>
+<div class="line"><a name="l00399"></a><span class="lineno">  399</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00400"></a><span class="lineno">  400</span>         <span class="keywordflow">return</span> AttributeList::AT_NoCommon;   <span class="comment">// "nocommon"</span></div>
+<div class="line"><a name="l00401"></a><span class="lineno">  401</span>       <span class="keywordflow">case</span> <span class="charliteral">'i'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00402"></a><span class="lineno">  402</span>         <span class="keywordflow">if</span> (memcmp(Name.data()+3, <span class="stringliteral">"nline"</span>, 5))</div>
+<div class="line"><a name="l00403"></a><span class="lineno">  403</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00404"></a><span class="lineno">  404</span>         <span class="keywordflow">return</span> AttributeList::AT_NoInline;   <span class="comment">// "noinline"</span></div>
+<div class="line"><a name="l00405"></a><span class="lineno">  405</span>       <span class="keywordflow">case</span> <span class="charliteral">'m'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00406"></a><span class="lineno">  406</span>         <span class="keywordflow">if</span> (memcmp(Name.data()+3, <span class="stringliteral">"ips16"</span>, 5))</div>
+<div class="line"><a name="l00407"></a><span class="lineno">  407</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00408"></a><span class="lineno">  408</span>         <span class="keywordflow">return</span> AttributeList::AT_NoMips16;   <span class="comment">// "nomips16"</span></div>
+<div class="line"><a name="l00409"></a><span class="lineno">  409</span>       <span class="keywordflow">case</span> <span class="charliteral">'r'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00410"></a><span class="lineno">  410</span>         <span class="keywordflow">if</span> (memcmp(Name.data()+3, <span class="stringliteral">"eturn"</span>, 5))</div>
+<div class="line"><a name="l00411"></a><span class="lineno">  411</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00412"></a><span class="lineno">  412</span>         <span class="keywordflow">return</span> AttributeList::AT_NoReturn;   <span class="comment">// "noreturn"</span></div>
+<div class="line"><a name="l00413"></a><span class="lineno">  413</span>       }</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> <span class="charliteral">'p'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00416"></a><span class="lineno">  416</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"roperty"</span>, 7))</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">return</span> AttributeList::IgnoredAttribute;  <span class="comment">// "property"</span></div>
+<div class="line"><a name="l00419"></a><span class="lineno">  419</span>     <span class="keywordflow">case</span> <span class="charliteral">'s'</span>:  <span class="comment">// 2 strings to match.</span></div>
+<div class="line"><a name="l00420"></a><span class="lineno">  420</span>       <span class="keywordflow">switch</span> (Name[1]) {</div>
+<div class="line"><a name="l00421"></a><span class="lineno">  421</span>       <span class="keywordflow">default</span>: <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00422"></a><span class="lineno">  422</span>       <span class="keywordflow">case</span> <span class="charliteral">'e'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00423"></a><span class="lineno">  423</span>         <span class="keywordflow">if</span> (memcmp(Name.data()+2, <span class="stringliteral">"ntinel"</span>, 6))</div>
+<div class="line"><a name="l00424"></a><span class="lineno">  424</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00425"></a><span class="lineno">  425</span>         <span class="keywordflow">return</span> AttributeList::AT_Sentinel;   <span class="comment">// "sentinel"</span></div>
+<div class="line"><a name="l00426"></a><span class="lineno">  426</span>       <span class="keywordflow">case</span> <span class="charliteral">'y'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00427"></a><span class="lineno">  427</span>         <span class="keywordflow">if</span> (memcmp(Name.data()+2, <span class="stringliteral">"sv_abi"</span>, 6))</div>
+<div class="line"><a name="l00428"></a><span class="lineno">  428</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00429"></a><span class="lineno">  429</span>         <span class="keywordflow">return</span> AttributeList::AT_SysVABI;  <span class="comment">// "sysv_abi"</span></div>
+<div class="line"><a name="l00430"></a><span class="lineno">  430</span>       }</div>
+<div class="line"><a name="l00431"></a><span class="lineno">  431</span>       <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00432"></a><span class="lineno">  432</span>     <span class="keywordflow">case</span> <span class="charliteral">'t'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00433"></a><span class="lineno">  433</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"hiscall"</span>, 7))</div>
+<div class="line"><a name="l00434"></a><span class="lineno">  434</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00435"></a><span class="lineno">  435</span>       <span class="keywordflow">return</span> AttributeList::AT_ThisCall;   <span class="comment">// "thiscall"</span></div>
+<div class="line"><a name="l00436"></a><span class="lineno">  436</span>     }</div>
+<div class="line"><a name="l00437"></a><span class="lineno">  437</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00438"></a><span class="lineno">  438</span>   <span class="keywordflow">case</span> 9:  <span class="comment">// 17 strings to match.</span></div>
+<div class="line"><a name="l00439"></a><span class="lineno">  439</span>     <span class="keywordflow">switch</span> (Name[0]) {</div>
+<div class="line"><a name="l00440"></a><span class="lineno">  440</span>     <span class="keywordflow">default</span>: <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00441"></a><span class="lineno">  441</span>     <span class="keywordflow">case</span> <span class="charliteral">'_'</span>:  <span class="comment">// 3 strings to match.</span></div>
+<div class="line"><a name="l00442"></a><span class="lineno">  442</span>       <span class="keywordflow">switch</span> (Name[1]) {</div>
+<div class="line"><a name="l00443"></a><span class="lineno">  443</span>       <span class="keywordflow">default</span>: <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00444"></a><span class="lineno">  444</span>       <span class="keywordflow">case</span> <span class="charliteral">'_'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00445"></a><span class="lineno">  445</span>         <span class="keywordflow">if</span> (memcmp(Name.data()+2, <span class="stringliteral">"stdcall"</span>, 7))</div>
+<div class="line"><a name="l00446"></a><span class="lineno">  446</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00447"></a><span class="lineno">  447</span>         <span class="keywordflow">return</span> AttributeList::AT_StdCall;  <span class="comment">// "__stdcall"</span></div>
+<div class="line"><a name="l00448"></a><span class="lineno">  448</span>       <span class="keywordflow">case</span> <span class="charliteral">'f'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00449"></a><span class="lineno">  449</span>         <span class="keywordflow">if</span> (memcmp(Name.data()+2, <span class="stringliteral">"astcall"</span>, 7))</div>
+<div class="line"><a name="l00450"></a><span class="lineno">  450</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00451"></a><span class="lineno">  451</span>         <span class="keywordflow">return</span> AttributeList::AT_FastCall;   <span class="comment">// "_fastcall"</span></div>
+<div class="line"><a name="l00452"></a><span class="lineno">  452</span>       <span class="keywordflow">case</span> <span class="charliteral">'t'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00453"></a><span class="lineno">  453</span>         <span class="keywordflow">if</span> (memcmp(Name.data()+2, <span class="stringliteral">"hiscall"</span>, 7))</div>
+<div class="line"><a name="l00454"></a><span class="lineno">  454</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00455"></a><span class="lineno">  455</span>         <span class="keywordflow">return</span> AttributeList::AT_ThisCall;   <span class="comment">// "_thiscall"</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">break</span>;</div>
+<div class="line"><a name="l00458"></a><span class="lineno">  458</span>     <span class="keywordflow">case</span> <span class="charliteral">'d'</span>:  <span class="comment">// 2 strings to match.</span></div>
+<div class="line"><a name="l00459"></a><span class="lineno">  459</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"ll"</span>, 2))</div>
+<div class="line"><a name="l00460"></a><span class="lineno">  460</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00461"></a><span class="lineno">  461</span>       <span class="keywordflow">switch</span> (Name[3]) {</div>
+<div class="line"><a name="l00462"></a><span class="lineno">  462</span>       <span class="keywordflow">default</span>: <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00463"></a><span class="lineno">  463</span>       <span class="keywordflow">case</span> <span class="charliteral">'e'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00464"></a><span class="lineno">  464</span>         <span class="keywordflow">if</span> (memcmp(Name.data()+4, <span class="stringliteral">"xport"</span>, 5))</div>
+<div class="line"><a name="l00465"></a><span class="lineno">  465</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00466"></a><span class="lineno">  466</span>         <span class="keywordflow">return</span> AttributeList::AT_DLLExport;  <span class="comment">// "dllexport"</span></div>
+<div class="line"><a name="l00467"></a><span class="lineno">  467</span>       <span class="keywordflow">case</span> <span class="charliteral">'i'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00468"></a><span class="lineno">  468</span>         <span class="keywordflow">if</span> (memcmp(Name.data()+4, <span class="stringliteral">"mport"</span>, 5))</div>
+<div class="line"><a name="l00469"></a><span class="lineno">  469</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00470"></a><span class="lineno">  470</span>         <span class="keywordflow">return</span> AttributeList::AT_DLLImport;  <span class="comment">// "dllimport"</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="keywordflow">break</span>;</div>
+<div class="line"><a name="l00473"></a><span class="lineno">  473</span>     <span class="keywordflow">case</span> <span class="charliteral">'g'</span>:  <span class="comment">// 5 strings to match.</span></div>
+<div class="line"><a name="l00474"></a><span class="lineno">  474</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"nu::"</span>, 4))</div>
+<div class="line"><a name="l00475"></a><span class="lineno">  475</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00476"></a><span class="lineno">  476</span>       <span class="keywordflow">switch</span> (Name[5]) {</div>
+<div class="line"><a name="l00477"></a><span class="lineno">  477</span>       <span class="keywordflow">default</span>: <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00478"></a><span class="lineno">  478</span>       <span class="keywordflow">case</span> <span class="charliteral">'c'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00479"></a><span class="lineno">  479</span>         <span class="keywordflow">if</span> (memcmp(Name.data()+6, <span class="stringliteral">"old"</span>, 3))</div>
+<div class="line"><a name="l00480"></a><span class="lineno">  480</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00481"></a><span class="lineno">  481</span>         <span class="keywordflow">return</span> AttributeList::AT_Cold;   <span class="comment">// "gnu::cold"</span></div>
+<div class="line"><a name="l00482"></a><span class="lineno">  482</span>       <span class="keywordflow">case</span> <span class="charliteral">'m'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00483"></a><span class="lineno">  483</span>         <span class="keywordflow">if</span> (memcmp(Name.data()+6, <span class="stringliteral">"ode"</span>, 3))</div>
+<div class="line"><a name="l00484"></a><span class="lineno">  484</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00485"></a><span class="lineno">  485</span>         <span class="keywordflow">return</span> AttributeList::AT_Mode;   <span class="comment">// "gnu::mode"</span></div>
+<div class="line"><a name="l00486"></a><span class="lineno">  486</span>       <span class="keywordflow">case</span> <span class="charliteral">'p'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00487"></a><span class="lineno">  487</span>         <span class="keywordflow">if</span> (memcmp(Name.data()+6, <span class="stringliteral">"ure"</span>, 3))</div>
+<div class="line"><a name="l00488"></a><span class="lineno">  488</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00489"></a><span class="lineno">  489</span>         <span class="keywordflow">return</span> AttributeList::AT_Pure;   <span class="comment">// "gnu::pure"</span></div>
+<div class="line"><a name="l00490"></a><span class="lineno">  490</span>       <span class="keywordflow">case</span> <span class="charliteral">'u'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00491"></a><span class="lineno">  491</span>         <span class="keywordflow">if</span> (memcmp(Name.data()+6, <span class="stringliteral">"sed"</span>, 3))</div>
+<div class="line"><a name="l00492"></a><span class="lineno">  492</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00493"></a><span class="lineno">  493</span>         <span class="keywordflow">return</span> AttributeList::AT_Used;   <span class="comment">// "gnu::used"</span></div>
+<div class="line"><a name="l00494"></a><span class="lineno">  494</span>       <span class="keywordflow">case</span> <span class="charliteral">'w'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00495"></a><span class="lineno">  495</span>         <span class="keywordflow">if</span> (memcmp(Name.data()+6, <span class="stringliteral">"eak"</span>, 3))</div>
+<div class="line"><a name="l00496"></a><span class="lineno">  496</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00497"></a><span class="lineno">  497</span>         <span class="keywordflow">return</span> AttributeList::AT_Weak;   <span class="comment">// "gnu::weak"</span></div>
+<div class="line"><a name="l00498"></a><span class="lineno">  498</span>       }</div>
+<div class="line"><a name="l00499"></a><span class="lineno">  499</span>       <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00500"></a><span class="lineno">  500</span>     <span class="keywordflow">case</span> <span class="charliteral">'i'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00501"></a><span class="lineno">  501</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"nterrupt"</span>, 8))</div>
+<div class="line"><a name="l00502"></a><span class="lineno">  502</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00503"></a><span class="lineno">  503</span>       <span class="keywordflow">return</span> AttributeList::AT_ARMInterrupt;   <span class="comment">// "interrupt"</span></div>
+<div class="line"><a name="l00504"></a><span class="lineno">  504</span>     <span class="keywordflow">case</span> <span class="charliteral">'m'</span>:  <span class="comment">// 2 strings to match.</span></div>
+<div class="line"><a name="l00505"></a><span class="lineno">  505</span>       <span class="keywordflow">switch</span> (Name[1]) {</div>
+<div class="line"><a name="l00506"></a><span class="lineno">  506</span>       <span class="keywordflow">default</span>: <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00507"></a><span class="lineno">  507</span>       <span class="keywordflow">case</span> <span class="charliteral">'a'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00508"></a><span class="lineno">  508</span>         <span class="keywordflow">if</span> (memcmp(Name.data()+2, <span class="stringliteral">"y_alias"</span>, 7))</div>
+<div class="line"><a name="l00509"></a><span class="lineno">  509</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00510"></a><span class="lineno">  510</span>         <span class="keywordflow">return</span> AttributeList::AT_MayAlias;   <span class="comment">// "may_alias"</span></div>
+<div class="line"><a name="l00511"></a><span class="lineno">  511</span>       <span class="keywordflow">case</span> <span class="charliteral">'s'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00512"></a><span class="lineno">  512</span>         <span class="keywordflow">if</span> (memcmp(Name.data()+2, <span class="stringliteral">"_struct"</span>, 7))</div>
+<div class="line"><a name="l00513"></a><span class="lineno">  513</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00514"></a><span class="lineno">  514</span>         <span class="keywordflow">return</span> AttributeList::AT_MsStruct;   <span class="comment">// "ms_struct"</span></div>
+<div class="line"><a name="l00515"></a><span class="lineno">  515</span>       }</div>
+<div class="line"><a name="l00516"></a><span class="lineno">  516</span>       <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00517"></a><span class="lineno">  517</span>     <span class="keywordflow">case</span> <span class="charliteral">'p'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00518"></a><span class="lineno">  518</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"naclcall"</span>, 8))</div>
+<div class="line"><a name="l00519"></a><span class="lineno">  519</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00520"></a><span class="lineno">  520</span>       <span class="keywordflow">return</span> AttributeList::AT_PnaclCall;  <span class="comment">// "pnaclcall"</span></div>
+<div class="line"><a name="l00521"></a><span class="lineno">  521</span>     <span class="keywordflow">case</span> <span class="charliteral">'s'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00522"></a><span class="lineno">  522</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"electany"</span>, 8))</div>
+<div class="line"><a name="l00523"></a><span class="lineno">  523</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00524"></a><span class="lineno">  524</span>       <span class="keywordflow">return</span> AttributeList::AT_SelectAny;  <span class="comment">// "selectany"</span></div>
+<div class="line"><a name="l00525"></a><span class="lineno">  525</span>     <span class="keywordflow">case</span> <span class="charliteral">'t'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00526"></a><span class="lineno">  526</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"ls_model"</span>, 8))</div>
+<div class="line"><a name="l00527"></a><span class="lineno">  527</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00528"></a><span class="lineno">  528</span>       <span class="keywordflow">return</span> AttributeList::AT_TLSModel;   <span class="comment">// "tls_model"</span></div>
+<div class="line"><a name="l00529"></a><span class="lineno">  529</span>     <span class="keywordflow">case</span> <span class="charliteral">'v'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00530"></a><span class="lineno">  530</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"ecreturn"</span>, 8))</div>
+<div class="line"><a name="l00531"></a><span class="lineno">  531</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00532"></a><span class="lineno">  532</span>       <span class="keywordflow">return</span> AttributeList::AT_VecReturn;  <span class="comment">// "vecreturn"</span></div>
+<div class="line"><a name="l00533"></a><span class="lineno">  533</span>     }</div>
+<div class="line"><a name="l00534"></a><span class="lineno">  534</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00535"></a><span class="lineno">  535</span>   <span class="keywordflow">case</span> 10:   <span class="comment">// 16 strings to match.</span></div>
+<div class="line"><a name="l00536"></a><span class="lineno">  536</span>     <span class="keywordflow">switch</span> (Name[0]) {</div>
+<div class="line"><a name="l00537"></a><span class="lineno">  537</span>     <span class="keywordflow">default</span>: <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00538"></a><span class="lineno">  538</span>     <span class="keywordflow">case</span> <span class="charliteral">':'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00539"></a><span class="lineno">  539</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">":noreturn"</span>, 9))</div>
+<div class="line"><a name="l00540"></a><span class="lineno">  540</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00541"></a><span class="lineno">  541</span>       <span class="keywordflow">return</span> AttributeList::AT_CXX11NoReturn;  <span class="comment">// "::noreturn"</span></div>
+<div class="line"><a name="l00542"></a><span class="lineno">  542</span>     <span class="keywordflow">case</span> <span class="charliteral">'_'</span>:  <span class="comment">// 2 strings to match.</span></div>
+<div class="line"><a name="l00543"></a><span class="lineno">  543</span>       <span class="keywordflow">if</span> (Name[1] != <span class="charliteral">'_'</span>)</div>
+<div class="line"><a name="l00544"></a><span class="lineno">  544</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00545"></a><span class="lineno">  545</span>       <span class="keywordflow">switch</span> (Name[2]) {</div>
+<div class="line"><a name="l00546"></a><span class="lineno">  546</span>       <span class="keywordflow">default</span>: <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00547"></a><span class="lineno">  547</span>       <span class="keywordflow">case</span> <span class="charliteral">'f'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00548"></a><span class="lineno">  548</span>         <span class="keywordflow">if</span> (memcmp(Name.data()+3, <span class="stringliteral">"astcall"</span>, 7))</div>
+<div class="line"><a name="l00549"></a><span class="lineno">  549</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00550"></a><span class="lineno">  550</span>         <span class="keywordflow">return</span> AttributeList::AT_FastCall;   <span class="comment">// "__fastcall"</span></div>
+<div class="line"><a name="l00551"></a><span class="lineno">  551</span>       <span class="keywordflow">case</span> <span class="charliteral">'t'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00552"></a><span class="lineno">  552</span>         <span class="keywordflow">if</span> (memcmp(Name.data()+3, <span class="stringliteral">"hiscall"</span>, 7))</div>
+<div class="line"><a name="l00553"></a><span class="lineno">  553</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00554"></a><span class="lineno">  554</span>         <span class="keywordflow">return</span> AttributeList::AT_ThisCall;   <span class="comment">// "__thiscall"</span></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>       <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00557"></a><span class="lineno">  557</span>     <span class="keywordflow">case</span> <span class="charliteral">'a'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00558"></a><span class="lineno">  558</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"lloc_size"</span>, 9))</div>
+<div class="line"><a name="l00559"></a><span class="lineno">  559</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00560"></a><span class="lineno">  560</span>       <span class="keywordflow">return</span> AttributeList::AT_AllocSize;  <span class="comment">// "alloc_size"</span></div>
+<div class="line"><a name="l00561"></a><span class="lineno">  561</span>     <span class="keywordflow">case</span> <span class="charliteral">'c'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00562"></a><span class="lineno">  562</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"onsumable"</span>, 9))</div>
+<div class="line"><a name="l00563"></a><span class="lineno">  563</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00564"></a><span class="lineno">  564</span>       <span class="keywordflow">return</span> AttributeList::AT_Consumable;   <span class="comment">// "consumable"</span></div>
+<div class="line"><a name="l00565"></a><span class="lineno">  565</span>     <span class="keywordflow">case</span> <span class="charliteral">'d'</span>:  <span class="comment">// 2 strings to match.</span></div>
+<div class="line"><a name="l00566"></a><span class="lineno">  566</span>       <span class="keywordflow">if</span> (Name[1] != <span class="charliteral">'e'</span>)</div>
+<div class="line"><a name="l00567"></a><span class="lineno">  567</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00568"></a><span class="lineno">  568</span>       <span class="keywordflow">switch</span> (Name[2]) {</div>
+<div class="line"><a name="l00569"></a><span class="lineno">  569</span>       <span class="keywordflow">default</span>: <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00570"></a><span class="lineno">  570</span>       <span class="keywordflow">case</span> <span class="charliteral">'p'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00571"></a><span class="lineno">  571</span>         <span class="keywordflow">if</span> (memcmp(Name.data()+3, <span class="stringliteral">"recated"</span>, 7))</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>         <span class="keywordflow">return</span> AttributeList::AT_Deprecated;   <span class="comment">// "deprecated"</span></div>
+<div class="line"><a name="l00574"></a><span class="lineno">  574</span>       <span class="keywordflow">case</span> <span class="charliteral">'s'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00575"></a><span class="lineno">  575</span>         <span class="keywordflow">if</span> (memcmp(Name.data()+3, <span class="stringliteral">"tructor"</span>, 7))</div>
+<div class="line"><a name="l00576"></a><span class="lineno">  576</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00577"></a><span class="lineno">  577</span>         <span class="keywordflow">return</span> AttributeList::AT_Destructor;   <span class="comment">// "destructor"</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="keywordflow">break</span>;</div>
+<div class="line"><a name="l00580"></a><span class="lineno">  580</span>     <span class="keywordflow">case</span> <span class="charliteral">'f'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00581"></a><span class="lineno">  581</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"ormat_arg"</span>, 9))</div>
+<div class="line"><a name="l00582"></a><span class="lineno">  582</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00583"></a><span class="lineno">  583</span>       <span class="keywordflow">return</span> AttributeList::AT_FormatArg;  <span class="comment">// "format_arg"</span></div>
+<div class="line"><a name="l00584"></a><span class="lineno">  584</span>     <span class="keywordflow">case</span> <span class="charliteral">'g'</span>:  <span class="comment">// 6 strings to match.</span></div>
+<div class="line"><a name="l00585"></a><span class="lineno">  585</span>       <span class="keywordflow">switch</span> (Name[1]) {</div>
+<div class="line"><a name="l00586"></a><span class="lineno">  586</span>       <span class="keywordflow">default</span>: <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00587"></a><span class="lineno">  587</span>       <span class="keywordflow">case</span> <span class="charliteral">'n'</span>:  <span class="comment">// 5 strings to match.</span></div>
+<div class="line"><a name="l00588"></a><span class="lineno">  588</span>         <span class="keywordflow">if</span> (Name[2] != <span class="charliteral">'u'</span>)</div>
+<div class="line"><a name="l00589"></a><span class="lineno">  589</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00590"></a><span class="lineno">  590</span>         <span class="keywordflow">switch</span> (Name[3]) {</div>
+<div class="line"><a name="l00591"></a><span class="lineno">  591</span>         <span class="keywordflow">default</span>: <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00592"></a><span class="lineno">  592</span>         <span class="keywordflow">case</span> <span class="charliteral">':'</span>:  <span class="comment">// 4 strings to match.</span></div>
+<div class="line"><a name="l00593"></a><span class="lineno">  593</span>           <span class="keywordflow">if</span> (Name[4] != <span class="charliteral">':'</span>)</div>
+<div class="line"><a name="l00594"></a><span class="lineno">  594</span>             <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00595"></a><span class="lineno">  595</span>           <span class="keywordflow">switch</span> (Name[5]) {</div>
+<div class="line"><a name="l00596"></a><span class="lineno">  596</span>           <span class="keywordflow">default</span>: <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00597"></a><span class="lineno">  597</span>           <span class="keywordflow">case</span> <span class="charliteral">'a'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00598"></a><span class="lineno">  598</span>             <span class="keywordflow">if</span> (memcmp(Name.data()+6, <span class="stringliteral">"lias"</span>, 4))</div>
+<div class="line"><a name="l00599"></a><span class="lineno">  599</span>               <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00600"></a><span class="lineno">  600</span>             <span class="keywordflow">return</span> AttributeList::AT_Alias;  <span class="comment">// "gnu::alias"</span></div>
+<div class="line"><a name="l00601"></a><span class="lineno">  601</span>           <span class="keywordflow">case</span> <span class="charliteral">'c'</span>:  <span class="comment">// 2 strings to match.</span></div>
+<div class="line"><a name="l00602"></a><span class="lineno">  602</span>             <span class="keywordflow">switch</span> (Name[6]) {</div>
+<div class="line"><a name="l00603"></a><span class="lineno">  603</span>             <span class="keywordflow">default</span>: <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00604"></a><span class="lineno">  604</span>             <span class="keywordflow">case</span> <span class="charliteral">'d'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00605"></a><span class="lineno">  605</span>               <span class="keywordflow">if</span> (memcmp(Name.data()+7, <span class="stringliteral">"ecl"</span>, 3))</div>
+<div class="line"><a name="l00606"></a><span class="lineno">  606</span>                 <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00607"></a><span class="lineno">  607</span>               <span class="keywordflow">return</span> AttributeList::AT_CDecl;  <span class="comment">// "gnu::cdecl"</span></div>
+<div class="line"><a name="l00608"></a><span class="lineno">  608</span>             <span class="keywordflow">case</span> <span class="charliteral">'o'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00609"></a><span class="lineno">  609</span>               <span class="keywordflow">if</span> (memcmp(Name.data()+7, <span class="stringliteral">"nst"</span>, 3))</div>
+<div class="line"><a name="l00610"></a><span class="lineno">  610</span>                 <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00611"></a><span class="lineno">  611</span>               <span class="keywordflow">return</span> AttributeList::AT_Const;  <span class="comment">// "gnu::const"</span></div>
+<div class="line"><a name="l00612"></a><span class="lineno">  612</span>             }</div>
+<div class="line"><a name="l00613"></a><span class="lineno">  613</span>             <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00614"></a><span class="lineno">  614</span>           <span class="keywordflow">case</span> <span class="charliteral">'n'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00615"></a><span class="lineno">  615</span>             <span class="keywordflow">if</span> (memcmp(Name.data()+6, <span class="stringliteral">"aked"</span>, 4))</div>
+<div class="line"><a name="l00616"></a><span class="lineno">  616</span>               <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00617"></a><span class="lineno">  617</span>             <span class="keywordflow">return</span> AttributeList::AT_Naked;  <span class="comment">// "gnu::naked"</span></div>
+<div class="line"><a name="l00618"></a><span class="lineno">  618</span>           }</div>
+<div class="line"><a name="l00619"></a><span class="lineno">  619</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00620"></a><span class="lineno">  620</span>         <span class="keywordflow">case</span> <span class="charliteral">'_'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00621"></a><span class="lineno">  621</span>           <span class="keywordflow">if</span> (memcmp(Name.data()+4, <span class="stringliteral">"inline"</span>, 6))</div>
+<div class="line"><a name="l00622"></a><span class="lineno">  622</span>             <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00623"></a><span class="lineno">  623</span>           <span class="keywordflow">return</span> AttributeList::AT_GNUInline;  <span class="comment">// "gnu_inline"</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">  625</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00626"></a><span class="lineno">  626</span>       <span class="keywordflow">case</span> <span class="charliteral">'u'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00627"></a><span class="lineno">  627</span>         <span class="keywordflow">if</span> (memcmp(Name.data()+2, <span class="stringliteral">"arded_by"</span>, 8))</div>
+<div class="line"><a name="l00628"></a><span class="lineno">  628</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00629"></a><span class="lineno">  629</span>         <span class="keywordflow">return</span> AttributeList::AT_GuardedBy;  <span class="comment">// "guarded_by"</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>       <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00632"></a><span class="lineno">  632</span>     <span class="keywordflow">case</span> <span class="charliteral">'n'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00633"></a><span class="lineno">  633</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"s_bridged"</span>, 9))</div>
+<div class="line"><a name="l00634"></a><span class="lineno">  634</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00635"></a><span class="lineno">  635</span>       <span class="keywordflow">return</span> AttributeList::AT_NSBridged;  <span class="comment">// "ns_bridged"</span></div>
+<div class="line"><a name="l00636"></a><span class="lineno">  636</span>     <span class="keywordflow">case</span> <span class="charliteral">'v'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00637"></a><span class="lineno">  637</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"isibility"</span>, 9))</div>
+<div class="line"><a name="l00638"></a><span class="lineno">  638</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00639"></a><span class="lineno">  639</span>       <span class="keywordflow">return</span> AttributeList::AT_Visibility;   <span class="comment">// "visibility"</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="keywordflow">break</span>;</div>
+<div class="line"><a name="l00642"></a><span class="lineno">  642</span>   <span class="keywordflow">case</span> 11:   <span class="comment">// 17 strings to match.</span></div>
+<div class="line"><a name="l00643"></a><span class="lineno">  643</span>     <span class="keywordflow">switch</span> (Name[0]) {</div>
+<div class="line"><a name="l00644"></a><span class="lineno">  644</span>     <span class="keywordflow">default</span>: <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00645"></a><span class="lineno">  645</span>     <span class="keywordflow">case</span> <span class="charliteral">'_'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00646"></a><span class="lineno">  646</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"_unaligned"</span>, 10))</div>
+<div class="line"><a name="l00647"></a><span class="lineno">  647</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00648"></a><span class="lineno">  648</span>       <span class="keywordflow">return</span> AttributeList::IgnoredAttribute;  <span class="comment">// "__unaligned"</span></div>
+<div class="line"><a name="l00649"></a><span class="lineno">  649</span>     <span class="keywordflow">case</span> <span class="charliteral">'c'</span>:  <span class="comment">// 2 strings to match.</span></div>
+<div class="line"><a name="l00650"></a><span class="lineno">  650</span>       <span class="keywordflow">switch</span> (Name[1]) {</div>
+<div class="line"><a name="l00651"></a><span class="lineno">  651</span>       <span class="keywordflow">default</span>: <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00652"></a><span class="lineno">  652</span>       <span class="keywordflow">case</span> <span class="charliteral">'f'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00653"></a><span class="lineno">  653</span>         <span class="keywordflow">if</span> (memcmp(Name.data()+2, <span class="stringliteral">"_consumed"</span>, 9))</div>
+<div class="line"><a name="l00654"></a><span class="lineno">  654</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00655"></a><span class="lineno">  655</span>         <span class="keywordflow">return</span> AttributeList::AT_CFConsumed;   <span class="comment">// "cf_consumed"</span></div>
+<div class="line"><a name="l00656"></a><span class="lineno">  656</span>       <span class="keywordflow">case</span> <span class="charliteral">'o'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00657"></a><span class="lineno">  657</span>         <span class="keywordflow">if</span> (memcmp(Name.data()+2, <span class="stringliteral">"nstructor"</span>, 9))</div>
+<div class="line"><a name="l00658"></a><span class="lineno">  658</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00659"></a><span class="lineno">  659</span>         <span class="keywordflow">return</span> AttributeList::AT_Constructor;  <span class="comment">// "constructor"</span></div>
+<div class="line"><a name="l00660"></a><span class="lineno">  660</span>       }</div>
+<div class="line"><a name="l00661"></a><span class="lineno">  661</span>       <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00662"></a><span class="lineno">  662</span>     <span class="keywordflow">case</span> <span class="charliteral">'g'</span>:  <span class="comment">// 8 strings to match.</span></div>
+<div class="line"><a name="l00663"></a><span class="lineno">  663</span>       <span class="keywordflow">switch</span> (Name[1]) {</div>
+<div class="line"><a name="l00664"></a><span class="lineno">  664</span>       <span class="keywordflow">default</span>: <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00665"></a><span class="lineno">  665</span>       <span class="keywordflow">case</span> <span class="charliteral">'n'</span>:  <span class="comment">// 7 strings to match.</span></div>
+<div class="line"><a name="l00666"></a><span class="lineno">  666</span>         <span class="keywordflow">if</span> (memcmp(Name.data()+2, <span class="stringliteral">"u::"</span>, 3))</div>
+<div class="line"><a name="l00667"></a><span class="lineno">  667</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00668"></a><span class="lineno">  668</span>         <span class="keywordflow">switch</span> (Name[5]) {</div>
+<div class="line"><a name="l00669"></a><span class="lineno">  669</span>         <span class="keywordflow">default</span>: <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00670"></a><span class="lineno">  670</span>         <span class="keywordflow">case</span> <span class="charliteral">'c'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00671"></a><span class="lineno">  671</span>           <span class="keywordflow">if</span> (memcmp(Name.data()+6, <span class="stringliteral">"ommon"</span>, 5))</div>
+<div class="line"><a name="l00672"></a><span class="lineno">  672</span>             <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00673"></a><span class="lineno">  673</span>           <span class="keywordflow">return</span> AttributeList::AT_Common;   <span class="comment">// "gnu::common"</span></div>
+<div class="line"><a name="l00674"></a><span class="lineno">  674</span>         <span class="keywordflow">case</span> <span class="charliteral">'f'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00675"></a><span class="lineno">  675</span>           <span class="keywordflow">if</span> (memcmp(Name.data()+6, <span class="stringliteral">"ormat"</span>, 5))</div>
+<div class="line"><a name="l00676"></a><span class="lineno">  676</span>             <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00677"></a><span class="lineno">  677</span>           <span class="keywordflow">return</span> AttributeList::AT_Format;   <span class="comment">// "gnu::format"</span></div>
+<div class="line"><a name="l00678"></a><span class="lineno">  678</span>         <span class="keywordflow">case</span> <span class="charliteral">'m'</span>:  <span class="comment">// 3 strings to match.</span></div>
+<div class="line"><a name="l00679"></a><span class="lineno">  679</span>           <span class="keywordflow">switch</span> (Name[6]) {</div>
+<div class="line"><a name="l00680"></a><span class="lineno">  680</span>           <span class="keywordflow">default</span>: <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00681"></a><span class="lineno">  681</span>           <span class="keywordflow">case</span> <span class="charliteral">'a'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00682"></a><span class="lineno">  682</span>             <span class="keywordflow">if</span> (memcmp(Name.data()+7, <span class="stringliteral">"lloc"</span>, 4))</div>
+<div class="line"><a name="l00683"></a><span class="lineno">  683</span>               <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00684"></a><span class="lineno">  684</span>             <span class="keywordflow">return</span> AttributeList::AT_Malloc;   <span class="comment">// "gnu::malloc"</span></div>
+<div class="line"><a name="l00685"></a><span class="lineno">  685</span>           <span class="keywordflow">case</span> <span class="charliteral">'i'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00686"></a><span class="lineno">  686</span>             <span class="keywordflow">if</span> (memcmp(Name.data()+7, <span class="stringliteral">"ps16"</span>, 4))</div>
+<div class="line"><a name="l00687"></a><span class="lineno">  687</span>               <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00688"></a><span class="lineno">  688</span>             <span class="keywordflow">return</span> AttributeList::AT_Mips16;   <span class="comment">// "gnu::mips16"</span></div>
+<div class="line"><a name="l00689"></a><span class="lineno">  689</span>           <span class="keywordflow">case</span> <span class="charliteral">'s'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00690"></a><span class="lineno">  690</span>             <span class="keywordflow">if</span> (memcmp(Name.data()+7, <span class="stringliteral">"_abi"</span>, 4))</div>
+<div class="line"><a name="l00691"></a><span class="lineno">  691</span>               <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00692"></a><span class="lineno">  692</span>             <span class="keywordflow">return</span> AttributeList::AT_MSABI;  <span class="comment">// "gnu::ms_abi"</span></div>
+<div class="line"><a name="l00693"></a><span class="lineno">  693</span>           }</div>
+<div class="line"><a name="l00694"></a><span class="lineno">  694</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00695"></a><span class="lineno">  695</span>         <span class="keywordflow">case</span> <span class="charliteral">'p'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00696"></a><span class="lineno">  696</span>           <span class="keywordflow">if</span> (memcmp(Name.data()+6, <span class="stringliteral">"acked"</span>, 5))</div>
+<div class="line"><a name="l00697"></a><span class="lineno">  697</span>             <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00698"></a><span class="lineno">  698</span>           <span class="keywordflow">return</span> AttributeList::AT_Packed;   <span class="comment">// "gnu::packed"</span></div>
+<div class="line"><a name="l00699"></a><span class="lineno">  699</span>         <span class="keywordflow">case</span> <span class="charliteral">'u'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00700"></a><span class="lineno">  700</span>           <span class="keywordflow">if</span> (memcmp(Name.data()+6, <span class="stringliteral">"nused"</span>, 5))</div>
+<div class="line"><a name="l00701"></a><span class="lineno">  701</span>             <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00702"></a><span class="lineno">  702</span>           <span class="keywordflow">return</span> AttributeList::AT_Unused;   <span class="comment">// "gnu::unused"</span></div>
+<div class="line"><a name="l00703"></a><span class="lineno">  703</span>         }</div>
+<div class="line"><a name="l00704"></a><span class="lineno">  704</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00705"></a><span class="lineno">  705</span>       <span class="keywordflow">case</span> <span class="charliteral">'u'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00706"></a><span class="lineno">  706</span>         <span class="keywordflow">if</span> (memcmp(Name.data()+2, <span class="stringliteral">"arded_var"</span>, 9))</div>
+<div class="line"><a name="l00707"></a><span class="lineno">  707</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00708"></a><span class="lineno">  708</span>         <span class="keywordflow">return</span> AttributeList::AT_GuardedVar;   <span class="comment">// "guarded_var"</span></div>
+<div class="line"><a name="l00709"></a><span class="lineno">  709</span>       }</div>
+<div class="line"><a name="l00710"></a><span class="lineno">  710</span>       <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00711"></a><span class="lineno">  711</span>     <span class="keywordflow">case</span> <span class="charliteral">'n'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00712"></a><span class="lineno">  712</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"s_consumed"</span>, 10))</div>
+<div class="line"><a name="l00713"></a><span class="lineno">  713</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00714"></a><span class="lineno">  714</span>       <span class="keywordflow">return</span> AttributeList::AT_NSConsumed;   <span class="comment">// "ns_consumed"</span></div>
+<div class="line"><a name="l00715"></a><span class="lineno">  715</span>     <span class="keywordflow">case</span> <span class="charliteral">'o'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00716"></a><span class="lineno">  716</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"bjc_bridge"</span>, 10))</div>
+<div class="line"><a name="l00717"></a><span class="lineno">  717</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00718"></a><span class="lineno">  718</span>       <span class="keywordflow">return</span> AttributeList::AT_ObjCBridge;   <span class="comment">// "objc_bridge"</span></div>
+<div class="line"><a name="l00719"></a><span class="lineno">  719</span>     <span class="keywordflow">case</span> <span class="charliteral">'u'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00720"></a><span class="lineno">  720</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"navailable"</span>, 10))</div>
+<div class="line"><a name="l00721"></a><span class="lineno">  721</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00722"></a><span class="lineno">  722</span>       <span class="keywordflow">return</span> AttributeList::AT_Unavailable;  <span class="comment">// "unavailable"</span></div>
+<div class="line"><a name="l00723"></a><span class="lineno">  723</span>     <span class="keywordflow">case</span> <span class="charliteral">'v'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00724"></a><span class="lineno">  724</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"ector_size"</span>, 10))</div>
+<div class="line"><a name="l00725"></a><span class="lineno">  725</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00726"></a><span class="lineno">  726</span>       <span class="keywordflow">return</span> AttributeList::AT_VectorSize;   <span class="comment">// "vector_size"</span></div>
+<div class="line"><a name="l00727"></a><span class="lineno">  727</span>     <span class="keywordflow">case</span> <span class="charliteral">'w'</span>:  <span class="comment">// 2 strings to match.</span></div>
+<div class="line"><a name="l00728"></a><span class="lineno">  728</span>       <span class="keywordflow">switch</span> (Name[1]) {</div>
+<div class="line"><a name="l00729"></a><span class="lineno">  729</span>       <span class="keywordflow">default</span>: <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00730"></a><span class="lineno">  730</span>       <span class="keywordflow">case</span> <span class="charliteral">'a'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00731"></a><span class="lineno">  731</span>         <span class="keywordflow">if</span> (memcmp(Name.data()+2, <span class="stringliteral">"rn_unused"</span>, 9))</div>
+<div class="line"><a name="l00732"></a><span class="lineno">  732</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00733"></a><span class="lineno">  733</span>         <span class="keywordflow">return</span> AttributeList::AT_WarnUnused;   <span class="comment">// "warn_unused"</span></div>
+<div class="line"><a name="l00734"></a><span class="lineno">  734</span>       <span class="keywordflow">case</span> <span class="charliteral">'e'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00735"></a><span class="lineno">  735</span>         <span class="keywordflow">if</span> (memcmp(Name.data()+2, <span class="stringliteral">"ak_import"</span>, 9))</div>
+<div class="line"><a name="l00736"></a><span class="lineno">  736</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00737"></a><span class="lineno">  737</span>         <span class="keywordflow">return</span> AttributeList::AT_WeakImport;   <span class="comment">// "weak_import"</span></div>
+<div class="line"><a name="l00738"></a><span class="lineno">  738</span>       }</div>
+<div class="line"><a name="l00739"></a><span class="lineno">  739</span>       <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00740"></a><span class="lineno">  740</span>     }</div>
+<div class="line"><a name="l00741"></a><span class="lineno">  741</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00742"></a><span class="lineno">  742</span>   <span class="keywordflow">case</span> 12:   <span class="comment">// 12 strings to match.</span></div>
+<div class="line"><a name="l00743"></a><span class="lineno">  743</span>     <span class="keywordflow">switch</span> (Name[0]) {</div>
+<div class="line"><a name="l00744"></a><span class="lineno">  744</span>     <span class="keywordflow">default</span>: <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00745"></a><span class="lineno">  745</span>     <span class="keywordflow">case</span> <span class="charliteral">':'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00746"></a><span class="lineno">  746</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">":deprecated"</span>, 11))</div>
+<div class="line"><a name="l00747"></a><span class="lineno">  747</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00748"></a><span class="lineno">  748</span>       <span class="keywordflow">return</span> AttributeList::AT_Deprecated;   <span class="comment">// "::deprecated"</span></div>
+<div class="line"><a name="l00749"></a><span class="lineno">  749</span>     <span class="keywordflow">case</span> <span class="charliteral">'a'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00750"></a><span class="lineno">  750</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"vailability"</span>, 11))</div>
+<div class="line"><a name="l00751"></a><span class="lineno">  751</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00752"></a><span class="lineno">  752</span>       <span class="keywordflow">return</span> AttributeList::AT_Availability;   <span class="comment">// "availability"</span></div>
+<div class="line"><a name="l00753"></a><span class="lineno">  753</span>     <span class="keywordflow">case</span> <span class="charliteral">'g'</span>:  <span class="comment">// 9 strings to match.</span></div>
+<div class="line"><a name="l00754"></a><span class="lineno">  754</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"nu::"</span>, 4))</div>
+<div class="line"><a name="l00755"></a><span class="lineno">  755</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00756"></a><span class="lineno">  756</span>       <span class="keywordflow">switch</span> (Name[5]) {</div>
+<div class="line"><a name="l00757"></a><span class="lineno">  757</span>       <span class="keywordflow">default</span>: <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00758"></a><span class="lineno">  758</span>       <span class="keywordflow">case</span> <span class="charliteral">'_'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00759"></a><span class="lineno">  759</span>         <span class="keywordflow">if</span> (memcmp(Name.data()+6, <span class="stringliteral">"_const"</span>, 6))</div>
+<div class="line"><a name="l00760"></a><span class="lineno">  760</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00761"></a><span class="lineno">  761</span>         <span class="keywordflow">return</span> AttributeList::AT_Const;  <span class="comment">// "gnu::__const"</span></div>
+<div class="line"><a name="l00762"></a><span class="lineno">  762</span>       <span class="keywordflow">case</span> <span class="charliteral">'a'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00763"></a><span class="lineno">  763</span>         <span class="keywordflow">if</span> (memcmp(Name.data()+6, <span class="stringliteral">"ligned"</span>, 6))</div>
+<div class="line"><a name="l00764"></a><span class="lineno">  764</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00765"></a><span class="lineno">  765</span>         <span class="keywordflow">return</span> AttributeList::AT_Aligned;  <span class="comment">// "gnu::aligned"</span></div>
+<div class="line"><a name="l00766"></a><span class="lineno">  766</span>       <span class="keywordflow">case</span> <span class="charliteral">'c'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00767"></a><span class="lineno">  767</span>         <span class="keywordflow">if</span> (memcmp(Name.data()+6, <span class="stringliteral">"leanup"</span>, 6))</div>
+<div class="line"><a name="l00768"></a><span class="lineno">  768</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00769"></a><span class="lineno">  769</span>         <span class="keywordflow">return</span> AttributeList::AT_Cleanup;  <span class="comment">// "gnu::cleanup"</span></div>
+<div class="line"><a name="l00770"></a><span class="lineno">  770</span>       <span class="keywordflow">case</span> <span class="charliteral">'n'</span>:  <span class="comment">// 2 strings to match.</span></div>
+<div class="line"><a name="l00771"></a><span class="lineno">  771</span>         <span class="keywordflow">if</span> (Name[6] != <span class="charliteral">'o'</span>)</div>
+<div class="line"><a name="l00772"></a><span class="lineno">  772</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00773"></a><span class="lineno">  773</span>         <span class="keywordflow">switch</span> (Name[7]) {</div>
+<div class="line"><a name="l00774"></a><span class="lineno">  774</span>         <span class="keywordflow">default</span>: <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00775"></a><span class="lineno">  775</span>         <span class="keywordflow">case</span> <span class="charliteral">'n'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00776"></a><span class="lineno">  776</span>           <span class="keywordflow">if</span> (memcmp(Name.data()+8, <span class="stringliteral">"null"</span>, 4))</div>
+<div class="line"><a name="l00777"></a><span class="lineno">  777</span>             <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00778"></a><span class="lineno">  778</span>           <span class="keywordflow">return</span> AttributeList::AT_NonNull;  <span class="comment">// "gnu::nonnull"</span></div>
+<div class="line"><a name="l00779"></a><span class="lineno">  779</span>         <span class="keywordflow">case</span> <span class="charliteral">'t'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00780"></a><span class="lineno">  780</span>           <span class="keywordflow">if</span> (memcmp(Name.data()+8, <span class="stringliteral">"hrow"</span>, 4))</div>
+<div class="line"><a name="l00781"></a><span class="lineno">  781</span>             <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00782"></a><span class="lineno">  782</span>           <span class="keywordflow">return</span> AttributeList::AT_NoThrow;  <span class="comment">// "gnu::nothrow"</span></div>
+<div class="line"><a name="l00783"></a><span class="lineno">  783</span>         }</div>
+<div class="line"><a name="l00784"></a><span class="lineno">  784</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00785"></a><span class="lineno">  785</span>       <span class="keywordflow">case</span> <span class="charliteral">'r'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00786"></a><span class="lineno">  786</span>         <span class="keywordflow">if</span> (memcmp(Name.data()+6, <span class="stringliteral">"egparm"</span>, 6))</div>
+<div class="line"><a name="l00787"></a><span class="lineno">  787</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00788"></a><span class="lineno">  788</span>         <span class="keywordflow">return</span> AttributeList::AT_Regparm;  <span class="comment">// "gnu::regparm"</span></div>
+<div class="line"><a name="l00789"></a><span class="lineno">  789</span>       <span class="keywordflow">case</span> <span class="charliteral">'s'</span>:  <span class="comment">// 2 strings to match.</span></div>
+<div class="line"><a name="l00790"></a><span class="lineno">  790</span>         <span class="keywordflow">switch</span> (Name[6]) {</div>
+<div class="line"><a name="l00791"></a><span class="lineno">  791</span>         <span class="keywordflow">default</span>: <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00792"></a><span class="lineno">  792</span>         <span class="keywordflow">case</span> <span class="charliteral">'e'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00793"></a><span class="lineno">  793</span>           <span class="keywordflow">if</span> (memcmp(Name.data()+7, <span class="stringliteral">"ction"</span>, 5))</div>
+<div class="line"><a name="l00794"></a><span class="lineno">  794</span>             <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00795"></a><span class="lineno">  795</span>           <span class="keywordflow">return</span> AttributeList::AT_Section;  <span class="comment">// "gnu::section"</span></div>
+<div class="line"><a name="l00796"></a><span class="lineno">  796</span>         <span class="keywordflow">case</span> <span class="charliteral">'t'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00797"></a><span class="lineno">  797</span>           <span class="keywordflow">if</span> (memcmp(Name.data()+7, <span class="stringliteral">"dcall"</span>, 5))</div>
+<div class="line"><a name="l00798"></a><span class="lineno">  798</span>             <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00799"></a><span class="lineno">  799</span>           <span class="keywordflow">return</span> AttributeList::AT_StdCall;  <span class="comment">// "gnu::stdcall"</span></div>
+<div class="line"><a name="l00800"></a><span class="lineno">  800</span>         }</div>
+<div class="line"><a name="l00801"></a><span class="lineno">  801</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00802"></a><span class="lineno">  802</span>       <span class="keywordflow">case</span> <span class="charliteral">'w'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00803"></a><span class="lineno">  803</span>         <span class="keywordflow">if</span> (memcmp(Name.data()+6, <span class="stringliteral">"eakref"</span>, 6))</div>
+<div class="line"><a name="l00804"></a><span class="lineno">  804</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00805"></a><span class="lineno">  805</span>         <span class="keywordflow">return</span> AttributeList::AT_WeakRef;  <span class="comment">// "gnu::weakref"</span></div>
+<div class="line"><a name="l00806"></a><span class="lineno">  806</span>       }</div>
+<div class="line"><a name="l00807"></a><span class="lineno">  807</span>       <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00808"></a><span class="lineno">  808</span>     <span class="keywordflow">case</span> <span class="charliteral">'o'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00809"></a><span class="lineno">  809</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"verloadable"</span>, 11))</div>
+<div class="line"><a name="l00810"></a><span class="lineno">  810</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00811"></a><span class="lineno">  811</span>       <span class="keywordflow">return</span> AttributeList::AT_Overloadable;   <span class="comment">// "overloadable"</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">break</span>;</div>
+<div class="line"><a name="l00814"></a><span class="lineno">  814</span>   <span class="keywordflow">case</span> 13:   <span class="comment">// 20 strings to match.</span></div>
+<div class="line"><a name="l00815"></a><span class="lineno">  815</span>     <span class="keywordflow">switch</span> (Name[0]) {</div>
+<div class="line"><a name="l00816"></a><span class="lineno">  816</span>     <span class="keywordflow">default</span>: <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00817"></a><span class="lineno">  817</span>     <span class="keywordflow">case</span> <span class="charliteral">'_'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00818"></a><span class="lineno">  818</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"_forceinline"</span>, 12))</div>
+<div class="line"><a name="l00819"></a><span class="lineno">  819</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00820"></a><span class="lineno">  820</span>       <span class="keywordflow">return</span> AttributeList::AT_ForceInline;  <span class="comment">// "__forceinline"</span></div>
+<div class="line"><a name="l00821"></a><span class="lineno">  821</span>     <span class="keywordflow">case</span> <span class="charliteral">'a'</span>:  <span class="comment">// 2 strings to match.</span></div>
+<div class="line"><a name="l00822"></a><span class="lineno">  822</span>       <span class="keywordflow">switch</span> (Name[1]) {</div>
+<div class="line"><a name="l00823"></a><span class="lineno">  823</span>       <span class="keywordflow">default</span>: <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00824"></a><span class="lineno">  824</span>       <span class="keywordflow">case</span> <span class="charliteral">'d'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00825"></a><span class="lineno">  825</span>         <span class="keywordflow">if</span> (memcmp(Name.data()+2, <span class="stringliteral">"dress_space"</span>, 11))</div>
+<div class="line"><a name="l00826"></a><span class="lineno">  826</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00827"></a><span class="lineno">  827</span>         <span class="keywordflow">return</span> AttributeList::AT_AddressSpace;   <span class="comment">// "address_space"</span></div>
+<div class="line"><a name="l00828"></a><span class="lineno">  828</span>       <span class="keywordflow">case</span> <span class="charliteral">'l'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00829"></a><span class="lineno">  829</span>         <span class="keywordflow">if</span> (memcmp(Name.data()+2, <span class="stringliteral">"ways_inline"</span>, 11))</div>
+<div class="line"><a name="l00830"></a><span class="lineno">  830</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00831"></a><span class="lineno">  831</span>         <span class="keywordflow">return</span> AttributeList::AT_AlwaysInline;   <span class="comment">// "always_inline"</span></div>
+<div class="line"><a name="l00832"></a><span class="lineno">  832</span>       }</div>
+<div class="line"><a name="l00833"></a><span class="lineno">  833</span>       <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00834"></a><span class="lineno">  834</span>     <span class="keywordflow">case</span> <span class="charliteral">'c'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00835"></a><span class="lineno">  835</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"allable_when"</span>, 12))</div>
+<div class="line"><a name="l00836"></a><span class="lineno">  836</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00837"></a><span class="lineno">  837</span>       <span class="keywordflow">return</span> AttributeList::AT_CallableWhen;   <span class="comment">// "callable_when"</span></div>
+<div class="line"><a name="l00838"></a><span class="lineno">  838</span>     <span class="keywordflow">case</span> <span class="charliteral">'g'</span>:  <span class="comment">// 8 strings to match.</span></div>
+<div class="line"><a name="l00839"></a><span class="lineno">  839</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"nu::"</span>, 4))</div>
+<div class="line"><a name="l00840"></a><span class="lineno">  840</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00841"></a><span class="lineno">  841</span>       <span class="keywordflow">switch</span> (Name[5]) {</div>
+<div class="line"><a name="l00842"></a><span class="lineno">  842</span>       <span class="keywordflow">default</span>: <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00843"></a><span class="lineno">  843</span>       <span class="keywordflow">case</span> <span class="charliteral">'f'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00844"></a><span class="lineno">  844</span>         <span class="keywordflow">if</span> (memcmp(Name.data()+6, <span class="stringliteral">"astcall"</span>, 7))</div>
+<div class="line"><a name="l00845"></a><span class="lineno">  845</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00846"></a><span class="lineno">  846</span>         <span class="keywordflow">return</span> AttributeList::AT_FastCall;   <span class="comment">// "gnu::fastcall"</span></div>
+<div class="line"><a name="l00847"></a><span class="lineno">  847</span>       <span class="keywordflow">case</span> <span class="charliteral">'n'</span>:  <span class="comment">// 4 strings to match.</span></div>
+<div class="line"><a name="l00848"></a><span class="lineno">  848</span>         <span class="keywordflow">if</span> (Name[6] != <span class="charliteral">'o'</span>)</div>
+<div class="line"><a name="l00849"></a><span class="lineno">  849</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00850"></a><span class="lineno">  850</span>         <span class="keywordflow">switch</span> (Name[7]) {</div>
+<div class="line"><a name="l00851"></a><span class="lineno">  851</span>         <span class="keywordflow">default</span>: <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00852"></a><span class="lineno">  852</span>         <span class="keywordflow">case</span> <span class="charliteral">'c'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00853"></a><span class="lineno">  853</span>           <span class="keywordflow">if</span> (memcmp(Name.data()+8, <span class="stringliteral">"ommon"</span>, 5))</div>
+<div class="line"><a name="l00854"></a><span class="lineno">  854</span>             <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00855"></a><span class="lineno">  855</span>           <span class="keywordflow">return</span> AttributeList::AT_NoCommon;   <span class="comment">// "gnu::nocommon"</span></div>
+<div class="line"><a name="l00856"></a><span class="lineno">  856</span>         <span class="keywordflow">case</span> <span class="charliteral">'i'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00857"></a><span class="lineno">  857</span>           <span class="keywordflow">if</span> (memcmp(Name.data()+8, <span class="stringliteral">"nline"</span>, 5))</div>
+<div class="line"><a name="l00858"></a><span class="lineno">  858</span>             <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00859"></a><span class="lineno">  859</span>           <span class="keywordflow">return</span> AttributeList::AT_NoInline;   <span class="comment">// "gnu::noinline"</span></div>
+<div class="line"><a name="l00860"></a><span class="lineno">  860</span>         <span class="keywordflow">case</span> <span class="charliteral">'m'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00861"></a><span class="lineno">  861</span>           <span class="keywordflow">if</span> (memcmp(Name.data()+8, <span class="stringliteral">"ips16"</span>, 5))</div>
+<div class="line"><a name="l00862"></a><span class="lineno">  862</span>             <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00863"></a><span class="lineno">  863</span>           <span class="keywordflow">return</span> AttributeList::AT_NoMips16;   <span class="comment">// "gnu::nomips16"</span></div>
+<div class="line"><a name="l00864"></a><span class="lineno">  864</span>         <span class="keywordflow">case</span> <span class="charliteral">'r'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00865"></a><span class="lineno">  865</span>           <span class="keywordflow">if</span> (memcmp(Name.data()+8, <span class="stringliteral">"eturn"</span>, 5))</div>
+<div class="line"><a name="l00866"></a><span class="lineno">  866</span>             <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00867"></a><span class="lineno">  867</span>           <span class="keywordflow">return</span> AttributeList::AT_NoReturn;   <span class="comment">// "gnu::noreturn"</span></div>
+<div class="line"><a name="l00868"></a><span class="lineno">  868</span>         }</div>
+<div class="line"><a name="l00869"></a><span class="lineno">  869</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00870"></a><span class="lineno">  870</span>       <span class="keywordflow">case</span> <span class="charliteral">'s'</span>:  <span class="comment">// 2 strings to match.</span></div>
+<div class="line"><a name="l00871"></a><span class="lineno">  871</span>         <span class="keywordflow">switch</span> (Name[6]) {</div>
+<div class="line"><a name="l00872"></a><span class="lineno">  872</span>         <span class="keywordflow">default</span>: <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00873"></a><span class="lineno">  873</span>         <span class="keywordflow">case</span> <span class="charliteral">'e'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00874"></a><span class="lineno">  874</span>           <span class="keywordflow">if</span> (memcmp(Name.data()+7, <span class="stringliteral">"ntinel"</span>, 6))</div>
+<div class="line"><a name="l00875"></a><span class="lineno">  875</span>             <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00876"></a><span class="lineno">  876</span>           <span class="keywordflow">return</span> AttributeList::AT_Sentinel;   <span class="comment">// "gnu::sentinel"</span></div>
+<div class="line"><a name="l00877"></a><span class="lineno">  877</span>         <span class="keywordflow">case</span> <span class="charliteral">'y'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00878"></a><span class="lineno">  878</span>           <span class="keywordflow">if</span> (memcmp(Name.data()+7, <span class="stringliteral">"sv_abi"</span>, 6))</div>
+<div class="line"><a name="l00879"></a><span class="lineno">  879</span>             <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00880"></a><span class="lineno">  880</span>           <span class="keywordflow">return</span> AttributeList::AT_SysVABI;  <span class="comment">// "gnu::sysv_abi"</span></div>
+<div class="line"><a name="l00881"></a><span class="lineno">  881</span>         }</div>
+<div class="line"><a name="l00882"></a><span class="lineno">  882</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00883"></a><span class="lineno">  883</span>       <span class="keywordflow">case</span> <span class="charliteral">'t'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00884"></a><span class="lineno">  884</span>         <span class="keywordflow">if</span> (memcmp(Name.data()+6, <span class="stringliteral">"hiscall"</span>, 7))</div>
+<div class="line"><a name="l00885"></a><span class="lineno">  885</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00886"></a><span class="lineno">  886</span>         <span class="keywordflow">return</span> AttributeList::AT_ThisCall;   <span class="comment">// "gnu::thiscall"</span></div>
+<div class="line"><a name="l00887"></a><span class="lineno">  887</span>       }</div>
+<div class="line"><a name="l00888"></a><span class="lineno">  888</span>       <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00889"></a><span class="lineno">  889</span>     <span class="keywordflow">case</span> <span class="charliteral">'i'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00890"></a><span class="lineno">  890</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"nit_priority"</span>, 12))</div>
+<div class="line"><a name="l00891"></a><span class="lineno">  891</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00892"></a><span class="lineno">  892</span>       <span class="keywordflow">return</span> AttributeList::AT_InitPriority;   <span class="comment">// "init_priority"</span></div>
+<div class="line"><a name="l00893"></a><span class="lineno">  893</span>     <span class="keywordflow">case</span> <span class="charliteral">'l'</span>:  <span class="comment">// 2 strings to match.</span></div>
+<div class="line"><a name="l00894"></a><span class="lineno">  894</span>       <span class="keywordflow">switch</span> (Name[1]) {</div>
+<div class="line"><a name="l00895"></a><span class="lineno">  895</span>       <span class="keywordflow">default</span>: <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00896"></a><span class="lineno">  896</span>       <span class="keywordflow">case</span> <span class="charliteral">'a'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00897"></a><span class="lineno">  897</span>         <span class="keywordflow">if</span> (memcmp(Name.data()+2, <span class="stringliteral">"unch_bounds"</span>, 11))</div>
+<div class="line"><a name="l00898"></a><span class="lineno">  898</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00899"></a><span class="lineno">  899</span>         <span class="keywordflow">return</span> AttributeList::AT_CUDALaunchBounds;   <span class="comment">// "launch_bounds"</span></div>
+<div class="line"><a name="l00900"></a><span class="lineno">  900</span>       <span class="keywordflow">case</span> <span class="charliteral">'o'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00901"></a><span class="lineno">  901</span>         <span class="keywordflow">if</span> (memcmp(Name.data()+2, <span class="stringliteral">"ck_returned"</span>, 11))</div>
+<div class="line"><a name="l00902"></a><span class="lineno">  902</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00903"></a><span class="lineno">  903</span>         <span class="keywordflow">return</span> AttributeList::AT_LockReturned;   <span class="comment">// "lock_returned"</span></div>
+<div class="line"><a name="l00904"></a><span class="lineno">  904</span>       }</div>
+<div class="line"><a name="l00905"></a><span class="lineno">  905</span>       <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00906"></a><span class="lineno">  906</span>     <span class="keywordflow">case</span> <span class="charliteral">'p'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00907"></a><span class="lineno">  907</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"t_guarded_by"</span>, 12))</div>
+<div class="line"><a name="l00908"></a><span class="lineno">  908</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00909"></a><span class="lineno">  909</span>       <span class="keywordflow">return</span> AttributeList::AT_PtGuardedBy;  <span class="comment">// "pt_guarded_by"</span></div>
+<div class="line"><a name="l00910"></a><span class="lineno">  910</span>     <span class="keywordflow">case</span> <span class="charliteral">'r'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00911"></a><span class="lineno">  911</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"eturns_twice"</span>, 12))</div>
+<div class="line"><a name="l00912"></a><span class="lineno">  912</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00913"></a><span class="lineno">  913</span>       <span class="keywordflow">return</span> AttributeList::AT_ReturnsTwice;   <span class="comment">// "returns_twice"</span></div>
+<div class="line"><a name="l00914"></a><span class="lineno">  914</span>     <span class="keywordflow">case</span> <span class="charliteral">'s'</span>:  <span class="comment">// 2 strings to match.</span></div>
+<div class="line"><a name="l00915"></a><span class="lineno">  915</span>       <span class="keywordflow">switch</span> (Name[1]) {</div>
+<div class="line"><a name="l00916"></a><span class="lineno">  916</span>       <span class="keywordflow">default</span>: <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00917"></a><span class="lineno">  917</span>       <span class="keywordflow">case</span> <span class="charliteral">'e'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00918"></a><span class="lineno">  918</span>         <span class="keywordflow">if</span> (memcmp(Name.data()+2, <span class="stringliteral">"t_typestate"</span>, 11))</div>
+<div class="line"><a name="l00919"></a><span class="lineno">  919</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00920"></a><span class="lineno">  920</span>         <span class="keywordflow">return</span> AttributeList::AT_SetTypestate;   <span class="comment">// "set_typestate"</span></div>
+<div class="line"><a name="l00921"></a><span class="lineno">  921</span>       <span class="keywordflow">case</span> <span class="charliteral">'t'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00922"></a><span class="lineno">  922</span>         <span class="keywordflow">if</span> (memcmp(Name.data()+2, <span class="stringliteral">"d::noreturn"</span>, 11))</div>
+<div class="line"><a name="l00923"></a><span class="lineno">  923</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00924"></a><span class="lineno">  924</span>         <span class="keywordflow">return</span> AttributeList::AT_CXX11NoReturn;  <span class="comment">// "std::noreturn"</span></div>
+<div class="line"><a name="l00925"></a><span class="lineno">  925</span>       }</div>
+<div class="line"><a name="l00926"></a><span class="lineno">  926</span>       <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00927"></a><span class="lineno">  927</span>     <span class="keywordflow">case</span> <span class="charliteral">'v'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00928"></a><span class="lineno">  928</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"ec_type_hint"</span>, 12))</div>
+<div class="line"><a name="l00929"></a><span class="lineno">  929</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00930"></a><span class="lineno">  930</span>       <span class="keywordflow">return</span> AttributeList::AT_VecTypeHint;  <span class="comment">// "vec_type_hint"</span></div>
+<div class="line"><a name="l00931"></a><span class="lineno">  931</span>     }</div>
+<div class="line"><a name="l00932"></a><span class="lineno">  932</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00933"></a><span class="lineno">  933</span>   <span class="keywordflow">case</span> 14:   <span class="comment">// 9 strings to match.</span></div>
+<div class="line"><a name="l00934"></a><span class="lineno">  934</span>     <span class="keywordflow">switch</span> (Name[0]) {</div>
+<div class="line"><a name="l00935"></a><span class="lineno">  935</span>     <span class="keywordflow">default</span>: <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00936"></a><span class="lineno">  936</span>     <span class="keywordflow">case</span> <span class="charliteral">'a'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00937"></a><span class="lineno">  937</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"cquired_after"</span>, 13))</div>
+<div class="line"><a name="l00938"></a><span class="lineno">  938</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00939"></a><span class="lineno">  939</span>       <span class="keywordflow">return</span> AttributeList::AT_AcquiredAfter;  <span class="comment">// "acquired_after"</span></div>
+<div class="line"><a name="l00940"></a><span class="lineno">  940</span>     <span class="keywordflow">case</span> <span class="charliteral">'g'</span>:  <span class="comment">// 2 strings to match.</span></div>
+<div class="line"><a name="l00941"></a><span class="lineno">  941</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"nu::"</span>, 4))</div>
+<div class="line"><a name="l00942"></a><span class="lineno">  942</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00943"></a><span class="lineno">  943</span>       <span class="keywordflow">switch</span> (Name[5]) {</div>
+<div class="line"><a name="l00944"></a><span class="lineno">  944</span>       <span class="keywordflow">default</span>: <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00945"></a><span class="lineno">  945</span>       <span class="keywordflow">case</span> <span class="charliteral">'m'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00946"></a><span class="lineno">  946</span>         <span class="keywordflow">if</span> (memcmp(Name.data()+6, <span class="stringliteral">"ay_alias"</span>, 8))</div>
+<div class="line"><a name="l00947"></a><span class="lineno">  947</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00948"></a><span class="lineno">  948</span>         <span class="keywordflow">return</span> AttributeList::AT_MayAlias;   <span class="comment">// "gnu::may_alias"</span></div>
+<div class="line"><a name="l00949"></a><span class="lineno">  949</span>       <span class="keywordflow">case</span> <span class="charliteral">'t'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00950"></a><span class="lineno">  950</span>         <span class="keywordflow">if</span> (memcmp(Name.data()+6, <span class="stringliteral">"ls_model"</span>, 8))</div>
+<div class="line"><a name="l00951"></a><span class="lineno">  951</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00952"></a><span class="lineno">  952</span>         <span class="keywordflow">return</span> AttributeList::AT_TLSModel;   <span class="comment">// "gnu::tls_model"</span></div>
+<div class="line"><a name="l00953"></a><span class="lineno">  953</span>       }</div>
+<div class="line"><a name="l00954"></a><span class="lineno">  954</span>       <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00955"></a><span class="lineno">  955</span>     <span class="keywordflow">case</span> <span class="charliteral">'i'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00956"></a><span class="lineno">  956</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"ntel_ocl_bicc"</span>, 13))</div>
+<div class="line"><a name="l00957"></a><span class="lineno">  957</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00958"></a><span class="lineno">  958</span>       <span class="keywordflow">return</span> AttributeList::AT_IntelOclBicc;   <span class="comment">// "intel_ocl_bicc"</span></div>
+<div class="line"><a name="l00959"></a><span class="lineno">  959</span>     <span class="keywordflow">case</span> <span class="charliteral">'l'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00960"></a><span class="lineno">  960</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"ocks_excluded"</span>, 13))</div>
+<div class="line"><a name="l00961"></a><span class="lineno">  961</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00962"></a><span class="lineno">  962</span>       <span class="keywordflow">return</span> AttributeList::AT_LocksExcluded;  <span class="comment">// "locks_excluded"</span></div>
+<div class="line"><a name="l00963"></a><span class="lineno">  963</span>     <span class="keywordflow">case</span> <span class="charliteral">'o'</span>:  <span class="comment">// 2 strings to match.</span></div>
+<div class="line"><a name="l00964"></a><span class="lineno">  964</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"bjc_"</span>, 4))</div>
+<div class="line"><a name="l00965"></a><span class="lineno">  965</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00966"></a><span class="lineno">  966</span>       <span class="keywordflow">switch</span> (Name[5]) {</div>
+<div class="line"><a name="l00967"></a><span class="lineno">  967</span>       <span class="keywordflow">default</span>: <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00968"></a><span class="lineno">  968</span>       <span class="keywordflow">case</span> <span class="charliteral">'e'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00969"></a><span class="lineno">  969</span>         <span class="keywordflow">if</span> (memcmp(Name.data()+6, <span class="stringliteral">"xception"</span>, 8))</div>
+<div class="line"><a name="l00970"></a><span class="lineno">  970</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00971"></a><span class="lineno">  971</span>         <span class="keywordflow">return</span> AttributeList::AT_ObjCException;  <span class="comment">// "objc_exception"</span></div>
+<div class="line"><a name="l00972"></a><span class="lineno">  972</span>       <span class="keywordflow">case</span> <span class="charliteral">'o'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00973"></a><span class="lineno">  973</span>         <span class="keywordflow">if</span> (memcmp(Name.data()+6, <span class="stringliteral">"wnership"</span>, 8))</div>
+<div class="line"><a name="l00974"></a><span class="lineno">  974</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00975"></a><span class="lineno">  975</span>         <span class="keywordflow">return</span> AttributeList::AT_ObjCOwnership;  <span class="comment">// "objc_ownership"</span></div>
+<div class="line"><a name="l00976"></a><span class="lineno">  976</span>       }</div>
+<div class="line"><a name="l00977"></a><span class="lineno">  977</span>       <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00978"></a><span class="lineno">  978</span>     <span class="keywordflow">case</span> <span class="charliteral">'p'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00979"></a><span class="lineno">  979</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"t_guarded_var"</span>, 13))</div>
+<div class="line"><a name="l00980"></a><span class="lineno">  980</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00981"></a><span class="lineno">  981</span>       <span class="keywordflow">return</span> AttributeList::AT_PtGuardedVar;   <span class="comment">// "pt_guarded_var"</span></div>
+<div class="line"><a name="l00982"></a><span class="lineno">  982</span>     <span class="keywordflow">case</span> <span class="charliteral">'t'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00983"></a><span class="lineno">  983</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"est_typestate"</span>, 13))</div>
+<div class="line"><a name="l00984"></a><span class="lineno">  984</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00985"></a><span class="lineno">  985</span>       <span class="keywordflow">return</span> AttributeList::AT_TestTypestate;  <span class="comment">// "test_typestate"</span></div>
+<div class="line"><a name="l00986"></a><span class="lineno">  986</span>     }</div>
+<div class="line"><a name="l00987"></a><span class="lineno">  987</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00988"></a><span class="lineno">  988</span>   <span class="keywordflow">case</span> 15:   <span class="comment">// 15 strings to match.</span></div>
+<div class="line"><a name="l00989"></a><span class="lineno">  989</span>     <span class="keywordflow">switch</span> (Name[0]) {</div>
+<div class="line"><a name="l00990"></a><span class="lineno">  990</span>     <span class="keywordflow">default</span>: <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00991"></a><span class="lineno">  991</span>     <span class="keywordflow">case</span> <span class="charliteral">'a'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00992"></a><span class="lineno">  992</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"cquired_before"</span>, 14))</div>
+<div class="line"><a name="l00993"></a><span class="lineno">  993</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00994"></a><span class="lineno">  994</span>       <span class="keywordflow">return</span> AttributeList::AT_AcquiredBefore;   <span class="comment">// "acquired_before"</span></div>
+<div class="line"><a name="l00995"></a><span class="lineno">  995</span>     <span class="keywordflow">case</span> <span class="charliteral">'e'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l00996"></a><span class="lineno">  996</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"xt_vector_type"</span>, 14))</div>
+<div class="line"><a name="l00997"></a><span class="lineno">  997</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00998"></a><span class="lineno">  998</span>       <span class="keywordflow">return</span> AttributeList::AT_ExtVectorType;  <span class="comment">// "ext_vector_type"</span></div>
+<div class="line"><a name="l00999"></a><span class="lineno">  999</span>     <span class="keywordflow">case</span> <span class="charliteral">'g'</span>:  <span class="comment">// 6 strings to match.</span></div>
+<div class="line"><a name="l01000"></a><span class="lineno"> 1000</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"nu::"</span>, 4))</div>
+<div class="line"><a name="l01001"></a><span class="lineno"> 1001</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01002"></a><span class="lineno"> 1002</span>       <span class="keywordflow">switch</span> (Name[5]) {</div>
+<div class="line"><a name="l01003"></a><span class="lineno"> 1003</span>       <span class="keywordflow">default</span>: <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01004"></a><span class="lineno"> 1004</span>       <span class="keywordflow">case</span> <span class="charliteral">'a'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l01005"></a><span class="lineno"> 1005</span>         <span class="keywordflow">if</span> (memcmp(Name.data()+6, <span class="stringliteral">"lloc_size"</span>, 9))</div>
+<div class="line"><a name="l01006"></a><span class="lineno"> 1006</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01007"></a><span class="lineno"> 1007</span>         <span class="keywordflow">return</span> AttributeList::AT_AllocSize;  <span class="comment">// "gnu::alloc_size"</span></div>
+<div class="line"><a name="l01008"></a><span class="lineno"> 1008</span>       <span class="keywordflow">case</span> <span class="charliteral">'d'</span>:  <span class="comment">// 2 strings to match.</span></div>
+<div class="line"><a name="l01009"></a><span class="lineno"> 1009</span>         <span class="keywordflow">if</span> (Name[6] != <span class="charliteral">'e'</span>)</div>
+<div class="line"><a name="l01010"></a><span class="lineno"> 1010</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01011"></a><span class="lineno"> 1011</span>         <span class="keywordflow">switch</span> (Name[7]) {</div>
+<div class="line"><a name="l01012"></a><span class="lineno"> 1012</span>         <span class="keywordflow">default</span>: <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01013"></a><span class="lineno"> 1013</span>         <span class="keywordflow">case</span> <span class="charliteral">'p'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l01014"></a><span class="lineno"> 1014</span>           <span class="keywordflow">if</span> (memcmp(Name.data()+8, <span class="stringliteral">"recated"</span>, 7))</div>
+<div class="line"><a name="l01015"></a><span class="lineno"> 1015</span>             <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01016"></a><span class="lineno"> 1016</span>           <span class="keywordflow">return</span> AttributeList::AT_Deprecated;   <span class="comment">// "gnu::deprecated"</span></div>
+<div class="line"><a name="l01017"></a><span class="lineno"> 1017</span>         <span class="keywordflow">case</span> <span class="charliteral">'s'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l01018"></a><span class="lineno"> 1018</span>           <span class="keywordflow">if</span> (memcmp(Name.data()+8, <span class="stringliteral">"tructor"</span>, 7))</div>
+<div class="line"><a name="l01019"></a><span class="lineno"> 1019</span>             <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01020"></a><span class="lineno"> 1020</span>           <span class="keywordflow">return</span> AttributeList::AT_Destructor;   <span class="comment">// "gnu::destructor"</span></div>
+<div class="line"><a name="l01021"></a><span class="lineno"> 1021</span>         }</div>
+<div class="line"><a name="l01022"></a><span class="lineno"> 1022</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01023"></a><span class="lineno"> 1023</span>       <span class="keywordflow">case</span> <span class="charliteral">'f'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l01024"></a><span class="lineno"> 1024</span>         <span class="keywordflow">if</span> (memcmp(Name.data()+6, <span class="stringliteral">"ormat_arg"</span>, 9))</div>
+<div class="line"><a name="l01025"></a><span class="lineno"> 1025</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01026"></a><span class="lineno"> 1026</span>         <span class="keywordflow">return</span> AttributeList::AT_FormatArg;  <span class="comment">// "gnu::format_arg"</span></div>
+<div class="line"><a name="l01027"></a><span class="lineno"> 1027</span>       <span class="keywordflow">case</span> <span class="charliteral">'g'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l01028"></a><span class="lineno"> 1028</span>         <span class="keywordflow">if</span> (memcmp(Name.data()+6, <span class="stringliteral">"nu_inline"</span>, 9))</div>
+<div class="line"><a name="l01029"></a><span class="lineno"> 1029</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01030"></a><span class="lineno"> 1030</span>         <span class="keywordflow">return</span> AttributeList::AT_GNUInline;  <span class="comment">// "gnu::gnu_inline"</span></div>
+<div class="line"><a name="l01031"></a><span class="lineno"> 1031</span>       <span class="keywordflow">case</span> <span class="charliteral">'v'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l01032"></a><span class="lineno"> 1032</span>         <span class="keywordflow">if</span> (memcmp(Name.data()+6, <span class="stringliteral">"isibility"</span>, 9))</div>
+<div class="line"><a name="l01033"></a><span class="lineno"> 1033</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01034"></a><span class="lineno"> 1034</span>         <span class="keywordflow">return</span> AttributeList::AT_Visibility;   <span class="comment">// "gnu::visibility"</span></div>
+<div class="line"><a name="l01035"></a><span class="lineno"> 1035</span>       }</div>
+<div class="line"><a name="l01036"></a><span class="lineno"> 1036</span>       <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01037"></a><span class="lineno"> 1037</span>     <span class="keywordflow">case</span> <span class="charliteral">'o'</span>:  <span class="comment">// 3 strings to match.</span></div>
+<div class="line"><a name="l01038"></a><span class="lineno"> 1038</span>       <span class="keywordflow">switch</span> (Name[1]) {</div>
+<div class="line"><a name="l01039"></a><span class="lineno"> 1039</span>       <span class="keywordflow">default</span>: <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01040"></a><span class="lineno"> 1040</span>       <span class="keywordflow">case</span> <span class="charliteral">'b'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l01041"></a><span class="lineno"> 1041</span>         <span class="keywordflow">if</span> (memcmp(Name.data()+2, <span class="stringliteral">"jc_root_class"</span>, 13))</div>
+<div class="line"><a name="l01042"></a><span class="lineno"> 1042</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01043"></a><span class="lineno"> 1043</span>         <span class="keywordflow">return</span> AttributeList::AT_ObjCRootClass;  <span class="comment">// "objc_root_class"</span></div>
+<div class="line"><a name="l01044"></a><span class="lineno"> 1044</span>       <span class="keywordflow">case</span> <span class="charliteral">'w'</span>:  <span class="comment">// 2 strings to match.</span></div>
+<div class="line"><a name="l01045"></a><span class="lineno"> 1045</span>         <span class="keywordflow">if</span> (memcmp(Name.data()+2, <span class="stringliteral">"nership_"</span>, 8))</div>
+<div class="line"><a name="l01046"></a><span class="lineno"> 1046</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01047"></a><span class="lineno"> 1047</span>         <span class="keywordflow">switch</span> (Name[10]) {</div>
+<div class="line"><a name="l01048"></a><span class="lineno"> 1048</span>         <span class="keywordflow">default</span>: <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01049"></a><span class="lineno"> 1049</span>         <span class="keywordflow">case</span> <span class="charliteral">'h'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l01050"></a><span class="lineno"> 1050</span>           <span class="keywordflow">if</span> (memcmp(Name.data()+11, <span class="stringliteral">"olds"</span>, 4))</div>
+<div class="line"><a name="l01051"></a><span class="lineno"> 1051</span>             <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01052"></a><span class="lineno"> 1052</span>           <span class="keywordflow">return</span> AttributeList::AT_ownership_holds;  <span class="comment">// "ownership_holds"</span></div>
+<div class="line"><a name="l01053"></a><span class="lineno"> 1053</span>         <span class="keywordflow">case</span> <span class="charliteral">'t'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l01054"></a><span class="lineno"> 1054</span>           <span class="keywordflow">if</span> (memcmp(Name.data()+11, <span class="stringliteral">"akes"</span>, 4))</div>
+<div class="line"><a name="l01055"></a><span class="lineno"> 1055</span>             <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01056"></a><span class="lineno"> 1056</span>           <span class="keywordflow">return</span> AttributeList::AT_ownership_takes;  <span class="comment">// "ownership_takes"</span></div>
+<div class="line"><a name="l01057"></a><span class="lineno"> 1057</span>         }</div>
+<div class="line"><a name="l01058"></a><span class="lineno"> 1058</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01059"></a><span class="lineno"> 1059</span>       }</div>
+<div class="line"><a name="l01060"></a><span class="lineno"> 1060</span>       <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01061"></a><span class="lineno"> 1061</span>     <span class="keywordflow">case</span> <span class="charliteral">'p'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l01062"></a><span class="lineno"> 1062</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"aram_typestate"</span>, 14))</div>
+<div class="line"><a name="l01063"></a><span class="lineno"> 1063</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01064"></a><span class="lineno"> 1064</span>       <span class="keywordflow">return</span> AttributeList::AT_ParamTypestate;   <span class="comment">// "param_typestate"</span></div>
+<div class="line"><a name="l01065"></a><span class="lineno"> 1065</span>     <span class="keywordflow">case</span> <span class="charliteral">'s'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l01066"></a><span class="lineno"> 1066</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"coped_lockable"</span>, 14))</div>
+<div class="line"><a name="l01067"></a><span class="lineno"> 1067</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01068"></a><span class="lineno"> 1068</span>       <span class="keywordflow">return</span> AttributeList::AT_ScopedLockable;   <span class="comment">// "scoped_lockable"</span></div>
+<div class="line"><a name="l01069"></a><span class="lineno"> 1069</span>     <span class="keywordflow">case</span> <span class="charliteral">'t'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l01070"></a><span class="lineno"> 1070</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"ype_visibility"</span>, 14))</div>
+<div class="line"><a name="l01071"></a><span class="lineno"> 1071</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01072"></a><span class="lineno"> 1072</span>       <span class="keywordflow">return</span> AttributeList::AT_TypeVisibility;   <span class="comment">// "type_visibility"</span></div>
+<div class="line"><a name="l01073"></a><span class="lineno"> 1073</span>     <span class="keywordflow">case</span> <span class="charliteral">'u'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l01074"></a><span class="lineno"> 1074</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"nlock_function"</span>, 14))</div>
+<div class="line"><a name="l01075"></a><span class="lineno"> 1075</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01076"></a><span class="lineno"> 1076</span>       <span class="keywordflow">return</span> AttributeList::AT_UnlockFunction;   <span class="comment">// "unlock_function"</span></div>
+<div class="line"><a name="l01077"></a><span class="lineno"> 1077</span>     }</div>
+<div class="line"><a name="l01078"></a><span class="lineno"> 1078</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01079"></a><span class="lineno"> 1079</span>   <span class="keywordflow">case</span> 16:   <span class="comment">// 5 strings to match.</span></div>
+<div class="line"><a name="l01080"></a><span class="lineno"> 1080</span>     <span class="keywordflow">switch</span> (Name[0]) {</div>
+<div class="line"><a name="l01081"></a><span class="lineno"> 1081</span>     <span class="keywordflow">default</span>: <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01082"></a><span class="lineno"> 1082</span>     <span class="keywordflow">case</span> <span class="charliteral">'g'</span>:  <span class="comment">// 2 strings to match.</span></div>
+<div class="line"><a name="l01083"></a><span class="lineno"> 1083</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"nu::"</span>, 4))</div>
+<div class="line"><a name="l01084"></a><span class="lineno"> 1084</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01085"></a><span class="lineno"> 1085</span>       <span class="keywordflow">switch</span> (Name[5]) {</div>
+<div class="line"><a name="l01086"></a><span class="lineno"> 1086</span>       <span class="keywordflow">default</span>: <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01087"></a><span class="lineno"> 1087</span>       <span class="keywordflow">case</span> <span class="charliteral">'c'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l01088"></a><span class="lineno"> 1088</span>         <span class="keywordflow">if</span> (memcmp(Name.data()+6, <span class="stringliteral">"onstructor"</span>, 10))</div>
+<div class="line"><a name="l01089"></a><span class="lineno"> 1089</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01090"></a><span class="lineno"> 1090</span>         <span class="keywordflow">return</span> AttributeList::AT_Constructor;  <span class="comment">// "gnu::constructor"</span></div>
+<div class="line"><a name="l01091"></a><span class="lineno"> 1091</span>       <span class="keywordflow">case</span> <span class="charliteral">'v'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l01092"></a><span class="lineno"> 1092</span>         <span class="keywordflow">if</span> (memcmp(Name.data()+6, <span class="stringliteral">"ector_size"</span>, 10))</div>
+<div class="line"><a name="l01093"></a><span class="lineno"> 1093</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01094"></a><span class="lineno"> 1094</span>         <span class="keywordflow">return</span> AttributeList::AT_VectorSize;   <span class="comment">// "gnu::vector_size"</span></div>
+<div class="line"><a name="l01095"></a><span class="lineno"> 1095</span>       }</div>
+<div class="line"><a name="l01096"></a><span class="lineno"> 1096</span>       <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01097"></a><span class="lineno"> 1097</span>     <span class="keywordflow">case</span> <span class="charliteral">'n'</span>:  <span class="comment">// 2 strings to match.</span></div>
+<div class="line"><a name="l01098"></a><span class="lineno"> 1098</span>       <span class="keywordflow">switch</span> (Name[1]) {</div>
+<div class="line"><a name="l01099"></a><span class="lineno"> 1099</span>       <span class="keywordflow">default</span>: <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01100"></a><span class="lineno"> 1100</span>       <span class="keywordflow">case</span> <span class="charliteral">'e'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l01101"></a><span class="lineno"> 1101</span>         <span class="keywordflow">if</span> (memcmp(Name.data()+2, <span class="stringliteral">"on_vector_type"</span>, 14))</div>
+<div class="line"><a name="l01102"></a><span class="lineno"> 1102</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01103"></a><span class="lineno"> 1103</span>         <span class="keywordflow">return</span> AttributeList::AT_NeonVectorType;   <span class="comment">// "neon_vector_type"</span></div>
+<div class="line"><a name="l01104"></a><span class="lineno"> 1104</span>       <span class="keywordflow">case</span> <span class="charliteral">'s'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l01105"></a><span class="lineno"> 1105</span>         <span class="keywordflow">if</span> (memcmp(Name.data()+2, <span class="stringliteral">"_consumes_self"</span>, 14))</div>
+<div class="line"><a name="l01106"></a><span class="lineno"> 1106</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01107"></a><span class="lineno"> 1107</span>         <span class="keywordflow">return</span> AttributeList::AT_NSConsumesSelf;   <span class="comment">// "ns_consumes_self"</span></div>
+<div class="line"><a name="l01108"></a><span class="lineno"> 1108</span>       }</div>
+<div class="line"><a name="l01109"></a><span class="lineno"> 1109</span>       <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01110"></a><span class="lineno"> 1110</span>     <span class="keywordflow">case</span> <span class="charliteral">'r'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l01111"></a><span class="lineno"> 1111</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"eturn_typestate"</span>, 15))</div>
+<div class="line"><a name="l01112"></a><span class="lineno"> 1112</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01113"></a><span class="lineno"> 1113</span>       <span class="keywordflow">return</span> AttributeList::AT_ReturnTypestate;  <span class="comment">// "return_typestate"</span></div>
+<div class="line"><a name="l01114"></a><span class="lineno"> 1114</span>     }</div>
+<div class="line"><a name="l01115"></a><span class="lineno"> 1115</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01116"></a><span class="lineno"> 1116</span>   <span class="keywordflow">case</span> 17:   <span class="comment">// 3 strings to match.</span></div>
+<div class="line"><a name="l01117"></a><span class="lineno"> 1117</span>     <span class="keywordflow">switch</span> (Name[0]) {</div>
+<div class="line"><a name="l01118"></a><span class="lineno"> 1118</span>     <span class="keywordflow">default</span>: <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01119"></a><span class="lineno"> 1119</span>     <span class="keywordflow">case</span> <span class="charliteral">'a'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l01120"></a><span class="lineno"> 1120</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"nalyzer_noreturn"</span>, 16))</div>
+<div class="line"><a name="l01121"></a><span class="lineno"> 1121</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01122"></a><span class="lineno"> 1122</span>       <span class="keywordflow">return</span> AttributeList::AT_AnalyzerNoReturn;   <span class="comment">// "analyzer_noreturn"</span></div>
+<div class="line"><a name="l01123"></a><span class="lineno"> 1123</span>     <span class="keywordflow">case</span> <span class="charliteral">'o'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l01124"></a><span class="lineno"> 1124</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"wnership_returns"</span>, 16))</div>
+<div class="line"><a name="l01125"></a><span class="lineno"> 1125</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01126"></a><span class="lineno"> 1126</span>       <span class="keywordflow">return</span> AttributeList::AT_ownership_returns;  <span class="comment">// "ownership_returns"</span></div>
+<div class="line"><a name="l01127"></a><span class="lineno"> 1127</span>     <span class="keywordflow">case</span> <span class="charliteral">'t'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l01128"></a><span class="lineno"> 1128</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"ransparent_union"</span>, 16))</div>
+<div class="line"><a name="l01129"></a><span class="lineno"> 1129</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01130"></a><span class="lineno"> 1130</span>       <span class="keywordflow">return</span> AttributeList::AT_TransparentUnion;   <span class="comment">// "transparent_union"</span></div>
+<div class="line"><a name="l01131"></a><span class="lineno"> 1131</span>     }</div>
+<div class="line"><a name="l01132"></a><span class="lineno"> 1132</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01133"></a><span class="lineno"> 1133</span>   <span class="keywordflow">case</span> 18:   <span class="comment">// 10 strings to match.</span></div>
+<div class="line"><a name="l01134"></a><span class="lineno"> 1134</span>     <span class="keywordflow">switch</span> (Name[0]) {</div>
+<div class="line"><a name="l01135"></a><span class="lineno"> 1135</span>     <span class="keywordflow">default</span>: <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01136"></a><span class="lineno"> 1136</span>     <span class="keywordflow">case</span> <span class="charliteral">'a'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l01137"></a><span class="lineno"> 1137</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"ssert_shared_lock"</span>, 17))</div>
+<div class="line"><a name="l01138"></a><span class="lineno"> 1138</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01139"></a><span class="lineno"> 1139</span>       <span class="keywordflow">return</span> AttributeList::AT_AssertSharedLock;   <span class="comment">// "assert_shared_lock"</span></div>
+<div class="line"><a name="l01140"></a><span class="lineno"> 1140</span>     <span class="keywordflow">case</span> <span class="charliteral">'c'</span>:  <span class="comment">// 2 strings to match.</span></div>
+<div class="line"><a name="l01141"></a><span class="lineno"> 1141</span>       <span class="keywordflow">switch</span> (Name[1]) {</div>
+<div class="line"><a name="l01142"></a><span class="lineno"> 1142</span>       <span class="keywordflow">default</span>: <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01143"></a><span class="lineno"> 1143</span>       <span class="keywordflow">case</span> <span class="charliteral">'a'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l01144"></a><span class="lineno"> 1144</span>         <span class="keywordflow">if</span> (memcmp(Name.data()+2, <span class="stringliteral">"rries_dependency"</span>, 16))</div>
+<div class="line"><a name="l01145"></a><span class="lineno"> 1145</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01146"></a><span class="lineno"> 1146</span>         <span class="keywordflow">return</span> AttributeList::AT_CarriesDependency;  <span class="comment">// "carries_dependency"</span></div>
+<div class="line"><a name="l01147"></a><span class="lineno"> 1147</span>       <span class="keywordflow">case</span> <span class="charliteral">'l'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l01148"></a><span class="lineno"> 1148</span>         <span class="keywordflow">if</span> (memcmp(Name.data()+2, <span class="stringliteral">"ang::fallthrough"</span>, 16))</div>
+<div class="line"><a name="l01149"></a><span class="lineno"> 1149</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01150"></a><span class="lineno"> 1150</span>         <span class="keywordflow">return</span> AttributeList::AT_FallThrough;  <span class="comment">// "clang::fallthrough"</span></div>
+<div class="line"><a name="l01151"></a><span class="lineno"> 1151</span>       }</div>
+<div class="line"><a name="l01152"></a><span class="lineno"> 1152</span>       <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01153"></a><span class="lineno"> 1153</span>     <span class="keywordflow">case</span> <span class="charliteral">'g'</span>:  <span class="comment">// 2 strings to match.</span></div>
+<div class="line"><a name="l01154"></a><span class="lineno"> 1154</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"nu::"</span>, 4))</div>
+<div class="line"><a name="l01155"></a><span class="lineno"> 1155</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01156"></a><span class="lineno"> 1156</span>       <span class="keywordflow">switch</span> (Name[5]) {</div>
+<div class="line"><a name="l01157"></a><span class="lineno"> 1157</span>       <span class="keywordflow">default</span>: <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01158"></a><span class="lineno"> 1158</span>       <span class="keywordflow">case</span> <span class="charliteral">'a'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l01159"></a><span class="lineno"> 1159</span>         <span class="keywordflow">if</span> (memcmp(Name.data()+6, <span class="stringliteral">"lways_inline"</span>, 12))</div>
+<div class="line"><a name="l01160"></a><span class="lineno"> 1160</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01161"></a><span class="lineno"> 1161</span>         <span class="keywordflow">return</span> AttributeList::AT_AlwaysInline;   <span class="comment">// "gnu::always_inline"</span></div>
+<div class="line"><a name="l01162"></a><span class="lineno"> 1162</span>       <span class="keywordflow">case</span> <span class="charliteral">'r'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l01163"></a><span class="lineno"> 1163</span>         <span class="keywordflow">if</span> (memcmp(Name.data()+6, <span class="stringliteral">"eturns_twice"</span>, 12))</div>
+<div class="line"><a name="l01164"></a><span class="lineno"> 1164</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01165"></a><span class="lineno"> 1165</span>         <span class="keywordflow">return</span> AttributeList::AT_ReturnsTwice;   <span class="comment">// "gnu::returns_twice"</span></div>
+<div class="line"><a name="l01166"></a><span class="lineno"> 1166</span>       }</div>
+<div class="line"><a name="l01167"></a><span class="lineno"> 1167</span>       <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01168"></a><span class="lineno"> 1168</span>     <span class="keywordflow">case</span> <span class="charliteral">'i'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l01169"></a><span class="lineno"> 1169</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"boutletcollection"</span>, 17))</div>
+<div class="line"><a name="l01170"></a><span class="lineno"> 1170</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01171"></a><span class="lineno"> 1171</span>       <span class="keywordflow">return</span> AttributeList::AT_IBOutletCollection;   <span class="comment">// "iboutletcollection"</span></div>
+<div class="line"><a name="l01172"></a><span class="lineno"> 1172</span>     <span class="keywordflow">case</span> <span class="charliteral">'n'</span>:  <span class="comment">// 2 strings to match.</span></div>
+<div class="line"><a name="l01173"></a><span class="lineno"> 1173</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"o_sanitize_"</span>, 11))</div>
+<div class="line"><a name="l01174"></a><span class="lineno"> 1174</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01175"></a><span class="lineno"> 1175</span>       <span class="keywordflow">switch</span> (Name[12]) {</div>
+<div class="line"><a name="l01176"></a><span class="lineno"> 1176</span>       <span class="keywordflow">default</span>: <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01177"></a><span class="lineno"> 1177</span>       <span class="keywordflow">case</span> <span class="charliteral">'m'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l01178"></a><span class="lineno"> 1178</span>         <span class="keywordflow">if</span> (memcmp(Name.data()+13, <span class="stringliteral">"emory"</span>, 5))</div>
+<div class="line"><a name="l01179"></a><span class="lineno"> 1179</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01180"></a><span class="lineno"> 1180</span>         <span class="keywordflow">return</span> AttributeList::AT_NoSanitizeMemory;   <span class="comment">// "no_sanitize_memory"</span></div>
+<div class="line"><a name="l01181"></a><span class="lineno"> 1181</span>       <span class="keywordflow">case</span> <span class="charliteral">'t'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l01182"></a><span class="lineno"> 1182</span>         <span class="keywordflow">if</span> (memcmp(Name.data()+13, <span class="stringliteral">"hread"</span>, 5))</div>
+<div class="line"><a name="l01183"></a><span class="lineno"> 1183</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01184"></a><span class="lineno"> 1184</span>         <span class="keywordflow">return</span> AttributeList::AT_NoSanitizeThread;   <span class="comment">// "no_sanitize_thread"</span></div>
+<div class="line"><a name="l01185"></a><span class="lineno"> 1185</span>       }</div>
+<div class="line"><a name="l01186"></a><span class="lineno"> 1186</span>       <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01187"></a><span class="lineno"> 1187</span>     <span class="keywordflow">case</span> <span class="charliteral">'o'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l01188"></a><span class="lineno"> 1188</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"bjc_method_family"</span>, 17))</div>
+<div class="line"><a name="l01189"></a><span class="lineno"> 1189</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01190"></a><span class="lineno"> 1190</span>       <span class="keywordflow">return</span> AttributeList::AT_ObjCMethodFamily;   <span class="comment">// "objc_method_family"</span></div>
+<div class="line"><a name="l01191"></a><span class="lineno"> 1191</span>     <span class="keywordflow">case</span> <span class="charliteral">'w'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l01192"></a><span class="lineno"> 1192</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"arn_unused_result"</span>, 17))</div>
+<div class="line"><a name="l01193"></a><span class="lineno"> 1193</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01194"></a><span class="lineno"> 1194</span>       <span class="keywordflow">return</span> AttributeList::AT_WarnUnusedResult;   <span class="comment">// "warn_unused_result"</span></div>
+<div class="line"><a name="l01195"></a><span class="lineno"> 1195</span>     }</div>
+<div class="line"><a name="l01196"></a><span class="lineno"> 1196</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01197"></a><span class="lineno"> 1197</span>   <span class="keywordflow">case</span> 19:   <span class="comment">// 7 strings to match.</span></div>
+<div class="line"><a name="l01198"></a><span class="lineno"> 1198</span>     <span class="keywordflow">switch</span> (Name[0]) {</div>
+<div class="line"><a name="l01199"></a><span class="lineno"> 1199</span>     <span class="keywordflow">default</span>: <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01200"></a><span class="lineno"> 1200</span>     <span class="keywordflow">case</span> <span class="charliteral">'c'</span>:  <span class="comment">// 3 strings to match.</span></div>
+<div class="line"><a name="l01201"></a><span class="lineno"> 1201</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"f_"</span>, 2))</div>
+<div class="line"><a name="l01202"></a><span class="lineno"> 1202</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01203"></a><span class="lineno"> 1203</span>       <span class="keywordflow">switch</span> (Name[3]) {</div>
+<div class="line"><a name="l01204"></a><span class="lineno"> 1204</span>       <span class="keywordflow">default</span>: <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01205"></a><span class="lineno"> 1205</span>       <span class="keywordflow">case</span> <span class="charliteral">'a'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l01206"></a><span class="lineno"> 1206</span>         <span class="keywordflow">if</span> (memcmp(Name.data()+4, <span class="stringliteral">"udited_transfer"</span>, 15))</div>
+<div class="line"><a name="l01207"></a><span class="lineno"> 1207</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01208"></a><span class="lineno"> 1208</span>         <span class="keywordflow">return</span> AttributeList::AT_CFAuditedTransfer;  <span class="comment">// "cf_audited_transfer"</span></div>
+<div class="line"><a name="l01209"></a><span class="lineno"> 1209</span>       <span class="keywordflow">case</span> <span class="charliteral">'r'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l01210"></a><span class="lineno"> 1210</span>         <span class="keywordflow">if</span> (memcmp(Name.data()+4, <span class="stringliteral">"eturns_retained"</span>, 15))</div>
+<div class="line"><a name="l01211"></a><span class="lineno"> 1211</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01212"></a><span class="lineno"> 1212</span>         <span class="keywordflow">return</span> AttributeList::AT_CFReturnsRetained;  <span class="comment">// "cf_returns_retained"</span></div>
+<div class="line"><a name="l01213"></a><span class="lineno"> 1213</span>       <span class="keywordflow">case</span> <span class="charliteral">'u'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l01214"></a><span class="lineno"> 1214</span>         <span class="keywordflow">if</span> (memcmp(Name.data()+4, <span class="stringliteral">"nknown_transfer"</span>, 15))</div>
+<div class="line"><a name="l01215"></a><span class="lineno"> 1215</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01216"></a><span class="lineno"> 1216</span>         <span class="keywordflow">return</span> AttributeList::AT_CFUnknownTransfer;  <span class="comment">// "cf_unknown_transfer"</span></div>
+<div class="line"><a name="l01217"></a><span class="lineno"> 1217</span>       }</div>
+<div class="line"><a name="l01218"></a><span class="lineno"> 1218</span>       <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01219"></a><span class="lineno"> 1219</span>     <span class="keywordflow">case</span> <span class="charliteral">'n'</span>:  <span class="comment">// 2 strings to match.</span></div>
+<div class="line"><a name="l01220"></a><span class="lineno"> 1220</span>       <span class="keywordflow">switch</span> (Name[1]) {</div>
+<div class="line"><a name="l01221"></a><span class="lineno"> 1221</span>       <span class="keywordflow">default</span>: <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01222"></a><span class="lineno"> 1222</span>       <span class="keywordflow">case</span> <span class="charliteral">'o'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l01223"></a><span class="lineno"> 1223</span>         <span class="keywordflow">if</span> (memcmp(Name.data()+2, <span class="stringliteral">"_sanitize_address"</span>, 17))</div>
+<div class="line"><a name="l01224"></a><span class="lineno"> 1224</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01225"></a><span class="lineno"> 1225</span>         <span class="keywordflow">return</span> AttributeList::AT_NoSanitizeAddress;  <span class="comment">// "no_sanitize_address"</span></div>
+<div class="line"><a name="l01226"></a><span class="lineno"> 1226</span>       <span class="keywordflow">case</span> <span class="charliteral">'s'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l01227"></a><span class="lineno"> 1227</span>         <span class="keywordflow">if</span> (memcmp(Name.data()+2, <span class="stringliteral">"_returns_retained"</span>, 17))</div>
+<div class="line"><a name="l01228"></a><span class="lineno"> 1228</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01229"></a><span class="lineno"> 1229</span>         <span class="keywordflow">return</span> AttributeList::AT_NSReturnsRetained;  <span class="comment">// "ns_returns_retained"</span></div>
+<div class="line"><a name="l01230"></a><span class="lineno"> 1230</span>       }</div>
+<div class="line"><a name="l01231"></a><span class="lineno"> 1231</span>       <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01232"></a><span class="lineno"> 1232</span>     <span class="keywordflow">case</span> <span class="charliteral">'o'</span>:  <span class="comment">// 2 strings to match.</span></div>
+<div class="line"><a name="l01233"></a><span class="lineno"> 1233</span>       <span class="keywordflow">switch</span> (Name[1]) {</div>
+<div class="line"><a name="l01234"></a><span class="lineno"> 1234</span>       <span class="keywordflow">default</span>: <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01235"></a><span class="lineno"> 1235</span>       <span class="keywordflow">case</span> <span class="charliteral">'b'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l01236"></a><span class="lineno"> 1236</span>         <span class="keywordflow">if</span> (memcmp(Name.data()+2, <span class="stringliteral">"jc_requires_super"</span>, 17))</div>
+<div class="line"><a name="l01237"></a><span class="lineno"> 1237</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01238"></a><span class="lineno"> 1238</span>         <span class="keywordflow">return</span> AttributeList::AT_ObjCRequiresSuper;  <span class="comment">// "objc_requires_super"</span></div>
+<div class="line"><a name="l01239"></a><span class="lineno"> 1239</span>       <span class="keywordflow">case</span> <span class="charliteral">'p'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l01240"></a><span class="lineno"> 1240</span>         <span class="keywordflow">if</span> (memcmp(Name.data()+2, <span class="stringliteral">"encl_image_access"</span>, 17))</div>
+<div class="line"><a name="l01241"></a><span class="lineno"> 1241</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01242"></a><span class="lineno"> 1242</span>         <span class="keywordflow">return</span> AttributeList::AT_OpenCLImageAccess;  <span class="comment">// "opencl_image_access"</span></div>
+<div class="line"><a name="l01243"></a><span class="lineno"> 1243</span>       }</div>
+<div class="line"><a name="l01244"></a><span class="lineno"> 1244</span>       <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01245"></a><span class="lineno"> 1245</span>     }</div>
+<div class="line"><a name="l01246"></a><span class="lineno"> 1246</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01247"></a><span class="lineno"> 1247</span>   <span class="keywordflow">case</span> 20:   <span class="comment">// 6 strings to match.</span></div>
+<div class="line"><a name="l01248"></a><span class="lineno"> 1248</span>     <span class="keywordflow">switch</span> (Name[0]) {</div>
+<div class="line"><a name="l01249"></a><span class="lineno"> 1249</span>     <span class="keywordflow">default</span>: <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01250"></a><span class="lineno"> 1250</span>     <span class="keywordflow">case</span> <span class="charliteral">':'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l01251"></a><span class="lineno"> 1251</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">":carries_dependency"</span>, 19))</div>
+<div class="line"><a name="l01252"></a><span class="lineno"> 1252</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01253"></a><span class="lineno"> 1253</span>       <span class="keywordflow">return</span> AttributeList::AT_CarriesDependency;  <span class="comment">// "::carries_dependency"</span></div>
+<div class="line"><a name="l01254"></a><span class="lineno"> 1254</span>     <span class="keywordflow">case</span> <span class="charliteral">'_'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l01255"></a><span class="lineno"> 1255</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"_single_inheritance"</span>, 19))</div>
+<div class="line"><a name="l01256"></a><span class="lineno"> 1256</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01257"></a><span class="lineno"> 1257</span>       <span class="keywordflow">return</span> AttributeList::AT_SingleInheritance;  <span class="comment">// "__single_inheritance"</span></div>
+<div class="line"><a name="l01258"></a><span class="lineno"> 1258</span>     <span class="keywordflow">case</span> <span class="charliteral">'n'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l01259"></a><span class="lineno"> 1259</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"eon_polyvector_type"</span>, 19))</div>
+<div class="line"><a name="l01260"></a><span class="lineno"> 1260</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01261"></a><span class="lineno"> 1261</span>       <span class="keywordflow">return</span> AttributeList::AT_NeonPolyVectorType;   <span class="comment">// "neon_polyvector_type"</span></div>
+<div class="line"><a name="l01262"></a><span class="lineno"> 1262</span>     <span class="keywordflow">case</span> <span class="charliteral">'r'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l01263"></a><span class="lineno"> 1263</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"eqd_work_group_size"</span>, 19))</div>
+<div class="line"><a name="l01264"></a><span class="lineno"> 1264</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01265"></a><span class="lineno"> 1265</span>       <span class="keywordflow">return</span> AttributeList::AT_ReqdWorkGroupSize;  <span class="comment">// "reqd_work_group_size"</span></div>
+<div class="line"><a name="l01266"></a><span class="lineno"> 1266</span>     <span class="keywordflow">case</span> <span class="charliteral">'s'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l01267"></a><span class="lineno"> 1267</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"hared_lock_function"</span>, 19))</div>
+<div class="line"><a name="l01268"></a><span class="lineno"> 1268</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01269"></a><span class="lineno"> 1269</span>       <span class="keywordflow">return</span> AttributeList::AT_SharedLockFunction;   <span class="comment">// "shared_lock_function"</span></div>
+<div class="line"><a name="l01270"></a><span class="lineno"> 1270</span>     <span class="keywordflow">case</span> <span class="charliteral">'w'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l01271"></a><span class="lineno"> 1271</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"ork_group_size_hint"</span>, 19))</div>
+<div class="line"><a name="l01272"></a><span class="lineno"> 1272</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01273"></a><span class="lineno"> 1273</span>       <span class="keywordflow">return</span> AttributeList::AT_WorkGroupSizeHint;  <span class="comment">// "work_group_size_hint"</span></div>
+<div class="line"><a name="l01274"></a><span class="lineno"> 1274</span>     }</div>
+<div class="line"><a name="l01275"></a><span class="lineno"> 1275</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01276"></a><span class="lineno"> 1276</span>   <span class="keywordflow">case</span> 21:   <span class="comment">// 6 strings to match.</span></div>
+<div class="line"><a name="l01277"></a><span class="lineno"> 1277</span>     <span class="keywordflow">switch</span> (Name[0]) {</div>
+<div class="line"><a name="l01278"></a><span class="lineno"> 1278</span>     <span class="keywordflow">default</span>: <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01279"></a><span class="lineno"> 1279</span>     <span class="keywordflow">case</span> <span class="charliteral">'_'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l01280"></a><span class="lineno"> 1280</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"_virtual_inheritance"</span>, 20))</div>
+<div class="line"><a name="l01281"></a><span class="lineno"> 1281</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01282"></a><span class="lineno"> 1282</span>       <span class="keywordflow">return</span> AttributeList::AT_VirtualInheritance;   <span class="comment">// "__virtual_inheritance"</span></div>
+<div class="line"><a name="l01283"></a><span class="lineno"> 1283</span>     <span class="keywordflow">case</span> <span class="charliteral">'a'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l01284"></a><span class="lineno"> 1284</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"ssert_exclusive_lock"</span>, 20))</div>
+<div class="line"><a name="l01285"></a><span class="lineno"> 1285</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01286"></a><span class="lineno"> 1286</span>       <span class="keywordflow">return</span> AttributeList::AT_AssertExclusiveLock;  <span class="comment">// "assert_exclusive_lock"</span></div>
+<div class="line"><a name="l01287"></a><span class="lineno"> 1287</span>     <span class="keywordflow">case</span> <span class="charliteral">'o'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l01288"></a><span class="lineno"> 1288</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"bjc_precise_lifetime"</span>, 20))</div>
+<div class="line"><a name="l01289"></a><span class="lineno"> 1289</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01290"></a><span class="lineno"> 1290</span>       <span class="keywordflow">return</span> AttributeList::AT_ObjCPreciseLifetime;  <span class="comment">// "objc_precise_lifetime"</span></div>
+<div class="line"><a name="l01291"></a><span class="lineno"> 1291</span>     <span class="keywordflow">case</span> <span class="charliteral">'p'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l01292"></a><span class="lineno"> 1292</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"ointer_with_type_tag"</span>, 20))</div>
+<div class="line"><a name="l01293"></a><span class="lineno"> 1293</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01294"></a><span class="lineno"> 1294</span>       <span class="keywordflow">return</span> AttributeList::AT_ArgumentWithTypeTag;  <span class="comment">// "pointer_with_type_tag"</span></div>
+<div class="line"><a name="l01295"></a><span class="lineno"> 1295</span>     <span class="keywordflow">case</span> <span class="charliteral">'s'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l01296"></a><span class="lineno"> 1296</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"hared_locks_required"</span>, 20))</div>
+<div class="line"><a name="l01297"></a><span class="lineno"> 1297</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01298"></a><span class="lineno"> 1298</span>       <span class="keywordflow">return</span> AttributeList::AT_SharedLocksRequired;  <span class="comment">// "shared_locks_required"</span></div>
+<div class="line"><a name="l01299"></a><span class="lineno"> 1299</span>     <span class="keywordflow">case</span> <span class="charliteral">'t'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l01300"></a><span class="lineno"> 1300</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"ype_tag_for_datatype"</span>, 20))</div>
+<div class="line"><a name="l01301"></a><span class="lineno"> 1301</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01302"></a><span class="lineno"> 1302</span>       <span class="keywordflow">return</span> AttributeList::AT_TypeTagForDatatype;   <span class="comment">// "type_tag_for_datatype"</span></div>
+<div class="line"><a name="l01303"></a><span class="lineno"> 1303</span>     }</div>
+<div class="line"><a name="l01304"></a><span class="lineno"> 1304</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01305"></a><span class="lineno"> 1305</span>   <span class="keywordflow">case</span> 22:   <span class="comment">// 5 strings to match.</span></div>
+<div class="line"><a name="l01306"></a><span class="lineno"> 1306</span>     <span class="keywordflow">switch</span> (Name[0]) {</div>
+<div class="line"><a name="l01307"></a><span class="lineno"> 1307</span>     <span class="keywordflow">default</span>: <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01308"></a><span class="lineno"> 1308</span>     <span class="keywordflow">case</span> <span class="charliteral">'_'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l01309"></a><span class="lineno"> 1309</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"_multiple_inheritance"</span>, 21))</div>
+<div class="line"><a name="l01310"></a><span class="lineno"> 1310</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01311"></a><span class="lineno"> 1311</span>       <span class="keywordflow">return</span> AttributeList::AT_MultipleInheritance;  <span class="comment">// "__multiple_inheritance"</span></div>
+<div class="line"><a name="l01312"></a><span class="lineno"> 1312</span>     <span class="keywordflow">case</span> <span class="charliteral">'a'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l01313"></a><span class="lineno"> 1313</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"rgument_with_type_tag"</span>, 21))</div>
+<div class="line"><a name="l01314"></a><span class="lineno"> 1314</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01315"></a><span class="lineno"> 1315</span>       <span class="keywordflow">return</span> AttributeList::AT_ArgumentWithTypeTag;  <span class="comment">// "argument_with_type_tag"</span></div>
+<div class="line"><a name="l01316"></a><span class="lineno"> 1316</span>     <span class="keywordflow">case</span> <span class="charliteral">'c'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l01317"></a><span class="lineno"> 1317</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"lang::type_visibility"</span>, 21))</div>
+<div class="line"><a name="l01318"></a><span class="lineno"> 1318</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01319"></a><span class="lineno"> 1319</span>       <span class="keywordflow">return</span> AttributeList::AT_TypeVisibility;   <span class="comment">// "clang::type_visibility"</span></div>
+<div class="line"><a name="l01320"></a><span class="lineno"> 1320</span>     <span class="keywordflow">case</span> <span class="charliteral">'g'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l01321"></a><span class="lineno"> 1321</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"nu::transparent_union"</span>, 21))</div>
+<div class="line"><a name="l01322"></a><span class="lineno"> 1322</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01323"></a><span class="lineno"> 1323</span>       <span class="keywordflow">return</span> AttributeList::AT_TransparentUnion;   <span class="comment">// "gnu::transparent_union"</span></div>
+<div class="line"><a name="l01324"></a><span class="lineno"> 1324</span>     <span class="keywordflow">case</span> <span class="charliteral">'n'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l01325"></a><span class="lineno"> 1325</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"o_instrument_function"</span>, 21))</div>
+<div class="line"><a name="l01326"></a><span class="lineno"> 1326</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01327"></a><span class="lineno"> 1327</span>       <span class="keywordflow">return</span> AttributeList::AT_NoInstrumentFunction;   <span class="comment">// "no_instrument_function"</span></div>
+<div class="line"><a name="l01328"></a><span class="lineno"> 1328</span>     }</div>
+<div class="line"><a name="l01329"></a><span class="lineno"> 1329</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01330"></a><span class="lineno"> 1330</span>   <span class="keywordflow">case</span> 23:   <span class="comment">// 7 strings to match.</span></div>
+<div class="line"><a name="l01331"></a><span class="lineno"> 1331</span>     <span class="keywordflow">switch</span> (Name[0]) {</div>
+<div class="line"><a name="l01332"></a><span class="lineno"> 1332</span>     <span class="keywordflow">default</span>: <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01333"></a><span class="lineno"> 1333</span>     <span class="keywordflow">case</span> <span class="charliteral">'c'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l01334"></a><span class="lineno"> 1334</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"f_returns_not_retained"</span>, 22))</div>
+<div class="line"><a name="l01335"></a><span class="lineno"> 1335</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01336"></a><span class="lineno"> 1336</span>       <span class="keywordflow">return</span> AttributeList::AT_CFReturnsNotRetained;   <span class="comment">// "cf_returns_not_retained"</span></div>
+<div class="line"><a name="l01337"></a><span class="lineno"> 1337</span>     <span class="keywordflow">case</span> <span class="charliteral">'e'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l01338"></a><span class="lineno"> 1338</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"xclusive_lock_function"</span>, 22))</div>
+<div class="line"><a name="l01339"></a><span class="lineno"> 1339</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01340"></a><span class="lineno"> 1340</span>       <span class="keywordflow">return</span> AttributeList::AT_ExclusiveLockFunction;  <span class="comment">// "exclusive_lock_function"</span></div>
+<div class="line"><a name="l01341"></a><span class="lineno"> 1341</span>     <span class="keywordflow">case</span> <span class="charliteral">'g'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l01342"></a><span class="lineno"> 1342</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"nu::warn_unused_result"</span>, 22))</div>
+<div class="line"><a name="l01343"></a><span class="lineno"> 1343</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01344"></a><span class="lineno"> 1344</span>       <span class="keywordflow">return</span> AttributeList::AT_WarnUnusedResult;   <span class="comment">// "gnu::warn_unused_result"</span></div>
+<div class="line"><a name="l01345"></a><span class="lineno"> 1345</span>     <span class="keywordflow">case</span> <span class="charliteral">'n'</span>:  <span class="comment">// 2 strings to match.</span></div>
+<div class="line"><a name="l01346"></a><span class="lineno"> 1346</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"s_returns_"</span>, 10))</div>
+<div class="line"><a name="l01347"></a><span class="lineno"> 1347</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01348"></a><span class="lineno"> 1348</span>       <span class="keywordflow">switch</span> (Name[11]) {</div>
+<div class="line"><a name="l01349"></a><span class="lineno"> 1349</span>       <span class="keywordflow">default</span>: <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01350"></a><span class="lineno"> 1350</span>       <span class="keywordflow">case</span> <span class="charliteral">'a'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l01351"></a><span class="lineno"> 1351</span>         <span class="keywordflow">if</span> (memcmp(Name.data()+12, <span class="stringliteral">"utoreleased"</span>, 11))</div>
+<div class="line"><a name="l01352"></a><span class="lineno"> 1352</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01353"></a><span class="lineno"> 1353</span>         <span class="keywordflow">return</span> AttributeList::AT_NSReturnsAutoreleased;  <span class="comment">// "ns_returns_autoreleased"</span></div>
+<div class="line"><a name="l01354"></a><span class="lineno"> 1354</span>       <span class="keywordflow">case</span> <span class="charliteral">'n'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l01355"></a><span class="lineno"> 1355</span>         <span class="keywordflow">if</span> (memcmp(Name.data()+12, <span class="stringliteral">"ot_retained"</span>, 11))</div>
+<div class="line"><a name="l01356"></a><span class="lineno"> 1356</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01357"></a><span class="lineno"> 1357</span>         <span class="keywordflow">return</span> AttributeList::AT_NSReturnsNotRetained;   <span class="comment">// "ns_returns_not_retained"</span></div>
+<div class="line"><a name="l01358"></a><span class="lineno"> 1358</span>       }</div>
+<div class="line"><a name="l01359"></a><span class="lineno"> 1359</span>       <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01360"></a><span class="lineno"> 1360</span>     <span class="keywordflow">case</span> <span class="charliteral">'s'</span>:  <span class="comment">// 2 strings to match.</span></div>
+<div class="line"><a name="l01361"></a><span class="lineno"> 1361</span>       <span class="keywordflow">switch</span> (Name[1]) {</div>
+<div class="line"><a name="l01362"></a><span class="lineno"> 1362</span>       <span class="keywordflow">default</span>: <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01363"></a><span class="lineno"> 1363</span>       <span class="keywordflow">case</span> <span class="charliteral">'h'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l01364"></a><span class="lineno"> 1364</span>         <span class="keywordflow">if</span> (memcmp(Name.data()+2, <span class="stringliteral">"ared_trylock_function"</span>, 21))</div>
+<div class="line"><a name="l01365"></a><span class="lineno"> 1365</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01366"></a><span class="lineno"> 1366</span>         <span class="keywordflow">return</span> AttributeList::AT_SharedTrylockFunction;  <span class="comment">// "shared_trylock_function"</span></div>
+<div class="line"><a name="l01367"></a><span class="lineno"> 1367</span>       <span class="keywordflow">case</span> <span class="charliteral">'t'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l01368"></a><span class="lineno"> 1368</span>         <span class="keywordflow">if</span> (memcmp(Name.data()+2, <span class="stringliteral">"d::carries_dependency"</span>, 21))</div>
+<div class="line"><a name="l01369"></a><span class="lineno"> 1369</span>           <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01370"></a><span class="lineno"> 1370</span>         <span class="keywordflow">return</span> AttributeList::AT_CarriesDependency;  <span class="comment">// "std::carries_dependency"</span></div>
+<div class="line"><a name="l01371"></a><span class="lineno"> 1371</span>       }</div>
+<div class="line"><a name="l01372"></a><span class="lineno"> 1372</span>       <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01373"></a><span class="lineno"> 1373</span>     }</div>
+<div class="line"><a name="l01374"></a><span class="lineno"> 1374</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01375"></a><span class="lineno"> 1375</span>   <span class="keywordflow">case</span> 24:   <span class="comment">// 2 strings to match.</span></div>
+<div class="line"><a name="l01376"></a><span class="lineno"> 1376</span>     <span class="keywordflow">switch</span> (Name[0]) {</div>
+<div class="line"><a name="l01377"></a><span class="lineno"> 1377</span>     <span class="keywordflow">default</span>: <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01378"></a><span class="lineno"> 1378</span>     <span class="keywordflow">case</span> <span class="charliteral">'e'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l01379"></a><span class="lineno"> 1379</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"xclusive_locks_required"</span>, 23))</div>
+<div class="line"><a name="l01380"></a><span class="lineno"> 1380</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01381"></a><span class="lineno"> 1381</span>       <span class="keywordflow">return</span> AttributeList::AT_ExclusiveLocksRequired;   <span class="comment">// "exclusive_locks_required"</span></div>
+<div class="line"><a name="l01382"></a><span class="lineno"> 1382</span>     <span class="keywordflow">case</span> <span class="charliteral">'g'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l01383"></a><span class="lineno"> 1383</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"nu::no_sanitize_address"</span>, 23))</div>
+<div class="line"><a name="l01384"></a><span class="lineno"> 1384</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01385"></a><span class="lineno"> 1385</span>       <span class="keywordflow">return</span> AttributeList::AT_NoSanitizeAddress;  <span class="comment">// "gnu::no_sanitize_address"</span></div>
+<div class="line"><a name="l01386"></a><span class="lineno"> 1386</span>     }</div>
+<div class="line"><a name="l01387"></a><span class="lineno"> 1387</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01388"></a><span class="lineno"> 1388</span>   <span class="keywordflow">case</span> 25:   <span class="comment">// 2 strings to match.</span></div>
+<div class="line"><a name="l01389"></a><span class="lineno"> 1389</span>     <span class="keywordflow">switch</span> (Name[0]) {</div>
+<div class="line"><a name="l01390"></a><span class="lineno"> 1390</span>     <span class="keywordflow">default</span>: <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01391"></a><span class="lineno"> 1391</span>     <span class="keywordflow">case</span> <span class="charliteral">'c'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l01392"></a><span class="lineno"> 1392</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"lang::warn_unused_result"</span>, 24))</div>
+<div class="line"><a name="l01393"></a><span class="lineno"> 1393</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01394"></a><span class="lineno"> 1394</span>       <span class="keywordflow">return</span> AttributeList::AT_WarnUnusedResult;   <span class="comment">// "clang::warn_unused_result"</span></div>
+<div class="line"><a name="l01395"></a><span class="lineno"> 1395</span>     <span class="keywordflow">case</span> <span class="charliteral">'n'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l01396"></a><span class="lineno"> 1396</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"o_thread_safety_analysis"</span>, 24))</div>
+<div class="line"><a name="l01397"></a><span class="lineno"> 1397</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01398"></a><span class="lineno"> 1398</span>       <span class="keywordflow">return</span> AttributeList::AT_NoThreadSafetyAnalysis;   <span class="comment">// "no_thread_safety_analysis"</span></div>
+<div class="line"><a name="l01399"></a><span class="lineno"> 1399</span>     }</div>
+<div class="line"><a name="l01400"></a><span class="lineno"> 1400</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01401"></a><span class="lineno"> 1401</span>   <span class="keywordflow">case</span> 26:   <span class="comment">// 3 strings to match.</span></div>
+<div class="line"><a name="l01402"></a><span class="lineno"> 1402</span>     <span class="keywordflow">switch</span> (Name[0]) {</div>
+<div class="line"><a name="l01403"></a><span class="lineno"> 1403</span>     <span class="keywordflow">default</span>: <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01404"></a><span class="lineno"> 1404</span>     <span class="keywordflow">case</span> <span class="charliteral">'e'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l01405"></a><span class="lineno"> 1405</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"xclusive_trylock_function"</span>, 25))</div>
+<div class="line"><a name="l01406"></a><span class="lineno"> 1406</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01407"></a><span class="lineno"> 1407</span>       <span class="keywordflow">return</span> AttributeList::AT_ExclusiveTrylockFunction;   <span class="comment">// "exclusive_trylock_function"</span></div>
+<div class="line"><a name="l01408"></a><span class="lineno"> 1408</span>     <span class="keywordflow">case</span> <span class="charliteral">'n'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l01409"></a><span class="lineno"> 1409</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"o_address_safety_analysis"</span>, 25))</div>
+<div class="line"><a name="l01410"></a><span class="lineno"> 1410</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01411"></a><span class="lineno"> 1411</span>       <span class="keywordflow">return</span> AttributeList::AT_NoSanitizeAddress;  <span class="comment">// "no_address_safety_analysis"</span></div>
+<div class="line"><a name="l01412"></a><span class="lineno"> 1412</span>     <span class="keywordflow">case</span> <span class="charliteral">'o'</span>:  <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l01413"></a><span class="lineno"> 1413</span>       <span class="keywordflow">if</span> (memcmp(Name.data()+1, <span class="stringliteral">"bjc_returns_inner_pointer"</span>, 25))</div>
+<div class="line"><a name="l01414"></a><span class="lineno"> 1414</span>         <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01415"></a><span class="lineno"> 1415</span>       <span class="keywordflow">return</span> AttributeList::AT_ObjCReturnsInnerPointer;  <span class="comment">// "objc_returns_inner_pointer"</span></div>
+<div class="line"><a name="l01416"></a><span class="lineno"> 1416</span>     }</div>
+<div class="line"><a name="l01417"></a><span class="lineno"> 1417</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01418"></a><span class="lineno"> 1418</span>   <span class="keywordflow">case</span> 27:   <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l01419"></a><span class="lineno"> 1419</span>     <span class="keywordflow">if</span> (memcmp(Name.data()+0, <span class="stringliteral">"gnu::no_instrument_function"</span>, 27))</div>
+<div class="line"><a name="l01420"></a><span class="lineno"> 1420</span>       <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01421"></a><span class="lineno"> 1421</span>     <span class="keywordflow">return</span> AttributeList::AT_NoInstrumentFunction;   <span class="comment">// "gnu::no_instrument_function"</span></div>
+<div class="line"><a name="l01422"></a><span class="lineno"> 1422</span>   <span class="keywordflow">case</span> 31:   <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l01423"></a><span class="lineno"> 1423</span>     <span class="keywordflow">if</span> (memcmp(Name.data()+0, <span class="stringliteral">"gnu::no_address_safety_analysis"</span>, 31))</div>
+<div class="line"><a name="l01424"></a><span class="lineno"> 1424</span>       <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01425"></a><span class="lineno"> 1425</span>     <span class="keywordflow">return</span> AttributeList::AT_NoSanitizeAddress;  <span class="comment">// "gnu::no_address_safety_analysis"</span></div>
+<div class="line"><a name="l01426"></a><span class="lineno"> 1426</span>   <span class="keywordflow">case</span> 34:   <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l01427"></a><span class="lineno"> 1427</span>     <span class="keywordflow">if</span> (memcmp(Name.data()+0, <span class="stringliteral">"objc_requires_property_definitions"</span>, 34))</div>
+<div class="line"><a name="l01428"></a><span class="lineno"> 1428</span>       <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01429"></a><span class="lineno"> 1429</span>     <span class="keywordflow">return</span> AttributeList::AT_ObjCRequiresPropertyDefs;   <span class="comment">// "objc_requires_property_definitions"</span></div>
+<div class="line"><a name="l01430"></a><span class="lineno"> 1430</span>   <span class="keywordflow">case</span> 35:   <span class="comment">// 1 string to match.</span></div>
+<div class="line"><a name="l01431"></a><span class="lineno"> 1431</span>     <span class="keywordflow">if</span> (memcmp(Name.data()+0, <span class="stringliteral">"objc_arc_weak_reference_unavailable"</span>, 35))</div>
+<div class="line"><a name="l01432"></a><span class="lineno"> 1432</span>       <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l01433"></a><span class="lineno"> 1433</span>     <span class="keywordflow">return</span> AttributeList::AT_ArcWeakrefUnavailable;  <span class="comment">// "objc_arc_weak_reference_unavailable"</span></div>
+<div class="line"><a name="l01434"></a><span class="lineno"> 1434</span>   }</div>
+<div class="line"><a name="l01435"></a><span class="lineno"> 1435</span> <span class="keywordflow">return</span> AttributeList::UnknownAttribute;</div>
+<div class="line"><a name="l01436"></a><span class="lineno"> 1436</span> }</div>
+</div><!-- fragment --></div><!-- contents -->
+<hr>
+<p class="footer">
+Generated on Mon May 12 2014 12:13:19 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/AttrParsedAttrList_8inc_source.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/3.5.1/tools/clang/docs/doxygen/html/AttrParsedAttrList_8inc_source.html?rev=225843&view=auto
==============================================================================
--- www-releases/trunk/3.5.1/tools/clang/docs/doxygen/html/AttrParsedAttrList_8inc_source.html (added)
+++ www-releases/trunk/3.5.1/tools/clang/docs/doxygen/html/AttrParsedAttrList_8inc_source.html Tue Jan 13 16:55:20 2015
@@ -0,0 +1,251 @@
+<!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: AttrParsedAttrList.inc 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_d527ffe6334522956bc19a2da6aab47c.html">Sema</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">AttrParsedAttrList.inc</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="AttrParsedAttrList_8inc.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">/*===- TableGen'erated file -------------------------------------*- 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">|*List of all attributes that Clang recognizes                                *|</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">|* Automatically generated file, do not edit!                                 *|</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span> <span class="comment">|*                                                                            *|</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> </div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span> <span class="preprocessor">#ifndef PARSED_ATTR</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span> <span class="preprocessor"></span><span class="preprocessor">#define PARSED_ATTR(NAME) NAME</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span> <span class="preprocessor"></span><span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span> <span class="preprocessor"></span></div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(ARMInterrupt)</div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(AcquiredAfter)</div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(AcquiredBefore)</div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(AddressSpace)</div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(Alias)</div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(Aligned)</div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(AllocSize)</div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(AlwaysInline)</div>
+<div class="line"><a name="l00021"></a><span class="lineno">   21</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(AnalyzerNoReturn)</div>
+<div class="line"><a name="l00022"></a><span class="lineno">   22</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(Annotate)</div>
+<div class="line"><a name="l00023"></a><span class="lineno">   23</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(ArcWeakrefUnavailable)</div>
+<div class="line"><a name="l00024"></a><span class="lineno">   24</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(ArgumentWithTypeTag)</div>
+<div class="line"><a name="l00025"></a><span class="lineno">   25</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(AssertExclusiveLock)</div>
+<div class="line"><a name="l00026"></a><span class="lineno">   26</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(AssertSharedLock)</div>
+<div class="line"><a name="l00027"></a><span class="lineno">   27</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(Availability)</div>
+<div class="line"><a name="l00028"></a><span class="lineno">   28</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(Blocks)</div>
+<div class="line"><a name="l00029"></a><span class="lineno">   29</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(CDecl)</div>
+<div class="line"><a name="l00030"></a><span class="lineno">   30</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(CFAuditedTransfer)</div>
+<div class="line"><a name="l00031"></a><span class="lineno">   31</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(CFConsumed)</div>
+<div class="line"><a name="l00032"></a><span class="lineno">   32</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(CFReturnsNotRetained)</div>
+<div class="line"><a name="l00033"></a><span class="lineno">   33</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(CFReturnsRetained)</div>
+<div class="line"><a name="l00034"></a><span class="lineno">   34</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(CFUnknownTransfer)</div>
+<div class="line"><a name="l00035"></a><span class="lineno">   35</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(CUDAConstant)</div>
+<div class="line"><a name="l00036"></a><span class="lineno">   36</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(CUDADevice)</div>
+<div class="line"><a name="l00037"></a><span class="lineno">   37</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(CUDAGlobal)</div>
+<div class="line"><a name="l00038"></a><span class="lineno">   38</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(CUDAHost)</div>
+<div class="line"><a name="l00039"></a><span class="lineno">   39</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(CUDALaunchBounds)</div>
+<div class="line"><a name="l00040"></a><span class="lineno">   40</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(CUDAShared)</div>
+<div class="line"><a name="l00041"></a><span class="lineno">   41</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(CXX11NoReturn)</div>
+<div class="line"><a name="l00042"></a><span class="lineno">   42</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(CallableWhen)</div>
+<div class="line"><a name="l00043"></a><span class="lineno">   43</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(CarriesDependency)</div>
+<div class="line"><a name="l00044"></a><span class="lineno">   44</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(Cleanup)</div>
+<div class="line"><a name="l00045"></a><span class="lineno">   45</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(Cold)</div>
+<div class="line"><a name="l00046"></a><span class="lineno">   46</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(Common)</div>
+<div class="line"><a name="l00047"></a><span class="lineno">   47</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(Const)</div>
+<div class="line"><a name="l00048"></a><span class="lineno">   48</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(Constructor)</div>
+<div class="line"><a name="l00049"></a><span class="lineno">   49</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(Consumable)</div>
+<div class="line"><a name="l00050"></a><span class="lineno">   50</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(DLLExport)</div>
+<div class="line"><a name="l00051"></a><span class="lineno">   51</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(DLLImport)</div>
+<div class="line"><a name="l00052"></a><span class="lineno">   52</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(Deprecated)</div>
+<div class="line"><a name="l00053"></a><span class="lineno">   53</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(Destructor)</div>
+<div class="line"><a name="l00054"></a><span class="lineno">   54</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(ExclusiveLockFunction)</div>
+<div class="line"><a name="l00055"></a><span class="lineno">   55</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(ExclusiveLocksRequired)</div>
+<div class="line"><a name="l00056"></a><span class="lineno">   56</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(ExclusiveTrylockFunction)</div>
+<div class="line"><a name="l00057"></a><span class="lineno">   57</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(ExtVectorType)</div>
+<div class="line"><a name="l00058"></a><span class="lineno">   58</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(FallThrough)</div>
+<div class="line"><a name="l00059"></a><span class="lineno">   59</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(FastCall)</div>
+<div class="line"><a name="l00060"></a><span class="lineno">   60</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(ForceInline)</div>
+<div class="line"><a name="l00061"></a><span class="lineno">   61</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(Format)</div>
+<div class="line"><a name="l00062"></a><span class="lineno">   62</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(FormatArg)</div>
+<div class="line"><a name="l00063"></a><span class="lineno">   63</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(GNUInline)</div>
+<div class="line"><a name="l00064"></a><span class="lineno">   64</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(GuardedBy)</div>
+<div class="line"><a name="l00065"></a><span class="lineno">   65</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(GuardedVar)</div>
+<div class="line"><a name="l00066"></a><span class="lineno">   66</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(Hot)</div>
+<div class="line"><a name="l00067"></a><span class="lineno">   67</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(IBAction)</div>
+<div class="line"><a name="l00068"></a><span class="lineno">   68</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(IBOutlet)</div>
+<div class="line"><a name="l00069"></a><span class="lineno">   69</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(IBOutletCollection)</div>
+<div class="line"><a name="l00070"></a><span class="lineno">   70</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(InitPriority)</div>
+<div class="line"><a name="l00071"></a><span class="lineno">   71</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(IntelOclBicc)</div>
+<div class="line"><a name="l00072"></a><span class="lineno">   72</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(LockReturned)</div>
+<div class="line"><a name="l00073"></a><span class="lineno">   73</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(Lockable)</div>
+<div class="line"><a name="l00074"></a><span class="lineno">   74</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(LocksExcluded)</div>
+<div class="line"><a name="l00075"></a><span class="lineno">   75</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(MSABI)</div>
+<div class="line"><a name="l00076"></a><span class="lineno">   76</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(Malloc)</div>
+<div class="line"><a name="l00077"></a><span class="lineno">   77</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(MayAlias)</div>
+<div class="line"><a name="l00078"></a><span class="lineno">   78</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(MinSize)</div>
+<div class="line"><a name="l00079"></a><span class="lineno">   79</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(Mips16)</div>
+<div class="line"><a name="l00080"></a><span class="lineno">   80</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(Mode)</div>
+<div class="line"><a name="l00081"></a><span class="lineno">   81</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(MsStruct)</div>
+<div class="line"><a name="l00082"></a><span class="lineno">   82</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(MultipleInheritance)</div>
+<div class="line"><a name="l00083"></a><span class="lineno">   83</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(NSBridged)</div>
+<div class="line"><a name="l00084"></a><span class="lineno">   84</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(NSConsumed)</div>
+<div class="line"><a name="l00085"></a><span class="lineno">   85</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(NSConsumesSelf)</div>
+<div class="line"><a name="l00086"></a><span class="lineno">   86</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(NSReturnsAutoreleased)</div>
+<div class="line"><a name="l00087"></a><span class="lineno">   87</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(NSReturnsNotRetained)</div>
+<div class="line"><a name="l00088"></a><span class="lineno">   88</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(NSReturnsRetained)</div>
+<div class="line"><a name="l00089"></a><span class="lineno">   89</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(Naked)</div>
+<div class="line"><a name="l00090"></a><span class="lineno">   90</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(NeonPolyVectorType)</div>
+<div class="line"><a name="l00091"></a><span class="lineno">   91</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(NeonVectorType)</div>
+<div class="line"><a name="l00092"></a><span class="lineno">   92</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(NoCommon)</div>
+<div class="line"><a name="l00093"></a><span class="lineno">   93</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(NoDebug)</div>
+<div class="line"><a name="l00094"></a><span class="lineno">   94</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(NoInline)</div>
+<div class="line"><a name="l00095"></a><span class="lineno">   95</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(NoInstrumentFunction)</div>
+<div class="line"><a name="l00096"></a><span class="lineno">   96</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(NoMips16)</div>
+<div class="line"><a name="l00097"></a><span class="lineno">   97</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(NoReturn)</div>
+<div class="line"><a name="l00098"></a><span class="lineno">   98</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(NoSanitizeAddress)</div>
+<div class="line"><a name="l00099"></a><span class="lineno">   99</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(NoSanitizeMemory)</div>
+<div class="line"><a name="l00100"></a><span class="lineno">  100</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(NoSanitizeThread)</div>
+<div class="line"><a name="l00101"></a><span class="lineno">  101</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(NoThreadSafetyAnalysis)</div>
+<div class="line"><a name="l00102"></a><span class="lineno">  102</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(NoThrow)</div>
+<div class="line"><a name="l00103"></a><span class="lineno">  103</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(NonNull)</div>
+<div class="line"><a name="l00104"></a><span class="lineno">  104</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(ObjCBridge)</div>
+<div class="line"><a name="l00105"></a><span class="lineno">  105</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(ObjCException)</div>
+<div class="line"><a name="l00106"></a><span class="lineno">  106</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(ObjCGC)</div>
+<div class="line"><a name="l00107"></a><span class="lineno">  107</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(<a class="code" href="namespaceclang.html#a5dc786a6640e4d510cd8b68a5a87a140" title="A family of Objective-C methods.">ObjCMethodFamily</a>)</div>
+<div class="line"><a name="l00108"></a><span class="lineno">  108</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(ObjCNSObject)</div>
+<div class="line"><a name="l00109"></a><span class="lineno">  109</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(ObjCOwnership)</div>
+<div class="line"><a name="l00110"></a><span class="lineno">  110</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(ObjCPreciseLifetime)</div>
+<div class="line"><a name="l00111"></a><span class="lineno">  111</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(ObjCRequiresPropertyDefs)</div>
+<div class="line"><a name="l00112"></a><span class="lineno">  112</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(ObjCRequiresSuper)</div>
+<div class="line"><a name="l00113"></a><span class="lineno">  113</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(ObjCReturnsInnerPointer)</div>
+<div class="line"><a name="l00114"></a><span class="lineno">  114</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(ObjCRootClass)</div>
+<div class="line"><a name="l00115"></a><span class="lineno">  115</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(<a class="code" href="namespaceclang.html#a5733797978fc47a45addaa3bcbbe6051" title="Names for the OpenCL image access qualifiers (OpenCL 1.1 6.6).">OpenCLImageAccess</a>)</div>
+<div class="line"><a name="l00116"></a><span class="lineno">  116</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(OpenCLKernel)</div>
+<div class="line"><a name="l00117"></a><span class="lineno">  117</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(Overloadable)</div>
+<div class="line"><a name="l00118"></a><span class="lineno">  118</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(ownership_holds)</div>
+<div class="line"><a name="l00119"></a><span class="lineno">  119</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(ownership_returns)</div>
+<div class="line"><a name="l00120"></a><span class="lineno">  120</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(ownership_takes)</div>
+<div class="line"><a name="l00121"></a><span class="lineno">  121</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(Packed)</div>
+<div class="line"><a name="l00122"></a><span class="lineno">  122</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(ParamTypestate)</div>
+<div class="line"><a name="l00123"></a><span class="lineno">  123</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(Pascal)</div>
+<div class="line"><a name="l00124"></a><span class="lineno">  124</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(Pcs)</div>
+<div class="line"><a name="l00125"></a><span class="lineno">  125</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(PnaclCall)</div>
+<div class="line"><a name="l00126"></a><span class="lineno">  126</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(PtGuardedBy)</div>
+<div class="line"><a name="l00127"></a><span class="lineno">  127</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(PtGuardedVar)</div>
+<div class="line"><a name="l00128"></a><span class="lineno">  128</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(Ptr32)</div>
+<div class="line"><a name="l00129"></a><span class="lineno">  129</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(Ptr64)</div>
+<div class="line"><a name="l00130"></a><span class="lineno">  130</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(Pure)</div>
+<div class="line"><a name="l00131"></a><span class="lineno">  131</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(Regparm)</div>
+<div class="line"><a name="l00132"></a><span class="lineno">  132</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(ReqdWorkGroupSize)</div>
+<div class="line"><a name="l00133"></a><span class="lineno">  133</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(ReturnTypestate)</div>
+<div class="line"><a name="l00134"></a><span class="lineno">  134</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(ReturnsTwice)</div>
+<div class="line"><a name="l00135"></a><span class="lineno">  135</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(SPtr)</div>
+<div class="line"><a name="l00136"></a><span class="lineno">  136</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(ScopedLockable)</div>
+<div class="line"><a name="l00137"></a><span class="lineno">  137</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(Section)</div>
+<div class="line"><a name="l00138"></a><span class="lineno">  138</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(SelectAny)</div>
+<div class="line"><a name="l00139"></a><span class="lineno">  139</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(Sentinel)</div>
+<div class="line"><a name="l00140"></a><span class="lineno">  140</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(SetTypestate)</div>
+<div class="line"><a name="l00141"></a><span class="lineno">  141</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(SharedLockFunction)</div>
+<div class="line"><a name="l00142"></a><span class="lineno">  142</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(SharedLocksRequired)</div>
+<div class="line"><a name="l00143"></a><span class="lineno">  143</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(SharedTrylockFunction)</div>
+<div class="line"><a name="l00144"></a><span class="lineno">  144</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(SingleInheritance)</div>
+<div class="line"><a name="l00145"></a><span class="lineno">  145</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(StdCall)</div>
+<div class="line"><a name="l00146"></a><span class="lineno">  146</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(SysVABI)</div>
+<div class="line"><a name="l00147"></a><span class="lineno">  147</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(TLSModel)</div>
+<div class="line"><a name="l00148"></a><span class="lineno">  148</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(TestTypestate)</div>
+<div class="line"><a name="l00149"></a><span class="lineno">  149</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(ThisCall)</div>
+<div class="line"><a name="l00150"></a><span class="lineno">  150</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(TransparentUnion)</div>
+<div class="line"><a name="l00151"></a><span class="lineno">  151</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(TypeTagForDatatype)</div>
+<div class="line"><a name="l00152"></a><span class="lineno">  152</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(TypeVisibility)</div>
+<div class="line"><a name="l00153"></a><span class="lineno">  153</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(UPtr)</div>
+<div class="line"><a name="l00154"></a><span class="lineno">  154</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(Unavailable)</div>
+<div class="line"><a name="l00155"></a><span class="lineno">  155</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(UnlockFunction)</div>
+<div class="line"><a name="l00156"></a><span class="lineno">  156</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(UnspecifiedInheritance)</div>
+<div class="line"><a name="l00157"></a><span class="lineno">  157</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(<a class="code" href="ObjCUnusedIVarsChecker_8cpp.html#aaa1fb8acad41bb179fff81835791b18aa75114519257c90d951c2ca15ef442606">Unused</a>)</div>
+<div class="line"><a name="l00158"></a><span class="lineno">  158</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(<a class="code" href="ObjCUnusedIVarsChecker_8cpp.html#aaa1fb8acad41bb179fff81835791b18aa7158c3e55dd01a7f0df5b432af5dab3f">Used</a>)</div>
+<div class="line"><a name="l00159"></a><span class="lineno">  159</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(Uuid)</div>
+<div class="line"><a name="l00160"></a><span class="lineno">  160</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(VecReturn)</div>
+<div class="line"><a name="l00161"></a><span class="lineno">  161</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(VecTypeHint)</div>
+<div class="line"><a name="l00162"></a><span class="lineno">  162</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(VectorSize)</div>
+<div class="line"><a name="l00163"></a><span class="lineno">  163</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(VirtualInheritance)</div>
+<div class="line"><a name="l00164"></a><span class="lineno">  164</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(<a class="code" href="namespaceclang.html#afbab15cd4aa598c4e6d9192f7ac4f102" title="Describes the different kinds of visibility that a declaration may have.">Visibility</a>)</div>
+<div class="line"><a name="l00165"></a><span class="lineno">  165</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(WarnUnused)</div>
+<div class="line"><a name="l00166"></a><span class="lineno">  166</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(WarnUnusedResult)</div>
+<div class="line"><a name="l00167"></a><span class="lineno">  167</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(Weak)</div>
+<div class="line"><a name="l00168"></a><span class="lineno">  168</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(WeakImport)</div>
+<div class="line"><a name="l00169"></a><span class="lineno">  169</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(WeakRef)</div>
+<div class="line"><a name="l00170"></a><span class="lineno">  170</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(Win64)</div>
+<div class="line"><a name="l00171"></a><span class="lineno">  171</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(WorkGroupSizeHint)</div>
+<div class="line"><a name="l00172"></a><span class="lineno">  172</span> <a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">PARSED_ATTR</a>(X86ForceAlignArgPointer)</div>
+</div><!-- fragment --></div><!-- contents -->
+<hr>
+<p class="footer">
+Generated on Mon May 12 2014 12:13:19 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/AttrSpellingListIndex_8inc_source.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/3.5.1/tools/clang/docs/doxygen/html/AttrSpellingListIndex_8inc_source.html?rev=225843&view=auto
==============================================================================
--- www-releases/trunk/3.5.1/tools/clang/docs/doxygen/html/AttrSpellingListIndex_8inc_source.html (added)
+++ www-releases/trunk/3.5.1/tools/clang/docs/doxygen/html/AttrSpellingListIndex_8inc_source.html Tue Jan 13 16:55:20 2015
@@ -0,0 +1,1034 @@
+<!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: AttrSpellingListIndex.inc 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_d527ffe6334522956bc19a2da6aab47c.html">Sema</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">AttrSpellingListIndex.inc</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="AttrSpellingListIndex_8inc.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">/*===- TableGen'erated file -------------------------------------*- 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">|*Code to translate different attribute spellings into internal identifiers   *|</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">|* Automatically generated file, do not edit!                                 *|</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span> <span class="comment">|*                                                                            *|</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> </div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span>   <span class="keywordtype">unsigned</span> Index = 0;</div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>   <span class="keywordflow">switch</span> (AttrKind) {</div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span>   <span class="keywordflow">default</span>:</div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>     llvm_unreachable(<span class="stringliteral">"Unknown attribute kind!"</span>);</div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span>   <span class="keywordflow">case</span> AT_ARMInterrupt : {</div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"interrupt"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span>     <span class="keywordflow">break</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="keywordflow">case</span> AT_AcquiredAfter : {</div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"acquired_after"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00021"></a><span class="lineno">   21</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00022"></a><span class="lineno">   22</span>     <span class="keywordflow">break</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="keywordflow">case</span> AT_AcquiredBefore : {</div>
+<div class="line"><a name="l00025"></a><span class="lineno">   25</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"acquired_before"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00026"></a><span class="lineno">   26</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00027"></a><span class="lineno">   27</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00028"></a><span class="lineno">   28</span>   }</div>
+<div class="line"><a name="l00029"></a><span class="lineno">   29</span>   <span class="keywordflow">case</span> AT_AddressSpace : {</div>
+<div class="line"><a name="l00030"></a><span class="lineno">   30</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"address_space"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00031"></a><span class="lineno">   31</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00032"></a><span class="lineno">   32</span>     <span class="keywordflow">break</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="keywordflow">case</span> AT_Alias : {</div>
+<div class="line"><a name="l00035"></a><span class="lineno">   35</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"alias"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00036"></a><span class="lineno">   36</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00037"></a><span class="lineno">   37</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"alias"</span> && SyntaxUsed == 1 && Scope == <span class="stringliteral">"gnu"</span>)</div>
+<div class="line"><a name="l00038"></a><span class="lineno">   38</span>         <span class="keywordflow">return</span> 1;</div>
+<div class="line"><a name="l00039"></a><span class="lineno">   39</span>     <span class="keywordflow">break</span>;</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="keywordflow">case</span> AT_Aligned : {</div>
+<div class="line"><a name="l00042"></a><span class="lineno">   42</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"aligned"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00043"></a><span class="lineno">   43</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00044"></a><span class="lineno">   44</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"align"</span> && SyntaxUsed == 2 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00045"></a><span class="lineno">   45</span>         <span class="keywordflow">return</span> 1;</div>
+<div class="line"><a name="l00046"></a><span class="lineno">   46</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"aligned"</span> && SyntaxUsed == 1 && Scope == <span class="stringliteral">"gnu"</span>)</div>
+<div class="line"><a name="l00047"></a><span class="lineno">   47</span>         <span class="keywordflow">return</span> 2;</div>
+<div class="line"><a name="l00048"></a><span class="lineno">   48</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"alignas"</span> && SyntaxUsed == 3 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00049"></a><span class="lineno">   49</span>         <span class="keywordflow">return</span> 3;</div>
+<div class="line"><a name="l00050"></a><span class="lineno">   50</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"_Alignas"</span> && SyntaxUsed == 3 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00051"></a><span class="lineno">   51</span>         <span class="keywordflow">return</span> 4;</div>
+<div class="line"><a name="l00052"></a><span class="lineno">   52</span>     <span class="keywordflow">break</span>;</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="keywordflow">case</span> AT_AllocSize : {</div>
+<div class="line"><a name="l00055"></a><span class="lineno">   55</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"alloc_size"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00056"></a><span class="lineno">   56</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00057"></a><span class="lineno">   57</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"alloc_size"</span> && SyntaxUsed == 1 && Scope == <span class="stringliteral">"gnu"</span>)</div>
+<div class="line"><a name="l00058"></a><span class="lineno">   58</span>         <span class="keywordflow">return</span> 1;</div>
+<div class="line"><a name="l00059"></a><span class="lineno">   59</span>     <span class="keywordflow">break</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="keywordflow">case</span> AT_AlwaysInline : {</div>
+<div class="line"><a name="l00062"></a><span class="lineno">   62</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"always_inline"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00063"></a><span class="lineno">   63</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00064"></a><span class="lineno">   64</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"always_inline"</span> && SyntaxUsed == 1 && Scope == <span class="stringliteral">"gnu"</span>)</div>
+<div class="line"><a name="l00065"></a><span class="lineno">   65</span>         <span class="keywordflow">return</span> 1;</div>
+<div class="line"><a name="l00066"></a><span class="lineno">   66</span>     <span class="keywordflow">break</span>;</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>   <span class="keywordflow">case</span> AT_AnalyzerNoReturn : {</div>
+<div class="line"><a name="l00069"></a><span class="lineno">   69</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"analyzer_noreturn"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00070"></a><span class="lineno">   70</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00071"></a><span class="lineno">   71</span>     <span class="keywordflow">break</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="keywordflow">case</span> AT_Annotate : {</div>
+<div class="line"><a name="l00074"></a><span class="lineno">   74</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"annotate"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00075"></a><span class="lineno">   75</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00076"></a><span class="lineno">   76</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00077"></a><span class="lineno">   77</span>   }</div>
+<div class="line"><a name="l00078"></a><span class="lineno">   78</span>   <span class="keywordflow">case</span> AT_ArcWeakrefUnavailable : {</div>
+<div class="line"><a name="l00079"></a><span class="lineno">   79</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"objc_arc_weak_reference_unavailable"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00080"></a><span class="lineno">   80</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00081"></a><span class="lineno">   81</span>     <span class="keywordflow">break</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>   <span class="keywordflow">case</span> AT_ArgumentWithTypeTag : {</div>
+<div class="line"><a name="l00084"></a><span class="lineno">   84</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"argument_with_type_tag"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00085"></a><span class="lineno">   85</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00086"></a><span class="lineno">   86</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"pointer_with_type_tag"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00087"></a><span class="lineno">   87</span>         <span class="keywordflow">return</span> 1;</div>
+<div class="line"><a name="l00088"></a><span class="lineno">   88</span>     <span class="keywordflow">break</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">   90</span>   <span class="keywordflow">case</span> AT_AssertExclusiveLock : {</div>
+<div class="line"><a name="l00091"></a><span class="lineno">   91</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"assert_exclusive_lock"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00092"></a><span class="lineno">   92</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00093"></a><span class="lineno">   93</span>     <span class="keywordflow">break</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>   <span class="keywordflow">case</span> AT_AssertSharedLock : {</div>
+<div class="line"><a name="l00096"></a><span class="lineno">   96</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"assert_shared_lock"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00097"></a><span class="lineno">   97</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00098"></a><span class="lineno">   98</span>     <span class="keywordflow">break</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="keywordflow">case</span> AT_Availability : {</div>
+<div class="line"><a name="l00101"></a><span class="lineno">  101</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"availability"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00102"></a><span class="lineno">  102</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00103"></a><span class="lineno">  103</span>     <span class="keywordflow">break</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>   <span class="keywordflow">case</span> AT_Blocks : {</div>
+<div class="line"><a name="l00106"></a><span class="lineno">  106</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"blocks"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00107"></a><span class="lineno">  107</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00108"></a><span class="lineno">  108</span>     <span class="keywordflow">break</span>;</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>   <span class="keywordflow">case</span> AT_CDecl : {</div>
+<div class="line"><a name="l00111"></a><span class="lineno">  111</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"cdecl"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00112"></a><span class="lineno">  112</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00113"></a><span class="lineno">  113</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"cdecl"</span> && SyntaxUsed == 1 && Scope == <span class="stringliteral">"gnu"</span>)</div>
+<div class="line"><a name="l00114"></a><span class="lineno">  114</span>         <span class="keywordflow">return</span> 1;</div>
+<div class="line"><a name="l00115"></a><span class="lineno">  115</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"__cdecl"</span> && SyntaxUsed == 3 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00116"></a><span class="lineno">  116</span>         <span class="keywordflow">return</span> 2;</div>
+<div class="line"><a name="l00117"></a><span class="lineno">  117</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"_cdecl"</span> && SyntaxUsed == 3 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00118"></a><span class="lineno">  118</span>         <span class="keywordflow">return</span> 3;</div>
+<div class="line"><a name="l00119"></a><span class="lineno">  119</span>     <span class="keywordflow">break</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="keywordflow">case</span> AT_CFAuditedTransfer : {</div>
+<div class="line"><a name="l00122"></a><span class="lineno">  122</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"cf_audited_transfer"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00123"></a><span class="lineno">  123</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00124"></a><span class="lineno">  124</span>     <span class="keywordflow">break</span>;</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>   <span class="keywordflow">case</span> AT_CFConsumed : {</div>
+<div class="line"><a name="l00127"></a><span class="lineno">  127</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"cf_consumed"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00128"></a><span class="lineno">  128</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00129"></a><span class="lineno">  129</span>     <span class="keywordflow">break</span>;</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">case</span> AT_CFReturnsNotRetained : {</div>
+<div class="line"><a name="l00132"></a><span class="lineno">  132</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"cf_returns_not_retained"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00133"></a><span class="lineno">  133</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00134"></a><span class="lineno">  134</span>     <span class="keywordflow">break</span>;</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">case</span> AT_CFReturnsRetained : {</div>
+<div class="line"><a name="l00137"></a><span class="lineno">  137</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"cf_returns_retained"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00138"></a><span class="lineno">  138</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00139"></a><span class="lineno">  139</span>     <span class="keywordflow">break</span>;</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>   <span class="keywordflow">case</span> AT_CFUnknownTransfer : {</div>
+<div class="line"><a name="l00142"></a><span class="lineno">  142</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"cf_unknown_transfer"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00143"></a><span class="lineno">  143</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00144"></a><span class="lineno">  144</span>     <span class="keywordflow">break</span>;</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>   <span class="keywordflow">case</span> AT_CUDAConstant : {</div>
+<div class="line"><a name="l00147"></a><span class="lineno">  147</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"constant"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00148"></a><span class="lineno">  148</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00149"></a><span class="lineno">  149</span>     <span class="keywordflow">break</span>;</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="keywordflow">case</span> AT_CUDADevice : {</div>
+<div class="line"><a name="l00152"></a><span class="lineno">  152</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"device"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00153"></a><span class="lineno">  153</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00154"></a><span class="lineno">  154</span>     <span class="keywordflow">break</span>;</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>   <span class="keywordflow">case</span> AT_CUDAGlobal : {</div>
+<div class="line"><a name="l00157"></a><span class="lineno">  157</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"global"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00158"></a><span class="lineno">  158</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00159"></a><span class="lineno">  159</span>     <span class="keywordflow">break</span>;</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="keywordflow">case</span> AT_CUDAHost : {</div>
+<div class="line"><a name="l00162"></a><span class="lineno">  162</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"host"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00163"></a><span class="lineno">  163</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00164"></a><span class="lineno">  164</span>     <span class="keywordflow">break</span>;</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="keywordflow">case</span> AT_CUDALaunchBounds : {</div>
+<div class="line"><a name="l00167"></a><span class="lineno">  167</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"launch_bounds"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00168"></a><span class="lineno">  168</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00169"></a><span class="lineno">  169</span>     <span class="keywordflow">break</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">  171</span>   <span class="keywordflow">case</span> AT_CUDAShared : {</div>
+<div class="line"><a name="l00172"></a><span class="lineno">  172</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"shared"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00173"></a><span class="lineno">  173</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00174"></a><span class="lineno">  174</span>     <span class="keywordflow">break</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>   <span class="keywordflow">case</span> AT_CXX11NoReturn : {</div>
+<div class="line"><a name="l00177"></a><span class="lineno">  177</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"noreturn"</span> && SyntaxUsed == 1 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00178"></a><span class="lineno">  178</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00179"></a><span class="lineno">  179</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"noreturn"</span> && SyntaxUsed == 1 && Scope == <span class="stringliteral">"std"</span>)</div>
+<div class="line"><a name="l00180"></a><span class="lineno">  180</span>         <span class="keywordflow">return</span> 1;</div>
+<div class="line"><a name="l00181"></a><span class="lineno">  181</span>     <span class="keywordflow">break</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>   <span class="keywordflow">case</span> AT_CallableWhen : {</div>
+<div class="line"><a name="l00184"></a><span class="lineno">  184</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"callable_when"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00185"></a><span class="lineno">  185</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00186"></a><span class="lineno">  186</span>     <span class="keywordflow">break</span>;</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>   <span class="keywordflow">case</span> AT_CarriesDependency : {</div>
+<div class="line"><a name="l00189"></a><span class="lineno">  189</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"carries_dependency"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00190"></a><span class="lineno">  190</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00191"></a><span class="lineno">  191</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"carries_dependency"</span> && SyntaxUsed == 1 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00192"></a><span class="lineno">  192</span>         <span class="keywordflow">return</span> 1;</div>
+<div class="line"><a name="l00193"></a><span class="lineno">  193</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"carries_dependency"</span> && SyntaxUsed == 1 && Scope == <span class="stringliteral">"std"</span>)</div>
+<div class="line"><a name="l00194"></a><span class="lineno">  194</span>         <span class="keywordflow">return</span> 2;</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>   }</div>
+<div class="line"><a name="l00197"></a><span class="lineno">  197</span>   <span class="keywordflow">case</span> AT_Cleanup : {</div>
+<div class="line"><a name="l00198"></a><span class="lineno">  198</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"cleanup"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00199"></a><span class="lineno">  199</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00200"></a><span class="lineno">  200</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"cleanup"</span> && SyntaxUsed == 1 && Scope == <span class="stringliteral">"gnu"</span>)</div>
+<div class="line"><a name="l00201"></a><span class="lineno">  201</span>         <span class="keywordflow">return</span> 1;</div>
+<div class="line"><a name="l00202"></a><span class="lineno">  202</span>     <span class="keywordflow">break</span>;</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="keywordflow">case</span> AT_Cold : {</div>
+<div class="line"><a name="l00205"></a><span class="lineno">  205</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"cold"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00206"></a><span class="lineno">  206</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00207"></a><span class="lineno">  207</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"cold"</span> && SyntaxUsed == 1 && Scope == <span class="stringliteral">"gnu"</span>)</div>
+<div class="line"><a name="l00208"></a><span class="lineno">  208</span>         <span class="keywordflow">return</span> 1;</div>
+<div class="line"><a name="l00209"></a><span class="lineno">  209</span>     <span class="keywordflow">break</span>;</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>   <span class="keywordflow">case</span> AT_Common : {</div>
+<div class="line"><a name="l00212"></a><span class="lineno">  212</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"common"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00213"></a><span class="lineno">  213</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00214"></a><span class="lineno">  214</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"common"</span> && SyntaxUsed == 1 && Scope == <span class="stringliteral">"gnu"</span>)</div>
+<div class="line"><a name="l00215"></a><span class="lineno">  215</span>         <span class="keywordflow">return</span> 1;</div>
+<div class="line"><a name="l00216"></a><span class="lineno">  216</span>     <span class="keywordflow">break</span>;</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">case</span> AT_Const : {</div>
+<div class="line"><a name="l00219"></a><span class="lineno">  219</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"const"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00220"></a><span class="lineno">  220</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00221"></a><span class="lineno">  221</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"__const"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00222"></a><span class="lineno">  222</span>         <span class="keywordflow">return</span> 1;</div>
+<div class="line"><a name="l00223"></a><span class="lineno">  223</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"const"</span> && SyntaxUsed == 1 && Scope == <span class="stringliteral">"gnu"</span>)</div>
+<div class="line"><a name="l00224"></a><span class="lineno">  224</span>         <span class="keywordflow">return</span> 2;</div>
+<div class="line"><a name="l00225"></a><span class="lineno">  225</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"__const"</span> && SyntaxUsed == 1 && Scope == <span class="stringliteral">"gnu"</span>)</div>
+<div class="line"><a name="l00226"></a><span class="lineno">  226</span>         <span class="keywordflow">return</span> 3;</div>
+<div class="line"><a name="l00227"></a><span class="lineno">  227</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00228"></a><span class="lineno">  228</span>   }</div>
+<div class="line"><a name="l00229"></a><span class="lineno">  229</span>   <span class="keywordflow">case</span> AT_Constructor : {</div>
+<div class="line"><a name="l00230"></a><span class="lineno">  230</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"constructor"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00231"></a><span class="lineno">  231</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00232"></a><span class="lineno">  232</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"constructor"</span> && SyntaxUsed == 1 && Scope == <span class="stringliteral">"gnu"</span>)</div>
+<div class="line"><a name="l00233"></a><span class="lineno">  233</span>         <span class="keywordflow">return</span> 1;</div>
+<div class="line"><a name="l00234"></a><span class="lineno">  234</span>     <span class="keywordflow">break</span>;</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>   <span class="keywordflow">case</span> AT_Consumable : {</div>
+<div class="line"><a name="l00237"></a><span class="lineno">  237</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"consumable"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00238"></a><span class="lineno">  238</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00239"></a><span class="lineno">  239</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00240"></a><span class="lineno">  240</span>   }</div>
+<div class="line"><a name="l00241"></a><span class="lineno">  241</span>   <span class="keywordflow">case</span> AT_DLLExport : {</div>
+<div class="line"><a name="l00242"></a><span class="lineno">  242</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"dllexport"</span> && SyntaxUsed == 2 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00243"></a><span class="lineno">  243</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00244"></a><span class="lineno">  244</span>     <span class="keywordflow">break</span>;</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>   <span class="keywordflow">case</span> AT_DLLImport : {</div>
+<div class="line"><a name="l00247"></a><span class="lineno">  247</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"dllimport"</span> && SyntaxUsed == 2 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00248"></a><span class="lineno">  248</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00249"></a><span class="lineno">  249</span>     <span class="keywordflow">break</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>   <span class="keywordflow">case</span> AT_Deprecated : {</div>
+<div class="line"><a name="l00252"></a><span class="lineno">  252</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"deprecated"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00253"></a><span class="lineno">  253</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00254"></a><span class="lineno">  254</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"deprecated"</span> && SyntaxUsed == 1 && Scope == <span class="stringliteral">"gnu"</span>)</div>
+<div class="line"><a name="l00255"></a><span class="lineno">  255</span>         <span class="keywordflow">return</span> 1;</div>
+<div class="line"><a name="l00256"></a><span class="lineno">  256</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"deprecated"</span> && SyntaxUsed == 1 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00257"></a><span class="lineno">  257</span>         <span class="keywordflow">return</span> 2;</div>
+<div class="line"><a name="l00258"></a><span class="lineno">  258</span>     <span class="keywordflow">break</span>;</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>   <span class="keywordflow">case</span> AT_Destructor : {</div>
+<div class="line"><a name="l00261"></a><span class="lineno">  261</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"destructor"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00262"></a><span class="lineno">  262</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00263"></a><span class="lineno">  263</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"destructor"</span> && SyntaxUsed == 1 && Scope == <span class="stringliteral">"gnu"</span>)</div>
+<div class="line"><a name="l00264"></a><span class="lineno">  264</span>         <span class="keywordflow">return</span> 1;</div>
+<div class="line"><a name="l00265"></a><span class="lineno">  265</span>     <span class="keywordflow">break</span>;</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>   <span class="keywordflow">case</span> AT_ExclusiveLockFunction : {</div>
+<div class="line"><a name="l00268"></a><span class="lineno">  268</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"exclusive_lock_function"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00269"></a><span class="lineno">  269</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00270"></a><span class="lineno">  270</span>     <span class="keywordflow">break</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">  272</span>   <span class="keywordflow">case</span> AT_ExclusiveLocksRequired : {</div>
+<div class="line"><a name="l00273"></a><span class="lineno">  273</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"exclusive_locks_required"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00274"></a><span class="lineno">  274</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00275"></a><span class="lineno">  275</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00276"></a><span class="lineno">  276</span>   }</div>
+<div class="line"><a name="l00277"></a><span class="lineno">  277</span>   <span class="keywordflow">case</span> AT_ExclusiveTrylockFunction : {</div>
+<div class="line"><a name="l00278"></a><span class="lineno">  278</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"exclusive_trylock_function"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00279"></a><span class="lineno">  279</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00280"></a><span class="lineno">  280</span>     <span class="keywordflow">break</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">  282</span>   <span class="keywordflow">case</span> AT_ExtVectorType : {</div>
+<div class="line"><a name="l00283"></a><span class="lineno">  283</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"ext_vector_type"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00284"></a><span class="lineno">  284</span>         <span class="keywordflow">return</span> 0;</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>   }</div>
+<div class="line"><a name="l00287"></a><span class="lineno">  287</span>   <span class="keywordflow">case</span> AT_FallThrough : {</div>
+<div class="line"><a name="l00288"></a><span class="lineno">  288</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"fallthrough"</span> && SyntaxUsed == 1 && Scope == <span class="stringliteral">"clang"</span>)</div>
+<div class="line"><a name="l00289"></a><span class="lineno">  289</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00290"></a><span class="lineno">  290</span>     <span class="keywordflow">break</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">case</span> AT_FastCall : {</div>
+<div class="line"><a name="l00293"></a><span class="lineno">  293</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"fastcall"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00294"></a><span class="lineno">  294</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00295"></a><span class="lineno">  295</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"fastcall"</span> && SyntaxUsed == 1 && Scope == <span class="stringliteral">"gnu"</span>)</div>
+<div class="line"><a name="l00296"></a><span class="lineno">  296</span>         <span class="keywordflow">return</span> 1;</div>
+<div class="line"><a name="l00297"></a><span class="lineno">  297</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"__fastcall"</span> && SyntaxUsed == 3 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00298"></a><span class="lineno">  298</span>         <span class="keywordflow">return</span> 2;</div>
+<div class="line"><a name="l00299"></a><span class="lineno">  299</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"_fastcall"</span> && SyntaxUsed == 3 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00300"></a><span class="lineno">  300</span>         <span class="keywordflow">return</span> 3;</div>
+<div class="line"><a name="l00301"></a><span class="lineno">  301</span>     <span class="keywordflow">break</span>;</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>   <span class="keywordflow">case</span> AT_ForceInline : {</div>
+<div class="line"><a name="l00304"></a><span class="lineno">  304</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"__forceinline"</span> && SyntaxUsed == 3 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00305"></a><span class="lineno">  305</span>         <span class="keywordflow">return</span> 0;</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>   }</div>
+<div class="line"><a name="l00308"></a><span class="lineno">  308</span>   <span class="keywordflow">case</span> AT_Format : {</div>
+<div class="line"><a name="l00309"></a><span class="lineno">  309</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"format"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00310"></a><span class="lineno">  310</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00311"></a><span class="lineno">  311</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"format"</span> && SyntaxUsed == 1 && Scope == <span class="stringliteral">"gnu"</span>)</div>
+<div class="line"><a name="l00312"></a><span class="lineno">  312</span>         <span class="keywordflow">return</span> 1;</div>
+<div class="line"><a name="l00313"></a><span class="lineno">  313</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00314"></a><span class="lineno">  314</span>   }</div>
+<div class="line"><a name="l00315"></a><span class="lineno">  315</span>   <span class="keywordflow">case</span> AT_FormatArg : {</div>
+<div class="line"><a name="l00316"></a><span class="lineno">  316</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"format_arg"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00317"></a><span class="lineno">  317</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00318"></a><span class="lineno">  318</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"format_arg"</span> && SyntaxUsed == 1 && Scope == <span class="stringliteral">"gnu"</span>)</div>
+<div class="line"><a name="l00319"></a><span class="lineno">  319</span>         <span class="keywordflow">return</span> 1;</div>
+<div class="line"><a name="l00320"></a><span class="lineno">  320</span>     <span class="keywordflow">break</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">  322</span>   <span class="keywordflow">case</span> AT_GNUInline : {</div>
+<div class="line"><a name="l00323"></a><span class="lineno">  323</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"gnu_inline"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00324"></a><span class="lineno">  324</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00325"></a><span class="lineno">  325</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"gnu_inline"</span> && SyntaxUsed == 1 && Scope == <span class="stringliteral">"gnu"</span>)</div>
+<div class="line"><a name="l00326"></a><span class="lineno">  326</span>         <span class="keywordflow">return</span> 1;</div>
+<div class="line"><a name="l00327"></a><span class="lineno">  327</span>     <span class="keywordflow">break</span>;</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">case</span> AT_GuardedBy : {</div>
+<div class="line"><a name="l00330"></a><span class="lineno">  330</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"guarded_by"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00331"></a><span class="lineno">  331</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00332"></a><span class="lineno">  332</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00333"></a><span class="lineno">  333</span>   }</div>
+<div class="line"><a name="l00334"></a><span class="lineno">  334</span>   <span class="keywordflow">case</span> AT_GuardedVar : {</div>
+<div class="line"><a name="l00335"></a><span class="lineno">  335</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"guarded_var"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00336"></a><span class="lineno">  336</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00337"></a><span class="lineno">  337</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00338"></a><span class="lineno">  338</span>   }</div>
+<div class="line"><a name="l00339"></a><span class="lineno">  339</span>   <span class="keywordflow">case</span> AT_Hot : {</div>
+<div class="line"><a name="l00340"></a><span class="lineno">  340</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"hot"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00341"></a><span class="lineno">  341</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00342"></a><span class="lineno">  342</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"hot"</span> && SyntaxUsed == 1 && Scope == <span class="stringliteral">"gnu"</span>)</div>
+<div class="line"><a name="l00343"></a><span class="lineno">  343</span>         <span class="keywordflow">return</span> 1;</div>
+<div class="line"><a name="l00344"></a><span class="lineno">  344</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00345"></a><span class="lineno">  345</span>   }</div>
+<div class="line"><a name="l00346"></a><span class="lineno">  346</span>   <span class="keywordflow">case</span> AT_IBAction : {</div>
+<div class="line"><a name="l00347"></a><span class="lineno">  347</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"ibaction"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00348"></a><span class="lineno">  348</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00349"></a><span class="lineno">  349</span>     <span class="keywordflow">break</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>   <span class="keywordflow">case</span> AT_IBOutlet : {</div>
+<div class="line"><a name="l00352"></a><span class="lineno">  352</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"iboutlet"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00353"></a><span class="lineno">  353</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00354"></a><span class="lineno">  354</span>     <span class="keywordflow">break</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">  356</span>   <span class="keywordflow">case</span> AT_IBOutletCollection : {</div>
+<div class="line"><a name="l00357"></a><span class="lineno">  357</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"iboutletcollection"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00358"></a><span class="lineno">  358</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00359"></a><span class="lineno">  359</span>     <span class="keywordflow">break</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> AT_InitPriority : {</div>
+<div class="line"><a name="l00362"></a><span class="lineno">  362</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"init_priority"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00363"></a><span class="lineno">  363</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00364"></a><span class="lineno">  364</span>     <span class="keywordflow">break</span>;</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="keywordflow">case</span> AT_IntelOclBicc : {</div>
+<div class="line"><a name="l00367"></a><span class="lineno">  367</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"intel_ocl_bicc"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00368"></a><span class="lineno">  368</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00369"></a><span class="lineno">  369</span>     <span class="keywordflow">break</span>;</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="keywordflow">case</span> AT_LockReturned : {</div>
+<div class="line"><a name="l00372"></a><span class="lineno">  372</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"lock_returned"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00373"></a><span class="lineno">  373</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00374"></a><span class="lineno">  374</span>     <span class="keywordflow">break</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">case</span> AT_Lockable : {</div>
+<div class="line"><a name="l00377"></a><span class="lineno">  377</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"lockable"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00378"></a><span class="lineno">  378</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00379"></a><span class="lineno">  379</span>     <span class="keywordflow">break</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="keywordflow">case</span> AT_LocksExcluded : {</div>
+<div class="line"><a name="l00382"></a><span class="lineno">  382</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"locks_excluded"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00383"></a><span class="lineno">  383</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00384"></a><span class="lineno">  384</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00385"></a><span class="lineno">  385</span>   }</div>
+<div class="line"><a name="l00386"></a><span class="lineno">  386</span>   <span class="keywordflow">case</span> AT_MSABI : {</div>
+<div class="line"><a name="l00387"></a><span class="lineno">  387</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"ms_abi"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00388"></a><span class="lineno">  388</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00389"></a><span class="lineno">  389</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"ms_abi"</span> && SyntaxUsed == 1 && Scope == <span class="stringliteral">"gnu"</span>)</div>
+<div class="line"><a name="l00390"></a><span class="lineno">  390</span>         <span class="keywordflow">return</span> 1;</div>
+<div class="line"><a name="l00391"></a><span class="lineno">  391</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00392"></a><span class="lineno">  392</span>   }</div>
+<div class="line"><a name="l00393"></a><span class="lineno">  393</span>   <span class="keywordflow">case</span> AT_Malloc : {</div>
+<div class="line"><a name="l00394"></a><span class="lineno">  394</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"malloc"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</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>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"malloc"</span> && SyntaxUsed == 1 && Scope == <span class="stringliteral">"gnu"</span>)</div>
+<div class="line"><a name="l00397"></a><span class="lineno">  397</span>         <span class="keywordflow">return</span> 1;</div>
+<div class="line"><a name="l00398"></a><span class="lineno">  398</span>     <span class="keywordflow">break</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>   <span class="keywordflow">case</span> AT_MayAlias : {</div>
+<div class="line"><a name="l00401"></a><span class="lineno">  401</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"may_alias"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00402"></a><span class="lineno">  402</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00403"></a><span class="lineno">  403</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"may_alias"</span> && SyntaxUsed == 1 && Scope == <span class="stringliteral">"gnu"</span>)</div>
+<div class="line"><a name="l00404"></a><span class="lineno">  404</span>         <span class="keywordflow">return</span> 1;</div>
+<div class="line"><a name="l00405"></a><span class="lineno">  405</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00406"></a><span class="lineno">  406</span>   }</div>
+<div class="line"><a name="l00407"></a><span class="lineno">  407</span>   <span class="keywordflow">case</span> AT_MinSize : {</div>
+<div class="line"><a name="l00408"></a><span class="lineno">  408</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"minsize"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00409"></a><span class="lineno">  409</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00410"></a><span class="lineno">  410</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00411"></a><span class="lineno">  411</span>   }</div>
+<div class="line"><a name="l00412"></a><span class="lineno">  412</span>   <span class="keywordflow">case</span> AT_Mips16 : {</div>
+<div class="line"><a name="l00413"></a><span class="lineno">  413</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"mips16"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00414"></a><span class="lineno">  414</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00415"></a><span class="lineno">  415</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"mips16"</span> && SyntaxUsed == 1 && Scope == <span class="stringliteral">"gnu"</span>)</div>
+<div class="line"><a name="l00416"></a><span class="lineno">  416</span>         <span class="keywordflow">return</span> 1;</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>   }</div>
+<div class="line"><a name="l00419"></a><span class="lineno">  419</span>   <span class="keywordflow">case</span> AT_Mode : {</div>
+<div class="line"><a name="l00420"></a><span class="lineno">  420</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"mode"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00421"></a><span class="lineno">  421</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00422"></a><span class="lineno">  422</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"mode"</span> && SyntaxUsed == 1 && Scope == <span class="stringliteral">"gnu"</span>)</div>
+<div class="line"><a name="l00423"></a><span class="lineno">  423</span>         <span class="keywordflow">return</span> 1;</div>
+<div class="line"><a name="l00424"></a><span class="lineno">  424</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00425"></a><span class="lineno">  425</span>   }</div>
+<div class="line"><a name="l00426"></a><span class="lineno">  426</span>   <span class="keywordflow">case</span> AT_MsStruct : {</div>
+<div class="line"><a name="l00427"></a><span class="lineno">  427</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"ms_struct"</span> && SyntaxUsed == 2 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00428"></a><span class="lineno">  428</span>         <span class="keywordflow">return</span> 0;</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>   }</div>
+<div class="line"><a name="l00431"></a><span class="lineno">  431</span>   <span class="keywordflow">case</span> AT_MultipleInheritance : {</div>
+<div class="line"><a name="l00432"></a><span class="lineno">  432</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"__multiple_inheritance"</span> && SyntaxUsed == 3 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00433"></a><span class="lineno">  433</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00434"></a><span class="lineno">  434</span>     <span class="keywordflow">break</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">case</span> AT_NSBridged : {</div>
+<div class="line"><a name="l00437"></a><span class="lineno">  437</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"ns_bridged"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00438"></a><span class="lineno">  438</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00439"></a><span class="lineno">  439</span>     <span class="keywordflow">break</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">  441</span>   <span class="keywordflow">case</span> AT_NSConsumed : {</div>
+<div class="line"><a name="l00442"></a><span class="lineno">  442</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"ns_consumed"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00443"></a><span class="lineno">  443</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00444"></a><span class="lineno">  444</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00445"></a><span class="lineno">  445</span>   }</div>
+<div class="line"><a name="l00446"></a><span class="lineno">  446</span>   <span class="keywordflow">case</span> AT_NSConsumesSelf : {</div>
+<div class="line"><a name="l00447"></a><span class="lineno">  447</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"ns_consumes_self"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00448"></a><span class="lineno">  448</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00449"></a><span class="lineno">  449</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00450"></a><span class="lineno">  450</span>   }</div>
+<div class="line"><a name="l00451"></a><span class="lineno">  451</span>   <span class="keywordflow">case</span> AT_NSReturnsAutoreleased : {</div>
+<div class="line"><a name="l00452"></a><span class="lineno">  452</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"ns_returns_autoreleased"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00453"></a><span class="lineno">  453</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00454"></a><span class="lineno">  454</span>     <span class="keywordflow">break</span>;</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>   <span class="keywordflow">case</span> AT_NSReturnsNotRetained : {</div>
+<div class="line"><a name="l00457"></a><span class="lineno">  457</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"ns_returns_not_retained"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00458"></a><span class="lineno">  458</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00459"></a><span class="lineno">  459</span>     <span class="keywordflow">break</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>   <span class="keywordflow">case</span> AT_NSReturnsRetained : {</div>
+<div class="line"><a name="l00462"></a><span class="lineno">  462</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"ns_returns_retained"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00463"></a><span class="lineno">  463</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00464"></a><span class="lineno">  464</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00465"></a><span class="lineno">  465</span>   }</div>
+<div class="line"><a name="l00466"></a><span class="lineno">  466</span>   <span class="keywordflow">case</span> AT_Naked : {</div>
+<div class="line"><a name="l00467"></a><span class="lineno">  467</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"naked"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00468"></a><span class="lineno">  468</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00469"></a><span class="lineno">  469</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"naked"</span> && SyntaxUsed == 1 && Scope == <span class="stringliteral">"gnu"</span>)</div>
+<div class="line"><a name="l00470"></a><span class="lineno">  470</span>         <span class="keywordflow">return</span> 1;</div>
+<div class="line"><a name="l00471"></a><span class="lineno">  471</span>     <span class="keywordflow">break</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">  473</span>   <span class="keywordflow">case</span> AT_NeonPolyVectorType : {</div>
+<div class="line"><a name="l00474"></a><span class="lineno">  474</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"neon_polyvector_type"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00475"></a><span class="lineno">  475</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00476"></a><span class="lineno">  476</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00477"></a><span class="lineno">  477</span>   }</div>
+<div class="line"><a name="l00478"></a><span class="lineno">  478</span>   <span class="keywordflow">case</span> AT_NeonVectorType : {</div>
+<div class="line"><a name="l00479"></a><span class="lineno">  479</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"neon_vector_type"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00480"></a><span class="lineno">  480</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00481"></a><span class="lineno">  481</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00482"></a><span class="lineno">  482</span>   }</div>
+<div class="line"><a name="l00483"></a><span class="lineno">  483</span>   <span class="keywordflow">case</span> AT_NoCommon : {</div>
+<div class="line"><a name="l00484"></a><span class="lineno">  484</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"nocommon"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00485"></a><span class="lineno">  485</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00486"></a><span class="lineno">  486</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"nocommon"</span> && SyntaxUsed == 1 && Scope == <span class="stringliteral">"gnu"</span>)</div>
+<div class="line"><a name="l00487"></a><span class="lineno">  487</span>         <span class="keywordflow">return</span> 1;</div>
+<div class="line"><a name="l00488"></a><span class="lineno">  488</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00489"></a><span class="lineno">  489</span>   }</div>
+<div class="line"><a name="l00490"></a><span class="lineno">  490</span>   <span class="keywordflow">case</span> AT_NoDebug : {</div>
+<div class="line"><a name="l00491"></a><span class="lineno">  491</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"nodebug"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00492"></a><span class="lineno">  492</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00493"></a><span class="lineno">  493</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00494"></a><span class="lineno">  494</span>   }</div>
+<div class="line"><a name="l00495"></a><span class="lineno">  495</span>   <span class="keywordflow">case</span> AT_NoInline : {</div>
+<div class="line"><a name="l00496"></a><span class="lineno">  496</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"noinline"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00497"></a><span class="lineno">  497</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00498"></a><span class="lineno">  498</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"noinline"</span> && SyntaxUsed == 1 && Scope == <span class="stringliteral">"gnu"</span>)</div>
+<div class="line"><a name="l00499"></a><span class="lineno">  499</span>         <span class="keywordflow">return</span> 1;</div>
+<div class="line"><a name="l00500"></a><span class="lineno">  500</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00501"></a><span class="lineno">  501</span>   }</div>
+<div class="line"><a name="l00502"></a><span class="lineno">  502</span>   <span class="keywordflow">case</span> AT_NoInstrumentFunction : {</div>
+<div class="line"><a name="l00503"></a><span class="lineno">  503</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"no_instrument_function"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00504"></a><span class="lineno">  504</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00505"></a><span class="lineno">  505</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"no_instrument_function"</span> && SyntaxUsed == 1 && Scope == <span class="stringliteral">"gnu"</span>)</div>
+<div class="line"><a name="l00506"></a><span class="lineno">  506</span>         <span class="keywordflow">return</span> 1;</div>
+<div class="line"><a name="l00507"></a><span class="lineno">  507</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00508"></a><span class="lineno">  508</span>   }</div>
+<div class="line"><a name="l00509"></a><span class="lineno">  509</span>   <span class="keywordflow">case</span> AT_NoMips16 : {</div>
+<div class="line"><a name="l00510"></a><span class="lineno">  510</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"nomips16"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00511"></a><span class="lineno">  511</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00512"></a><span class="lineno">  512</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"nomips16"</span> && SyntaxUsed == 1 && Scope == <span class="stringliteral">"gnu"</span>)</div>
+<div class="line"><a name="l00513"></a><span class="lineno">  513</span>         <span class="keywordflow">return</span> 1;</div>
+<div class="line"><a name="l00514"></a><span class="lineno">  514</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00515"></a><span class="lineno">  515</span>   }</div>
+<div class="line"><a name="l00516"></a><span class="lineno">  516</span>   <span class="keywordflow">case</span> AT_NoReturn : {</div>
+<div class="line"><a name="l00517"></a><span class="lineno">  517</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"noreturn"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00518"></a><span class="lineno">  518</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00519"></a><span class="lineno">  519</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"noreturn"</span> && SyntaxUsed == 1 && Scope == <span class="stringliteral">"gnu"</span>)</div>
+<div class="line"><a name="l00520"></a><span class="lineno">  520</span>         <span class="keywordflow">return</span> 1;</div>
+<div class="line"><a name="l00521"></a><span class="lineno">  521</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00522"></a><span class="lineno">  522</span>   }</div>
+<div class="line"><a name="l00523"></a><span class="lineno">  523</span>   <span class="keywordflow">case</span> AT_NoSanitizeAddress : {</div>
+<div class="line"><a name="l00524"></a><span class="lineno">  524</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"no_address_safety_analysis"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00525"></a><span class="lineno">  525</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00526"></a><span class="lineno">  526</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"no_sanitize_address"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00527"></a><span class="lineno">  527</span>         <span class="keywordflow">return</span> 1;</div>
+<div class="line"><a name="l00528"></a><span class="lineno">  528</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"no_address_safety_analysis"</span> && SyntaxUsed == 1 && Scope == <span class="stringliteral">"gnu"</span>)</div>
+<div class="line"><a name="l00529"></a><span class="lineno">  529</span>         <span class="keywordflow">return</span> 2;</div>
+<div class="line"><a name="l00530"></a><span class="lineno">  530</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"no_sanitize_address"</span> && SyntaxUsed == 1 && Scope == <span class="stringliteral">"gnu"</span>)</div>
+<div class="line"><a name="l00531"></a><span class="lineno">  531</span>         <span class="keywordflow">return</span> 3;</div>
+<div class="line"><a name="l00532"></a><span class="lineno">  532</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00533"></a><span class="lineno">  533</span>   }</div>
+<div class="line"><a name="l00534"></a><span class="lineno">  534</span>   <span class="keywordflow">case</span> AT_NoSanitizeMemory : {</div>
+<div class="line"><a name="l00535"></a><span class="lineno">  535</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"no_sanitize_memory"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00536"></a><span class="lineno">  536</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00537"></a><span class="lineno">  537</span>     <span class="keywordflow">break</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>   <span class="keywordflow">case</span> AT_NoSanitizeThread : {</div>
+<div class="line"><a name="l00540"></a><span class="lineno">  540</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"no_sanitize_thread"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00541"></a><span class="lineno">  541</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00542"></a><span class="lineno">  542</span>     <span class="keywordflow">break</span>;</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="keywordflow">case</span> AT_NoThreadSafetyAnalysis : {</div>
+<div class="line"><a name="l00545"></a><span class="lineno">  545</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"no_thread_safety_analysis"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00546"></a><span class="lineno">  546</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00547"></a><span class="lineno">  547</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00548"></a><span class="lineno">  548</span>   }</div>
+<div class="line"><a name="l00549"></a><span class="lineno">  549</span>   <span class="keywordflow">case</span> AT_NoThrow : {</div>
+<div class="line"><a name="l00550"></a><span class="lineno">  550</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"nothrow"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00551"></a><span class="lineno">  551</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00552"></a><span class="lineno">  552</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"nothrow"</span> && SyntaxUsed == 1 && Scope == <span class="stringliteral">"gnu"</span>)</div>
+<div class="line"><a name="l00553"></a><span class="lineno">  553</span>         <span class="keywordflow">return</span> 1;</div>
+<div class="line"><a name="l00554"></a><span class="lineno">  554</span>     <span class="keywordflow">break</span>;</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>   <span class="keywordflow">case</span> AT_NonNull : {</div>
+<div class="line"><a name="l00557"></a><span class="lineno">  557</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"nonnull"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00558"></a><span class="lineno">  558</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00559"></a><span class="lineno">  559</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"nonnull"</span> && SyntaxUsed == 1 && Scope == <span class="stringliteral">"gnu"</span>)</div>
+<div class="line"><a name="l00560"></a><span class="lineno">  560</span>         <span class="keywordflow">return</span> 1;</div>
+<div class="line"><a name="l00561"></a><span class="lineno">  561</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00562"></a><span class="lineno">  562</span>   }</div>
+<div class="line"><a name="l00563"></a><span class="lineno">  563</span>   <span class="keywordflow">case</span> AT_ObjCBridge : {</div>
+<div class="line"><a name="l00564"></a><span class="lineno">  564</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"objc_bridge"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00565"></a><span class="lineno">  565</span>         <span class="keywordflow">return</span> 0;</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>   }</div>
+<div class="line"><a name="l00568"></a><span class="lineno">  568</span>   <span class="keywordflow">case</span> AT_ObjCException : {</div>
+<div class="line"><a name="l00569"></a><span class="lineno">  569</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"objc_exception"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00570"></a><span class="lineno">  570</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00571"></a><span class="lineno">  571</span>     <span class="keywordflow">break</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>   <span class="keywordflow">case</span> AT_ObjCGC : {</div>
+<div class="line"><a name="l00574"></a><span class="lineno">  574</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"objc_gc"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00575"></a><span class="lineno">  575</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00576"></a><span class="lineno">  576</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00577"></a><span class="lineno">  577</span>   }</div>
+<div class="line"><a name="l00578"></a><span class="lineno">  578</span>   <span class="keywordflow">case</span> AT_ObjCMethodFamily : {</div>
+<div class="line"><a name="l00579"></a><span class="lineno">  579</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"objc_method_family"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00580"></a><span class="lineno">  580</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00581"></a><span class="lineno">  581</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00582"></a><span class="lineno">  582</span>   }</div>
+<div class="line"><a name="l00583"></a><span class="lineno">  583</span>   <span class="keywordflow">case</span> AT_ObjCNSObject : {</div>
+<div class="line"><a name="l00584"></a><span class="lineno">  584</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"NSObject"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00585"></a><span class="lineno">  585</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00586"></a><span class="lineno">  586</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00587"></a><span class="lineno">  587</span>   }</div>
+<div class="line"><a name="l00588"></a><span class="lineno">  588</span>   <span class="keywordflow">case</span> AT_ObjCOwnership : {</div>
+<div class="line"><a name="l00589"></a><span class="lineno">  589</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"objc_ownership"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00590"></a><span class="lineno">  590</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00591"></a><span class="lineno">  591</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00592"></a><span class="lineno">  592</span>   }</div>
+<div class="line"><a name="l00593"></a><span class="lineno">  593</span>   <span class="keywordflow">case</span> AT_ObjCPreciseLifetime : {</div>
+<div class="line"><a name="l00594"></a><span class="lineno">  594</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"objc_precise_lifetime"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00595"></a><span class="lineno">  595</span>         <span class="keywordflow">return</span> 0;</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>   }</div>
+<div class="line"><a name="l00598"></a><span class="lineno">  598</span>   <span class="keywordflow">case</span> AT_ObjCRequiresPropertyDefs : {</div>
+<div class="line"><a name="l00599"></a><span class="lineno">  599</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"objc_requires_property_definitions"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00600"></a><span class="lineno">  600</span>         <span class="keywordflow">return</span> 0;</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>   <span class="keywordflow">case</span> AT_ObjCRequiresSuper : {</div>
+<div class="line"><a name="l00604"></a><span class="lineno">  604</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"objc_requires_super"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00605"></a><span class="lineno">  605</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00606"></a><span class="lineno">  606</span>     <span class="keywordflow">break</span>;</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="keywordflow">case</span> AT_ObjCReturnsInnerPointer : {</div>
+<div class="line"><a name="l00609"></a><span class="lineno">  609</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"objc_returns_inner_pointer"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00610"></a><span class="lineno">  610</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00611"></a><span class="lineno">  611</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00612"></a><span class="lineno">  612</span>   }</div>
+<div class="line"><a name="l00613"></a><span class="lineno">  613</span>   <span class="keywordflow">case</span> AT_ObjCRootClass : {</div>
+<div class="line"><a name="l00614"></a><span class="lineno">  614</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"objc_root_class"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00615"></a><span class="lineno">  615</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00616"></a><span class="lineno">  616</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00617"></a><span class="lineno">  617</span>   }</div>
+<div class="line"><a name="l00618"></a><span class="lineno">  618</span>   <span class="keywordflow">case</span> AT_OpenCLImageAccess : {</div>
+<div class="line"><a name="l00619"></a><span class="lineno">  619</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"opencl_image_access"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00620"></a><span class="lineno">  620</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00621"></a><span class="lineno">  621</span>     <span class="keywordflow">break</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="keywordflow">case</span> AT_OpenCLKernel : {</div>
+<div class="line"><a name="l00624"></a><span class="lineno">  624</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"__kernel"</span> && SyntaxUsed == 3 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00625"></a><span class="lineno">  625</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00626"></a><span class="lineno">  626</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"kernel"</span> && SyntaxUsed == 3 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00627"></a><span class="lineno">  627</span>         <span class="keywordflow">return</span> 1;</div>
+<div class="line"><a name="l00628"></a><span class="lineno">  628</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00629"></a><span class="lineno">  629</span>   }</div>
+<div class="line"><a name="l00630"></a><span class="lineno">  630</span>   <span class="keywordflow">case</span> AT_Overloadable : {</div>
+<div class="line"><a name="l00631"></a><span class="lineno">  631</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"overloadable"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00632"></a><span class="lineno">  632</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00633"></a><span class="lineno">  633</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00634"></a><span class="lineno">  634</span>   }</div>
+<div class="line"><a name="l00635"></a><span class="lineno">  635</span>   <span class="keywordflow">case</span> AT_ownership_holds: </div>
+<div class="line"><a name="l00636"></a><span class="lineno">  636</span>     Index = 0;</div>
+<div class="line"><a name="l00637"></a><span class="lineno">  637</span>   <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00638"></a><span class="lineno">  638</span>   <span class="keywordflow">case</span> AT_ownership_returns: </div>
+<div class="line"><a name="l00639"></a><span class="lineno">  639</span>     Index = 1;</div>
+<div class="line"><a name="l00640"></a><span class="lineno">  640</span>   <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00641"></a><span class="lineno">  641</span>   <span class="keywordflow">case</span> AT_ownership_takes: </div>
+<div class="line"><a name="l00642"></a><span class="lineno">  642</span>     Index = 2;</div>
+<div class="line"><a name="l00643"></a><span class="lineno">  643</span>   <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00644"></a><span class="lineno">  644</span>   <span class="keywordflow">case</span> AT_Packed : {</div>
+<div class="line"><a name="l00645"></a><span class="lineno">  645</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"packed"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00646"></a><span class="lineno">  646</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00647"></a><span class="lineno">  647</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"packed"</span> && SyntaxUsed == 1 && Scope == <span class="stringliteral">"gnu"</span>)</div>
+<div class="line"><a name="l00648"></a><span class="lineno">  648</span>         <span class="keywordflow">return</span> 1;</div>
+<div class="line"><a name="l00649"></a><span class="lineno">  649</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00650"></a><span class="lineno">  650</span>   }</div>
+<div class="line"><a name="l00651"></a><span class="lineno">  651</span>   <span class="keywordflow">case</span> AT_ParamTypestate : {</div>
+<div class="line"><a name="l00652"></a><span class="lineno">  652</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"param_typestate"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00653"></a><span class="lineno">  653</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00654"></a><span class="lineno">  654</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00655"></a><span class="lineno">  655</span>   }</div>
+<div class="line"><a name="l00656"></a><span class="lineno">  656</span>   <span class="keywordflow">case</span> AT_Pascal : {</div>
+<div class="line"><a name="l00657"></a><span class="lineno">  657</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"pascal"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00658"></a><span class="lineno">  658</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00659"></a><span class="lineno">  659</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"__pascal"</span> && SyntaxUsed == 3 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00660"></a><span class="lineno">  660</span>         <span class="keywordflow">return</span> 1;</div>
+<div class="line"><a name="l00661"></a><span class="lineno">  661</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"_pascal"</span> && SyntaxUsed == 3 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00662"></a><span class="lineno">  662</span>         <span class="keywordflow">return</span> 2;</div>
+<div class="line"><a name="l00663"></a><span class="lineno">  663</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00664"></a><span class="lineno">  664</span>   }</div>
+<div class="line"><a name="l00665"></a><span class="lineno">  665</span>   <span class="keywordflow">case</span> AT_Pcs : {</div>
+<div class="line"><a name="l00666"></a><span class="lineno">  666</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"pcs"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00667"></a><span class="lineno">  667</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00668"></a><span class="lineno">  668</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"pcs"</span> && SyntaxUsed == 1 && Scope == <span class="stringliteral">"gnu"</span>)</div>
+<div class="line"><a name="l00669"></a><span class="lineno">  669</span>         <span class="keywordflow">return</span> 1;</div>
+<div class="line"><a name="l00670"></a><span class="lineno">  670</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00671"></a><span class="lineno">  671</span>   }</div>
+<div class="line"><a name="l00672"></a><span class="lineno">  672</span>   <span class="keywordflow">case</span> AT_PnaclCall : {</div>
+<div class="line"><a name="l00673"></a><span class="lineno">  673</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"pnaclcall"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00674"></a><span class="lineno">  674</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00675"></a><span class="lineno">  675</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00676"></a><span class="lineno">  676</span>   }</div>
+<div class="line"><a name="l00677"></a><span class="lineno">  677</span>   <span class="keywordflow">case</span> AT_PtGuardedBy : {</div>
+<div class="line"><a name="l00678"></a><span class="lineno">  678</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"pt_guarded_by"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00679"></a><span class="lineno">  679</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00680"></a><span class="lineno">  680</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00681"></a><span class="lineno">  681</span>   }</div>
+<div class="line"><a name="l00682"></a><span class="lineno">  682</span>   <span class="keywordflow">case</span> AT_PtGuardedVar : {</div>
+<div class="line"><a name="l00683"></a><span class="lineno">  683</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"pt_guarded_var"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00684"></a><span class="lineno">  684</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00685"></a><span class="lineno">  685</span>     <span class="keywordflow">break</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> AT_Ptr32 : {</div>
+<div class="line"><a name="l00688"></a><span class="lineno">  688</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"__ptr32"</span> && SyntaxUsed == 3 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00689"></a><span class="lineno">  689</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00690"></a><span class="lineno">  690</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00691"></a><span class="lineno">  691</span>   }</div>
+<div class="line"><a name="l00692"></a><span class="lineno">  692</span>   <span class="keywordflow">case</span> AT_Ptr64 : {</div>
+<div class="line"><a name="l00693"></a><span class="lineno">  693</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"__ptr64"</span> && SyntaxUsed == 3 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00694"></a><span class="lineno">  694</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00695"></a><span class="lineno">  695</span>     <span class="keywordflow">break</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> AT_Pure : {</div>
+<div class="line"><a name="l00698"></a><span class="lineno">  698</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"pure"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00699"></a><span class="lineno">  699</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00700"></a><span class="lineno">  700</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"pure"</span> && SyntaxUsed == 1 && Scope == <span class="stringliteral">"gnu"</span>)</div>
+<div class="line"><a name="l00701"></a><span class="lineno">  701</span>         <span class="keywordflow">return</span> 1;</div>
+<div class="line"><a name="l00702"></a><span class="lineno">  702</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00703"></a><span class="lineno">  703</span>   }</div>
+<div class="line"><a name="l00704"></a><span class="lineno">  704</span>   <span class="keywordflow">case</span> AT_Regparm : {</div>
+<div class="line"><a name="l00705"></a><span class="lineno">  705</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"regparm"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00706"></a><span class="lineno">  706</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00707"></a><span class="lineno">  707</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"regparm"</span> && SyntaxUsed == 1 && Scope == <span class="stringliteral">"gnu"</span>)</div>
+<div class="line"><a name="l00708"></a><span class="lineno">  708</span>         <span class="keywordflow">return</span> 1;</div>
+<div class="line"><a name="l00709"></a><span class="lineno">  709</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00710"></a><span class="lineno">  710</span>   }</div>
+<div class="line"><a name="l00711"></a><span class="lineno">  711</span>   <span class="keywordflow">case</span> AT_ReqdWorkGroupSize : {</div>
+<div class="line"><a name="l00712"></a><span class="lineno">  712</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"reqd_work_group_size"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00713"></a><span class="lineno">  713</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00714"></a><span class="lineno">  714</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00715"></a><span class="lineno">  715</span>   }</div>
+<div class="line"><a name="l00716"></a><span class="lineno">  716</span>   <span class="keywordflow">case</span> AT_ReturnTypestate : {</div>
+<div class="line"><a name="l00717"></a><span class="lineno">  717</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"return_typestate"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00718"></a><span class="lineno">  718</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00719"></a><span class="lineno">  719</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00720"></a><span class="lineno">  720</span>   }</div>
+<div class="line"><a name="l00721"></a><span class="lineno">  721</span>   <span class="keywordflow">case</span> AT_ReturnsTwice : {</div>
+<div class="line"><a name="l00722"></a><span class="lineno">  722</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"returns_twice"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00723"></a><span class="lineno">  723</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00724"></a><span class="lineno">  724</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"returns_twice"</span> && SyntaxUsed == 1 && Scope == <span class="stringliteral">"gnu"</span>)</div>
+<div class="line"><a name="l00725"></a><span class="lineno">  725</span>         <span class="keywordflow">return</span> 1;</div>
+<div class="line"><a name="l00726"></a><span class="lineno">  726</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00727"></a><span class="lineno">  727</span>   }</div>
+<div class="line"><a name="l00728"></a><span class="lineno">  728</span>   <span class="keywordflow">case</span> AT_SPtr : {</div>
+<div class="line"><a name="l00729"></a><span class="lineno">  729</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"__sptr"</span> && SyntaxUsed == 3 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00730"></a><span class="lineno">  730</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00731"></a><span class="lineno">  731</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00732"></a><span class="lineno">  732</span>   }</div>
+<div class="line"><a name="l00733"></a><span class="lineno">  733</span>   <span class="keywordflow">case</span> AT_ScopedLockable : {</div>
+<div class="line"><a name="l00734"></a><span class="lineno">  734</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"scoped_lockable"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00735"></a><span class="lineno">  735</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00736"></a><span class="lineno">  736</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00737"></a><span class="lineno">  737</span>   }</div>
+<div class="line"><a name="l00738"></a><span class="lineno">  738</span>   <span class="keywordflow">case</span> AT_Section : {</div>
+<div class="line"><a name="l00739"></a><span class="lineno">  739</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"section"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00740"></a><span class="lineno">  740</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00741"></a><span class="lineno">  741</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"section"</span> && SyntaxUsed == 1 && Scope == <span class="stringliteral">"gnu"</span>)</div>
+<div class="line"><a name="l00742"></a><span class="lineno">  742</span>         <span class="keywordflow">return</span> 1;</div>
+<div class="line"><a name="l00743"></a><span class="lineno">  743</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00744"></a><span class="lineno">  744</span>   }</div>
+<div class="line"><a name="l00745"></a><span class="lineno">  745</span>   <span class="keywordflow">case</span> AT_SelectAny : {</div>
+<div class="line"><a name="l00746"></a><span class="lineno">  746</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"selectany"</span> && SyntaxUsed == 2 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00747"></a><span class="lineno">  747</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00748"></a><span class="lineno">  748</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00749"></a><span class="lineno">  749</span>   }</div>
+<div class="line"><a name="l00750"></a><span class="lineno">  750</span>   <span class="keywordflow">case</span> AT_Sentinel : {</div>
+<div class="line"><a name="l00751"></a><span class="lineno">  751</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"sentinel"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00752"></a><span class="lineno">  752</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00753"></a><span class="lineno">  753</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"sentinel"</span> && SyntaxUsed == 1 && Scope == <span class="stringliteral">"gnu"</span>)</div>
+<div class="line"><a name="l00754"></a><span class="lineno">  754</span>         <span class="keywordflow">return</span> 1;</div>
+<div class="line"><a name="l00755"></a><span class="lineno">  755</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00756"></a><span class="lineno">  756</span>   }</div>
+<div class="line"><a name="l00757"></a><span class="lineno">  757</span>   <span class="keywordflow">case</span> AT_SetTypestate : {</div>
+<div class="line"><a name="l00758"></a><span class="lineno">  758</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"set_typestate"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00759"></a><span class="lineno">  759</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00760"></a><span class="lineno">  760</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00761"></a><span class="lineno">  761</span>   }</div>
+<div class="line"><a name="l00762"></a><span class="lineno">  762</span>   <span class="keywordflow">case</span> AT_SharedLockFunction : {</div>
+<div class="line"><a name="l00763"></a><span class="lineno">  763</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"shared_lock_function"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00764"></a><span class="lineno">  764</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00765"></a><span class="lineno">  765</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00766"></a><span class="lineno">  766</span>   }</div>
+<div class="line"><a name="l00767"></a><span class="lineno">  767</span>   <span class="keywordflow">case</span> AT_SharedLocksRequired : {</div>
+<div class="line"><a name="l00768"></a><span class="lineno">  768</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"shared_locks_required"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00769"></a><span class="lineno">  769</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00770"></a><span class="lineno">  770</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00771"></a><span class="lineno">  771</span>   }</div>
+<div class="line"><a name="l00772"></a><span class="lineno">  772</span>   <span class="keywordflow">case</span> AT_SharedTrylockFunction : {</div>
+<div class="line"><a name="l00773"></a><span class="lineno">  773</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"shared_trylock_function"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00774"></a><span class="lineno">  774</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00775"></a><span class="lineno">  775</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00776"></a><span class="lineno">  776</span>   }</div>
+<div class="line"><a name="l00777"></a><span class="lineno">  777</span>   <span class="keywordflow">case</span> AT_SingleInheritance : {</div>
+<div class="line"><a name="l00778"></a><span class="lineno">  778</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"__single_inheritance"</span> && SyntaxUsed == 3 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00779"></a><span class="lineno">  779</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00780"></a><span class="lineno">  780</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00781"></a><span class="lineno">  781</span>   }</div>
+<div class="line"><a name="l00782"></a><span class="lineno">  782</span>   <span class="keywordflow">case</span> AT_StdCall : {</div>
+<div class="line"><a name="l00783"></a><span class="lineno">  783</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"stdcall"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00784"></a><span class="lineno">  784</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00785"></a><span class="lineno">  785</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"stdcall"</span> && SyntaxUsed == 1 && Scope == <span class="stringliteral">"gnu"</span>)</div>
+<div class="line"><a name="l00786"></a><span class="lineno">  786</span>         <span class="keywordflow">return</span> 1;</div>
+<div class="line"><a name="l00787"></a><span class="lineno">  787</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"__stdcall"</span> && SyntaxUsed == 3 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00788"></a><span class="lineno">  788</span>         <span class="keywordflow">return</span> 2;</div>
+<div class="line"><a name="l00789"></a><span class="lineno">  789</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"_stdcall"</span> && SyntaxUsed == 3 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00790"></a><span class="lineno">  790</span>         <span class="keywordflow">return</span> 3;</div>
+<div class="line"><a name="l00791"></a><span class="lineno">  791</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00792"></a><span class="lineno">  792</span>   }</div>
+<div class="line"><a name="l00793"></a><span class="lineno">  793</span>   <span class="keywordflow">case</span> AT_SysVABI : {</div>
+<div class="line"><a name="l00794"></a><span class="lineno">  794</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"sysv_abi"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00795"></a><span class="lineno">  795</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00796"></a><span class="lineno">  796</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"sysv_abi"</span> && SyntaxUsed == 1 && Scope == <span class="stringliteral">"gnu"</span>)</div>
+<div class="line"><a name="l00797"></a><span class="lineno">  797</span>         <span class="keywordflow">return</span> 1;</div>
+<div class="line"><a name="l00798"></a><span class="lineno">  798</span>     <span class="keywordflow">break</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">case</span> AT_TLSModel : {</div>
+<div class="line"><a name="l00801"></a><span class="lineno">  801</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"tls_model"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00802"></a><span class="lineno">  802</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00803"></a><span class="lineno">  803</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"tls_model"</span> && SyntaxUsed == 1 && Scope == <span class="stringliteral">"gnu"</span>)</div>
+<div class="line"><a name="l00804"></a><span class="lineno">  804</span>         <span class="keywordflow">return</span> 1;</div>
+<div class="line"><a name="l00805"></a><span class="lineno">  805</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00806"></a><span class="lineno">  806</span>   }</div>
+<div class="line"><a name="l00807"></a><span class="lineno">  807</span>   <span class="keywordflow">case</span> AT_TestTypestate : {</div>
+<div class="line"><a name="l00808"></a><span class="lineno">  808</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"test_typestate"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00809"></a><span class="lineno">  809</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00810"></a><span class="lineno">  810</span>     <span class="keywordflow">break</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>   <span class="keywordflow">case</span> AT_ThisCall : {</div>
+<div class="line"><a name="l00813"></a><span class="lineno">  813</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"thiscall"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00814"></a><span class="lineno">  814</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00815"></a><span class="lineno">  815</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"thiscall"</span> && SyntaxUsed == 1 && Scope == <span class="stringliteral">"gnu"</span>)</div>
+<div class="line"><a name="l00816"></a><span class="lineno">  816</span>         <span class="keywordflow">return</span> 1;</div>
+<div class="line"><a name="l00817"></a><span class="lineno">  817</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"__thiscall"</span> && SyntaxUsed == 3 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00818"></a><span class="lineno">  818</span>         <span class="keywordflow">return</span> 2;</div>
+<div class="line"><a name="l00819"></a><span class="lineno">  819</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"_thiscall"</span> && SyntaxUsed == 3 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00820"></a><span class="lineno">  820</span>         <span class="keywordflow">return</span> 3;</div>
+<div class="line"><a name="l00821"></a><span class="lineno">  821</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00822"></a><span class="lineno">  822</span>   }</div>
+<div class="line"><a name="l00823"></a><span class="lineno">  823</span>   <span class="keywordflow">case</span> AT_TransparentUnion : {</div>
+<div class="line"><a name="l00824"></a><span class="lineno">  824</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"transparent_union"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00825"></a><span class="lineno">  825</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00826"></a><span class="lineno">  826</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"transparent_union"</span> && SyntaxUsed == 1 && Scope == <span class="stringliteral">"gnu"</span>)</div>
+<div class="line"><a name="l00827"></a><span class="lineno">  827</span>         <span class="keywordflow">return</span> 1;</div>
+<div class="line"><a name="l00828"></a><span class="lineno">  828</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00829"></a><span class="lineno">  829</span>   }</div>
+<div class="line"><a name="l00830"></a><span class="lineno">  830</span>   <span class="keywordflow">case</span> AT_TypeTagForDatatype : {</div>
+<div class="line"><a name="l00831"></a><span class="lineno">  831</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"type_tag_for_datatype"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00832"></a><span class="lineno">  832</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00833"></a><span class="lineno">  833</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00834"></a><span class="lineno">  834</span>   }</div>
+<div class="line"><a name="l00835"></a><span class="lineno">  835</span>   <span class="keywordflow">case</span> AT_TypeVisibility : {</div>
+<div class="line"><a name="l00836"></a><span class="lineno">  836</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"type_visibility"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00837"></a><span class="lineno">  837</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00838"></a><span class="lineno">  838</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"type_visibility"</span> && SyntaxUsed == 1 && Scope == <span class="stringliteral">"clang"</span>)</div>
+<div class="line"><a name="l00839"></a><span class="lineno">  839</span>         <span class="keywordflow">return</span> 1;</div>
+<div class="line"><a name="l00840"></a><span class="lineno">  840</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00841"></a><span class="lineno">  841</span>   }</div>
+<div class="line"><a name="l00842"></a><span class="lineno">  842</span>   <span class="keywordflow">case</span> AT_UPtr : {</div>
+<div class="line"><a name="l00843"></a><span class="lineno">  843</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"__uptr"</span> && SyntaxUsed == 3 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00844"></a><span class="lineno">  844</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00845"></a><span class="lineno">  845</span>     <span class="keywordflow">break</span>;</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">case</span> AT_Unavailable : {</div>
+<div class="line"><a name="l00848"></a><span class="lineno">  848</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"unavailable"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00849"></a><span class="lineno">  849</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00850"></a><span class="lineno">  850</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00851"></a><span class="lineno">  851</span>   }</div>
+<div class="line"><a name="l00852"></a><span class="lineno">  852</span>   <span class="keywordflow">case</span> AT_UnlockFunction : {</div>
+<div class="line"><a name="l00853"></a><span class="lineno">  853</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"unlock_function"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00854"></a><span class="lineno">  854</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00855"></a><span class="lineno">  855</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00856"></a><span class="lineno">  856</span>   }</div>
+<div class="line"><a name="l00857"></a><span class="lineno">  857</span>   <span class="keywordflow">case</span> AT_UnspecifiedInheritance : {</div>
+<div class="line"><a name="l00858"></a><span class="lineno">  858</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00859"></a><span class="lineno">  859</span>   }</div>
+<div class="line"><a name="l00860"></a><span class="lineno">  860</span>   <span class="keywordflow">case</span> AT_Unused : {</div>
+<div class="line"><a name="l00861"></a><span class="lineno">  861</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"unused"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00862"></a><span class="lineno">  862</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00863"></a><span class="lineno">  863</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"unused"</span> && SyntaxUsed == 1 && Scope == <span class="stringliteral">"gnu"</span>)</div>
+<div class="line"><a name="l00864"></a><span class="lineno">  864</span>         <span class="keywordflow">return</span> 1;</div>
+<div class="line"><a name="l00865"></a><span class="lineno">  865</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00866"></a><span class="lineno">  866</span>   }</div>
+<div class="line"><a name="l00867"></a><span class="lineno">  867</span>   <span class="keywordflow">case</span> AT_Used : {</div>
+<div class="line"><a name="l00868"></a><span class="lineno">  868</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"used"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00869"></a><span class="lineno">  869</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00870"></a><span class="lineno">  870</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"used"</span> && SyntaxUsed == 1 && Scope == <span class="stringliteral">"gnu"</span>)</div>
+<div class="line"><a name="l00871"></a><span class="lineno">  871</span>         <span class="keywordflow">return</span> 1;</div>
+<div class="line"><a name="l00872"></a><span class="lineno">  872</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00873"></a><span class="lineno">  873</span>   }</div>
+<div class="line"><a name="l00874"></a><span class="lineno">  874</span>   <span class="keywordflow">case</span> AT_Uuid : {</div>
+<div class="line"><a name="l00875"></a><span class="lineno">  875</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"uuid"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00876"></a><span class="lineno">  876</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00877"></a><span class="lineno">  877</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00878"></a><span class="lineno">  878</span>   }</div>
+<div class="line"><a name="l00879"></a><span class="lineno">  879</span>   <span class="keywordflow">case</span> AT_VecReturn : {</div>
+<div class="line"><a name="l00880"></a><span class="lineno">  880</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"vecreturn"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00881"></a><span class="lineno">  881</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00882"></a><span class="lineno">  882</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00883"></a><span class="lineno">  883</span>   }</div>
+<div class="line"><a name="l00884"></a><span class="lineno">  884</span>   <span class="keywordflow">case</span> AT_VecTypeHint : {</div>
+<div class="line"><a name="l00885"></a><span class="lineno">  885</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"vec_type_hint"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00886"></a><span class="lineno">  886</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00887"></a><span class="lineno">  887</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00888"></a><span class="lineno">  888</span>   }</div>
+<div class="line"><a name="l00889"></a><span class="lineno">  889</span>   <span class="keywordflow">case</span> AT_VectorSize : {</div>
+<div class="line"><a name="l00890"></a><span class="lineno">  890</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"vector_size"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00891"></a><span class="lineno">  891</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00892"></a><span class="lineno">  892</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"vector_size"</span> && SyntaxUsed == 1 && Scope == <span class="stringliteral">"gnu"</span>)</div>
+<div class="line"><a name="l00893"></a><span class="lineno">  893</span>         <span class="keywordflow">return</span> 1;</div>
+<div class="line"><a name="l00894"></a><span class="lineno">  894</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00895"></a><span class="lineno">  895</span>   }</div>
+<div class="line"><a name="l00896"></a><span class="lineno">  896</span>   <span class="keywordflow">case</span> AT_VirtualInheritance : {</div>
+<div class="line"><a name="l00897"></a><span class="lineno">  897</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"__virtual_inheritance"</span> && SyntaxUsed == 3 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00898"></a><span class="lineno">  898</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00899"></a><span class="lineno">  899</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00900"></a><span class="lineno">  900</span>   }</div>
+<div class="line"><a name="l00901"></a><span class="lineno">  901</span>   <span class="keywordflow">case</span> AT_Visibility : {</div>
+<div class="line"><a name="l00902"></a><span class="lineno">  902</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"visibility"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00903"></a><span class="lineno">  903</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00904"></a><span class="lineno">  904</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"visibility"</span> && SyntaxUsed == 1 && Scope == <span class="stringliteral">"gnu"</span>)</div>
+<div class="line"><a name="l00905"></a><span class="lineno">  905</span>         <span class="keywordflow">return</span> 1;</div>
+<div class="line"><a name="l00906"></a><span class="lineno">  906</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00907"></a><span class="lineno">  907</span>   }</div>
+<div class="line"><a name="l00908"></a><span class="lineno">  908</span>   <span class="keywordflow">case</span> AT_WarnUnused : {</div>
+<div class="line"><a name="l00909"></a><span class="lineno">  909</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"warn_unused"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00910"></a><span class="lineno">  910</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00911"></a><span class="lineno">  911</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00912"></a><span class="lineno">  912</span>   }</div>
+<div class="line"><a name="l00913"></a><span class="lineno">  913</span>   <span class="keywordflow">case</span> AT_WarnUnusedResult : {</div>
+<div class="line"><a name="l00914"></a><span class="lineno">  914</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"warn_unused_result"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00915"></a><span class="lineno">  915</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00916"></a><span class="lineno">  916</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"warn_unused_result"</span> && SyntaxUsed == 1 && Scope == <span class="stringliteral">"clang"</span>)</div>
+<div class="line"><a name="l00917"></a><span class="lineno">  917</span>         <span class="keywordflow">return</span> 1;</div>
+<div class="line"><a name="l00918"></a><span class="lineno">  918</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"warn_unused_result"</span> && SyntaxUsed == 1 && Scope == <span class="stringliteral">"gnu"</span>)</div>
+<div class="line"><a name="l00919"></a><span class="lineno">  919</span>         <span class="keywordflow">return</span> 2;</div>
+<div class="line"><a name="l00920"></a><span class="lineno">  920</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00921"></a><span class="lineno">  921</span>   }</div>
+<div class="line"><a name="l00922"></a><span class="lineno">  922</span>   <span class="keywordflow">case</span> AT_Weak : {</div>
+<div class="line"><a name="l00923"></a><span class="lineno">  923</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"weak"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00924"></a><span class="lineno">  924</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00925"></a><span class="lineno">  925</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"weak"</span> && SyntaxUsed == 1 && Scope == <span class="stringliteral">"gnu"</span>)</div>
+<div class="line"><a name="l00926"></a><span class="lineno">  926</span>         <span class="keywordflow">return</span> 1;</div>
+<div class="line"><a name="l00927"></a><span class="lineno">  927</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00928"></a><span class="lineno">  928</span>   }</div>
+<div class="line"><a name="l00929"></a><span class="lineno">  929</span>   <span class="keywordflow">case</span> AT_WeakImport : {</div>
+<div class="line"><a name="l00930"></a><span class="lineno">  930</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"weak_import"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00931"></a><span class="lineno">  931</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00932"></a><span class="lineno">  932</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00933"></a><span class="lineno">  933</span>   }</div>
+<div class="line"><a name="l00934"></a><span class="lineno">  934</span>   <span class="keywordflow">case</span> AT_WeakRef : {</div>
+<div class="line"><a name="l00935"></a><span class="lineno">  935</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"weakref"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00936"></a><span class="lineno">  936</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00937"></a><span class="lineno">  937</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"weakref"</span> && SyntaxUsed == 1 && Scope == <span class="stringliteral">"gnu"</span>)</div>
+<div class="line"><a name="l00938"></a><span class="lineno">  938</span>         <span class="keywordflow">return</span> 1;</div>
+<div class="line"><a name="l00939"></a><span class="lineno">  939</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00940"></a><span class="lineno">  940</span>   }</div>
+<div class="line"><a name="l00941"></a><span class="lineno">  941</span>   <span class="keywordflow">case</span> AT_Win64 : {</div>
+<div class="line"><a name="l00942"></a><span class="lineno">  942</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"__w64"</span> && SyntaxUsed == 3 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00943"></a><span class="lineno">  943</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00944"></a><span class="lineno">  944</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00945"></a><span class="lineno">  945</span>   }</div>
+<div class="line"><a name="l00946"></a><span class="lineno">  946</span>   <span class="keywordflow">case</span> AT_WorkGroupSizeHint : {</div>
+<div class="line"><a name="l00947"></a><span class="lineno">  947</span>     <span class="keywordflow">if</span> (Name == <span class="stringliteral">"work_group_size_hint"</span> && SyntaxUsed == 0 && Scope == <span class="stringliteral">""</span>)</div>
+<div class="line"><a name="l00948"></a><span class="lineno">  948</span>         <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00949"></a><span class="lineno">  949</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00950"></a><span class="lineno">  950</span>   }</div>
+<div class="line"><a name="l00951"></a><span class="lineno">  951</span>   <span class="keywordflow">case</span> AT_X86ForceAlignArgPointer : {</div>
+<div class="line"><a name="l00952"></a><span class="lineno">  952</span>     <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00953"></a><span class="lineno">  953</span>   }</div>
+<div class="line"><a name="l00954"></a><span class="lineno">  954</span>   }</div>
+<div class="line"><a name="l00955"></a><span class="lineno">  955</span>   <span class="keywordflow">return</span> Index;</div>
+</div><!-- fragment --></div><!-- contents -->
+<hr>
+<p class="footer">
+Generated on Mon May 12 2014 12:13:19 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/AttrSpellings_8inc_source.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/3.5.1/tools/clang/docs/doxygen/html/AttrSpellings_8inc_source.html?rev=225843&view=auto
==============================================================================
--- www-releases/trunk/3.5.1/tools/clang/docs/doxygen/html/AttrSpellings_8inc_source.html (added)
+++ www-releases/trunk/3.5.1/tools/clang/docs/doxygen/html/AttrSpellings_8inc_source.html Tue Jan 13 16:55:20 2015
@@ -0,0 +1,326 @@
+<!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: AttrSpellings.inc 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_49bfb562b5f2c4dac4f33842ea680dda.html">Lex</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">AttrSpellings.inc</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="AttrSpellings_8inc.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">/*===- TableGen'erated file -------------------------------------*- 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">|*llvm::StringSwitch code to match all known attributes                       *|</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">|* Automatically generated file, do not edit!                                 *|</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span> <span class="comment">|*                                                                            *|</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> </div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span> .Case(<span class="stringliteral">"interrupt"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span> .Case(<span class="stringliteral">"acquired_after"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span> .Case(<span class="stringliteral">"acquired_before"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span> .Case(<span class="stringliteral">"address_space"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span> .Case(<span class="stringliteral">"alias"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span> .Case(<span class="stringliteral">"alias"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span> .Case(<span class="stringliteral">"aligned"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span> .Case(<span class="stringliteral">"align"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span> .Case(<span class="stringliteral">"aligned"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span> .Case(<span class="stringliteral">"alignas"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span> .Case(<span class="stringliteral">"_Alignas"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span> .Case(<span class="stringliteral">"alloc_size"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00021"></a><span class="lineno">   21</span> .Case(<span class="stringliteral">"alloc_size"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00022"></a><span class="lineno">   22</span> .Case(<span class="stringliteral">"always_inline"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00023"></a><span class="lineno">   23</span> .Case(<span class="stringliteral">"always_inline"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00024"></a><span class="lineno">   24</span> .Case(<span class="stringliteral">"analyzer_noreturn"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00025"></a><span class="lineno">   25</span> .Case(<span class="stringliteral">"annotate"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00026"></a><span class="lineno">   26</span> .Case(<span class="stringliteral">"objc_arc_weak_reference_unavailable"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00027"></a><span class="lineno">   27</span> .Case(<span class="stringliteral">"argument_with_type_tag"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00028"></a><span class="lineno">   28</span> .Case(<span class="stringliteral">"pointer_with_type_tag"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00029"></a><span class="lineno">   29</span> .Case(<span class="stringliteral">"assert_exclusive_lock"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00030"></a><span class="lineno">   30</span> .Case(<span class="stringliteral">"assert_shared_lock"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00031"></a><span class="lineno">   31</span> .Case(<span class="stringliteral">"availability"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00032"></a><span class="lineno">   32</span> .Case(<span class="stringliteral">"blocks"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00033"></a><span class="lineno">   33</span> .Case(<span class="stringliteral">"bounded"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00034"></a><span class="lineno">   34</span> .Case(<span class="stringliteral">"_Noreturn"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00035"></a><span class="lineno">   35</span> .Case(<span class="stringliteral">"cdecl"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00036"></a><span class="lineno">   36</span> .Case(<span class="stringliteral">"cdecl"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00037"></a><span class="lineno">   37</span> .Case(<span class="stringliteral">"__cdecl"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00038"></a><span class="lineno">   38</span> .Case(<span class="stringliteral">"_cdecl"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00039"></a><span class="lineno">   39</span> .Case(<span class="stringliteral">"cf_audited_transfer"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00040"></a><span class="lineno">   40</span> .Case(<span class="stringliteral">"cf_consumed"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00041"></a><span class="lineno">   41</span> .Case(<span class="stringliteral">"cf_returns_not_retained"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00042"></a><span class="lineno">   42</span> .Case(<span class="stringliteral">"cf_returns_retained"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00043"></a><span class="lineno">   43</span> .Case(<span class="stringliteral">"cf_unknown_transfer"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00044"></a><span class="lineno">   44</span> .Case(<span class="stringliteral">"constant"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00045"></a><span class="lineno">   45</span> .Case(<span class="stringliteral">"device"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00046"></a><span class="lineno">   46</span> .Case(<span class="stringliteral">"global"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00047"></a><span class="lineno">   47</span> .Case(<span class="stringliteral">"host"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00048"></a><span class="lineno">   48</span> .Case(<span class="stringliteral">"launch_bounds"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00049"></a><span class="lineno">   49</span> .Case(<span class="stringliteral">"shared"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00050"></a><span class="lineno">   50</span> .Case(<span class="stringliteral">"noreturn"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00051"></a><span class="lineno">   51</span> .Case(<span class="stringliteral">"noreturn"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00052"></a><span class="lineno">   52</span> .Case(<span class="stringliteral">"callable_when"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00053"></a><span class="lineno">   53</span> .Case(<span class="stringliteral">"carries_dependency"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00054"></a><span class="lineno">   54</span> .Case(<span class="stringliteral">"carries_dependency"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00055"></a><span class="lineno">   55</span> .Case(<span class="stringliteral">"carries_dependency"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00056"></a><span class="lineno">   56</span> .Case(<span class="stringliteral">"cleanup"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00057"></a><span class="lineno">   57</span> .Case(<span class="stringliteral">"cleanup"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00058"></a><span class="lineno">   58</span> .Case(<span class="stringliteral">"cold"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00059"></a><span class="lineno">   59</span> .Case(<span class="stringliteral">"cold"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00060"></a><span class="lineno">   60</span> .Case(<span class="stringliteral">"common"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00061"></a><span class="lineno">   61</span> .Case(<span class="stringliteral">"common"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00062"></a><span class="lineno">   62</span> .Case(<span class="stringliteral">"const"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00063"></a><span class="lineno">   63</span> .Case(<span class="stringliteral">"__const"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00064"></a><span class="lineno">   64</span> .Case(<span class="stringliteral">"const"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00065"></a><span class="lineno">   65</span> .Case(<span class="stringliteral">"__const"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00066"></a><span class="lineno">   66</span> .Case(<span class="stringliteral">"constructor"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00067"></a><span class="lineno">   67</span> .Case(<span class="stringliteral">"constructor"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00068"></a><span class="lineno">   68</span> .Case(<span class="stringliteral">"consumable"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00069"></a><span class="lineno">   69</span> .Case(<span class="stringliteral">"dllexport"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00070"></a><span class="lineno">   70</span> .Case(<span class="stringliteral">"dllimport"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00071"></a><span class="lineno">   71</span> .Case(<span class="stringliteral">"deprecated"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00072"></a><span class="lineno">   72</span> .Case(<span class="stringliteral">"deprecated"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00073"></a><span class="lineno">   73</span> .Case(<span class="stringliteral">"deprecated"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00074"></a><span class="lineno">   74</span> .Case(<span class="stringliteral">"destructor"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00075"></a><span class="lineno">   75</span> .Case(<span class="stringliteral">"destructor"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00076"></a><span class="lineno">   76</span> .Case(<span class="stringliteral">"exclusive_lock_function"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00077"></a><span class="lineno">   77</span> .Case(<span class="stringliteral">"exclusive_locks_required"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00078"></a><span class="lineno">   78</span> .Case(<span class="stringliteral">"exclusive_trylock_function"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00079"></a><span class="lineno">   79</span> .Case(<span class="stringliteral">"ext_vector_type"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00080"></a><span class="lineno">   80</span> .Case(<span class="stringliteral">"fallthrough"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00081"></a><span class="lineno">   81</span> .Case(<span class="stringliteral">"fastcall"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00082"></a><span class="lineno">   82</span> .Case(<span class="stringliteral">"fastcall"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00083"></a><span class="lineno">   83</span> .Case(<span class="stringliteral">"__fastcall"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00084"></a><span class="lineno">   84</span> .Case(<span class="stringliteral">"_fastcall"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00085"></a><span class="lineno">   85</span> .Case(<span class="stringliteral">"final"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00086"></a><span class="lineno">   86</span> .Case(<span class="stringliteral">"sealed"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00087"></a><span class="lineno">   87</span> .Case(<span class="stringliteral">"__forceinline"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00088"></a><span class="lineno">   88</span> .Case(<span class="stringliteral">"format"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00089"></a><span class="lineno">   89</span> .Case(<span class="stringliteral">"format"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00090"></a><span class="lineno">   90</span> .Case(<span class="stringliteral">"format_arg"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00091"></a><span class="lineno">   91</span> .Case(<span class="stringliteral">"format_arg"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00092"></a><span class="lineno">   92</span> .Case(<span class="stringliteral">"gnu_inline"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00093"></a><span class="lineno">   93</span> .Case(<span class="stringliteral">"gnu_inline"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00094"></a><span class="lineno">   94</span> .Case(<span class="stringliteral">"guarded_by"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00095"></a><span class="lineno">   95</span> .Case(<span class="stringliteral">"guarded_var"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00096"></a><span class="lineno">   96</span> .Case(<span class="stringliteral">"hot"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00097"></a><span class="lineno">   97</span> .Case(<span class="stringliteral">"hot"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00098"></a><span class="lineno">   98</span> .Case(<span class="stringliteral">"ibaction"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00099"></a><span class="lineno">   99</span> .Case(<span class="stringliteral">"iboutlet"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00100"></a><span class="lineno">  100</span> .Case(<span class="stringliteral">"iboutletcollection"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00101"></a><span class="lineno">  101</span> .Case(<span class="stringliteral">"init_priority"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00102"></a><span class="lineno">  102</span> .Case(<span class="stringliteral">"intel_ocl_bicc"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00103"></a><span class="lineno">  103</span> .Case(<span class="stringliteral">"lock_returned"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00104"></a><span class="lineno">  104</span> .Case(<span class="stringliteral">"lockable"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00105"></a><span class="lineno">  105</span> .Case(<span class="stringliteral">"locks_excluded"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00106"></a><span class="lineno">  106</span> .Case(<span class="stringliteral">"ms_abi"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00107"></a><span class="lineno">  107</span> .Case(<span class="stringliteral">"ms_abi"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00108"></a><span class="lineno">  108</span> .Case(<span class="stringliteral">"malloc"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00109"></a><span class="lineno">  109</span> .Case(<span class="stringliteral">"malloc"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00110"></a><span class="lineno">  110</span> .Case(<span class="stringliteral">"may_alias"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00111"></a><span class="lineno">  111</span> .Case(<span class="stringliteral">"may_alias"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00112"></a><span class="lineno">  112</span> .Case(<span class="stringliteral">"minsize"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00113"></a><span class="lineno">  113</span> .Case(<span class="stringliteral">"mips16"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00114"></a><span class="lineno">  114</span> .Case(<span class="stringliteral">"mips16"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00115"></a><span class="lineno">  115</span> .Case(<span class="stringliteral">"mode"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00116"></a><span class="lineno">  116</span> .Case(<span class="stringliteral">"mode"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00117"></a><span class="lineno">  117</span> .Case(<span class="stringliteral">"property"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00118"></a><span class="lineno">  118</span> .Case(<span class="stringliteral">"ms_struct"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00119"></a><span class="lineno">  119</span> .Case(<span class="stringliteral">"__multiple_inheritance"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00120"></a><span class="lineno">  120</span> .Case(<span class="stringliteral">"ns_bridged"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00121"></a><span class="lineno">  121</span> .Case(<span class="stringliteral">"ns_consumed"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00122"></a><span class="lineno">  122</span> .Case(<span class="stringliteral">"ns_consumes_self"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00123"></a><span class="lineno">  123</span> .Case(<span class="stringliteral">"ns_returns_autoreleased"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00124"></a><span class="lineno">  124</span> .Case(<span class="stringliteral">"ns_returns_not_retained"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00125"></a><span class="lineno">  125</span> .Case(<span class="stringliteral">"ns_returns_retained"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00126"></a><span class="lineno">  126</span> .Case(<span class="stringliteral">"naked"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00127"></a><span class="lineno">  127</span> .Case(<span class="stringliteral">"naked"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00128"></a><span class="lineno">  128</span> .Case(<span class="stringliteral">"neon_polyvector_type"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00129"></a><span class="lineno">  129</span> .Case(<span class="stringliteral">"neon_vector_type"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00130"></a><span class="lineno">  130</span> .Case(<span class="stringliteral">"nocommon"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00131"></a><span class="lineno">  131</span> .Case(<span class="stringliteral">"nocommon"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00132"></a><span class="lineno">  132</span> .Case(<span class="stringliteral">"nodebug"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00133"></a><span class="lineno">  133</span> .Case(<span class="stringliteral">"noinline"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00134"></a><span class="lineno">  134</span> .Case(<span class="stringliteral">"noinline"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00135"></a><span class="lineno">  135</span> .Case(<span class="stringliteral">"no_instrument_function"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00136"></a><span class="lineno">  136</span> .Case(<span class="stringliteral">"no_instrument_function"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00137"></a><span class="lineno">  137</span> .Case(<span class="stringliteral">"nomips16"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00138"></a><span class="lineno">  138</span> .Case(<span class="stringliteral">"nomips16"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00139"></a><span class="lineno">  139</span> .Case(<span class="stringliteral">"noreturn"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00140"></a><span class="lineno">  140</span> .Case(<span class="stringliteral">"noreturn"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00141"></a><span class="lineno">  141</span> .Case(<span class="stringliteral">"no_address_safety_analysis"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00142"></a><span class="lineno">  142</span> .Case(<span class="stringliteral">"no_sanitize_address"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00143"></a><span class="lineno">  143</span> .Case(<span class="stringliteral">"no_address_safety_analysis"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00144"></a><span class="lineno">  144</span> .Case(<span class="stringliteral">"no_sanitize_address"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00145"></a><span class="lineno">  145</span> .Case(<span class="stringliteral">"no_sanitize_memory"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00146"></a><span class="lineno">  146</span> .Case(<span class="stringliteral">"no_sanitize_thread"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00147"></a><span class="lineno">  147</span> .Case(<span class="stringliteral">"no_thread_safety_analysis"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00148"></a><span class="lineno">  148</span> .Case(<span class="stringliteral">"nothrow"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00149"></a><span class="lineno">  149</span> .Case(<span class="stringliteral">"nothrow"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00150"></a><span class="lineno">  150</span> .Case(<span class="stringliteral">"nonnull"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00151"></a><span class="lineno">  151</span> .Case(<span class="stringliteral">"nonnull"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00152"></a><span class="lineno">  152</span> .Case(<span class="stringliteral">"objc_bridge"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00153"></a><span class="lineno">  153</span> .Case(<span class="stringliteral">"objc_exception"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00154"></a><span class="lineno">  154</span> .Case(<span class="stringliteral">"objc_gc"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00155"></a><span class="lineno">  155</span> .Case(<span class="stringliteral">"objc_method_family"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00156"></a><span class="lineno">  156</span> .Case(<span class="stringliteral">"NSObject"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00157"></a><span class="lineno">  157</span> .Case(<span class="stringliteral">"objc_ownership"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00158"></a><span class="lineno">  158</span> .Case(<span class="stringliteral">"objc_precise_lifetime"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00159"></a><span class="lineno">  159</span> .Case(<span class="stringliteral">"objc_requires_property_definitions"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00160"></a><span class="lineno">  160</span> .Case(<span class="stringliteral">"objc_requires_super"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00161"></a><span class="lineno">  161</span> .Case(<span class="stringliteral">"objc_returns_inner_pointer"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00162"></a><span class="lineno">  162</span> .Case(<span class="stringliteral">"objc_root_class"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00163"></a><span class="lineno">  163</span> .Case(<span class="stringliteral">"opencl_image_access"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00164"></a><span class="lineno">  164</span> .Case(<span class="stringliteral">"__kernel"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00165"></a><span class="lineno">  165</span> .Case(<span class="stringliteral">"kernel"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00166"></a><span class="lineno">  166</span> .Case(<span class="stringliteral">"overloadable"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00167"></a><span class="lineno">  167</span> .Case(<span class="stringliteral">"ownership_holds"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00168"></a><span class="lineno">  168</span> .Case(<span class="stringliteral">"ownership_returns"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00169"></a><span class="lineno">  169</span> .Case(<span class="stringliteral">"ownership_takes"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00170"></a><span class="lineno">  170</span> .Case(<span class="stringliteral">"packed"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00171"></a><span class="lineno">  171</span> .Case(<span class="stringliteral">"packed"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00172"></a><span class="lineno">  172</span> .Case(<span class="stringliteral">"param_typestate"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00173"></a><span class="lineno">  173</span> .Case(<span class="stringliteral">"pascal"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00174"></a><span class="lineno">  174</span> .Case(<span class="stringliteral">"__pascal"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00175"></a><span class="lineno">  175</span> .Case(<span class="stringliteral">"_pascal"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00176"></a><span class="lineno">  176</span> .Case(<span class="stringliteral">"pcs"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00177"></a><span class="lineno">  177</span> .Case(<span class="stringliteral">"pcs"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00178"></a><span class="lineno">  178</span> .Case(<span class="stringliteral">"pnaclcall"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00179"></a><span class="lineno">  179</span> .Case(<span class="stringliteral">"pt_guarded_by"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00180"></a><span class="lineno">  180</span> .Case(<span class="stringliteral">"pt_guarded_var"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00181"></a><span class="lineno">  181</span> .Case(<span class="stringliteral">"__ptr32"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00182"></a><span class="lineno">  182</span> .Case(<span class="stringliteral">"__ptr64"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00183"></a><span class="lineno">  183</span> .Case(<span class="stringliteral">"pure"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00184"></a><span class="lineno">  184</span> .Case(<span class="stringliteral">"pure"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00185"></a><span class="lineno">  185</span> .Case(<span class="stringliteral">"regparm"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00186"></a><span class="lineno">  186</span> .Case(<span class="stringliteral">"regparm"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00187"></a><span class="lineno">  187</span> .Case(<span class="stringliteral">"reqd_work_group_size"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00188"></a><span class="lineno">  188</span> .Case(<span class="stringliteral">"return_typestate"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00189"></a><span class="lineno">  189</span> .Case(<span class="stringliteral">"returns_twice"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00190"></a><span class="lineno">  190</span> .Case(<span class="stringliteral">"returns_twice"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00191"></a><span class="lineno">  191</span> .Case(<span class="stringliteral">"__sptr"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00192"></a><span class="lineno">  192</span> .Case(<span class="stringliteral">"scoped_lockable"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00193"></a><span class="lineno">  193</span> .Case(<span class="stringliteral">"section"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00194"></a><span class="lineno">  194</span> .Case(<span class="stringliteral">"section"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00195"></a><span class="lineno">  195</span> .Case(<span class="stringliteral">"selectany"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00196"></a><span class="lineno">  196</span> .Case(<span class="stringliteral">"sentinel"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00197"></a><span class="lineno">  197</span> .Case(<span class="stringliteral">"sentinel"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00198"></a><span class="lineno">  198</span> .Case(<span class="stringliteral">"set_typestate"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00199"></a><span class="lineno">  199</span> .Case(<span class="stringliteral">"shared_lock_function"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00200"></a><span class="lineno">  200</span> .Case(<span class="stringliteral">"shared_locks_required"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00201"></a><span class="lineno">  201</span> .Case(<span class="stringliteral">"shared_trylock_function"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00202"></a><span class="lineno">  202</span> .Case(<span class="stringliteral">"__single_inheritance"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00203"></a><span class="lineno">  203</span> .Case(<span class="stringliteral">"stdcall"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00204"></a><span class="lineno">  204</span> .Case(<span class="stringliteral">"stdcall"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00205"></a><span class="lineno">  205</span> .Case(<span class="stringliteral">"__stdcall"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00206"></a><span class="lineno">  206</span> .Case(<span class="stringliteral">"_stdcall"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00207"></a><span class="lineno">  207</span> .Case(<span class="stringliteral">"sysv_abi"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00208"></a><span class="lineno">  208</span> .Case(<span class="stringliteral">"sysv_abi"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00209"></a><span class="lineno">  209</span> .Case(<span class="stringliteral">"tls_model"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00210"></a><span class="lineno">  210</span> .Case(<span class="stringliteral">"tls_model"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00211"></a><span class="lineno">  211</span> .Case(<span class="stringliteral">"test_typestate"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00212"></a><span class="lineno">  212</span> .Case(<span class="stringliteral">"thiscall"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00213"></a><span class="lineno">  213</span> .Case(<span class="stringliteral">"thiscall"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00214"></a><span class="lineno">  214</span> .Case(<span class="stringliteral">"__thiscall"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00215"></a><span class="lineno">  215</span> .Case(<span class="stringliteral">"_thiscall"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00216"></a><span class="lineno">  216</span> .Case(<span class="stringliteral">"transparent_union"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00217"></a><span class="lineno">  217</span> .Case(<span class="stringliteral">"transparent_union"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00218"></a><span class="lineno">  218</span> .Case(<span class="stringliteral">"type_tag_for_datatype"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00219"></a><span class="lineno">  219</span> .Case(<span class="stringliteral">"type_visibility"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00220"></a><span class="lineno">  220</span> .Case(<span class="stringliteral">"type_visibility"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00221"></a><span class="lineno">  221</span> .Case(<span class="stringliteral">"__uptr"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00222"></a><span class="lineno">  222</span> .Case(<span class="stringliteral">"__unaligned"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00223"></a><span class="lineno">  223</span> .Case(<span class="stringliteral">"unavailable"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00224"></a><span class="lineno">  224</span> .Case(<span class="stringliteral">"unlock_function"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00225"></a><span class="lineno">  225</span> .Case(<span class="stringliteral">"unused"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00226"></a><span class="lineno">  226</span> .Case(<span class="stringliteral">"unused"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00227"></a><span class="lineno">  227</span> .Case(<span class="stringliteral">"used"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00228"></a><span class="lineno">  228</span> .Case(<span class="stringliteral">"used"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00229"></a><span class="lineno">  229</span> .Case(<span class="stringliteral">"uuid"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00230"></a><span class="lineno">  230</span> .Case(<span class="stringliteral">"vecreturn"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00231"></a><span class="lineno">  231</span> .Case(<span class="stringliteral">"vec_type_hint"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00232"></a><span class="lineno">  232</span> .Case(<span class="stringliteral">"vector_size"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00233"></a><span class="lineno">  233</span> .Case(<span class="stringliteral">"vector_size"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00234"></a><span class="lineno">  234</span> .Case(<span class="stringliteral">"__virtual_inheritance"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00235"></a><span class="lineno">  235</span> .Case(<span class="stringliteral">"visibility"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00236"></a><span class="lineno">  236</span> .Case(<span class="stringliteral">"visibility"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00237"></a><span class="lineno">  237</span> .Case(<span class="stringliteral">"warn_unused"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00238"></a><span class="lineno">  238</span> .Case(<span class="stringliteral">"warn_unused_result"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00239"></a><span class="lineno">  239</span> .Case(<span class="stringliteral">"warn_unused_result"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00240"></a><span class="lineno">  240</span> .Case(<span class="stringliteral">"warn_unused_result"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00241"></a><span class="lineno">  241</span> .Case(<span class="stringliteral">"weak"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00242"></a><span class="lineno">  242</span> .Case(<span class="stringliteral">"weak"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00243"></a><span class="lineno">  243</span> .Case(<span class="stringliteral">"weak_import"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00244"></a><span class="lineno">  244</span> .Case(<span class="stringliteral">"weakref"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00245"></a><span class="lineno">  245</span> .Case(<span class="stringliteral">"weakref"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00246"></a><span class="lineno">  246</span> .Case(<span class="stringliteral">"__w64"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00247"></a><span class="lineno">  247</span> .Case(<span class="stringliteral">"work_group_size_hint"</span>, <span class="keyword">true</span>)</div>
+</div><!-- fragment --></div><!-- contents -->
+<hr>
+<p class="footer">
+Generated on Mon May 12 2014 12:13:19 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/AttrTemplateInstantiate_8inc_source.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/3.5.1/tools/clang/docs/doxygen/html/AttrTemplateInstantiate_8inc_source.html?rev=225843&view=auto
==============================================================================
--- www-releases/trunk/3.5.1/tools/clang/docs/doxygen/html/AttrTemplateInstantiate_8inc_source.html (added)
+++ www-releases/trunk/3.5.1/tools/clang/docs/doxygen/html/AttrTemplateInstantiate_8inc_source.html Tue Jan 13 16:55:20 2015
@@ -0,0 +1,878 @@
+<!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: AttrTemplateInstantiate.inc 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_d527ffe6334522956bc19a2da6aab47c.html">Sema</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">AttrTemplateInstantiate.inc</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="AttrTemplateInstantiate_8inc.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">/*===- TableGen'erated file -------------------------------------*- 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">|*Template instantiation code for attributes                                  *|</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">|* Automatically generated file, do not edit!                                 *|</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span> <span class="comment">|*                                                                            *|</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> </div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span> <span class="keyword">namespace </span>clang {</div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span> <span class="keyword">namespace </span>sema {</div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span> </div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span> Attr *<a class="code" href="namespaceclang_1_1sema.html#a4f0945c668dcc6c0eca53223b21de8fd">instantiateTemplateAttribute</a>(<span class="keyword">const</span> Attr *At, ASTContext &C, Sema &<a class="code" href="AnalysisBasedWarnings_8cpp.html#a33dc45a03958a0bf07b5da2dec4db648">S</a>,</div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>         <span class="keyword">const</span> MultiLevelTemplateArgumentList &TemplateArgs) {</div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span>   <span class="keywordflow">switch</span> (At->getKind()) {</div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span>     <span class="keywordflow">default</span>:</div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>       <span class="keywordflow">break</span>;</div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span>     <span class="keywordflow">case</span> attr::ARMInterrupt: {</div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span>       <span class="keyword">const</span> ARMInterruptAttr *A = cast<ARMInterruptAttr>(At);</div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span>       <span class="keywordflow">return</span> A-><a class="code" href="classclang_1_1Attr.html#a01e4792253d31e7bd24f6f71d83a61fe">clone</a>(C);</div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span>     }</div>
+<div class="line"><a name="l00021"></a><span class="lineno">   21</span>     <span class="keywordflow">case</span> attr::AcquiredAfter: {</div>
+<div class="line"><a name="l00022"></a><span class="lineno">   22</span>       <span class="keyword">const</span> AcquiredAfterAttr *A = cast<AcquiredAfterAttr>(At);</div>
+<div class="line"><a name="l00023"></a><span class="lineno">   23</span>       Expr * *tempInstArgs = <span class="keyword">new</span> (C, 16) Expr *[A->args_size()];</div>
+<div class="line"><a name="l00024"></a><span class="lineno">   24</span>       {</div>
+<div class="line"><a name="l00025"></a><span class="lineno">   25</span>         EnterExpressionEvaluationContext Unevaluated(S, <a class="code" href="classclang_1_1Sema.html#ac105cb9d8d4ad3e532351c498f6082b5ae4e2b142c5314222a59195d1612a1904" title="The current expression and its subexpressions occur within an unevaluated operand (C++11 [expr]p7)...">Sema::Unevaluated</a>);</div>
+<div class="line"><a name="l00026"></a><span class="lineno">   26</span>         Expr * *TI = tempInstArgs;</div>
+<div class="line"><a name="l00027"></a><span class="lineno">   27</span>         Expr * *I = A->args_begin();</div>
+<div class="line"><a name="l00028"></a><span class="lineno">   28</span>         Expr * *E = A->args_end();</div>
+<div class="line"><a name="l00029"></a><span class="lineno">   29</span>         <span class="keywordflow">for</span> (; I != E; ++I, ++TI) {</div>
+<div class="line"><a name="l00030"></a><span class="lineno">   30</span>           <a class="code" href="namespaceclang.html#ad607ac07ed5d295b26a24fb5ae02bad5">ExprResult</a> Result = S.SubstExpr(*I, TemplateArgs);</div>
+<div class="line"><a name="l00031"></a><span class="lineno">   31</span>           *TI = Result.<a class="code" href="classclang_1_1ActionResult.html#a144bc2f6c8a8090ba894cda5a5613361">takeAs</a><Expr>();</div>
+<div class="line"><a name="l00032"></a><span class="lineno">   32</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="keywordflow">return</span> <span class="keyword">new</span> (C) AcquiredAfterAttr(A->getLocation(), C, tempInstArgs, A->args_size());</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="keywordflow">case</span> attr::AcquiredBefore: {</div>
+<div class="line"><a name="l00037"></a><span class="lineno">   37</span>       <span class="keyword">const</span> AcquiredBeforeAttr *A = cast<AcquiredBeforeAttr>(At);</div>
+<div class="line"><a name="l00038"></a><span class="lineno">   38</span>       Expr * *tempInstArgs = <span class="keyword">new</span> (C, 16) Expr *[A->args_size()];</div>
+<div class="line"><a name="l00039"></a><span class="lineno">   39</span>       {</div>
+<div class="line"><a name="l00040"></a><span class="lineno">   40</span>         EnterExpressionEvaluationContext Unevaluated(S, <a class="code" href="classclang_1_1Sema.html#ac105cb9d8d4ad3e532351c498f6082b5ae4e2b142c5314222a59195d1612a1904" title="The current expression and its subexpressions occur within an unevaluated operand (C++11 [expr]p7)...">Sema::Unevaluated</a>);</div>
+<div class="line"><a name="l00041"></a><span class="lineno">   41</span>         Expr * *TI = tempInstArgs;</div>
+<div class="line"><a name="l00042"></a><span class="lineno">   42</span>         Expr * *I = A->args_begin();</div>
+<div class="line"><a name="l00043"></a><span class="lineno">   43</span>         Expr * *E = A->args_end();</div>
+<div class="line"><a name="l00044"></a><span class="lineno">   44</span>         <span class="keywordflow">for</span> (; I != E; ++I, ++TI) {</div>
+<div class="line"><a name="l00045"></a><span class="lineno">   45</span>           <a class="code" href="namespaceclang.html#ad607ac07ed5d295b26a24fb5ae02bad5">ExprResult</a> Result = S.SubstExpr(*I, TemplateArgs);</div>
+<div class="line"><a name="l00046"></a><span class="lineno">   46</span>           *TI = Result.<a class="code" href="classclang_1_1ActionResult.html#a144bc2f6c8a8090ba894cda5a5613361">takeAs</a><Expr>();</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>       }</div>
+<div class="line"><a name="l00049"></a><span class="lineno">   49</span>       <span class="keywordflow">return</span> <span class="keyword">new</span> (C) AcquiredBeforeAttr(A->getLocation(), C, tempInstArgs, A->args_size());</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="keywordflow">case</span> attr::Alias: {</div>
+<div class="line"><a name="l00052"></a><span class="lineno">   52</span>       <span class="keyword">const</span> AliasAttr *A = cast<AliasAttr>(At);</div>
+<div class="line"><a name="l00053"></a><span class="lineno">   53</span>       <span class="keywordflow">return</span> A->clone(C);</div>
+<div class="line"><a name="l00054"></a><span class="lineno">   54</span>     }</div>
+<div class="line"><a name="l00055"></a><span class="lineno">   55</span>     <span class="keywordflow">case</span> attr::AlignMac68k: {</div>
+<div class="line"><a name="l00056"></a><span class="lineno">   56</span>       <span class="keyword">const</span> AlignMac68kAttr *A = cast<AlignMac68kAttr>(At);</div>
+<div class="line"><a name="l00057"></a><span class="lineno">   57</span>       <span class="keywordflow">return</span> A->clone(C);</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">case</span> attr::Aligned: {</div>
+<div class="line"><a name="l00060"></a><span class="lineno">   60</span>       <span class="keyword">const</span> AlignedAttr *A = cast<AlignedAttr>(At);</div>
+<div class="line"><a name="l00061"></a><span class="lineno">   61</span>       <span class="keywordflow">return</span> A->clone(C);</div>
+<div class="line"><a name="l00062"></a><span class="lineno">   62</span>     }</div>
+<div class="line"><a name="l00063"></a><span class="lineno">   63</span>     <span class="keywordflow">case</span> attr::AllocSize: {</div>
+<div class="line"><a name="l00064"></a><span class="lineno">   64</span>       <span class="keyword">const</span> AllocSizeAttr *A = cast<AllocSizeAttr>(At);</div>
+<div class="line"><a name="l00065"></a><span class="lineno">   65</span>       <span class="keywordflow">return</span> A->clone(C);</div>
+<div class="line"><a name="l00066"></a><span class="lineno">   66</span>     }</div>
+<div class="line"><a name="l00067"></a><span class="lineno">   67</span>     <span class="keywordflow">case</span> attr::AlwaysInline: {</div>
+<div class="line"><a name="l00068"></a><span class="lineno">   68</span>       <span class="keyword">const</span> AlwaysInlineAttr *A = cast<AlwaysInlineAttr>(At);</div>
+<div class="line"><a name="l00069"></a><span class="lineno">   69</span>       <span class="keywordflow">return</span> A->clone(C);</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">case</span> attr::AnalyzerNoReturn: {</div>
+<div class="line"><a name="l00072"></a><span class="lineno">   72</span>       <span class="keyword">const</span> AnalyzerNoReturnAttr *A = cast<AnalyzerNoReturnAttr>(At);</div>
+<div class="line"><a name="l00073"></a><span class="lineno">   73</span>       <span class="keywordflow">return</span> A->clone(C);</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>     <span class="keywordflow">case</span> attr::Annotate: {</div>
+<div class="line"><a name="l00076"></a><span class="lineno">   76</span>       <span class="keyword">const</span> AnnotateAttr *A = cast<AnnotateAttr>(At);</div>
+<div class="line"><a name="l00077"></a><span class="lineno">   77</span>       <span class="keywordflow">return</span> A->clone(C);</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">case</span> attr::ArcWeakrefUnavailable: {</div>
+<div class="line"><a name="l00080"></a><span class="lineno">   80</span>       <span class="keyword">const</span> ArcWeakrefUnavailableAttr *A = cast<ArcWeakrefUnavailableAttr>(At);</div>
+<div class="line"><a name="l00081"></a><span class="lineno">   81</span>       <span class="keywordflow">return</span> A->clone(C);</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>     <span class="keywordflow">case</span> attr::ArgumentWithTypeTag: {</div>
+<div class="line"><a name="l00084"></a><span class="lineno">   84</span>       <span class="keyword">const</span> ArgumentWithTypeTagAttr *A = cast<ArgumentWithTypeTagAttr>(At);</div>
+<div class="line"><a name="l00085"></a><span class="lineno">   85</span>       <span class="keywordflow">return</span> A->clone(C);</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>     <span class="keywordflow">case</span> attr::AsmLabel: {</div>
+<div class="line"><a name="l00088"></a><span class="lineno">   88</span>       <span class="keyword">const</span> AsmLabelAttr *A = cast<AsmLabelAttr>(At);</div>
+<div class="line"><a name="l00089"></a><span class="lineno">   89</span>       <span class="keywordflow">return</span> A->clone(C);</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>     <span class="keywordflow">case</span> attr::AssertExclusiveLock: {</div>
+<div class="line"><a name="l00092"></a><span class="lineno">   92</span>       <span class="keyword">const</span> AssertExclusiveLockAttr *A = cast<AssertExclusiveLockAttr>(At);</div>
+<div class="line"><a name="l00093"></a><span class="lineno">   93</span>       Expr * *tempInstArgs = <span class="keyword">new</span> (C, 16) Expr *[A->args_size()];</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>         EnterExpressionEvaluationContext Unevaluated(S, <a class="code" href="classclang_1_1Sema.html#ac105cb9d8d4ad3e532351c498f6082b5ae4e2b142c5314222a59195d1612a1904" title="The current expression and its subexpressions occur within an unevaluated operand (C++11 [expr]p7)...">Sema::Unevaluated</a>);</div>
+<div class="line"><a name="l00096"></a><span class="lineno">   96</span>         Expr * *TI = tempInstArgs;</div>
+<div class="line"><a name="l00097"></a><span class="lineno">   97</span>         Expr * *I = A->args_begin();</div>
+<div class="line"><a name="l00098"></a><span class="lineno">   98</span>         Expr * *E = A->args_end();</div>
+<div class="line"><a name="l00099"></a><span class="lineno">   99</span>         <span class="keywordflow">for</span> (; I != E; ++I, ++TI) {</div>
+<div class="line"><a name="l00100"></a><span class="lineno">  100</span>           <a class="code" href="namespaceclang.html#ad607ac07ed5d295b26a24fb5ae02bad5">ExprResult</a> Result = S.SubstExpr(*I, TemplateArgs);</div>
+<div class="line"><a name="l00101"></a><span class="lineno">  101</span>           *TI = Result.<a class="code" href="classclang_1_1ActionResult.html#a144bc2f6c8a8090ba894cda5a5613361">takeAs</a><Expr>();</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>       }</div>
+<div class="line"><a name="l00104"></a><span class="lineno">  104</span>       <span class="keywordflow">return</span> <span class="keyword">new</span> (C) AssertExclusiveLockAttr(A->getLocation(), C, tempInstArgs, A->args_size());</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="keywordflow">case</span> attr::AssertSharedLock: {</div>
+<div class="line"><a name="l00107"></a><span class="lineno">  107</span>       <span class="keyword">const</span> AssertSharedLockAttr *A = cast<AssertSharedLockAttr>(At);</div>
+<div class="line"><a name="l00108"></a><span class="lineno">  108</span>       Expr * *tempInstArgs = <span class="keyword">new</span> (C, 16) Expr *[A->args_size()];</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>         EnterExpressionEvaluationContext Unevaluated(S, <a class="code" href="classclang_1_1Sema.html#ac105cb9d8d4ad3e532351c498f6082b5ae4e2b142c5314222a59195d1612a1904" title="The current expression and its subexpressions occur within an unevaluated operand (C++11 [expr]p7)...">Sema::Unevaluated</a>);</div>
+<div class="line"><a name="l00111"></a><span class="lineno">  111</span>         Expr * *TI = tempInstArgs;</div>
+<div class="line"><a name="l00112"></a><span class="lineno">  112</span>         Expr * *I = A->args_begin();</div>
+<div class="line"><a name="l00113"></a><span class="lineno">  113</span>         Expr * *E = A->args_end();</div>
+<div class="line"><a name="l00114"></a><span class="lineno">  114</span>         <span class="keywordflow">for</span> (; I != E; ++I, ++TI) {</div>
+<div class="line"><a name="l00115"></a><span class="lineno">  115</span>           <a class="code" href="namespaceclang.html#ad607ac07ed5d295b26a24fb5ae02bad5">ExprResult</a> Result = S.SubstExpr(*I, TemplateArgs);</div>
+<div class="line"><a name="l00116"></a><span class="lineno">  116</span>           *TI = Result.<a class="code" href="classclang_1_1ActionResult.html#a144bc2f6c8a8090ba894cda5a5613361">takeAs</a><Expr>();</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">  119</span>       <span class="keywordflow">return</span> <span class="keyword">new</span> (C) AssertSharedLockAttr(A->getLocation(), C, tempInstArgs, A->args_size());</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="keywordflow">case</span> attr::Availability: {</div>
+<div class="line"><a name="l00122"></a><span class="lineno">  122</span>       <span class="keyword">const</span> AvailabilityAttr *A = cast<AvailabilityAttr>(At);</div>
+<div class="line"><a name="l00123"></a><span class="lineno">  123</span>       <span class="keywordflow">return</span> A->clone(C);</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">case</span> attr::Blocks: {</div>
+<div class="line"><a name="l00126"></a><span class="lineno">  126</span>       <span class="keyword">const</span> BlocksAttr *A = cast<BlocksAttr>(At);</div>
+<div class="line"><a name="l00127"></a><span class="lineno">  127</span>       <span class="keywordflow">return</span> A->clone(C);</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>     <span class="keywordflow">case</span> attr::C11NoReturn: {</div>
+<div class="line"><a name="l00130"></a><span class="lineno">  130</span>       <span class="keyword">const</span> C11NoReturnAttr *A = cast<C11NoReturnAttr>(At);</div>
+<div class="line"><a name="l00131"></a><span class="lineno">  131</span>       <span class="keywordflow">return</span> A->clone(C);</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>     <span class="keywordflow">case</span> attr::CDecl: {</div>
+<div class="line"><a name="l00134"></a><span class="lineno">  134</span>       <span class="keyword">const</span> CDeclAttr *A = cast<CDeclAttr>(At);</div>
+<div class="line"><a name="l00135"></a><span class="lineno">  135</span>       <span class="keywordflow">return</span> A->clone(C);</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>     <span class="keywordflow">case</span> attr::CFAuditedTransfer: {</div>
+<div class="line"><a name="l00138"></a><span class="lineno">  138</span>       <span class="keyword">const</span> CFAuditedTransferAttr *A = cast<CFAuditedTransferAttr>(At);</div>
+<div class="line"><a name="l00139"></a><span class="lineno">  139</span>       <span class="keywordflow">return</span> A->clone(C);</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>     <span class="keywordflow">case</span> attr::CFConsumed: {</div>
+<div class="line"><a name="l00142"></a><span class="lineno">  142</span>       <span class="keyword">const</span> CFConsumedAttr *A = cast<CFConsumedAttr>(At);</div>
+<div class="line"><a name="l00143"></a><span class="lineno">  143</span>       <span class="keywordflow">return</span> A->clone(C);</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>     <span class="keywordflow">case</span> attr::CFReturnsNotRetained: {</div>
+<div class="line"><a name="l00146"></a><span class="lineno">  146</span>       <span class="keyword">const</span> CFReturnsNotRetainedAttr *A = cast<CFReturnsNotRetainedAttr>(At);</div>
+<div class="line"><a name="l00147"></a><span class="lineno">  147</span>       <span class="keywordflow">return</span> A->clone(C);</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>     <span class="keywordflow">case</span> attr::CFReturnsRetained: {</div>
+<div class="line"><a name="l00150"></a><span class="lineno">  150</span>       <span class="keyword">const</span> CFReturnsRetainedAttr *A = cast<CFReturnsRetainedAttr>(At);</div>
+<div class="line"><a name="l00151"></a><span class="lineno">  151</span>       <span class="keywordflow">return</span> A->clone(C);</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">case</span> attr::CFUnknownTransfer: {</div>
+<div class="line"><a name="l00154"></a><span class="lineno">  154</span>       <span class="keyword">const</span> CFUnknownTransferAttr *A = cast<CFUnknownTransferAttr>(At);</div>
+<div class="line"><a name="l00155"></a><span class="lineno">  155</span>       <span class="keywordflow">return</span> A->clone(C);</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">case</span> attr::CUDAConstant: {</div>
+<div class="line"><a name="l00158"></a><span class="lineno">  158</span>       <span class="keyword">const</span> CUDAConstantAttr *A = cast<CUDAConstantAttr>(At);</div>
+<div class="line"><a name="l00159"></a><span class="lineno">  159</span>       <span class="keywordflow">return</span> A->clone(C);</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="keywordflow">case</span> attr::CUDADevice: {</div>
+<div class="line"><a name="l00162"></a><span class="lineno">  162</span>       <span class="keyword">const</span> CUDADeviceAttr *A = cast<CUDADeviceAttr>(At);</div>
+<div class="line"><a name="l00163"></a><span class="lineno">  163</span>       <span class="keywordflow">return</span> A->clone(C);</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="keywordflow">case</span> attr::CUDAGlobal: {</div>
+<div class="line"><a name="l00166"></a><span class="lineno">  166</span>       <span class="keyword">const</span> CUDAGlobalAttr *A = cast<CUDAGlobalAttr>(At);</div>
+<div class="line"><a name="l00167"></a><span class="lineno">  167</span>       <span class="keywordflow">return</span> A->clone(C);</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>     <span class="keywordflow">case</span> attr::CUDAHost: {</div>
+<div class="line"><a name="l00170"></a><span class="lineno">  170</span>       <span class="keyword">const</span> CUDAHostAttr *A = cast<CUDAHostAttr>(At);</div>
+<div class="line"><a name="l00171"></a><span class="lineno">  171</span>       <span class="keywordflow">return</span> A->clone(C);</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>     <span class="keywordflow">case</span> attr::CUDALaunchBounds: {</div>
+<div class="line"><a name="l00174"></a><span class="lineno">  174</span>       <span class="keyword">const</span> CUDALaunchBoundsAttr *A = cast<CUDALaunchBoundsAttr>(At);</div>
+<div class="line"><a name="l00175"></a><span class="lineno">  175</span>       <span class="keywordflow">return</span> A->clone(C);</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">case</span> attr::CUDAShared: {</div>
+<div class="line"><a name="l00178"></a><span class="lineno">  178</span>       <span class="keyword">const</span> CUDASharedAttr *A = cast<CUDASharedAttr>(At);</div>
+<div class="line"><a name="l00179"></a><span class="lineno">  179</span>       <span class="keywordflow">return</span> A->clone(C);</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>     <span class="keywordflow">case</span> attr::CXX11NoReturn: {</div>
+<div class="line"><a name="l00182"></a><span class="lineno">  182</span>       <span class="keyword">const</span> CXX11NoReturnAttr *A = cast<CXX11NoReturnAttr>(At);</div>
+<div class="line"><a name="l00183"></a><span class="lineno">  183</span>       <span class="keywordflow">return</span> A->clone(C);</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>     <span class="keywordflow">case</span> attr::CallableWhen: {</div>
+<div class="line"><a name="l00186"></a><span class="lineno">  186</span>       <span class="keyword">const</span> CallableWhenAttr *A = cast<CallableWhenAttr>(At);</div>
+<div class="line"><a name="l00187"></a><span class="lineno">  187</span>       <span class="keywordflow">return</span> A->clone(C);</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>     <span class="keywordflow">case</span> attr::CarriesDependency: {</div>
+<div class="line"><a name="l00190"></a><span class="lineno">  190</span>       <span class="keyword">const</span> CarriesDependencyAttr *A = cast<CarriesDependencyAttr>(At);</div>
+<div class="line"><a name="l00191"></a><span class="lineno">  191</span>       <span class="keywordflow">return</span> A->clone(C);</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>     <span class="keywordflow">case</span> attr::Cleanup: {</div>
+<div class="line"><a name="l00194"></a><span class="lineno">  194</span>       <span class="keyword">const</span> CleanupAttr *A = cast<CleanupAttr>(At);</div>
+<div class="line"><a name="l00195"></a><span class="lineno">  195</span>       <span class="keywordflow">return</span> A->clone(C);</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>     <span class="keywordflow">case</span> attr::Cold: {</div>
+<div class="line"><a name="l00198"></a><span class="lineno">  198</span>       <span class="keyword">const</span> ColdAttr *A = cast<ColdAttr>(At);</div>
+<div class="line"><a name="l00199"></a><span class="lineno">  199</span>       <span class="keywordflow">return</span> A->clone(C);</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>     <span class="keywordflow">case</span> attr::Common: {</div>
+<div class="line"><a name="l00202"></a><span class="lineno">  202</span>       <span class="keyword">const</span> CommonAttr *A = cast<CommonAttr>(At);</div>
+<div class="line"><a name="l00203"></a><span class="lineno">  203</span>       <span class="keywordflow">return</span> A->clone(C);</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>     <span class="keywordflow">case</span> attr::Const: {</div>
+<div class="line"><a name="l00206"></a><span class="lineno">  206</span>       <span class="keyword">const</span> ConstAttr *A = cast<ConstAttr>(At);</div>
+<div class="line"><a name="l00207"></a><span class="lineno">  207</span>       <span class="keywordflow">return</span> A->clone(C);</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>     <span class="keywordflow">case</span> attr::Constructor: {</div>
+<div class="line"><a name="l00210"></a><span class="lineno">  210</span>       <span class="keyword">const</span> ConstructorAttr *A = cast<ConstructorAttr>(At);</div>
+<div class="line"><a name="l00211"></a><span class="lineno">  211</span>       <span class="keywordflow">return</span> A->clone(C);</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>     <span class="keywordflow">case</span> attr::Consumable: {</div>
+<div class="line"><a name="l00214"></a><span class="lineno">  214</span>       <span class="keyword">const</span> ConsumableAttr *A = cast<ConsumableAttr>(At);</div>
+<div class="line"><a name="l00215"></a><span class="lineno">  215</span>       <span class="keywordflow">return</span> A->clone(C);</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>     <span class="keywordflow">case</span> attr::DLLExport: {</div>
+<div class="line"><a name="l00218"></a><span class="lineno">  218</span>       <span class="keyword">const</span> DLLExportAttr *A = cast<DLLExportAttr>(At);</div>
+<div class="line"><a name="l00219"></a><span class="lineno">  219</span>       <span class="keywordflow">return</span> A->clone(C);</div>
+<div class="line"><a name="l00220"></a><span class="lineno">  220</span>     }</div>
+<div class="line"><a name="l00221"></a><span class="lineno">  221</span>     <span class="keywordflow">case</span> attr::DLLImport: {</div>
+<div class="line"><a name="l00222"></a><span class="lineno">  222</span>       <span class="keyword">const</span> DLLImportAttr *A = cast<DLLImportAttr>(At);</div>
+<div class="line"><a name="l00223"></a><span class="lineno">  223</span>       <span class="keywordflow">return</span> A->clone(C);</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">case</span> attr::Deprecated: {</div>
+<div class="line"><a name="l00226"></a><span class="lineno">  226</span>       <span class="keyword">const</span> DeprecatedAttr *A = cast<DeprecatedAttr>(At);</div>
+<div class="line"><a name="l00227"></a><span class="lineno">  227</span>       <span class="keywordflow">return</span> A->clone(C);</div>
+<div class="line"><a name="l00228"></a><span class="lineno">  228</span>     }</div>
+<div class="line"><a name="l00229"></a><span class="lineno">  229</span>     <span class="keywordflow">case</span> attr::Destructor: {</div>
+<div class="line"><a name="l00230"></a><span class="lineno">  230</span>       <span class="keyword">const</span> DestructorAttr *A = cast<DestructorAttr>(At);</div>
+<div class="line"><a name="l00231"></a><span class="lineno">  231</span>       <span class="keywordflow">return</span> A->clone(C);</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>     <span class="keywordflow">case</span> attr::ExclusiveLockFunction: {</div>
+<div class="line"><a name="l00234"></a><span class="lineno">  234</span>       <span class="keyword">const</span> ExclusiveLockFunctionAttr *A = cast<ExclusiveLockFunctionAttr>(At);</div>
+<div class="line"><a name="l00235"></a><span class="lineno">  235</span>       Expr * *tempInstArgs = <span class="keyword">new</span> (C, 16) Expr *[A->args_size()];</div>
+<div class="line"><a name="l00236"></a><span class="lineno">  236</span>       {</div>
+<div class="line"><a name="l00237"></a><span class="lineno">  237</span>         EnterExpressionEvaluationContext Unevaluated(S, <a class="code" href="classclang_1_1Sema.html#ac105cb9d8d4ad3e532351c498f6082b5ae4e2b142c5314222a59195d1612a1904" title="The current expression and its subexpressions occur within an unevaluated operand (C++11 [expr]p7)...">Sema::Unevaluated</a>);</div>
+<div class="line"><a name="l00238"></a><span class="lineno">  238</span>         Expr * *TI = tempInstArgs;</div>
+<div class="line"><a name="l00239"></a><span class="lineno">  239</span>         Expr * *I = A->args_begin();</div>
+<div class="line"><a name="l00240"></a><span class="lineno">  240</span>         Expr * *E = A->args_end();</div>
+<div class="line"><a name="l00241"></a><span class="lineno">  241</span>         <span class="keywordflow">for</span> (; I != E; ++I, ++TI) {</div>
+<div class="line"><a name="l00242"></a><span class="lineno">  242</span>           <a class="code" href="namespaceclang.html#ad607ac07ed5d295b26a24fb5ae02bad5">ExprResult</a> Result = S.SubstExpr(*I, TemplateArgs);</div>
+<div class="line"><a name="l00243"></a><span class="lineno">  243</span>           *TI = Result.<a class="code" href="classclang_1_1ActionResult.html#a144bc2f6c8a8090ba894cda5a5613361">takeAs</a><Expr>();</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>       }</div>
+<div class="line"><a name="l00246"></a><span class="lineno">  246</span>       <span class="keywordflow">return</span> <span class="keyword">new</span> (C) ExclusiveLockFunctionAttr(A->getLocation(), C, tempInstArgs, A->args_size());</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>     <span class="keywordflow">case</span> attr::ExclusiveLocksRequired: {</div>
+<div class="line"><a name="l00249"></a><span class="lineno">  249</span>       <span class="keyword">const</span> ExclusiveLocksRequiredAttr *A = cast<ExclusiveLocksRequiredAttr>(At);</div>
+<div class="line"><a name="l00250"></a><span class="lineno">  250</span>       Expr * *tempInstArgs = <span class="keyword">new</span> (C, 16) Expr *[A->args_size()];</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>         EnterExpressionEvaluationContext Unevaluated(S, <a class="code" href="classclang_1_1Sema.html#ac105cb9d8d4ad3e532351c498f6082b5ae4e2b142c5314222a59195d1612a1904" title="The current expression and its subexpressions occur within an unevaluated operand (C++11 [expr]p7)...">Sema::Unevaluated</a>);</div>
+<div class="line"><a name="l00253"></a><span class="lineno">  253</span>         Expr * *TI = tempInstArgs;</div>
+<div class="line"><a name="l00254"></a><span class="lineno">  254</span>         Expr * *I = A->args_begin();</div>
+<div class="line"><a name="l00255"></a><span class="lineno">  255</span>         Expr * *E = A->args_end();</div>
+<div class="line"><a name="l00256"></a><span class="lineno">  256</span>         <span class="keywordflow">for</span> (; I != E; ++I, ++TI) {</div>
+<div class="line"><a name="l00257"></a><span class="lineno">  257</span>           <a class="code" href="namespaceclang.html#ad607ac07ed5d295b26a24fb5ae02bad5">ExprResult</a> Result = S.SubstExpr(*I, TemplateArgs);</div>
+<div class="line"><a name="l00258"></a><span class="lineno">  258</span>           *TI = Result.<a class="code" href="classclang_1_1ActionResult.html#a144bc2f6c8a8090ba894cda5a5613361">takeAs</a><Expr>();</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>       }</div>
+<div class="line"><a name="l00261"></a><span class="lineno">  261</span>       <span class="keywordflow">return</span> <span class="keyword">new</span> (C) ExclusiveLocksRequiredAttr(A->getLocation(), C, tempInstArgs, A->args_size());</div>
+<div class="line"><a name="l00262"></a><span class="lineno">  262</span>     }</div>
+<div class="line"><a name="l00263"></a><span class="lineno">  263</span>     <span class="keywordflow">case</span> attr::ExclusiveTrylockFunction: {</div>
+<div class="line"><a name="l00264"></a><span class="lineno">  264</span>       <span class="keyword">const</span> ExclusiveTrylockFunctionAttr *A = cast<ExclusiveTrylockFunctionAttr>(At);</div>
+<div class="line"><a name="l00265"></a><span class="lineno">  265</span>       Expr * tempInstSuccessValue;</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>         EnterExpressionEvaluationContext Unevaluated(S, <a class="code" href="classclang_1_1Sema.html#ac105cb9d8d4ad3e532351c498f6082b5ae4e2b142c5314222a59195d1612a1904" title="The current expression and its subexpressions occur within an unevaluated operand (C++11 [expr]p7)...">Sema::Unevaluated</a>);</div>
+<div class="line"><a name="l00268"></a><span class="lineno">  268</span>         <a class="code" href="namespaceclang.html#ad607ac07ed5d295b26a24fb5ae02bad5">ExprResult</a> Result = S.SubstExpr(A->getSuccessValue(), TemplateArgs);</div>
+<div class="line"><a name="l00269"></a><span class="lineno">  269</span>         tempInstSuccessValue = Result.<a class="code" href="classclang_1_1ActionResult.html#a144bc2f6c8a8090ba894cda5a5613361">takeAs</a><Expr>();</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>       Expr * *tempInstArgs = <span class="keyword">new</span> (C, 16) Expr *[A->args_size()];</div>
+<div class="line"><a name="l00272"></a><span class="lineno">  272</span>       {</div>
+<div class="line"><a name="l00273"></a><span class="lineno">  273</span>         EnterExpressionEvaluationContext Unevaluated(S, <a class="code" href="classclang_1_1Sema.html#ac105cb9d8d4ad3e532351c498f6082b5ae4e2b142c5314222a59195d1612a1904" title="The current expression and its subexpressions occur within an unevaluated operand (C++11 [expr]p7)...">Sema::Unevaluated</a>);</div>
+<div class="line"><a name="l00274"></a><span class="lineno">  274</span>         Expr * *TI = tempInstArgs;</div>
+<div class="line"><a name="l00275"></a><span class="lineno">  275</span>         Expr * *I = A->args_begin();</div>
+<div class="line"><a name="l00276"></a><span class="lineno">  276</span>         Expr * *E = A->args_end();</div>
+<div class="line"><a name="l00277"></a><span class="lineno">  277</span>         <span class="keywordflow">for</span> (; I != E; ++I, ++TI) {</div>
+<div class="line"><a name="l00278"></a><span class="lineno">  278</span>           <a class="code" href="namespaceclang.html#ad607ac07ed5d295b26a24fb5ae02bad5">ExprResult</a> Result = S.SubstExpr(*I, TemplateArgs);</div>
+<div class="line"><a name="l00279"></a><span class="lineno">  279</span>           *TI = Result.<a class="code" href="classclang_1_1ActionResult.html#a144bc2f6c8a8090ba894cda5a5613361">takeAs</a><Expr>();</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">  282</span>       <span class="keywordflow">return</span> <span class="keyword">new</span> (C) ExclusiveTrylockFunctionAttr(A->getLocation(), C, tempInstSuccessValue, tempInstArgs, A->args_size());</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>     <span class="keywordflow">case</span> attr::FallThrough: {</div>
+<div class="line"><a name="l00285"></a><span class="lineno">  285</span>       <span class="keyword">const</span> FallThroughAttr *A = cast<FallThroughAttr>(At);</div>
+<div class="line"><a name="l00286"></a><span class="lineno">  286</span>       <span class="keywordflow">return</span> A->clone(C);</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>     <span class="keywordflow">case</span> attr::FastCall: {</div>
+<div class="line"><a name="l00289"></a><span class="lineno">  289</span>       <span class="keyword">const</span> FastCallAttr *A = cast<FastCallAttr>(At);</div>
+<div class="line"><a name="l00290"></a><span class="lineno">  290</span>       <span class="keywordflow">return</span> A->clone(C);</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">case</span> attr::Final: {</div>
+<div class="line"><a name="l00293"></a><span class="lineno">  293</span>       <span class="keyword">const</span> FinalAttr *A = cast<FinalAttr>(At);</div>
+<div class="line"><a name="l00294"></a><span class="lineno">  294</span>       <span class="keywordflow">return</span> A->clone(C);</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>     <span class="keywordflow">case</span> attr::ForceInline: {</div>
+<div class="line"><a name="l00297"></a><span class="lineno">  297</span>       <span class="keyword">const</span> ForceInlineAttr *A = cast<ForceInlineAttr>(At);</div>
+<div class="line"><a name="l00298"></a><span class="lineno">  298</span>       <span class="keywordflow">return</span> A->clone(C);</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">case</span> attr::Format: {</div>
+<div class="line"><a name="l00301"></a><span class="lineno">  301</span>       <span class="keyword">const</span> FormatAttr *A = cast<FormatAttr>(At);</div>
+<div class="line"><a name="l00302"></a><span class="lineno">  302</span>       <span class="keywordflow">return</span> A->clone(C);</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>     <span class="keywordflow">case</span> attr::FormatArg: {</div>
+<div class="line"><a name="l00305"></a><span class="lineno">  305</span>       <span class="keyword">const</span> FormatArgAttr *A = cast<FormatArgAttr>(At);</div>
+<div class="line"><a name="l00306"></a><span class="lineno">  306</span>       <span class="keywordflow">return</span> A->clone(C);</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>     <span class="keywordflow">case</span> attr::GNUInline: {</div>
+<div class="line"><a name="l00309"></a><span class="lineno">  309</span>       <span class="keyword">const</span> GNUInlineAttr *A = cast<GNUInlineAttr>(At);</div>
+<div class="line"><a name="l00310"></a><span class="lineno">  310</span>       <span class="keywordflow">return</span> A->clone(C);</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>     <span class="keywordflow">case</span> attr::GuardedBy: {</div>
+<div class="line"><a name="l00313"></a><span class="lineno">  313</span>       <span class="keyword">const</span> GuardedByAttr *A = cast<GuardedByAttr>(At);</div>
+<div class="line"><a name="l00314"></a><span class="lineno">  314</span>       Expr * tempInstArg;</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>         EnterExpressionEvaluationContext Unevaluated(S, <a class="code" href="classclang_1_1Sema.html#ac105cb9d8d4ad3e532351c498f6082b5ae4e2b142c5314222a59195d1612a1904" title="The current expression and its subexpressions occur within an unevaluated operand (C++11 [expr]p7)...">Sema::Unevaluated</a>);</div>
+<div class="line"><a name="l00317"></a><span class="lineno">  317</span>         <a class="code" href="namespaceclang.html#ad607ac07ed5d295b26a24fb5ae02bad5">ExprResult</a> Result = S.SubstExpr(A->getArg(), TemplateArgs);</div>
+<div class="line"><a name="l00318"></a><span class="lineno">  318</span>         tempInstArg = Result.<a class="code" href="classclang_1_1ActionResult.html#a144bc2f6c8a8090ba894cda5a5613361">takeAs</a><Expr>();</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>       <span class="keywordflow">return</span> <span class="keyword">new</span> (C) GuardedByAttr(A->getLocation(), C, tempInstArg);</div>
+<div class="line"><a name="l00321"></a><span class="lineno">  321</span>     }</div>
+<div class="line"><a name="l00322"></a><span class="lineno">  322</span>     <span class="keywordflow">case</span> attr::GuardedVar: {</div>
+<div class="line"><a name="l00323"></a><span class="lineno">  323</span>       <span class="keyword">const</span> GuardedVarAttr *A = cast<GuardedVarAttr>(At);</div>
+<div class="line"><a name="l00324"></a><span class="lineno">  324</span>       <span class="keywordflow">return</span> A->clone(C);</div>
+<div class="line"><a name="l00325"></a><span class="lineno">  325</span>     }</div>
+<div class="line"><a name="l00326"></a><span class="lineno">  326</span>     <span class="keywordflow">case</span> attr::Hot: {</div>
+<div class="line"><a name="l00327"></a><span class="lineno">  327</span>       <span class="keyword">const</span> HotAttr *A = cast<HotAttr>(At);</div>
+<div class="line"><a name="l00328"></a><span class="lineno">  328</span>       <span class="keywordflow">return</span> A->clone(C);</div>
+<div class="line"><a name="l00329"></a><span class="lineno">  329</span>     }</div>
+<div class="line"><a name="l00330"></a><span class="lineno">  330</span>     <span class="keywordflow">case</span> attr::IBAction: {</div>
+<div class="line"><a name="l00331"></a><span class="lineno">  331</span>       <span class="keyword">const</span> IBActionAttr *A = cast<IBActionAttr>(At);</div>
+<div class="line"><a name="l00332"></a><span class="lineno">  332</span>       <span class="keywordflow">return</span> A->clone(C);</div>
+<div class="line"><a name="l00333"></a><span class="lineno">  333</span>     }</div>
+<div class="line"><a name="l00334"></a><span class="lineno">  334</span>     <span class="keywordflow">case</span> attr::IBOutlet: {</div>
+<div class="line"><a name="l00335"></a><span class="lineno">  335</span>       <span class="keyword">const</span> IBOutletAttr *A = cast<IBOutletAttr>(At);</div>
+<div class="line"><a name="l00336"></a><span class="lineno">  336</span>       <span class="keywordflow">return</span> A->clone(C);</div>
+<div class="line"><a name="l00337"></a><span class="lineno">  337</span>     }</div>
+<div class="line"><a name="l00338"></a><span class="lineno">  338</span>     <span class="keywordflow">case</span> attr::IBOutletCollection: {</div>
+<div class="line"><a name="l00339"></a><span class="lineno">  339</span>       <span class="keyword">const</span> IBOutletCollectionAttr *A = cast<IBOutletCollectionAttr>(At);</div>
+<div class="line"><a name="l00340"></a><span class="lineno">  340</span>       <span class="keywordflow">return</span> A->clone(C);</div>
+<div class="line"><a name="l00341"></a><span class="lineno">  341</span>     }</div>
+<div class="line"><a name="l00342"></a><span class="lineno">  342</span>     <span class="keywordflow">case</span> attr::InitPriority: {</div>
+<div class="line"><a name="l00343"></a><span class="lineno">  343</span>       <span class="keyword">const</span> InitPriorityAttr *A = cast<InitPriorityAttr>(At);</div>
+<div class="line"><a name="l00344"></a><span class="lineno">  344</span>       <span class="keywordflow">return</span> A->clone(C);</div>
+<div class="line"><a name="l00345"></a><span class="lineno">  345</span>     }</div>
+<div class="line"><a name="l00346"></a><span class="lineno">  346</span>     <span class="keywordflow">case</span> attr::IntelOclBicc: {</div>
+<div class="line"><a name="l00347"></a><span class="lineno">  347</span>       <span class="keyword">const</span> IntelOclBiccAttr *A = cast<IntelOclBiccAttr>(At);</div>
+<div class="line"><a name="l00348"></a><span class="lineno">  348</span>       <span class="keywordflow">return</span> A->clone(C);</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="keywordflow">case</span> attr::LockReturned: {</div>
+<div class="line"><a name="l00351"></a><span class="lineno">  351</span>       <span class="keyword">const</span> LockReturnedAttr *A = cast<LockReturnedAttr>(At);</div>
+<div class="line"><a name="l00352"></a><span class="lineno">  352</span>       Expr * tempInstArg;</div>
+<div class="line"><a name="l00353"></a><span class="lineno">  353</span>       {</div>
+<div class="line"><a name="l00354"></a><span class="lineno">  354</span>         EnterExpressionEvaluationContext Unevaluated(S, <a class="code" href="classclang_1_1Sema.html#ac105cb9d8d4ad3e532351c498f6082b5ae4e2b142c5314222a59195d1612a1904" title="The current expression and its subexpressions occur within an unevaluated operand (C++11 [expr]p7)...">Sema::Unevaluated</a>);</div>
+<div class="line"><a name="l00355"></a><span class="lineno">  355</span>         <a class="code" href="namespaceclang.html#ad607ac07ed5d295b26a24fb5ae02bad5">ExprResult</a> Result = S.SubstExpr(A->getArg(), TemplateArgs);</div>
+<div class="line"><a name="l00356"></a><span class="lineno">  356</span>         tempInstArg = Result.<a class="code" href="classclang_1_1ActionResult.html#a144bc2f6c8a8090ba894cda5a5613361">takeAs</a><Expr>();</div>
+<div class="line"><a name="l00357"></a><span class="lineno">  357</span>       }</div>
+<div class="line"><a name="l00358"></a><span class="lineno">  358</span>       <span class="keywordflow">return</span> <span class="keyword">new</span> (C) LockReturnedAttr(A->getLocation(), C, tempInstArg);</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>     <span class="keywordflow">case</span> attr::Lockable: {</div>
+<div class="line"><a name="l00361"></a><span class="lineno">  361</span>       <span class="keyword">const</span> LockableAttr *A = cast<LockableAttr>(At);</div>
+<div class="line"><a name="l00362"></a><span class="lineno">  362</span>       <span class="keywordflow">return</span> A->clone(C);</div>
+<div class="line"><a name="l00363"></a><span class="lineno">  363</span>     }</div>
+<div class="line"><a name="l00364"></a><span class="lineno">  364</span>     <span class="keywordflow">case</span> attr::LocksExcluded: {</div>
+<div class="line"><a name="l00365"></a><span class="lineno">  365</span>       <span class="keyword">const</span> LocksExcludedAttr *A = cast<LocksExcludedAttr>(At);</div>
+<div class="line"><a name="l00366"></a><span class="lineno">  366</span>       Expr * *tempInstArgs = <span class="keyword">new</span> (C, 16) Expr *[A->args_size()];</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>         EnterExpressionEvaluationContext Unevaluated(S, <a class="code" href="classclang_1_1Sema.html#ac105cb9d8d4ad3e532351c498f6082b5ae4e2b142c5314222a59195d1612a1904" title="The current expression and its subexpressions occur within an unevaluated operand (C++11 [expr]p7)...">Sema::Unevaluated</a>);</div>
+<div class="line"><a name="l00369"></a><span class="lineno">  369</span>         Expr * *TI = tempInstArgs;</div>
+<div class="line"><a name="l00370"></a><span class="lineno">  370</span>         Expr * *I = A->args_begin();</div>
+<div class="line"><a name="l00371"></a><span class="lineno">  371</span>         Expr * *E = A->args_end();</div>
+<div class="line"><a name="l00372"></a><span class="lineno">  372</span>         <span class="keywordflow">for</span> (; I != E; ++I, ++TI) {</div>
+<div class="line"><a name="l00373"></a><span class="lineno">  373</span>           <a class="code" href="namespaceclang.html#ad607ac07ed5d295b26a24fb5ae02bad5">ExprResult</a> Result = S.SubstExpr(*I, TemplateArgs);</div>
+<div class="line"><a name="l00374"></a><span class="lineno">  374</span>           *TI = Result.<a class="code" href="classclang_1_1ActionResult.html#a144bc2f6c8a8090ba894cda5a5613361">takeAs</a><Expr>();</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>       <span class="keywordflow">return</span> <span class="keyword">new</span> (C) LocksExcludedAttr(A->getLocation(), C, tempInstArgs, A->args_size());</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> attr::MSABI: {</div>
+<div class="line"><a name="l00380"></a><span class="lineno">  380</span>       <span class="keyword">const</span> MSABIAttr *A = cast<MSABIAttr>(At);</div>
+<div class="line"><a name="l00381"></a><span class="lineno">  381</span>       <span class="keywordflow">return</span> A->clone(C);</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> attr::MSP430Interrupt: {</div>
+<div class="line"><a name="l00384"></a><span class="lineno">  384</span>       <span class="keyword">const</span> MSP430InterruptAttr *A = cast<MSP430InterruptAttr>(At);</div>
+<div class="line"><a name="l00385"></a><span class="lineno">  385</span>       <span class="keywordflow">return</span> A->clone(C);</div>
+<div class="line"><a name="l00386"></a><span class="lineno">  386</span>     }</div>
+<div class="line"><a name="l00387"></a><span class="lineno">  387</span>     <span class="keywordflow">case</span> attr::Malloc: {</div>
+<div class="line"><a name="l00388"></a><span class="lineno">  388</span>       <span class="keyword">const</span> MallocAttr *A = cast<MallocAttr>(At);</div>
+<div class="line"><a name="l00389"></a><span class="lineno">  389</span>       <span class="keywordflow">return</span> A->clone(C);</div>
+<div class="line"><a name="l00390"></a><span class="lineno">  390</span>     }</div>
+<div class="line"><a name="l00391"></a><span class="lineno">  391</span>     <span class="keywordflow">case</span> attr::MaxFieldAlignment: {</div>
+<div class="line"><a name="l00392"></a><span class="lineno">  392</span>       <span class="keyword">const</span> MaxFieldAlignmentAttr *A = cast<MaxFieldAlignmentAttr>(At);</div>
+<div class="line"><a name="l00393"></a><span class="lineno">  393</span>       <span class="keywordflow">return</span> A->clone(C);</div>
+<div class="line"><a name="l00394"></a><span class="lineno">  394</span>     }</div>
+<div class="line"><a name="l00395"></a><span class="lineno">  395</span>     <span class="keywordflow">case</span> attr::MayAlias: {</div>
+<div class="line"><a name="l00396"></a><span class="lineno">  396</span>       <span class="keyword">const</span> MayAliasAttr *A = cast<MayAliasAttr>(At);</div>
+<div class="line"><a name="l00397"></a><span class="lineno">  397</span>       <span class="keywordflow">return</span> A->clone(C);</div>
+<div class="line"><a name="l00398"></a><span class="lineno">  398</span>     }</div>
+<div class="line"><a name="l00399"></a><span class="lineno">  399</span>     <span class="keywordflow">case</span> attr::MinSize: {</div>
+<div class="line"><a name="l00400"></a><span class="lineno">  400</span>       <span class="keyword">const</span> MinSizeAttr *A = cast<MinSizeAttr>(At);</div>
+<div class="line"><a name="l00401"></a><span class="lineno">  401</span>       <span class="keywordflow">return</span> A->clone(C);</div>
+<div class="line"><a name="l00402"></a><span class="lineno">  402</span>     }</div>
+<div class="line"><a name="l00403"></a><span class="lineno">  403</span>     <span class="keywordflow">case</span> attr::Mips16: {</div>
+<div class="line"><a name="l00404"></a><span class="lineno">  404</span>       <span class="keyword">const</span> Mips16Attr *A = cast<Mips16Attr>(At);</div>
+<div class="line"><a name="l00405"></a><span class="lineno">  405</span>       <span class="keywordflow">return</span> A->clone(C);</div>
+<div class="line"><a name="l00406"></a><span class="lineno">  406</span>     }</div>
+<div class="line"><a name="l00407"></a><span class="lineno">  407</span>     <span class="keywordflow">case</span> attr::Mode: {</div>
+<div class="line"><a name="l00408"></a><span class="lineno">  408</span>       <span class="keyword">const</span> ModeAttr *A = cast<ModeAttr>(At);</div>
+<div class="line"><a name="l00409"></a><span class="lineno">  409</span>       <span class="keywordflow">return</span> A->clone(C);</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="keywordflow">case</span> attr::MsStruct: {</div>
+<div class="line"><a name="l00412"></a><span class="lineno">  412</span>       <span class="keyword">const</span> MsStructAttr *A = cast<MsStructAttr>(At);</div>
+<div class="line"><a name="l00413"></a><span class="lineno">  413</span>       <span class="keywordflow">return</span> A->clone(C);</div>
+<div class="line"><a name="l00414"></a><span class="lineno">  414</span>     }</div>
+<div class="line"><a name="l00415"></a><span class="lineno">  415</span>     <span class="keywordflow">case</span> attr::MultipleInheritance: {</div>
+<div class="line"><a name="l00416"></a><span class="lineno">  416</span>       <span class="keyword">const</span> MultipleInheritanceAttr *A = cast<MultipleInheritanceAttr>(At);</div>
+<div class="line"><a name="l00417"></a><span class="lineno">  417</span>       <span class="keywordflow">return</span> A->clone(C);</div>
+<div class="line"><a name="l00418"></a><span class="lineno">  418</span>     }</div>
+<div class="line"><a name="l00419"></a><span class="lineno">  419</span>     <span class="keywordflow">case</span> attr::NSBridged: {</div>
+<div class="line"><a name="l00420"></a><span class="lineno">  420</span>       <span class="keyword">const</span> NSBridgedAttr *A = cast<NSBridgedAttr>(At);</div>
+<div class="line"><a name="l00421"></a><span class="lineno">  421</span>       <span class="keywordflow">return</span> A->clone(C);</div>
+<div class="line"><a name="l00422"></a><span class="lineno">  422</span>     }</div>
+<div class="line"><a name="l00423"></a><span class="lineno">  423</span>     <span class="keywordflow">case</span> attr::NSConsumed: {</div>
+<div class="line"><a name="l00424"></a><span class="lineno">  424</span>       <span class="keyword">const</span> NSConsumedAttr *A = cast<NSConsumedAttr>(At);</div>
+<div class="line"><a name="l00425"></a><span class="lineno">  425</span>       <span class="keywordflow">return</span> A->clone(C);</div>
+<div class="line"><a name="l00426"></a><span class="lineno">  426</span>     }</div>
+<div class="line"><a name="l00427"></a><span class="lineno">  427</span>     <span class="keywordflow">case</span> attr::NSConsumesSelf: {</div>
+<div class="line"><a name="l00428"></a><span class="lineno">  428</span>       <span class="keyword">const</span> NSConsumesSelfAttr *A = cast<NSConsumesSelfAttr>(At);</div>
+<div class="line"><a name="l00429"></a><span class="lineno">  429</span>       <span class="keywordflow">return</span> A->clone(C);</div>
+<div class="line"><a name="l00430"></a><span class="lineno">  430</span>     }</div>
+<div class="line"><a name="l00431"></a><span class="lineno">  431</span>     <span class="keywordflow">case</span> attr::NSReturnsAutoreleased: {</div>
+<div class="line"><a name="l00432"></a><span class="lineno">  432</span>       <span class="keyword">const</span> NSReturnsAutoreleasedAttr *A = cast<NSReturnsAutoreleasedAttr>(At);</div>
+<div class="line"><a name="l00433"></a><span class="lineno">  433</span>       <span class="keywordflow">return</span> A->clone(C);</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>     <span class="keywordflow">case</span> attr::NSReturnsNotRetained: {</div>
+<div class="line"><a name="l00436"></a><span class="lineno">  436</span>       <span class="keyword">const</span> NSReturnsNotRetainedAttr *A = cast<NSReturnsNotRetainedAttr>(At);</div>
+<div class="line"><a name="l00437"></a><span class="lineno">  437</span>       <span class="keywordflow">return</span> A->clone(C);</div>
+<div class="line"><a name="l00438"></a><span class="lineno">  438</span>     }</div>
+<div class="line"><a name="l00439"></a><span class="lineno">  439</span>     <span class="keywordflow">case</span> attr::NSReturnsRetained: {</div>
+<div class="line"><a name="l00440"></a><span class="lineno">  440</span>       <span class="keyword">const</span> NSReturnsRetainedAttr *A = cast<NSReturnsRetainedAttr>(At);</div>
+<div class="line"><a name="l00441"></a><span class="lineno">  441</span>       <span class="keywordflow">return</span> A->clone(C);</div>
+<div class="line"><a name="l00442"></a><span class="lineno">  442</span>     }</div>
+<div class="line"><a name="l00443"></a><span class="lineno">  443</span>     <span class="keywordflow">case</span> attr::Naked: {</div>
+<div class="line"><a name="l00444"></a><span class="lineno">  444</span>       <span class="keyword">const</span> NakedAttr *A = cast<NakedAttr>(At);</div>
+<div class="line"><a name="l00445"></a><span class="lineno">  445</span>       <span class="keywordflow">return</span> A->clone(C);</div>
+<div class="line"><a name="l00446"></a><span class="lineno">  446</span>     }</div>
+<div class="line"><a name="l00447"></a><span class="lineno">  447</span>     <span class="keywordflow">case</span> attr::NoCommon: {</div>
+<div class="line"><a name="l00448"></a><span class="lineno">  448</span>       <span class="keyword">const</span> NoCommonAttr *A = cast<NoCommonAttr>(At);</div>
+<div class="line"><a name="l00449"></a><span class="lineno">  449</span>       <span class="keywordflow">return</span> A->clone(C);</div>
+<div class="line"><a name="l00450"></a><span class="lineno">  450</span>     }</div>
+<div class="line"><a name="l00451"></a><span class="lineno">  451</span>     <span class="keywordflow">case</span> attr::NoDebug: {</div>
+<div class="line"><a name="l00452"></a><span class="lineno">  452</span>       <span class="keyword">const</span> NoDebugAttr *A = cast<NoDebugAttr>(At);</div>
+<div class="line"><a name="l00453"></a><span class="lineno">  453</span>       <span class="keywordflow">return</span> A->clone(C);</div>
+<div class="line"><a name="l00454"></a><span class="lineno">  454</span>     }</div>
+<div class="line"><a name="l00455"></a><span class="lineno">  455</span>     <span class="keywordflow">case</span> attr::NoInline: {</div>
+<div class="line"><a name="l00456"></a><span class="lineno">  456</span>       <span class="keyword">const</span> NoInlineAttr *A = cast<NoInlineAttr>(At);</div>
+<div class="line"><a name="l00457"></a><span class="lineno">  457</span>       <span class="keywordflow">return</span> A->clone(C);</div>
+<div class="line"><a name="l00458"></a><span class="lineno">  458</span>     }</div>
+<div class="line"><a name="l00459"></a><span class="lineno">  459</span>     <span class="keywordflow">case</span> attr::NoInstrumentFunction: {</div>
+<div class="line"><a name="l00460"></a><span class="lineno">  460</span>       <span class="keyword">const</span> NoInstrumentFunctionAttr *A = cast<NoInstrumentFunctionAttr>(At);</div>
+<div class="line"><a name="l00461"></a><span class="lineno">  461</span>       <span class="keywordflow">return</span> A->clone(C);</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="keywordflow">case</span> attr::NoMips16: {</div>
+<div class="line"><a name="l00464"></a><span class="lineno">  464</span>       <span class="keyword">const</span> NoMips16Attr *A = cast<NoMips16Attr>(At);</div>
+<div class="line"><a name="l00465"></a><span class="lineno">  465</span>       <span class="keywordflow">return</span> A->clone(C);</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>     <span class="keywordflow">case</span> attr::NoReturn: {</div>
+<div class="line"><a name="l00468"></a><span class="lineno">  468</span>       <span class="keyword">const</span> NoReturnAttr *A = cast<NoReturnAttr>(At);</div>
+<div class="line"><a name="l00469"></a><span class="lineno">  469</span>       <span class="keywordflow">return</span> A->clone(C);</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>     <span class="keywordflow">case</span> attr::NoSanitizeAddress: {</div>
+<div class="line"><a name="l00472"></a><span class="lineno">  472</span>       <span class="keyword">const</span> NoSanitizeAddressAttr *A = cast<NoSanitizeAddressAttr>(At);</div>
+<div class="line"><a name="l00473"></a><span class="lineno">  473</span>       <span class="keywordflow">return</span> A->clone(C);</div>
+<div class="line"><a name="l00474"></a><span class="lineno">  474</span>     }</div>
+<div class="line"><a name="l00475"></a><span class="lineno">  475</span>     <span class="keywordflow">case</span> attr::NoSanitizeMemory: {</div>
+<div class="line"><a name="l00476"></a><span class="lineno">  476</span>       <span class="keyword">const</span> NoSanitizeMemoryAttr *A = cast<NoSanitizeMemoryAttr>(At);</div>
+<div class="line"><a name="l00477"></a><span class="lineno">  477</span>       <span class="keywordflow">return</span> A->clone(C);</div>
+<div class="line"><a name="l00478"></a><span class="lineno">  478</span>     }</div>
+<div class="line"><a name="l00479"></a><span class="lineno">  479</span>     <span class="keywordflow">case</span> attr::NoSanitizeThread: {</div>
+<div class="line"><a name="l00480"></a><span class="lineno">  480</span>       <span class="keyword">const</span> NoSanitizeThreadAttr *A = cast<NoSanitizeThreadAttr>(At);</div>
+<div class="line"><a name="l00481"></a><span class="lineno">  481</span>       <span class="keywordflow">return</span> A->clone(C);</div>
+<div class="line"><a name="l00482"></a><span class="lineno">  482</span>     }</div>
+<div class="line"><a name="l00483"></a><span class="lineno">  483</span>     <span class="keywordflow">case</span> attr::NoThreadSafetyAnalysis: {</div>
+<div class="line"><a name="l00484"></a><span class="lineno">  484</span>       <span class="keyword">const</span> NoThreadSafetyAnalysisAttr *A = cast<NoThreadSafetyAnalysisAttr>(At);</div>
+<div class="line"><a name="l00485"></a><span class="lineno">  485</span>       <span class="keywordflow">return</span> A->clone(C);</div>
+<div class="line"><a name="l00486"></a><span class="lineno">  486</span>     }</div>
+<div class="line"><a name="l00487"></a><span class="lineno">  487</span>     <span class="keywordflow">case</span> attr::NoThrow: {</div>
+<div class="line"><a name="l00488"></a><span class="lineno">  488</span>       <span class="keyword">const</span> NoThrowAttr *A = cast<NoThrowAttr>(At);</div>
+<div class="line"><a name="l00489"></a><span class="lineno">  489</span>       <span class="keywordflow">return</span> A->clone(C);</div>
+<div class="line"><a name="l00490"></a><span class="lineno">  490</span>     }</div>
+<div class="line"><a name="l00491"></a><span class="lineno">  491</span>     <span class="keywordflow">case</span> attr::NonNull: {</div>
+<div class="line"><a name="l00492"></a><span class="lineno">  492</span>       <span class="keyword">const</span> NonNullAttr *A = cast<NonNullAttr>(At);</div>
+<div class="line"><a name="l00493"></a><span class="lineno">  493</span>       <span class="keywordflow">return</span> A->clone(C);</div>
+<div class="line"><a name="l00494"></a><span class="lineno">  494</span>     }</div>
+<div class="line"><a name="l00495"></a><span class="lineno">  495</span>     <span class="keywordflow">case</span> attr::ObjCBridge: {</div>
+<div class="line"><a name="l00496"></a><span class="lineno">  496</span>       <span class="keyword">const</span> ObjCBridgeAttr *A = cast<ObjCBridgeAttr>(At);</div>
+<div class="line"><a name="l00497"></a><span class="lineno">  497</span>       <span class="keywordflow">return</span> A->clone(C);</div>
+<div class="line"><a name="l00498"></a><span class="lineno">  498</span>     }</div>
+<div class="line"><a name="l00499"></a><span class="lineno">  499</span>     <span class="keywordflow">case</span> attr::ObjCException: {</div>
+<div class="line"><a name="l00500"></a><span class="lineno">  500</span>       <span class="keyword">const</span> ObjCExceptionAttr *A = cast<ObjCExceptionAttr>(At);</div>
+<div class="line"><a name="l00501"></a><span class="lineno">  501</span>       <span class="keywordflow">return</span> A->clone(C);</div>
+<div class="line"><a name="l00502"></a><span class="lineno">  502</span>     }</div>
+<div class="line"><a name="l00503"></a><span class="lineno">  503</span>     <span class="keywordflow">case</span> <a class="code" href="namespaceclang.html#a5dc786a6640e4d510cd8b68a5a87a140" title="A family of Objective-C methods.">attr::ObjCMethodFamily</a>: {</div>
+<div class="line"><a name="l00504"></a><span class="lineno">  504</span>       <span class="keyword">const</span> ObjCMethodFamilyAttr *A = cast<ObjCMethodFamilyAttr>(At);</div>
+<div class="line"><a name="l00505"></a><span class="lineno">  505</span>       <span class="keywordflow">return</span> A->clone(C);</div>
+<div class="line"><a name="l00506"></a><span class="lineno">  506</span>     }</div>
+<div class="line"><a name="l00507"></a><span class="lineno">  507</span>     <span class="keywordflow">case</span> attr::ObjCNSObject: {</div>
+<div class="line"><a name="l00508"></a><span class="lineno">  508</span>       <span class="keyword">const</span> ObjCNSObjectAttr *A = cast<ObjCNSObjectAttr>(At);</div>
+<div class="line"><a name="l00509"></a><span class="lineno">  509</span>       <span class="keywordflow">return</span> A->clone(C);</div>
+<div class="line"><a name="l00510"></a><span class="lineno">  510</span>     }</div>
+<div class="line"><a name="l00511"></a><span class="lineno">  511</span>     <span class="keywordflow">case</span> attr::ObjCPreciseLifetime: {</div>
+<div class="line"><a name="l00512"></a><span class="lineno">  512</span>       <span class="keyword">const</span> ObjCPreciseLifetimeAttr *A = cast<ObjCPreciseLifetimeAttr>(At);</div>
+<div class="line"><a name="l00513"></a><span class="lineno">  513</span>       <span class="keywordflow">return</span> A->clone(C);</div>
+<div class="line"><a name="l00514"></a><span class="lineno">  514</span>     }</div>
+<div class="line"><a name="l00515"></a><span class="lineno">  515</span>     <span class="keywordflow">case</span> attr::ObjCRequiresPropertyDefs: {</div>
+<div class="line"><a name="l00516"></a><span class="lineno">  516</span>       <span class="keyword">const</span> ObjCRequiresPropertyDefsAttr *A = cast<ObjCRequiresPropertyDefsAttr>(At);</div>
+<div class="line"><a name="l00517"></a><span class="lineno">  517</span>       <span class="keywordflow">return</span> A->clone(C);</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="keywordflow">case</span> attr::ObjCRequiresSuper: {</div>
+<div class="line"><a name="l00520"></a><span class="lineno">  520</span>       <span class="keyword">const</span> ObjCRequiresSuperAttr *A = cast<ObjCRequiresSuperAttr>(At);</div>
+<div class="line"><a name="l00521"></a><span class="lineno">  521</span>       <span class="keywordflow">return</span> A->clone(C);</div>
+<div class="line"><a name="l00522"></a><span class="lineno">  522</span>     }</div>
+<div class="line"><a name="l00523"></a><span class="lineno">  523</span>     <span class="keywordflow">case</span> attr::ObjCReturnsInnerPointer: {</div>
+<div class="line"><a name="l00524"></a><span class="lineno">  524</span>       <span class="keyword">const</span> ObjCReturnsInnerPointerAttr *A = cast<ObjCReturnsInnerPointerAttr>(At);</div>
+<div class="line"><a name="l00525"></a><span class="lineno">  525</span>       <span class="keywordflow">return</span> A->clone(C);</div>
+<div class="line"><a name="l00526"></a><span class="lineno">  526</span>     }</div>
+<div class="line"><a name="l00527"></a><span class="lineno">  527</span>     <span class="keywordflow">case</span> attr::ObjCRootClass: {</div>
+<div class="line"><a name="l00528"></a><span class="lineno">  528</span>       <span class="keyword">const</span> ObjCRootClassAttr *A = cast<ObjCRootClassAttr>(At);</div>
+<div class="line"><a name="l00529"></a><span class="lineno">  529</span>       <span class="keywordflow">return</span> A->clone(C);</div>
+<div class="line"><a name="l00530"></a><span class="lineno">  530</span>     }</div>
+<div class="line"><a name="l00531"></a><span class="lineno">  531</span>     <span class="keywordflow">case</span> <a class="code" href="namespaceclang.html#a5733797978fc47a45addaa3bcbbe6051" title="Names for the OpenCL image access qualifiers (OpenCL 1.1 6.6).">attr::OpenCLImageAccess</a>: {</div>
+<div class="line"><a name="l00532"></a><span class="lineno">  532</span>       <span class="keyword">const</span> OpenCLImageAccessAttr *A = cast<OpenCLImageAccessAttr>(At);</div>
+<div class="line"><a name="l00533"></a><span class="lineno">  533</span>       <span class="keywordflow">return</span> A->clone(C);</div>
+<div class="line"><a name="l00534"></a><span class="lineno">  534</span>     }</div>
+<div class="line"><a name="l00535"></a><span class="lineno">  535</span>     <span class="keywordflow">case</span> attr::OpenCLKernel: {</div>
+<div class="line"><a name="l00536"></a><span class="lineno">  536</span>       <span class="keyword">const</span> OpenCLKernelAttr *A = cast<OpenCLKernelAttr>(At);</div>
+<div class="line"><a name="l00537"></a><span class="lineno">  537</span>       <span class="keywordflow">return</span> A->clone(C);</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>     <span class="keywordflow">case</span> attr::Overloadable: {</div>
+<div class="line"><a name="l00540"></a><span class="lineno">  540</span>       <span class="keyword">const</span> OverloadableAttr *A = cast<OverloadableAttr>(At);</div>
+<div class="line"><a name="l00541"></a><span class="lineno">  541</span>       <span class="keywordflow">return</span> A->clone(C);</div>
+<div class="line"><a name="l00542"></a><span class="lineno">  542</span>     }</div>
+<div class="line"><a name="l00543"></a><span class="lineno">  543</span>     <span class="keywordflow">case</span> attr::Override: {</div>
+<div class="line"><a name="l00544"></a><span class="lineno">  544</span>       <span class="keyword">const</span> OverrideAttr *A = cast<OverrideAttr>(At);</div>
+<div class="line"><a name="l00545"></a><span class="lineno">  545</span>       <span class="keywordflow">return</span> A->clone(C);</div>
+<div class="line"><a name="l00546"></a><span class="lineno">  546</span>     }</div>
+<div class="line"><a name="l00547"></a><span class="lineno">  547</span>     <span class="keywordflow">case</span> attr::Ownership: {</div>
+<div class="line"><a name="l00548"></a><span class="lineno">  548</span>       <span class="keyword">const</span> OwnershipAttr *A = cast<OwnershipAttr>(At);</div>
+<div class="line"><a name="l00549"></a><span class="lineno">  549</span>       <span class="keywordflow">return</span> A->clone(C);</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="keywordflow">case</span> attr::Packed: {</div>
+<div class="line"><a name="l00552"></a><span class="lineno">  552</span>       <span class="keyword">const</span> PackedAttr *A = cast<PackedAttr>(At);</div>
+<div class="line"><a name="l00553"></a><span class="lineno">  553</span>       <span class="keywordflow">return</span> A->clone(C);</div>
+<div class="line"><a name="l00554"></a><span class="lineno">  554</span>     }</div>
+<div class="line"><a name="l00555"></a><span class="lineno">  555</span>     <span class="keywordflow">case</span> attr::ParamTypestate: {</div>
+<div class="line"><a name="l00556"></a><span class="lineno">  556</span>       <span class="keyword">const</span> ParamTypestateAttr *A = cast<ParamTypestateAttr>(At);</div>
+<div class="line"><a name="l00557"></a><span class="lineno">  557</span>       <span class="keywordflow">return</span> A->clone(C);</div>
+<div class="line"><a name="l00558"></a><span class="lineno">  558</span>     }</div>
+<div class="line"><a name="l00559"></a><span class="lineno">  559</span>     <span class="keywordflow">case</span> attr::Pascal: {</div>
+<div class="line"><a name="l00560"></a><span class="lineno">  560</span>       <span class="keyword">const</span> PascalAttr *A = cast<PascalAttr>(At);</div>
+<div class="line"><a name="l00561"></a><span class="lineno">  561</span>       <span class="keywordflow">return</span> A->clone(C);</div>
+<div class="line"><a name="l00562"></a><span class="lineno">  562</span>     }</div>
+<div class="line"><a name="l00563"></a><span class="lineno">  563</span>     <span class="keywordflow">case</span> attr::Pcs: {</div>
+<div class="line"><a name="l00564"></a><span class="lineno">  564</span>       <span class="keyword">const</span> PcsAttr *A = cast<PcsAttr>(At);</div>
+<div class="line"><a name="l00565"></a><span class="lineno">  565</span>       <span class="keywordflow">return</span> A->clone(C);</div>
+<div class="line"><a name="l00566"></a><span class="lineno">  566</span>     }</div>
+<div class="line"><a name="l00567"></a><span class="lineno">  567</span>     <span class="keywordflow">case</span> attr::PnaclCall: {</div>
+<div class="line"><a name="l00568"></a><span class="lineno">  568</span>       <span class="keyword">const</span> PnaclCallAttr *A = cast<PnaclCallAttr>(At);</div>
+<div class="line"><a name="l00569"></a><span class="lineno">  569</span>       <span class="keywordflow">return</span> A->clone(C);</div>
+<div class="line"><a name="l00570"></a><span class="lineno">  570</span>     }</div>
+<div class="line"><a name="l00571"></a><span class="lineno">  571</span>     <span class="keywordflow">case</span> attr::PtGuardedBy: {</div>
+<div class="line"><a name="l00572"></a><span class="lineno">  572</span>       <span class="keyword">const</span> PtGuardedByAttr *A = cast<PtGuardedByAttr>(At);</div>
+<div class="line"><a name="l00573"></a><span class="lineno">  573</span>       Expr * tempInstArg;</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>         EnterExpressionEvaluationContext Unevaluated(S, <a class="code" href="classclang_1_1Sema.html#ac105cb9d8d4ad3e532351c498f6082b5ae4e2b142c5314222a59195d1612a1904" title="The current expression and its subexpressions occur within an unevaluated operand (C++11 [expr]p7)...">Sema::Unevaluated</a>);</div>
+<div class="line"><a name="l00576"></a><span class="lineno">  576</span>         <a class="code" href="namespaceclang.html#ad607ac07ed5d295b26a24fb5ae02bad5">ExprResult</a> Result = S.SubstExpr(A->getArg(), TemplateArgs);</div>
+<div class="line"><a name="l00577"></a><span class="lineno">  577</span>         tempInstArg = Result.<a class="code" href="classclang_1_1ActionResult.html#a144bc2f6c8a8090ba894cda5a5613361">takeAs</a><Expr>();</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="keywordflow">return</span> <span class="keyword">new</span> (C) PtGuardedByAttr(A->getLocation(), C, tempInstArg);</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>     <span class="keywordflow">case</span> attr::PtGuardedVar: {</div>
+<div class="line"><a name="l00582"></a><span class="lineno">  582</span>       <span class="keyword">const</span> PtGuardedVarAttr *A = cast<PtGuardedVarAttr>(At);</div>
+<div class="line"><a name="l00583"></a><span class="lineno">  583</span>       <span class="keywordflow">return</span> A->clone(C);</div>
+<div class="line"><a name="l00584"></a><span class="lineno">  584</span>     }</div>
+<div class="line"><a name="l00585"></a><span class="lineno">  585</span>     <span class="keywordflow">case</span> attr::Pure: {</div>
+<div class="line"><a name="l00586"></a><span class="lineno">  586</span>       <span class="keyword">const</span> PureAttr *A = cast<PureAttr>(At);</div>
+<div class="line"><a name="l00587"></a><span class="lineno">  587</span>       <span class="keywordflow">return</span> A->clone(C);</div>
+<div class="line"><a name="l00588"></a><span class="lineno">  588</span>     }</div>
+<div class="line"><a name="l00589"></a><span class="lineno">  589</span>     <span class="keywordflow">case</span> attr::Regparm: {</div>
+<div class="line"><a name="l00590"></a><span class="lineno">  590</span>       <span class="keyword">const</span> RegparmAttr *A = cast<RegparmAttr>(At);</div>
+<div class="line"><a name="l00591"></a><span class="lineno">  591</span>       <span class="keywordflow">return</span> A->clone(C);</div>
+<div class="line"><a name="l00592"></a><span class="lineno">  592</span>     }</div>
+<div class="line"><a name="l00593"></a><span class="lineno">  593</span>     <span class="keywordflow">case</span> attr::ReqdWorkGroupSize: {</div>
+<div class="line"><a name="l00594"></a><span class="lineno">  594</span>       <span class="keyword">const</span> ReqdWorkGroupSizeAttr *A = cast<ReqdWorkGroupSizeAttr>(At);</div>
+<div class="line"><a name="l00595"></a><span class="lineno">  595</span>       <span class="keywordflow">return</span> A->clone(C);</div>
+<div class="line"><a name="l00596"></a><span class="lineno">  596</span>     }</div>
+<div class="line"><a name="l00597"></a><span class="lineno">  597</span>     <span class="keywordflow">case</span> attr::ReturnTypestate: {</div>
+<div class="line"><a name="l00598"></a><span class="lineno">  598</span>       <span class="keyword">const</span> ReturnTypestateAttr *A = cast<ReturnTypestateAttr>(At);</div>
+<div class="line"><a name="l00599"></a><span class="lineno">  599</span>       <span class="keywordflow">return</span> A->clone(C);</div>
+<div class="line"><a name="l00600"></a><span class="lineno">  600</span>     }</div>
+<div class="line"><a name="l00601"></a><span class="lineno">  601</span>     <span class="keywordflow">case</span> attr::ReturnsTwice: {</div>
+<div class="line"><a name="l00602"></a><span class="lineno">  602</span>       <span class="keyword">const</span> ReturnsTwiceAttr *A = cast<ReturnsTwiceAttr>(At);</div>
+<div class="line"><a name="l00603"></a><span class="lineno">  603</span>       <span class="keywordflow">return</span> A->clone(C);</div>
+<div class="line"><a name="l00604"></a><span class="lineno">  604</span>     }</div>
+<div class="line"><a name="l00605"></a><span class="lineno">  605</span>     <span class="keywordflow">case</span> attr::ScopedLockable: {</div>
+<div class="line"><a name="l00606"></a><span class="lineno">  606</span>       <span class="keyword">const</span> ScopedLockableAttr *A = cast<ScopedLockableAttr>(At);</div>
+<div class="line"><a name="l00607"></a><span class="lineno">  607</span>       <span class="keywordflow">return</span> A->clone(C);</div>
+<div class="line"><a name="l00608"></a><span class="lineno">  608</span>     }</div>
+<div class="line"><a name="l00609"></a><span class="lineno">  609</span>     <span class="keywordflow">case</span> attr::Section: {</div>
+<div class="line"><a name="l00610"></a><span class="lineno">  610</span>       <span class="keyword">const</span> SectionAttr *A = cast<SectionAttr>(At);</div>
+<div class="line"><a name="l00611"></a><span class="lineno">  611</span>       <span class="keywordflow">return</span> A->clone(C);</div>
+<div class="line"><a name="l00612"></a><span class="lineno">  612</span>     }</div>
+<div class="line"><a name="l00613"></a><span class="lineno">  613</span>     <span class="keywordflow">case</span> attr::SelectAny: {</div>
+<div class="line"><a name="l00614"></a><span class="lineno">  614</span>       <span class="keyword">const</span> SelectAnyAttr *A = cast<SelectAnyAttr>(At);</div>
+<div class="line"><a name="l00615"></a><span class="lineno">  615</span>       <span class="keywordflow">return</span> A->clone(C);</div>
+<div class="line"><a name="l00616"></a><span class="lineno">  616</span>     }</div>
+<div class="line"><a name="l00617"></a><span class="lineno">  617</span>     <span class="keywordflow">case</span> attr::Sentinel: {</div>
+<div class="line"><a name="l00618"></a><span class="lineno">  618</span>       <span class="keyword">const</span> SentinelAttr *A = cast<SentinelAttr>(At);</div>
+<div class="line"><a name="l00619"></a><span class="lineno">  619</span>       <span class="keywordflow">return</span> A->clone(C);</div>
+<div class="line"><a name="l00620"></a><span class="lineno">  620</span>     }</div>
+<div class="line"><a name="l00621"></a><span class="lineno">  621</span>     <span class="keywordflow">case</span> attr::SetTypestate: {</div>
+<div class="line"><a name="l00622"></a><span class="lineno">  622</span>       <span class="keyword">const</span> SetTypestateAttr *A = cast<SetTypestateAttr>(At);</div>
+<div class="line"><a name="l00623"></a><span class="lineno">  623</span>       <span class="keywordflow">return</span> A->clone(C);</div>
+<div class="line"><a name="l00624"></a><span class="lineno">  624</span>     }</div>
+<div class="line"><a name="l00625"></a><span class="lineno">  625</span>     <span class="keywordflow">case</span> attr::SharedLockFunction: {</div>
+<div class="line"><a name="l00626"></a><span class="lineno">  626</span>       <span class="keyword">const</span> SharedLockFunctionAttr *A = cast<SharedLockFunctionAttr>(At);</div>
+<div class="line"><a name="l00627"></a><span class="lineno">  627</span>       Expr * *tempInstArgs = <span class="keyword">new</span> (C, 16) Expr *[A->args_size()];</div>
+<div class="line"><a name="l00628"></a><span class="lineno">  628</span>       {</div>
+<div class="line"><a name="l00629"></a><span class="lineno">  629</span>         EnterExpressionEvaluationContext Unevaluated(S, <a class="code" href="classclang_1_1Sema.html#ac105cb9d8d4ad3e532351c498f6082b5ae4e2b142c5314222a59195d1612a1904" title="The current expression and its subexpressions occur within an unevaluated operand (C++11 [expr]p7)...">Sema::Unevaluated</a>);</div>
+<div class="line"><a name="l00630"></a><span class="lineno">  630</span>         Expr * *TI = tempInstArgs;</div>
+<div class="line"><a name="l00631"></a><span class="lineno">  631</span>         Expr * *I = A->args_begin();</div>
+<div class="line"><a name="l00632"></a><span class="lineno">  632</span>         Expr * *E = A->args_end();</div>
+<div class="line"><a name="l00633"></a><span class="lineno">  633</span>         <span class="keywordflow">for</span> (; I != E; ++I, ++TI) {</div>
+<div class="line"><a name="l00634"></a><span class="lineno">  634</span>           <a class="code" href="namespaceclang.html#ad607ac07ed5d295b26a24fb5ae02bad5">ExprResult</a> Result = S.SubstExpr(*I, TemplateArgs);</div>
+<div class="line"><a name="l00635"></a><span class="lineno">  635</span>           *TI = Result.<a class="code" href="classclang_1_1ActionResult.html#a144bc2f6c8a8090ba894cda5a5613361">takeAs</a><Expr>();</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">  638</span>       <span class="keywordflow">return</span> <span class="keyword">new</span> (C) SharedLockFunctionAttr(A->getLocation(), C, tempInstArgs, A->args_size());</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>     <span class="keywordflow">case</span> attr::SharedLocksRequired: {</div>
+<div class="line"><a name="l00641"></a><span class="lineno">  641</span>       <span class="keyword">const</span> SharedLocksRequiredAttr *A = cast<SharedLocksRequiredAttr>(At);</div>
+<div class="line"><a name="l00642"></a><span class="lineno">  642</span>       Expr * *tempInstArgs = <span class="keyword">new</span> (C, 16) Expr *[A->args_size()];</div>
+<div class="line"><a name="l00643"></a><span class="lineno">  643</span>       {</div>
+<div class="line"><a name="l00644"></a><span class="lineno">  644</span>         EnterExpressionEvaluationContext Unevaluated(S, <a class="code" href="classclang_1_1Sema.html#ac105cb9d8d4ad3e532351c498f6082b5ae4e2b142c5314222a59195d1612a1904" title="The current expression and its subexpressions occur within an unevaluated operand (C++11 [expr]p7)...">Sema::Unevaluated</a>);</div>
+<div class="line"><a name="l00645"></a><span class="lineno">  645</span>         Expr * *TI = tempInstArgs;</div>
+<div class="line"><a name="l00646"></a><span class="lineno">  646</span>         Expr * *I = A->args_begin();</div>
+<div class="line"><a name="l00647"></a><span class="lineno">  647</span>         Expr * *E = A->args_end();</div>
+<div class="line"><a name="l00648"></a><span class="lineno">  648</span>         <span class="keywordflow">for</span> (; I != E; ++I, ++TI) {</div>
+<div class="line"><a name="l00649"></a><span class="lineno">  649</span>           <a class="code" href="namespaceclang.html#ad607ac07ed5d295b26a24fb5ae02bad5">ExprResult</a> Result = S.SubstExpr(*I, TemplateArgs);</div>
+<div class="line"><a name="l00650"></a><span class="lineno">  650</span>           *TI = Result.<a class="code" href="classclang_1_1ActionResult.html#a144bc2f6c8a8090ba894cda5a5613361">takeAs</a><Expr>();</div>
+<div class="line"><a name="l00651"></a><span class="lineno">  651</span>         }</div>
+<div class="line"><a name="l00652"></a><span class="lineno">  652</span>       }</div>
+<div class="line"><a name="l00653"></a><span class="lineno">  653</span>       <span class="keywordflow">return</span> <span class="keyword">new</span> (C) SharedLocksRequiredAttr(A->getLocation(), C, tempInstArgs, A->args_size());</div>
+<div class="line"><a name="l00654"></a><span class="lineno">  654</span>     }</div>
+<div class="line"><a name="l00655"></a><span class="lineno">  655</span>     <span class="keywordflow">case</span> attr::SharedTrylockFunction: {</div>
+<div class="line"><a name="l00656"></a><span class="lineno">  656</span>       <span class="keyword">const</span> SharedTrylockFunctionAttr *A = cast<SharedTrylockFunctionAttr>(At);</div>
+<div class="line"><a name="l00657"></a><span class="lineno">  657</span>       Expr * tempInstSuccessValue;</div>
+<div class="line"><a name="l00658"></a><span class="lineno">  658</span>       {</div>
+<div class="line"><a name="l00659"></a><span class="lineno">  659</span>         EnterExpressionEvaluationContext Unevaluated(S, <a class="code" href="classclang_1_1Sema.html#ac105cb9d8d4ad3e532351c498f6082b5ae4e2b142c5314222a59195d1612a1904" title="The current expression and its subexpressions occur within an unevaluated operand (C++11 [expr]p7)...">Sema::Unevaluated</a>);</div>
+<div class="line"><a name="l00660"></a><span class="lineno">  660</span>         <a class="code" href="namespaceclang.html#ad607ac07ed5d295b26a24fb5ae02bad5">ExprResult</a> Result = S.SubstExpr(A->getSuccessValue(), TemplateArgs);</div>
+<div class="line"><a name="l00661"></a><span class="lineno">  661</span>         tempInstSuccessValue = Result.<a class="code" href="classclang_1_1ActionResult.html#a144bc2f6c8a8090ba894cda5a5613361">takeAs</a><Expr>();</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>       Expr * *tempInstArgs = <span class="keyword">new</span> (C, 16) Expr *[A->args_size()];</div>
+<div class="line"><a name="l00664"></a><span class="lineno">  664</span>       {</div>
+<div class="line"><a name="l00665"></a><span class="lineno">  665</span>         EnterExpressionEvaluationContext Unevaluated(S, <a class="code" href="classclang_1_1Sema.html#ac105cb9d8d4ad3e532351c498f6082b5ae4e2b142c5314222a59195d1612a1904" title="The current expression and its subexpressions occur within an unevaluated operand (C++11 [expr]p7)...">Sema::Unevaluated</a>);</div>
+<div class="line"><a name="l00666"></a><span class="lineno">  666</span>         Expr * *TI = tempInstArgs;</div>
+<div class="line"><a name="l00667"></a><span class="lineno">  667</span>         Expr * *I = A->args_begin();</div>
+<div class="line"><a name="l00668"></a><span class="lineno">  668</span>         Expr * *E = A->args_end();</div>
+<div class="line"><a name="l00669"></a><span class="lineno">  669</span>         <span class="keywordflow">for</span> (; I != E; ++I, ++TI) {</div>
+<div class="line"><a name="l00670"></a><span class="lineno">  670</span>           <a class="code" href="namespaceclang.html#ad607ac07ed5d295b26a24fb5ae02bad5">ExprResult</a> Result = S.SubstExpr(*I, TemplateArgs);</div>
+<div class="line"><a name="l00671"></a><span class="lineno">  671</span>           *TI = Result.<a class="code" href="classclang_1_1ActionResult.html#a144bc2f6c8a8090ba894cda5a5613361">takeAs</a><Expr>();</div>
+<div class="line"><a name="l00672"></a><span class="lineno">  672</span>         }</div>
+<div class="line"><a name="l00673"></a><span class="lineno">  673</span>       }</div>
+<div class="line"><a name="l00674"></a><span class="lineno">  674</span>       <span class="keywordflow">return</span> <span class="keyword">new</span> (C) SharedTrylockFunctionAttr(A->getLocation(), C, tempInstSuccessValue, tempInstArgs, A->args_size());</div>
+<div class="line"><a name="l00675"></a><span class="lineno">  675</span>     }</div>
+<div class="line"><a name="l00676"></a><span class="lineno">  676</span>     <span class="keywordflow">case</span> attr::SingleInheritance: {</div>
+<div class="line"><a name="l00677"></a><span class="lineno">  677</span>       <span class="keyword">const</span> SingleInheritanceAttr *A = cast<SingleInheritanceAttr>(At);</div>
+<div class="line"><a name="l00678"></a><span class="lineno">  678</span>       <span class="keywordflow">return</span> A->clone(C);</div>
+<div class="line"><a name="l00679"></a><span class="lineno">  679</span>     }</div>
+<div class="line"><a name="l00680"></a><span class="lineno">  680</span>     <span class="keywordflow">case</span> attr::StdCall: {</div>
+<div class="line"><a name="l00681"></a><span class="lineno">  681</span>       <span class="keyword">const</span> StdCallAttr *A = cast<StdCallAttr>(At);</div>
+<div class="line"><a name="l00682"></a><span class="lineno">  682</span>       <span class="keywordflow">return</span> A->clone(C);</div>
+<div class="line"><a name="l00683"></a><span class="lineno">  683</span>     }</div>
+<div class="line"><a name="l00684"></a><span class="lineno">  684</span>     <span class="keywordflow">case</span> attr::SysVABI: {</div>
+<div class="line"><a name="l00685"></a><span class="lineno">  685</span>       <span class="keyword">const</span> SysVABIAttr *A = cast<SysVABIAttr>(At);</div>
+<div class="line"><a name="l00686"></a><span class="lineno">  686</span>       <span class="keywordflow">return</span> A->clone(C);</div>
+<div class="line"><a name="l00687"></a><span class="lineno">  687</span>     }</div>
+<div class="line"><a name="l00688"></a><span class="lineno">  688</span>     <span class="keywordflow">case</span> attr::TLSModel: {</div>
+<div class="line"><a name="l00689"></a><span class="lineno">  689</span>       <span class="keyword">const</span> TLSModelAttr *A = cast<TLSModelAttr>(At);</div>
+<div class="line"><a name="l00690"></a><span class="lineno">  690</span>       <span class="keywordflow">return</span> A->clone(C);</div>
+<div class="line"><a name="l00691"></a><span class="lineno">  691</span>     }</div>
+<div class="line"><a name="l00692"></a><span class="lineno">  692</span>     <span class="keywordflow">case</span> attr::TestTypestate: {</div>
+<div class="line"><a name="l00693"></a><span class="lineno">  693</span>       <span class="keyword">const</span> TestTypestateAttr *A = cast<TestTypestateAttr>(At);</div>
+<div class="line"><a name="l00694"></a><span class="lineno">  694</span>       <span class="keywordflow">return</span> A->clone(C);</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>     <span class="keywordflow">case</span> attr::ThisCall: {</div>
+<div class="line"><a name="l00697"></a><span class="lineno">  697</span>       <span class="keyword">const</span> ThisCallAttr *A = cast<ThisCallAttr>(At);</div>
+<div class="line"><a name="l00698"></a><span class="lineno">  698</span>       <span class="keywordflow">return</span> A->clone(C);</div>
+<div class="line"><a name="l00699"></a><span class="lineno">  699</span>     }</div>
+<div class="line"><a name="l00700"></a><span class="lineno">  700</span>     <span class="keywordflow">case</span> attr::TransparentUnion: {</div>
+<div class="line"><a name="l00701"></a><span class="lineno">  701</span>       <span class="keyword">const</span> TransparentUnionAttr *A = cast<TransparentUnionAttr>(At);</div>
+<div class="line"><a name="l00702"></a><span class="lineno">  702</span>       <span class="keywordflow">return</span> A->clone(C);</div>
+<div class="line"><a name="l00703"></a><span class="lineno">  703</span>     }</div>
+<div class="line"><a name="l00704"></a><span class="lineno">  704</span>     <span class="keywordflow">case</span> attr::TypeTagForDatatype: {</div>
+<div class="line"><a name="l00705"></a><span class="lineno">  705</span>       <span class="keyword">const</span> TypeTagForDatatypeAttr *A = cast<TypeTagForDatatypeAttr>(At);</div>
+<div class="line"><a name="l00706"></a><span class="lineno">  706</span>       <span class="keywordflow">return</span> A->clone(C);</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> attr::TypeVisibility: {</div>
+<div class="line"><a name="l00709"></a><span class="lineno">  709</span>       <span class="keywordflow">return</span> <a class="code" href="stddef_8h.html#a070d2ce7b6bb7e5c05602aa8c308d0c4">NULL</a>;</div>
+<div class="line"><a name="l00710"></a><span class="lineno">  710</span>     }</div>
+<div class="line"><a name="l00711"></a><span class="lineno">  711</span>     <span class="keywordflow">case</span> attr::Unavailable: {</div>
+<div class="line"><a name="l00712"></a><span class="lineno">  712</span>       <span class="keyword">const</span> UnavailableAttr *A = cast<UnavailableAttr>(At);</div>
+<div class="line"><a name="l00713"></a><span class="lineno">  713</span>       <span class="keywordflow">return</span> A->clone(C);</div>
+<div class="line"><a name="l00714"></a><span class="lineno">  714</span>     }</div>
+<div class="line"><a name="l00715"></a><span class="lineno">  715</span>     <span class="keywordflow">case</span> attr::UnlockFunction: {</div>
+<div class="line"><a name="l00716"></a><span class="lineno">  716</span>       <span class="keyword">const</span> UnlockFunctionAttr *A = cast<UnlockFunctionAttr>(At);</div>
+<div class="line"><a name="l00717"></a><span class="lineno">  717</span>       Expr * *tempInstArgs = <span class="keyword">new</span> (C, 16) Expr *[A->args_size()];</div>
+<div class="line"><a name="l00718"></a><span class="lineno">  718</span>       {</div>
+<div class="line"><a name="l00719"></a><span class="lineno">  719</span>         EnterExpressionEvaluationContext Unevaluated(S, <a class="code" href="classclang_1_1Sema.html#ac105cb9d8d4ad3e532351c498f6082b5ae4e2b142c5314222a59195d1612a1904" title="The current expression and its subexpressions occur within an unevaluated operand (C++11 [expr]p7)...">Sema::Unevaluated</a>);</div>
+<div class="line"><a name="l00720"></a><span class="lineno">  720</span>         Expr * *TI = tempInstArgs;</div>
+<div class="line"><a name="l00721"></a><span class="lineno">  721</span>         Expr * *I = A->args_begin();</div>
+<div class="line"><a name="l00722"></a><span class="lineno">  722</span>         Expr * *E = A->args_end();</div>
+<div class="line"><a name="l00723"></a><span class="lineno">  723</span>         <span class="keywordflow">for</span> (; I != E; ++I, ++TI) {</div>
+<div class="line"><a name="l00724"></a><span class="lineno">  724</span>           <a class="code" href="namespaceclang.html#ad607ac07ed5d295b26a24fb5ae02bad5">ExprResult</a> Result = S.SubstExpr(*I, TemplateArgs);</div>
+<div class="line"><a name="l00725"></a><span class="lineno">  725</span>           *TI = Result.<a class="code" href="classclang_1_1ActionResult.html#a144bc2f6c8a8090ba894cda5a5613361">takeAs</a><Expr>();</div>
+<div class="line"><a name="l00726"></a><span class="lineno">  726</span>         }</div>
+<div class="line"><a name="l00727"></a><span class="lineno">  727</span>       }</div>
+<div class="line"><a name="l00728"></a><span class="lineno">  728</span>       <span class="keywordflow">return</span> <span class="keyword">new</span> (C) UnlockFunctionAttr(A->getLocation(), C, tempInstArgs, A->args_size());</div>
+<div class="line"><a name="l00729"></a><span class="lineno">  729</span>     }</div>
+<div class="line"><a name="l00730"></a><span class="lineno">  730</span>     <span class="keywordflow">case</span> attr::UnspecifiedInheritance: {</div>
+<div class="line"><a name="l00731"></a><span class="lineno">  731</span>       <span class="keyword">const</span> UnspecifiedInheritanceAttr *A = cast<UnspecifiedInheritanceAttr>(At);</div>
+<div class="line"><a name="l00732"></a><span class="lineno">  732</span>       <span class="keywordflow">return</span> A->clone(C);</div>
+<div class="line"><a name="l00733"></a><span class="lineno">  733</span>     }</div>
+<div class="line"><a name="l00734"></a><span class="lineno">  734</span>     <span class="keywordflow">case</span> <a class="code" href="ObjCUnusedIVarsChecker_8cpp.html#aaa1fb8acad41bb179fff81835791b18aa75114519257c90d951c2ca15ef442606">attr::Unused</a>: {</div>
+<div class="line"><a name="l00735"></a><span class="lineno">  735</span>       <span class="keyword">const</span> UnusedAttr *A = cast<UnusedAttr>(At);</div>
+<div class="line"><a name="l00736"></a><span class="lineno">  736</span>       <span class="keywordflow">return</span> A->clone(C);</div>
+<div class="line"><a name="l00737"></a><span class="lineno">  737</span>     }</div>
+<div class="line"><a name="l00738"></a><span class="lineno">  738</span>     <span class="keywordflow">case</span> <a class="code" href="ObjCUnusedIVarsChecker_8cpp.html#aaa1fb8acad41bb179fff81835791b18aa7158c3e55dd01a7f0df5b432af5dab3f">attr::Used</a>: {</div>
+<div class="line"><a name="l00739"></a><span class="lineno">  739</span>       <span class="keyword">const</span> UsedAttr *A = cast<UsedAttr>(At);</div>
+<div class="line"><a name="l00740"></a><span class="lineno">  740</span>       <span class="keywordflow">return</span> A->clone(C);</div>
+<div class="line"><a name="l00741"></a><span class="lineno">  741</span>     }</div>
+<div class="line"><a name="l00742"></a><span class="lineno">  742</span>     <span class="keywordflow">case</span> attr::Uuid: {</div>
+<div class="line"><a name="l00743"></a><span class="lineno">  743</span>       <span class="keyword">const</span> UuidAttr *A = cast<UuidAttr>(At);</div>
+<div class="line"><a name="l00744"></a><span class="lineno">  744</span>       <span class="keywordflow">return</span> A->clone(C);</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>     <span class="keywordflow">case</span> attr::VecReturn: {</div>
+<div class="line"><a name="l00747"></a><span class="lineno">  747</span>       <span class="keyword">const</span> VecReturnAttr *A = cast<VecReturnAttr>(At);</div>
+<div class="line"><a name="l00748"></a><span class="lineno">  748</span>       <span class="keywordflow">return</span> A->clone(C);</div>
+<div class="line"><a name="l00749"></a><span class="lineno">  749</span>     }</div>
+<div class="line"><a name="l00750"></a><span class="lineno">  750</span>     <span class="keywordflow">case</span> attr::VecTypeHint: {</div>
+<div class="line"><a name="l00751"></a><span class="lineno">  751</span>       <span class="keyword">const</span> VecTypeHintAttr *A = cast<VecTypeHintAttr>(At);</div>
+<div class="line"><a name="l00752"></a><span class="lineno">  752</span>       <span class="keywordflow">return</span> A->clone(C);</div>
+<div class="line"><a name="l00753"></a><span class="lineno">  753</span>     }</div>
+<div class="line"><a name="l00754"></a><span class="lineno">  754</span>     <span class="keywordflow">case</span> attr::VirtualInheritance: {</div>
+<div class="line"><a name="l00755"></a><span class="lineno">  755</span>       <span class="keyword">const</span> VirtualInheritanceAttr *A = cast<VirtualInheritanceAttr>(At);</div>
+<div class="line"><a name="l00756"></a><span class="lineno">  756</span>       <span class="keywordflow">return</span> A->clone(C);</div>
+<div class="line"><a name="l00757"></a><span class="lineno">  757</span>     }</div>
+<div class="line"><a name="l00758"></a><span class="lineno">  758</span>     <span class="keywordflow">case</span> <a class="code" href="namespaceclang.html#afbab15cd4aa598c4e6d9192f7ac4f102" title="Describes the different kinds of visibility that a declaration may have.">attr::Visibility</a>: {</div>
+<div class="line"><a name="l00759"></a><span class="lineno">  759</span>       <span class="keywordflow">return</span> <a class="code" href="stddef_8h.html#a070d2ce7b6bb7e5c05602aa8c308d0c4">NULL</a>;</div>
+<div class="line"><a name="l00760"></a><span class="lineno">  760</span>     }</div>
+<div class="line"><a name="l00761"></a><span class="lineno">  761</span>     <span class="keywordflow">case</span> attr::WarnUnused: {</div>
+<div class="line"><a name="l00762"></a><span class="lineno">  762</span>       <span class="keyword">const</span> WarnUnusedAttr *A = cast<WarnUnusedAttr>(At);</div>
+<div class="line"><a name="l00763"></a><span class="lineno">  763</span>       <span class="keywordflow">return</span> A->clone(C);</div>
+<div class="line"><a name="l00764"></a><span class="lineno">  764</span>     }</div>
+<div class="line"><a name="l00765"></a><span class="lineno">  765</span>     <span class="keywordflow">case</span> attr::WarnUnusedResult: {</div>
+<div class="line"><a name="l00766"></a><span class="lineno">  766</span>       <span class="keyword">const</span> WarnUnusedResultAttr *A = cast<WarnUnusedResultAttr>(At);</div>
+<div class="line"><a name="l00767"></a><span class="lineno">  767</span>       <span class="keywordflow">return</span> A->clone(C);</div>
+<div class="line"><a name="l00768"></a><span class="lineno">  768</span>     }</div>
+<div class="line"><a name="l00769"></a><span class="lineno">  769</span>     <span class="keywordflow">case</span> attr::Weak: {</div>
+<div class="line"><a name="l00770"></a><span class="lineno">  770</span>       <span class="keyword">const</span> WeakAttr *A = cast<WeakAttr>(At);</div>
+<div class="line"><a name="l00771"></a><span class="lineno">  771</span>       <span class="keywordflow">return</span> A->clone(C);</div>
+<div class="line"><a name="l00772"></a><span class="lineno">  772</span>     }</div>
+<div class="line"><a name="l00773"></a><span class="lineno">  773</span>     <span class="keywordflow">case</span> attr::WeakImport: {</div>
+<div class="line"><a name="l00774"></a><span class="lineno">  774</span>       <span class="keyword">const</span> WeakImportAttr *A = cast<WeakImportAttr>(At);</div>
+<div class="line"><a name="l00775"></a><span class="lineno">  775</span>       <span class="keywordflow">return</span> A->clone(C);</div>
+<div class="line"><a name="l00776"></a><span class="lineno">  776</span>     }</div>
+<div class="line"><a name="l00777"></a><span class="lineno">  777</span>     <span class="keywordflow">case</span> attr::WeakRef: {</div>
+<div class="line"><a name="l00778"></a><span class="lineno">  778</span>       <span class="keyword">const</span> WeakRefAttr *A = cast<WeakRefAttr>(At);</div>
+<div class="line"><a name="l00779"></a><span class="lineno">  779</span>       <span class="keywordflow">return</span> A->clone(C);</div>
+<div class="line"><a name="l00780"></a><span class="lineno">  780</span>     }</div>
+<div class="line"><a name="l00781"></a><span class="lineno">  781</span>     <span class="keywordflow">case</span> attr::Win64: {</div>
+<div class="line"><a name="l00782"></a><span class="lineno">  782</span>       <span class="keyword">const</span> Win64Attr *A = cast<Win64Attr>(At);</div>
+<div class="line"><a name="l00783"></a><span class="lineno">  783</span>       <span class="keywordflow">return</span> A->clone(C);</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>     <span class="keywordflow">case</span> attr::WorkGroupSizeHint: {</div>
+<div class="line"><a name="l00786"></a><span class="lineno">  786</span>       <span class="keyword">const</span> WorkGroupSizeHintAttr *A = cast<WorkGroupSizeHintAttr>(At);</div>
+<div class="line"><a name="l00787"></a><span class="lineno">  787</span>       <span class="keywordflow">return</span> A->clone(C);</div>
+<div class="line"><a name="l00788"></a><span class="lineno">  788</span>     }</div>
+<div class="line"><a name="l00789"></a><span class="lineno">  789</span>     <span class="keywordflow">case</span> attr::X86ForceAlignArgPointer: {</div>
+<div class="line"><a name="l00790"></a><span class="lineno">  790</span>       <span class="keyword">const</span> X86ForceAlignArgPointerAttr *A = cast<X86ForceAlignArgPointerAttr>(At);</div>
+<div class="line"><a name="l00791"></a><span class="lineno">  791</span>       <span class="keywordflow">return</span> A->clone(C);</div>
+<div class="line"><a name="l00792"></a><span class="lineno">  792</span>     }</div>
+<div class="line"><a name="l00793"></a><span class="lineno">  793</span>   } <span class="comment">// end switch</span></div>
+<div class="line"><a name="l00794"></a><span class="lineno">  794</span>   llvm_unreachable(<span class="stringliteral">"Unknown attribute!"</span>);</div>
+<div class="line"><a name="l00795"></a><span class="lineno">  795</span>   <span class="keywordflow">return</span> 0;</div>
+<div class="line"><a name="l00796"></a><span class="lineno">  796</span> }</div>
+<div class="line"><a name="l00797"></a><span class="lineno">  797</span> </div>
+<div class="line"><a name="l00798"></a><span class="lineno">  798</span> } <span class="comment">// end namespace sema</span></div>
+<div class="line"><a name="l00799"></a><span class="lineno">  799</span> } <span class="comment">// end namespace clang</span></div>
+</div><!-- fragment --></div><!-- contents -->
+<hr>
+<p class="footer">
+Generated on Mon May 12 2014 12:13:19 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/AttrTypeArg_8inc_source.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/3.5.1/tools/clang/docs/doxygen/html/AttrTypeArg_8inc_source.html?rev=225843&view=auto
==============================================================================
--- www-releases/trunk/3.5.1/tools/clang/docs/doxygen/html/AttrTypeArg_8inc_source.html (added)
+++ www-releases/trunk/3.5.1/tools/clang/docs/doxygen/html/AttrTypeArg_8inc_source.html Tue Jan 13 16:55:20 2015
@@ -0,0 +1,89 @@
+<!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: AttrTypeArg.inc 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_d7fc8bda2d3b503a92c90c5529c10eb2.html">Parse</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">AttrTypeArg.inc</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="AttrTypeArg_8inc.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">/*===- TableGen'erated file -------------------------------------*- 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">|*llvm::StringSwitch code to match attributes with a type argument            *|</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">|* Automatically generated file, do not edit!                                 *|</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span> <span class="comment">|*                                                                            *|</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> </div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span> .Case(<span class="stringliteral">"iboutletcollection"</span>, <span class="keyword">true</span>)</div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span> .Case(<span class="stringliteral">"vec_type_hint"</span>, <span class="keyword">true</span>)</div>
+</div><!-- fragment --></div><!-- contents -->
+<hr>
+<p class="footer">
+Generated on Mon May 12 2014 12:13:19 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/Attr_8h_source.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/3.5.1/tools/clang/docs/doxygen/html/Attr_8h_source.html?rev=225843&view=auto
==============================================================================
--- www-releases/trunk/3.5.1/tools/clang/docs/doxygen/html/Attr_8h_source.html (added)
+++ www-releases/trunk/3.5.1/tools/clang/docs/doxygen/html/Attr_8h_source.html Tue Jan 13 16:55:20 2015
@@ -0,0 +1,237 @@
+<!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: Attr.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_6152e82a4845f7e2a2888050f43c34d1.html">AST</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">Attr.h</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="Attr_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">//===--- Attr.h - Classes for representing attributes ----------*- 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 the Attr interface and subclasses.</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span> <span class="comment">//</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"><a class="code" href="classclang_1_1ARMInterruptAttr.html">   13</a></span> </div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span> <span class="preprocessor">#ifndef LLVM_CLANG_AST_ATTR_H</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"><a class="code" href="classclang_1_1ARMInterruptAttr.html#a53c45089b46c8a1f467ea2df79fb62ea">   15</a></span> <span class="preprocessor"></span><span class="preprocessor">#define LLVM_CLANG_AST_ATTR_H</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"><a class="code" href="classclang_1_1ARMInterruptAttr.html#a53c45089b46c8a1f467ea2df79fb62eaa42f3e1cc7ba3e80bedf2b8ffa930df29">   16</a></span> <span class="preprocessor"></span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"><a class="code" href="classclang_1_1ARMInterruptAttr.html#a53c45089b46c8a1f467ea2df79fb62eaab0de35b604d4495bf4d9596b4ce79d8c">   17</a></span> <span class="preprocessor">#include "<a class="code" href="AttrIterator_8h.html">clang/AST/AttrIterator.h</a>"</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"><a class="code" href="classclang_1_1ARMInterruptAttr.html#a53c45089b46c8a1f467ea2df79fb62eaaed422b8149f2e80f0ecf7fe33cbb9803">   18</a></span> <span class="preprocessor">#include "<a class="code" href="Decl_8h.html">clang/AST/Decl.h</a>"</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"><a class="code" href="classclang_1_1ARMInterruptAttr.html#a53c45089b46c8a1f467ea2df79fb62eaa17a88b3b60ba8a25f083deb62b41cb35">   19</a></span> <span class="preprocessor">#include "<a class="code" href="Type_8h.html">clang/AST/Type.h</a>"</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"><a class="code" href="classclang_1_1ARMInterruptAttr.html#a53c45089b46c8a1f467ea2df79fb62eaa4bdc5f46971f6eacf58355b57caa4d8b">   20</a></span> <span class="preprocessor">#include "<a class="code" href="AttrKinds_8h.html" title="Defines the clang::attr::Kind enum.">clang/Basic/AttrKinds.h</a>"</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"><a class="code" href="classclang_1_1ARMInterruptAttr.html#a53c45089b46c8a1f467ea2df79fb62eaa56a701e73bdd5589ea4fbc8a8d4690d7">   21</a></span> <span class="preprocessor">#include "<a class="code" href="LLVM_8h.html" title="Forward declares and imports various common LLVM datatypes that clang wants to use unqualified...">clang/Basic/LLVM.h</a>"</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno">   22</span> <span class="preprocessor">#include "<a class="code" href="SourceLocation_8h.html" title="Defines the clang::SourceLocation class and associated facilities.">clang/Basic/SourceLocation.h</a>"</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno">   23</span> <span class="preprocessor">#include "<a class="code" href="VersionTuple_8h.html" title="Defines the clang::VersionTuple class, which represents a version in the form major[.minor[.subminor]].">clang/Basic/VersionTuple.h</a>"</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno">   24</span> <span class="preprocessor">#include "llvm/ADT/SmallVector.h"</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno">   25</span> <span class="preprocessor">#include "llvm/ADT/StringRef.h"</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno">   26</span> <span class="preprocessor">#include "llvm/ADT/StringSwitch.h"</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno">   27</span> <span class="preprocessor">#include "llvm/Support/ErrorHandling.h"</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"><a class="code" href="classclang_1_1ARMInterruptAttr.html#a8c7b8de9322c2850e7f8117966cff5db">   28</a></span> <span class="preprocessor">#include "llvm/Support/raw_ostream.h"</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno">   29</span> <span class="preprocessor">#include <cassert></span></div>
+<div class="line"><a name="l00030"></a><span class="lineno">   30</span> <span class="preprocessor">#include <cstring></span></div>
+<div class="line"><a name="l00031"></a><span class="lineno">   31</span> </div>
+<div class="line"><a name="l00032"></a><span class="lineno">   32</span> <span class="keyword">namespace </span>clang {</div>
+<div class="line"><a name="l00033"></a><span class="lineno">   33</span>   <span class="keyword">class </span><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>;</div>
+<div class="line"><a name="l00034"></a><span class="lineno">   34</span>   <span class="keyword">class </span><a class="code" href="classclang_1_1IdentifierInfo.html">IdentifierInfo</a>;</div>
+<div class="line"><a name="l00035"></a><span class="lineno">   35</span>   <span class="keyword">class </span><a class="code" href="classclang_1_1ObjCInterfaceDecl.html" title="Represents an ObjC class declaration.">ObjCInterfaceDecl</a>;</div>
+<div class="line"><a name="l00036"></a><span class="lineno">   36</span>   <span class="keyword">class </span><a class="code" href="classclang_1_1Expr.html">Expr</a>;</div>
+<div class="line"><a name="l00037"></a><span class="lineno">   37</span>   <span class="keyword">class </span><a class="code" href="classclang_1_1QualType.html">QualType</a>;</div>
+<div class="line"><a name="l00038"></a><span class="lineno"><a class="code" href="classclang_1_1ARMInterruptAttr.html#a4aa6742c50065ff238b0ca7c016f0dda">   38</a></span>   <span class="keyword">class </span><a class="code" href="classclang_1_1FunctionDecl.html">FunctionDecl</a>;</div>
+<div class="line"><a name="l00039"></a><span class="lineno">   39</span>   <span class="keyword">class </span><a class="code" href="classclang_1_1TypeSourceInfo.html" title="A container of type source information.">TypeSourceInfo</a>;</div>
+<div class="line"><a name="l00040"></a><span class="lineno">   40</span> <span class="comment"></span></div>
+<div class="line"><a name="l00041"></a><span class="lineno">   41</span> <span class="comment">/// Attr - This represents one attribute.</span></div>
+<div class="line"><a name="l00042"></a><span class="lineno"><a class="code" href="classclang_1_1Attr.html">   42</a></span> <span class="comment"></span><span class="keyword">class </span><a class="code" href="classclang_1_1Attr.html" title="Attr - This represents one attribute.">Attr</a> {</div>
+<div class="line"><a name="l00043"></a><span class="lineno">   43</span> <span class="keyword">private</span>:</div>
+<div class="line"><a name="l00044"></a><span class="lineno">   44</span>   <a class="code" href="classclang_1_1SourceRange.html" title="A trival tuple used to represent a source range.">SourceRange</a> Range;</div>
+<div class="line"><a name="l00045"></a><span class="lineno">   45</span>   <span class="keywordtype">unsigned</span> AttrKind : 16;</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> <span class="keyword">protected</span>:<span class="comment"></span></div>
+<div class="line"><a name="l00048"></a><span class="lineno">   48</span> <span class="comment">  /// An index into the spelling list of an</span></div>
+<div class="line"><a name="l00049"></a><span class="lineno"><a class="code" href="classclang_1_1ARMInterruptAttr.html#a3e5b96dc96db11d3fc0387e288ff0506">   49</a></span> <span class="comment">  /// attribute defined in Attr.td file.</span></div>
+<div class="line"><a name="l00050"></a><span class="lineno"><a class="code" href="classclang_1_1Attr.html#ab41e08496ae1aac43fd7882b62e20cb8">   50</a></span> <span class="comment"></span>  <span class="keywordtype">unsigned</span> <a class="code" href="classclang_1_1Attr.html#ab41e08496ae1aac43fd7882b62e20cb8">SpellingListIndex</a> : 4;</div>
+<div class="line"><a name="l00051"></a><span class="lineno">   51</span> </div>
+<div class="line"><a name="l00052"></a><span class="lineno"><a class="code" href="classclang_1_1Attr.html#a37aff45aa58ba2c07e9c60d188455e9b">   52</a></span>   <span class="keywordtype">bool</span> <a class="code" href="classclang_1_1Attr.html#a37aff45aa58ba2c07e9c60d188455e9b">Inherited</a> : 1;</div>
+<div class="line"><a name="l00053"></a><span class="lineno"><a class="code" href="classclang_1_1ARMInterruptAttr.html#a1c818ed2b0d224e0ef03fb41bba46579">   53</a></span> </div>
+<div class="line"><a name="l00054"></a><span class="lineno"><a class="code" href="classclang_1_1Attr.html#a21224661174ab314d2b544791f179f8c">   54</a></span>   <span class="keywordtype">bool</span> <a class="code" href="classclang_1_1Attr.html#a21224661174ab314d2b544791f179f8c">IsPackExpansion</a> : 1;</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="keyword">virtual</span> <a class="code" href="classclang_1_1Attr.html#a0dad35a2a4d17ab25c3c39352ac1a40c">~Attr</a>();</div>
+<div class="line"><a name="l00057"></a><span class="lineno">   57</span> </div>
+<div class="line"><a name="l00058"></a><span class="lineno"><a class="code" href="classclang_1_1Attr.html#a3782d44d45338c369deefd64ac8c1cb0">   58</a></span>   <span class="keywordtype">void</span>* <span class="keyword">operator</span> <span class="keyword">new</span>(<span class="keywordtype">size_t</span> bytes) <span class="keywordflow">throw</span>() {</div>
+<div class="line"><a name="l00059"></a><span class="lineno">   59</span>     llvm_unreachable(<span class="stringliteral">"Attrs cannot be allocated with regular 'new'."</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"><a class="code" href="classclang_1_1Attr.html#a086b26061f16ce08586b200c6b19e31d">   61</a></span>   <span class="keywordtype">void</span> <span class="keyword">operator</span> <span class="keyword">delete</span>(<span class="keywordtype">void</span>* <a class="code" href="ASTWriter_8cpp.html#a5c6341076bde2012a21db25f4e2e3792">data</a>) <span class="keywordflow">throw</span>() {</div>
+<div class="line"><a name="l00062"></a><span class="lineno">   62</span>     llvm_unreachable(<span class="stringliteral">"Attrs cannot be released with regular 'delete'."</span>);</div>
+<div class="line"><a name="l00063"></a><span class="lineno">   63</span>   }</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> <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00066"></a><span class="lineno">   66</span>   <span class="comment">// Forward so that the regular new and delete do not hide global ones.</span></div>
+<div class="line"><a name="l00067"></a><span class="lineno"><a class="code" href="classclang_1_1Attr.html#af7bdbbb0c6c763583ed1f2a88fd78b1b">   67</a></span>   <span class="keywordtype">void</span>* <span class="keyword">operator</span> <span class="keyword">new</span>(<span class="keywordtype">size_t</span> Bytes, <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,</div>
+<div class="line"><a name="l00068"></a><span class="lineno">   68</span>                      <span class="keywordtype">size_t</span> Alignment = 16) <span class="keywordflow">throw</span>() {</div>
+<div class="line"><a name="l00069"></a><span class="lineno">   69</span>     return ::operator <span class="keyword">new</span>(Bytes, C, Alignment);</div>
+<div class="line"><a name="l00070"></a><span class="lineno"><a class="code" href="classclang_1_1ARMInterruptAttr.html#ab1c22b80e26d591738017e4ff51f133d">   70</a></span>   }</div>
+<div class="line"><a name="l00071"></a><span class="lineno"><a class="code" href="classclang_1_1Attr.html#a9b8c89bfbbd9d3166b8874b5c1eea8db">   71</a></span>   <span class="keywordtype">void</span> <span class="keyword">operator</span> <span class="keyword">delete</span>(<span class="keywordtype">void</span> *Ptr, <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,</div>
+<div class="line"><a name="l00072"></a><span class="lineno">   72</span>                        <span class="keywordtype">size_t</span> Alignment) <span class="keywordflow">throw</span>() {</div>
+<div class="line"><a name="l00073"></a><span class="lineno">   73</span>     return ::operator <span class="keyword">delete</span>(Ptr, C, Alignment);</div>
+<div class="line"><a name="l00074"></a><span class="lineno"><a class="code" href="classclang_1_1AcquiredAfterAttr.html">   74</a></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="keyword">protected</span>:</div>
+<div class="line"><a name="l00077"></a><span class="lineno"><a class="code" href="classclang_1_1Attr.html#a2add75e76f70a7407ad88c0e0f31b885">   77</a></span>   <a class="code" href="classclang_1_1Attr.html#a2add75e76f70a7407ad88c0e0f31b885">Attr</a>(<a class="code" href="namespaceclang_1_1attr.html#ac160b7b7240633e6932ebb177d0f03ef">attr::Kind</a> AK, <a class="code" href="classclang_1_1SourceRange.html" title="A trival tuple used to represent a source range.">SourceRange</a> R, <span class="keywordtype">unsigned</span> <a class="code" href="classclang_1_1Attr.html#ab41e08496ae1aac43fd7882b62e20cb8">SpellingListIndex</a> = 0)</div>
+<div class="line"><a name="l00078"></a><span class="lineno">   78</span>     : Range(R), AttrKind(AK), <a class="code" href="classclang_1_1Attr.html#ab41e08496ae1aac43fd7882b62e20cb8">SpellingListIndex</a>(<a class="code" href="classclang_1_1Attr.html#ab41e08496ae1aac43fd7882b62e20cb8">SpellingListIndex</a>),</div>
+<div class="line"><a name="l00079"></a><span class="lineno">   79</span>       <a class="code" href="classclang_1_1Attr.html#a37aff45aa58ba2c07e9c60d188455e9b">Inherited</a>(<a class="code" href="stdbool_8h.html#a65e9886d74aaee76545e83dd09011727">false</a>), <a class="code" href="classclang_1_1Attr.html#a21224661174ab314d2b544791f179f8c">IsPackExpansion</a>(<a class="code" href="stdbool_8h.html#a65e9886d74aaee76545e83dd09011727">false</a>) {}</div>
+<div class="line"><a name="l00080"></a><span class="lineno"><a class="code" href="classclang_1_1AcquiredAfterAttr.html#ad85b2777148ad6ed4ad906630634759e">   80</a></span> </div>
+<div class="line"><a name="l00081"></a><span class="lineno">   81</span> <span class="keyword">public</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"><a class="code" href="classclang_1_1Attr.html#a3e4355a010163d24f60db913d9fd4bfc">   83</a></span>   <a class="code" href="namespaceclang_1_1attr.html#ac160b7b7240633e6932ebb177d0f03ef">attr::Kind</a> <a class="code" href="classclang_1_1Attr.html#a3e4355a010163d24f60db913d9fd4bfc">getKind</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00084"></a><span class="lineno">   84</span>     <span class="keywordflow">return</span> <span class="keyword">static_cast<</span><a class="code" href="namespaceclang_1_1attr.html#ac160b7b7240633e6932ebb177d0f03ef">attr::Kind</a><span class="keyword">></span>(AttrKind);</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>   </div>
+<div class="line"><a name="l00087"></a><span class="lineno"><a class="code" href="classclang_1_1Attr.html#abaed8b1a48787b63faab1248881f4580">   87</a></span>   <span class="keywordtype">unsigned</span> <a class="code" href="classclang_1_1Attr.html#abaed8b1a48787b63faab1248881f4580">getSpellingListIndex</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="classclang_1_1Attr.html#ab41e08496ae1aac43fd7882b62e20cb8">SpellingListIndex</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"><a class="code" href="classclang_1_1Attr.html#a322fe9fbaec102390f902a4cd0b63e51">   89</a></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="classclang_1_1Attr.html#a322fe9fbaec102390f902a4cd0b63e51">getLocation</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> Range.<a class="code" href="classclang_1_1SourceRange.html#a890dff14560eb9aceb08be18dfe74208">getBegin</a>(); }</div>
+<div class="line"><a name="l00090"></a><span class="lineno"><a class="code" href="classclang_1_1Attr.html#a5e73d0d9f9ff5fea0aa3cc45353938a1">   90</a></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="classclang_1_1Attr.html#a5e73d0d9f9ff5fea0aa3cc45353938a1">getRange</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> Range; }</div>
+<div class="line"><a name="l00091"></a><span class="lineno"><a class="code" href="classclang_1_1Attr.html#a4f558dfc914f2b72e6b7b2d7a62dd04e">   91</a></span>   <span class="keywordtype">void</span> <a class="code" href="classclang_1_1Attr.html#a4f558dfc914f2b72e6b7b2d7a62dd04e">setRange</a>(<a class="code" href="classclang_1_1SourceRange.html" title="A trival tuple used to represent a source range.">SourceRange</a> R) { Range = R; }</div>
+<div class="line"><a name="l00092"></a><span class="lineno">   92</span> </div>
+<div class="line"><a name="l00093"></a><span class="lineno"><a class="code" href="classclang_1_1Attr.html#a24ad51ee87b13ca1f7071142b094a956">   93</a></span>   <span class="keywordtype">bool</span> <a class="code" href="classclang_1_1Attr.html#a24ad51ee87b13ca1f7071142b094a956">isInherited</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="classclang_1_1Attr.html#a37aff45aa58ba2c07e9c60d188455e9b">Inherited</a>; }</div>
+<div class="line"><a name="l00094"></a><span class="lineno">   94</span> </div>
+<div class="line"><a name="l00095"></a><span class="lineno"><a class="code" href="classclang_1_1Attr.html#a92c9ac5819a972923eebbdad794f0a46">   95</a></span>   <span class="keywordtype">void</span> <a class="code" href="classclang_1_1Attr.html#a92c9ac5819a972923eebbdad794f0a46">setPackExpansion</a>(<span class="keywordtype">bool</span> PE) { <a class="code" href="classclang_1_1Attr.html#a21224661174ab314d2b544791f179f8c">IsPackExpansion</a> = PE; }</div>
+<div class="line"><a name="l00096"></a><span class="lineno"><a class="code" href="classclang_1_1Attr.html#a267050908383964d521e4c0e3e61ae68">   96</a></span>   <span class="keywordtype">bool</span> <a class="code" href="classclang_1_1Attr.html#a267050908383964d521e4c0e3e61ae68">isPackExpansion</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="classclang_1_1Attr.html#a21224661174ab314d2b544791f179f8c">IsPackExpansion</a>; }</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">// Clone this attribute.</span></div>
+<div class="line"><a name="l00099"></a><span class="lineno">   99</span>   <span class="keyword">virtual</span> <a class="code" href="classclang_1_1Attr.html" title="Attr - This represents one attribute.">Attr</a> *<a class="code" href="classclang_1_1Attr.html#a01e4792253d31e7bd24f6f71d83a61fe">clone</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> = 0;</div>
+<div class="line"><a name="l00100"></a><span class="lineno">  100</span> </div>
+<div class="line"><a name="l00101"></a><span class="lineno"><a class="code" href="classclang_1_1Attr.html#abaaa313f1591569f4c07e336a5963831">  101</a></span>   <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classclang_1_1Attr.html#abaaa313f1591569f4c07e336a5963831">isLateParsed</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <span class="keyword">false</span>; }</div>
+<div class="line"><a name="l00102"></a><span class="lineno"><a class="code" href="classclang_1_1AcquiredAfterAttr.html#ad7ca6fbba70e20a49c43c1b4790e996a">  102</a></span> </div>
+<div class="line"><a name="l00103"></a><span class="lineno"><a class="code" href="classclang_1_1AcquiredAfterAttr.html#a5b898613bab1ec504c634d1bffb737dd">  103</a></span>   <span class="comment">// Pretty print this attribute.</span></div>
+<div class="line"><a name="l00104"></a><span class="lineno">  104</span>   <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classclang_1_1Attr.html#a8e52e91c11dc6b406614c2b3d43d1419">printPretty</a>(raw_ostream &OS,</div>
+<div class="line"><a name="l00105"></a><span class="lineno">  105</span>                            <span class="keyword">const</span> <a class="code" href="structclang_1_1PrintingPolicy.html" title="Describes how types, statements, expressions, and declarations should be printed.">PrintingPolicy</a> &Policy) <span class="keyword">const</span> = 0;</div>
+<div class="line"><a name="l00106"></a><span class="lineno"><a class="code" href="classclang_1_1AcquiredAfterAttr.html#a10e684db7ce6676c768685ab3c2834a0">  106</a></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"><a class="code" href="classclang_1_1InheritableAttr.html">  108</a></span> <span class="keyword">class </span><a class="code" href="classclang_1_1InheritableAttr.html">InheritableAttr</a> : <span class="keyword">public</span> <a class="code" href="classclang_1_1Attr.html" title="Attr - This represents one attribute.">Attr</a> {</div>
+<div class="line"><a name="l00109"></a><span class="lineno"><a class="code" href="classclang_1_1AcquiredAfterAttr.html#a7e9cca883efe6876893509abf37fe0a4">  109</a></span>   <span class="keyword">virtual</span> <span class="keywordtype">void</span> anchor();</div>
+<div class="line"><a name="l00110"></a><span class="lineno">  110</span> <span class="keyword">protected</span>:</div>
+<div class="line"><a name="l00111"></a><span class="lineno"><a class="code" href="classclang_1_1InheritableAttr.html#abf34d33e7c1c94c07d1b774c02300d9b">  111</a></span>   <a class="code" href="classclang_1_1InheritableAttr.html#abf34d33e7c1c94c07d1b774c02300d9b">InheritableAttr</a>(<a class="code" href="namespaceclang_1_1attr.html#ac160b7b7240633e6932ebb177d0f03ef">attr::Kind</a> AK, <a class="code" href="classclang_1_1SourceRange.html" title="A trival tuple used to represent a source range.">SourceRange</a> R, <span class="keywordtype">unsigned</span> <a class="code" href="classclang_1_1Attr.html#ab41e08496ae1aac43fd7882b62e20cb8">SpellingListIndex</a> = 0)</div>
+<div class="line"><a name="l00112"></a><span class="lineno">  112</span>     : <a class="code" href="classclang_1_1Attr.html" title="Attr - This represents one attribute.">Attr</a>(AK, R, <a class="code" href="classclang_1_1Attr.html#ab41e08496ae1aac43fd7882b62e20cb8">SpellingListIndex</a>) {}</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">public</span>:</div>
+<div class="line"><a name="l00115"></a><span class="lineno"><a class="code" href="classclang_1_1InheritableAttr.html#a0890a3558ab9cd687e755538de81df3f">  115</a></span>   <span class="keywordtype">void</span> <a class="code" href="classclang_1_1InheritableAttr.html#a0890a3558ab9cd687e755538de81df3f">setInherited</a>(<span class="keywordtype">bool</span> I) { <a class="code" href="classclang_1_1Attr.html#a37aff45aa58ba2c07e9c60d188455e9b">Inherited</a> = I; }</div>
+<div class="line"><a name="l00116"></a><span class="lineno"><a class="code" href="classclang_1_1AcquiredAfterAttr.html#aa3b813caec3eeab1bae392c14b2ffa1d">  116</a></span> </div>
+<div class="line"><a name="l00117"></a><span class="lineno">  117</span>   <span class="comment">// Implement isa/cast/dyncast/etc.</span></div>
+<div class="line"><a name="l00118"></a><span class="lineno"><a class="code" href="classclang_1_1InheritableAttr.html#a14c60c90045b1e1596fbc517798eb4c4">  118</a></span>   <span class="keyword">static</span> <span class="keywordtype">bool</span> <a class="code" href="classclang_1_1InheritableAttr.html#a14c60c90045b1e1596fbc517798eb4c4">classof</a>(<span class="keyword">const</span> <a class="code" href="classclang_1_1Attr.html" title="Attr - This represents one attribute.">Attr</a> *A) {</div>
+<div class="line"><a name="l00119"></a><span class="lineno"><a class="code" href="classclang_1_1AcquiredBeforeAttr.html">  119</a></span>     <span class="keywordflow">return</span> A-><a class="code" href="classclang_1_1Attr.html#a3e4355a010163d24f60db913d9fd4bfc">getKind</a>() <= attr::LAST_INHERITABLE;</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> };</div>
+<div class="line"><a name="l00122"></a><span class="lineno">  122</span> </div>
+<div class="line"><a name="l00123"></a><span class="lineno"><a class="code" href="classclang_1_1InheritableParamAttr.html">  123</a></span> <span class="keyword">class </span><a class="code" href="classclang_1_1InheritableParamAttr.html">InheritableParamAttr</a> : <span class="keyword">public</span> <a class="code" href="classclang_1_1InheritableAttr.html">InheritableAttr</a> {</div>
+<div class="line"><a name="l00124"></a><span class="lineno">  124</span>   <span class="keyword">virtual</span> <span class="keywordtype">void</span> anchor();</div>
+<div class="line"><a name="l00125"></a><span class="lineno"><a class="code" href="classclang_1_1AcquiredBeforeAttr.html#ab593fa245b659a98f6328c2607c50f25">  125</a></span> <span class="keyword">protected</span>:</div>
+<div class="line"><a name="l00126"></a><span class="lineno"><a class="code" href="classclang_1_1InheritableParamAttr.html#a327d79027e25cf2bba1eab14ef3e141c">  126</a></span>   <a class="code" href="classclang_1_1InheritableParamAttr.html#a327d79027e25cf2bba1eab14ef3e141c">InheritableParamAttr</a>(<a class="code" href="namespaceclang_1_1attr.html#ac160b7b7240633e6932ebb177d0f03ef">attr::Kind</a> AK, <a class="code" href="classclang_1_1SourceRange.html" title="A trival tuple used to represent a source range.">SourceRange</a> R,</div>
+<div class="line"><a name="l00127"></a><span class="lineno">  127</span>                        <span class="keywordtype">unsigned</span> <a class="code" href="classclang_1_1Attr.html#ab41e08496ae1aac43fd7882b62e20cb8">SpellingListIndex</a> = 0)</div>
+<div class="line"><a name="l00128"></a><span class="lineno">  128</span>     : <a class="code" href="classclang_1_1InheritableAttr.html">InheritableAttr</a>(AK, R, <a class="code" href="classclang_1_1Attr.html#ab41e08496ae1aac43fd7882b62e20cb8">SpellingListIndex</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">  130</span> <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00131"></a><span class="lineno">  131</span>   <span class="comment">// Implement isa/cast/dyncast/etc.</span></div>
+<div class="line"><a name="l00132"></a><span class="lineno"><a class="code" href="classclang_1_1InheritableParamAttr.html#aec6c4b288757554d19561f9c38ded5e8">  132</a></span>   <span class="keyword">static</span> <span class="keywordtype">bool</span> <a class="code" href="classclang_1_1InheritableParamAttr.html#aec6c4b288757554d19561f9c38ded5e8">classof</a>(<span class="keyword">const</span> <a class="code" href="classclang_1_1Attr.html" title="Attr - This represents one attribute.">Attr</a> *A) {</div>
+<div class="line"><a name="l00133"></a><span class="lineno">  133</span>     <span class="comment">// Relies on relative order of enum emission with respect to MS inheritance</span></div>
+<div class="line"><a name="l00134"></a><span class="lineno">  134</span>     <span class="comment">// attrs.</span></div>
+<div class="line"><a name="l00135"></a><span class="lineno">  135</span>     <span class="keywordflow">return</span> A-><a class="code" href="classclang_1_1Attr.html#a3e4355a010163d24f60db913d9fd4bfc">getKind</a>() <= attr::LAST_INHERITABLE_PARAM;</div>
+<div class="line"><a name="l00136"></a><span class="lineno"><a class="code" href="classclang_1_1AcquiredBeforeAttr.html#a641a95304c514e789b3d17132adf8140">  136</a></span>   }</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> </div>
+<div class="line"><a name="l00139"></a><span class="lineno"><a class="code" href="classclang_1_1MSInheritanceAttr.html">  139</a></span> <span class="keyword">class </span><a class="code" href="classclang_1_1MSInheritanceAttr.html">MSInheritanceAttr</a> : <span class="keyword">public</span> <a class="code" href="classclang_1_1InheritableAttr.html">InheritableAttr</a> {</div>
+<div class="line"><a name="l00140"></a><span class="lineno">  140</span>   <span class="keyword">virtual</span> <span class="keywordtype">void</span> anchor();</div>
+<div class="line"><a name="l00141"></a><span class="lineno">  141</span> <span class="keyword">protected</span>:</div>
+<div class="line"><a name="l00142"></a><span class="lineno"><a class="code" href="classclang_1_1MSInheritanceAttr.html#ab17f393c5b27caead42e9d899a1a3d9f">  142</a></span>   <a class="code" href="classclang_1_1MSInheritanceAttr.html#ab17f393c5b27caead42e9d899a1a3d9f">MSInheritanceAttr</a>(<a class="code" href="namespaceclang_1_1attr.html#ac160b7b7240633e6932ebb177d0f03ef">attr::Kind</a> AK, <a class="code" href="classclang_1_1SourceRange.html" title="A trival tuple used to represent a source range.">SourceRange</a> R, <span class="keywordtype">unsigned</span> <a class="code" href="classclang_1_1Attr.html#ab41e08496ae1aac43fd7882b62e20cb8">SpellingListIndex</a> = 0)</div>
+<div class="line"><a name="l00143"></a><span class="lineno">  143</span>     : <a class="code" href="classclang_1_1InheritableAttr.html">InheritableAttr</a>(AK, R, <a class="code" href="classclang_1_1Attr.html#ab41e08496ae1aac43fd7882b62e20cb8">SpellingListIndex</a>) {}</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> <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00146"></a><span class="lineno">  146</span>   <span class="comment">// Implement isa/cast/dyncast/etc.</span></div>
+<div class="line"><a name="l00147"></a><span class="lineno"><a class="code" href="classclang_1_1MSInheritanceAttr.html#ad8362d3e17d3700d4acd13a40f3d5b74">  147</a></span>   <span class="keyword">static</span> <span class="keywordtype">bool</span> <a class="code" href="classclang_1_1MSInheritanceAttr.html#ad8362d3e17d3700d4acd13a40f3d5b74">classof</a>(<span class="keyword">const</span> <a class="code" href="classclang_1_1Attr.html" title="Attr - This represents one attribute.">Attr</a> *A) {</div>
+<div class="line"><a name="l00148"></a><span class="lineno"><a class="code" href="classclang_1_1AcquiredBeforeAttr.html#a6457e1336f5eeb66df8686ea6772f1b0">  148</a></span>     <span class="comment">// Relies on relative order of enum emission with respect to param attrs.</span></div>
+<div class="line"><a name="l00149"></a><span class="lineno">  149</span>     <span class="keywordflow">return</span> (A-><a class="code" href="classclang_1_1Attr.html#a3e4355a010163d24f60db913d9fd4bfc">getKind</a>() <= attr::LAST_MS_INHERITANCE &&</div>
+<div class="line"><a name="l00150"></a><span class="lineno">  150</span>             A-><a class="code" href="classclang_1_1Attr.html#a3e4355a010163d24f60db913d9fd4bfc">getKind</a>() > attr::LAST_INHERITABLE_PARAM);</div>
+<div class="line"><a name="l00151"></a><span class="lineno"><a class="code" href="classclang_1_1AcquiredBeforeAttr.html#a68e2c99d2fb648f08f04f94a0f265d44">  151</a></span>   }</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> </div>
+<div class="line"><a name="l00154"></a><span class="lineno"><a class="code" href="classclang_1_1AcquiredBeforeAttr.html#af0688c560ee19e03867a7f02f4a810d7">  154</a></span> <span class="preprocessor">#include "<a class="code" href="Attrs_8inc.html">clang/AST/Attrs.inc</a>"</span></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> }  <span class="comment">// end namespace clang</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> <span class="preprocessor">#endif</span></div>
+</div><!-- fragment --></div><!-- contents -->
+<hr>
+<p class="footer">
+Generated on Mon May 12 2014 12:13:18 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/AttributeList_8cpp_source.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/3.5.1/tools/clang/docs/doxygen/html/AttributeList_8cpp_source.html?rev=225843&view=auto
==============================================================================
--- www-releases/trunk/3.5.1/tools/clang/docs/doxygen/html/AttributeList_8cpp_source.html (added)
+++ www-releases/trunk/3.5.1/tools/clang/docs/doxygen/html/AttributeList_8cpp_source.html Tue Jan 13 16:55:20 2015
@@ -0,0 +1,251 @@
+<!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: AttributeList.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_0c3cadfa2fbef89a3b8f57073e8a31f9.html">Sema</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">AttributeList.cpp</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="AttributeList_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">//===--- AttributeList.cpp --------------------------------------*- 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 the AttributeList class implementation</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span> <span class="comment">//</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> </div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span> <span class="preprocessor">#include "<a class="code" href="AttributeList_8h.html">clang/Sema/AttributeList.h</a>"</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span> <span class="preprocessor">#include "<a class="code" href="ASTContext_8h.html" title="Defines the clang::ASTContext interface.">clang/AST/ASTContext.h</a>"</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span> <span class="preprocessor">#include "<a class="code" href="Expr_8h.html">clang/AST/Expr.h</a>"</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span> <span class="preprocessor">#include "<a class="code" href="IdentifierTable_8h.html" title="Defines the clang::IdentifierInfo, clang::IdentifierTable, and clang::Selector interfaces.">clang/Basic/IdentifierTable.h</a>"</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span> <span class="preprocessor">#include "llvm/ADT/SmallString.h"</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span> <span class="preprocessor">#include "llvm/ADT/StringSwitch.h"</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span> <span class="keyword">using namespace </span>clang;</div>
+<div class="line"><a name="l00021"></a><span class="lineno">   21</span> </div>
+<div class="line"><a name="l00022"></a><span class="lineno"><a class="code" href="structclang_1_1IdentifierLoc.html#a892a078bd75776549e681860755ef32f">   22</a></span> <a class="code" href="structclang_1_1IdentifierLoc.html" title="Wraps an identifier and optional source location for the identifier.">IdentifierLoc</a> *<a class="code" href="structclang_1_1IdentifierLoc.html#a892a078bd75776549e681860755ef32f">IdentifierLoc::create</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, <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> Loc,</div>
+<div class="line"><a name="l00023"></a><span class="lineno">   23</span>                                      <a class="code" href="classclang_1_1IdentifierInfo.html">IdentifierInfo</a> *Ident) {</div>
+<div class="line"><a name="l00024"></a><span class="lineno">   24</span>   <a class="code" href="structclang_1_1IdentifierLoc.html" title="Wraps an identifier and optional source location for the identifier.">IdentifierLoc</a> *Result = <span class="keyword">new</span> (Ctx) <a class="code" href="structclang_1_1IdentifierLoc.html" title="Wraps an identifier and optional source location for the identifier.">IdentifierLoc</a>;</div>
+<div class="line"><a name="l00025"></a><span class="lineno">   25</span>   Result-><a class="code" href="structclang_1_1IdentifierLoc.html#a578b8e66510e593cace88d60a2a00325">Loc</a> = <a class="code" href="structclang_1_1IdentifierLoc.html#a578b8e66510e593cace88d60a2a00325">Loc</a>;</div>
+<div class="line"><a name="l00026"></a><span class="lineno">   26</span>   Result-><a class="code" href="structclang_1_1IdentifierLoc.html#a57f05785901045720c4255a8761f780c">Ident</a> = <a class="code" href="structclang_1_1IdentifierLoc.html#a57f05785901045720c4255a8761f780c">Ident</a>;</div>
+<div class="line"><a name="l00027"></a><span class="lineno">   27</span>   <span class="keywordflow">return</span> Result;</div>
+<div class="line"><a name="l00028"></a><span class="lineno">   28</span> }</div>
+<div class="line"><a name="l00029"></a><span class="lineno">   29</span> </div>
+<div class="line"><a name="l00030"></a><span class="lineno">   30</span> <span class="keywordtype">size_t</span> AttributeList::allocated_size()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00031"></a><span class="lineno">   31</span>   <span class="keywordflow">if</span> (IsAvailability) <span class="keywordflow">return</span> <a class="code" href="classclang_1_1AttributeFactory.html#a9474896d41475d565726965fef1dfb80aea582c9ffd33a969e15bb1f53d36975c">AttributeFactory::AvailabilityAllocSize</a>;</div>
+<div class="line"><a name="l00032"></a><span class="lineno">   32</span>   <span class="keywordflow">else</span> <span class="keywordflow">if</span> (IsTypeTagForDatatype)</div>
+<div class="line"><a name="l00033"></a><span class="lineno">   33</span>     <span class="keywordflow">return</span> <a class="code" href="classclang_1_1AttributeFactory.html#a9474896d41475d565726965fef1dfb80a7002d4373448039aecb3b5fc622d8aa8">AttributeFactory::TypeTagForDatatypeAllocSize</a>;</div>
+<div class="line"><a name="l00034"></a><span class="lineno">   34</span>   <span class="keywordflow">else</span> <span class="keywordflow">if</span> (IsProperty)</div>
+<div class="line"><a name="l00035"></a><span class="lineno">   35</span>     <span class="keywordflow">return</span> <a class="code" href="classclang_1_1AttributeFactory.html#a9474896d41475d565726965fef1dfb80ac52ee6eeb6ae80dee1ef6d0ee9517265">AttributeFactory::PropertyAllocSize</a>;</div>
+<div class="line"><a name="l00036"></a><span class="lineno">   36</span>   <span class="keywordflow">return</span> (<span class="keyword">sizeof</span>(<a class="code" href="classclang_1_1AttributeList.html">AttributeList</a>) + NumArgs * <span class="keyword">sizeof</span>(<a class="code" href="namespaceclang.html#aef421691d7b5e01971c6bf88afc6a969" title="A union of the various pointer types that can be passed to an AttributeList as an argument...">ArgsUnion</a>));</div>
+<div class="line"><a name="l00037"></a><span class="lineno">   37</span> }</div>
+<div class="line"><a name="l00038"></a><span class="lineno">   38</span> </div>
+<div class="line"><a name="l00039"></a><span class="lineno"><a class="code" href="classclang_1_1AttributeFactory.html#a55d388271f308e3105344163e56dddc4">   39</a></span> <a class="code" href="classclang_1_1AttributeFactory.html#a55d388271f308e3105344163e56dddc4">AttributeFactory::AttributeFactory</a>() {</div>
+<div class="line"><a name="l00040"></a><span class="lineno">   40</span>   <span class="comment">// Go ahead and configure all the inline capacity.  This is just a memset.</span></div>
+<div class="line"><a name="l00041"></a><span class="lineno">   41</span>   FreeLists.resize(InlineFreeListsCapacity);</div>
+<div class="line"><a name="l00042"></a><span class="lineno">   42</span> }</div>
+<div class="line"><a name="l00043"></a><span class="lineno"><a class="code" href="classclang_1_1AttributeFactory.html#aa61358476fd57a78a4f3d6476b0ca64b">   43</a></span> <a class="code" href="classclang_1_1AttributeFactory.html#aa61358476fd57a78a4f3d6476b0ca64b">AttributeFactory::~AttributeFactory</a>() {}</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="AttributeList_8cpp.html#a3f037b74f78a538b66cb43dc298626e9">   45</a></span> <span class="keyword">static</span> <span class="keywordtype">size_t</span> <a class="code" href="AttributeList_8cpp.html#a3f037b74f78a538b66cb43dc298626e9">getFreeListIndexForSize</a>(<span class="keywordtype">size_t</span> size) {</div>
+<div class="line"><a name="l00046"></a><span class="lineno">   46</span>   assert(size >= <span class="keyword">sizeof</span>(<a class="code" href="classclang_1_1AttributeList.html">AttributeList</a>));</div>
+<div class="line"><a name="l00047"></a><span class="lineno">   47</span>   assert((size % <span class="keyword">sizeof</span>(<span class="keywordtype">void</span>*)) == 0);</div>
+<div class="line"><a name="l00048"></a><span class="lineno">   48</span>   <span class="keywordflow">return</span> ((size - <span class="keyword">sizeof</span>(<a class="code" href="classclang_1_1AttributeList.html">AttributeList</a>)) / <span class="keyword">sizeof</span>(<span class="keywordtype">void</span>*));</div>
+<div class="line"><a name="l00049"></a><span class="lineno">   49</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> <span class="keywordtype">void</span> *AttributeFactory::allocate(<span class="keywordtype">size_t</span> size) {</div>
+<div class="line"><a name="l00052"></a><span class="lineno">   52</span>   <span class="comment">// Check for a previously reclaimed attribute.</span></div>
+<div class="line"><a name="l00053"></a><span class="lineno">   53</span>   <span class="keywordtype">size_t</span> index = <a class="code" href="AttributeList_8cpp.html#a3f037b74f78a538b66cb43dc298626e9">getFreeListIndexForSize</a>(size);</div>
+<div class="line"><a name="l00054"></a><span class="lineno">   54</span>   <span class="keywordflow">if</span> (index < FreeLists.size()) {</div>
+<div class="line"><a name="l00055"></a><span class="lineno">   55</span>     <span class="keywordflow">if</span> (<a class="code" href="classclang_1_1AttributeList.html">AttributeList</a> *attr = FreeLists[index]) {</div>
+<div class="line"><a name="l00056"></a><span class="lineno">   56</span>       FreeLists[index] = attr->NextInPool;</div>
+<div class="line"><a name="l00057"></a><span class="lineno">   57</span>       <span class="keywordflow">return</span> attr;</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="comment">// Otherwise, allocate something new.</span></div>
+<div class="line"><a name="l00062"></a><span class="lineno">   62</span>   <span class="keywordflow">return</span> Alloc.Allocate(size, llvm::AlignOf<AttributeFactory>::Alignment);</div>
+<div class="line"><a name="l00063"></a><span class="lineno">   63</span> }</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> <span class="keywordtype">void</span> AttributeFactory::reclaimPool(<a class="code" href="classclang_1_1AttributeList.html">AttributeList</a> *cur) {</div>
+<div class="line"><a name="l00066"></a><span class="lineno">   66</span>   assert(cur && <span class="stringliteral">"reclaiming empty pool!"</span>);</div>
+<div class="line"><a name="l00067"></a><span class="lineno">   67</span>   <span class="keywordflow">do</span> {</div>
+<div class="line"><a name="l00068"></a><span class="lineno">   68</span>     <span class="comment">// Read this here, because we're going to overwrite NextInPool</span></div>
+<div class="line"><a name="l00069"></a><span class="lineno">   69</span>     <span class="comment">// when we toss 'cur' into the appropriate queue.</span></div>
+<div class="line"><a name="l00070"></a><span class="lineno">   70</span>     <a class="code" href="classclang_1_1AttributeList.html">AttributeList</a> *next = cur->NextInPool;</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="keywordtype">size_t</span> size = cur->allocated_size();</div>
+<div class="line"><a name="l00073"></a><span class="lineno">   73</span>     <span class="keywordtype">size_t</span> freeListIndex = <a class="code" href="AttributeList_8cpp.html#a3f037b74f78a538b66cb43dc298626e9">getFreeListIndexForSize</a>(size);</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>     <span class="comment">// Expand FreeLists to the appropriate size, if required.</span></div>
+<div class="line"><a name="l00076"></a><span class="lineno">   76</span>     <span class="keywordflow">if</span> (freeListIndex >= FreeLists.size())</div>
+<div class="line"><a name="l00077"></a><span class="lineno">   77</span>       FreeLists.resize(freeListIndex+1);</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="comment">// Add 'cur' to the appropriate free-list.</span></div>
+<div class="line"><a name="l00080"></a><span class="lineno">   80</span>     cur->NextInPool = FreeLists[freeListIndex];</div>
+<div class="line"><a name="l00081"></a><span class="lineno">   81</span>     FreeLists[freeListIndex] = cur;</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>     cur = next;</div>
+<div class="line"><a name="l00084"></a><span class="lineno">   84</span>   } <span class="keywordflow">while</span> (cur);</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> </div>
+<div class="line"><a name="l00087"></a><span class="lineno">   87</span> <span class="keywordtype">void</span> AttributePool::takePool(<a class="code" href="classclang_1_1AttributeList.html">AttributeList</a> *pool) {</div>
+<div class="line"><a name="l00088"></a><span class="lineno">   88</span>   assert(pool);</div>
+<div class="line"><a name="l00089"></a><span class="lineno">   89</span> </div>
+<div class="line"><a name="l00090"></a><span class="lineno">   90</span>   <span class="comment">// Fast path:  this pool is empty.</span></div>
+<div class="line"><a name="l00091"></a><span class="lineno">   91</span>   <span class="keywordflow">if</span> (!Head) {</div>
+<div class="line"><a name="l00092"></a><span class="lineno">   92</span>     Head = pool;</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> </div>
+<div class="line"><a name="l00096"></a><span class="lineno">   96</span>   <span class="comment">// Reverse the pool onto the current head.  This optimizes for the</span></div>
+<div class="line"><a name="l00097"></a><span class="lineno">   97</span>   <span class="comment">// pattern of pulling a lot of pools into a single pool.</span></div>
+<div class="line"><a name="l00098"></a><span class="lineno">   98</span>   <span class="keywordflow">do</span> {</div>
+<div class="line"><a name="l00099"></a><span class="lineno">   99</span>     <a class="code" href="classclang_1_1AttributeList.html">AttributeList</a> *next = pool->NextInPool;</div>
+<div class="line"><a name="l00100"></a><span class="lineno">  100</span>     pool->NextInPool = Head;</div>
+<div class="line"><a name="l00101"></a><span class="lineno">  101</span>     Head = pool;</div>
+<div class="line"><a name="l00102"></a><span class="lineno">  102</span>     pool = next;</div>
+<div class="line"><a name="l00103"></a><span class="lineno">  103</span>   } <span class="keywordflow">while</span> (pool);</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> <a class="code" href="classclang_1_1AttributeList.html">AttributeList</a> *</div>
+<div class="line"><a name="l00107"></a><span class="lineno"><a class="code" href="classclang_1_1AttributePool.html#afa04e589ffecbd7513dea8bc2d1b8c35">  107</a></span> <a class="code" href="classclang_1_1AttributePool.html#afa04e589ffecbd7513dea8bc2d1b8c35">AttributePool::createIntegerAttribute</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_1IdentifierInfo.html">IdentifierInfo</a> *Name,</div>
+<div class="line"><a name="l00108"></a><span class="lineno">  108</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> TokLoc, <span class="keywordtype">int</span> Arg) {</div>
+<div class="line"><a name="l00109"></a><span class="lineno">  109</span>   <a class="code" href="namespaceclang.html#aef421691d7b5e01971c6bf88afc6a969" title="A union of the various pointer types that can be passed to an AttributeList as an argument...">ArgsUnion</a> IArg = <a class="code" href="classclang_1_1IntegerLiteral.html#a68782c17506bd26183c21aa2bf9dc1d7" title="Returns a new integer literal with value 'V' and type 'type'.">IntegerLiteral::Create</a>(C, llvm::APInt(32, (uint64_t) Arg),</div>
+<div class="line"><a name="l00110"></a><span class="lineno">  110</span>                                       C.<a class="code" href="classclang_1_1ASTContext.html#a873a1148a8ffe184f0e5bd27bf90c0dc">IntTy</a>, TokLoc);</div>
+<div class="line"><a name="l00111"></a><span class="lineno">  111</span>   <span class="keywordflow">return</span> <a class="code" href="classclang_1_1AttributePool.html#a2d2e65f3a85f5799c78cee56a2b2804c">create</a>(Name, TokLoc, 0, TokLoc, &IArg, 1, <a class="code" href="classclang_1_1AttributeList.html#a7e6e722d96e46b102c1de17fea3a6374a0bf6a4c4b559fe779e07ad7dfe51621b" title="attribute((...))">AttributeList::AS_GNU</a>);</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> </div>
+<div class="line"><a name="l00114"></a><span class="lineno">  114</span> <span class="preprocessor">#include "<a class="code" href="AttrParsedAttrKinds_8inc.html">clang/Sema/AttrParsedAttrKinds.inc</a>"</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"><a class="code" href="classclang_1_1AttributeList.html#a81281657acdb77eab53c62b32e0aa7b4">  116</a></span> <a class="code" href="classclang_1_1AttributeList.html#abfb7b1d3d2044394d2733eeba84cf8a2">AttributeList::Kind</a> <a class="code" href="classclang_1_1AttributeList.html#a4e563bd986f1003c1e51398b1f7aadd9">AttributeList::getKind</a>(<span class="keyword">const</span> <a class="code" href="classclang_1_1IdentifierInfo.html">IdentifierInfo</a> *Name,</div>
+<div class="line"><a name="l00117"></a><span class="lineno">  117</span>                                            <span class="keyword">const</span> <a class="code" href="classclang_1_1IdentifierInfo.html">IdentifierInfo</a> *ScopeName,</div>
+<div class="line"><a name="l00118"></a><span class="lineno">  118</span>                                            <a class="code" href="classclang_1_1AttributeList.html#a7e6e722d96e46b102c1de17fea3a6374" title="The style used to specify an attribute.">Syntax</a> SyntaxUsed) {</div>
+<div class="line"><a name="l00119"></a><span class="lineno">  119</span>   StringRef AttrName = Name-><a class="code" href="classclang_1_1IdentifierInfo.html#a94caec6a16e508e8ca39eacd278bd2c5" title="Return the actual identifier string.">getName</a>();</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="comment">// Normalize the attribute name, __foo__ becomes foo.</span></div>
+<div class="line"><a name="l00122"></a><span class="lineno">  122</span>   <span class="keywordflow">if</span> (AttrName.startswith(<span class="stringliteral">"__"</span>) && AttrName.endswith(<span class="stringliteral">"__"</span>) &&</div>
+<div class="line"><a name="l00123"></a><span class="lineno">  123</span>       AttrName.size() >= 4)</div>
+<div class="line"><a name="l00124"></a><span class="lineno">  124</span>     AttrName = AttrName.substr(2, AttrName.size() - 4);</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>   <a class="code" href="classllvm_1_1SmallString.html">SmallString<64></a> Buf;</div>
+<div class="line"><a name="l00127"></a><span class="lineno">  127</span>   <span class="keywordflow">if</span> (ScopeName)</div>
+<div class="line"><a name="l00128"></a><span class="lineno">  128</span>     Buf += ScopeName-><a class="code" href="classclang_1_1IdentifierInfo.html#a94caec6a16e508e8ca39eacd278bd2c5" title="Return the actual identifier string.">getName</a>();</div>
+<div class="line"><a name="l00129"></a><span class="lineno">  129</span>   <span class="comment">// Ensure that in the case of C++11 attributes, we look for '::foo' if it is</span></div>
+<div class="line"><a name="l00130"></a><span class="lineno">  130</span>   <span class="comment">// unscoped.</span></div>
+<div class="line"><a name="l00131"></a><span class="lineno">  131</span>   <span class="keywordflow">if</span> (ScopeName || SyntaxUsed == <a class="code" href="classclang_1_1AttributeList.html#a7e6e722d96e46b102c1de17fea3a6374aa5ea0ec784985c05430e002c3ca6f561" title="[[...]]">AS_CXX11</a>)</div>
+<div class="line"><a name="l00132"></a><span class="lineno">  132</span>     Buf += <span class="stringliteral">"::"</span>;</div>
+<div class="line"><a name="l00133"></a><span class="lineno">  133</span>   Buf += AttrName;</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>   return ::getAttrKind(Buf);</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> </div>
+<div class="line"><a name="l00138"></a><span class="lineno"><a class="code" href="classclang_1_1AttributeList.html#a974c2758cab66d8b8f94c368c3ccf57c">  138</a></span> <span class="keywordtype">unsigned</span> <a class="code" href="classclang_1_1AttributeList.html#a974c2758cab66d8b8f94c368c3ccf57c" title="Get an index into the attribute spelling list defined in Attr.td. This index is used by an attribute ...">AttributeList::getAttributeSpellingListIndex</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00139"></a><span class="lineno">  139</span>   <span class="comment">// Both variables will be used in tablegen generated</span></div>
+<div class="line"><a name="l00140"></a><span class="lineno">  140</span>   <span class="comment">// attribute spell list index matching code.</span></div>
+<div class="line"><a name="l00141"></a><span class="lineno">  141</span>   StringRef Name = AttrName-><a class="code" href="classclang_1_1IdentifierInfo.html#a94caec6a16e508e8ca39eacd278bd2c5" title="Return the actual identifier string.">getName</a>();</div>
+<div class="line"><a name="l00142"></a><span class="lineno">  142</span>   StringRef <a class="code" href="classclang_1_1Scope.html">Scope</a> = ScopeName ? ScopeName-><a class="code" href="classclang_1_1IdentifierInfo.html#a94caec6a16e508e8ca39eacd278bd2c5" title="Return the actual identifier string.">getName</a>() : <span class="stringliteral">""</span>;</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> <span class="preprocessor">#include "<a class="code" href="AttrSpellingListIndex_8inc.html">clang/Sema/AttrSpellingListIndex.inc</a>"</span></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> }</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="structParsedAttrInfo.html">  148</a></span> <span class="keyword">struct </span><a class="code" href="structParsedAttrInfo.html">ParsedAttrInfo</a> {</div>
+<div class="line"><a name="l00149"></a><span class="lineno"><a class="code" href="structParsedAttrInfo.html#ad4bd68fc14fb83d144f500d7e84df492">  149</a></span>   <span class="keywordtype">unsigned</span> NumArgs : 4;</div>
+<div class="line"><a name="l00150"></a><span class="lineno"><a class="code" href="structParsedAttrInfo.html#ac74ebaaf0e82df28249f19f62c579298">  150</a></span>   <span class="keywordtype">unsigned</span> OptArgs : 4;</div>
+<div class="line"><a name="l00151"></a><span class="lineno"><a class="code" href="structParsedAttrInfo.html#acab19b815c53c903e803ab4f132ae002">  151</a></span>   <span class="keywordtype">unsigned</span> HasCustomParsing : 1;</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> </div>
+<div class="line"><a name="l00154"></a><span class="lineno">  154</span> <span class="keyword">namespace </span>{</div>
+<div class="line"><a name="l00155"></a><span class="lineno">  155</span> <span class="preprocessor">  #include "<a class="code" href="AttrParsedAttrImpl_8inc.html">clang/Sema/AttrParsedAttrImpl.inc</a>"</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> </div>
+<div class="line"><a name="l00158"></a><span class="lineno"><a class="code" href="AttributeList_8cpp.html#ac264a323a3b1cca3b6e216b68325d7a3">  158</a></span> <span class="keyword">static</span> <span class="keyword">const</span> <a class="code" href="structParsedAttrInfo.html">ParsedAttrInfo</a> &<a class="code" href="AttributeList_8cpp.html#ac264a323a3b1cca3b6e216b68325d7a3">getInfo</a>(<span class="keyword">const</span> <a class="code" href="classclang_1_1AttributeList.html">AttributeList</a> &A) {</div>
+<div class="line"><a name="l00159"></a><span class="lineno">  159</span>   <span class="keywordflow">return</span> AttrInfoMap[A.<a class="code" href="classclang_1_1AttributeList.html#a4e563bd986f1003c1e51398b1f7aadd9">getKind</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> </div>
+<div class="line"><a name="l00162"></a><span class="lineno"><a class="code" href="classclang_1_1AttributeList.html#a9247e9b386f2910b292e620f138b48d5">  162</a></span> <span class="keywordtype">unsigned</span> <a class="code" href="classclang_1_1AttributeList.html#a9247e9b386f2910b292e620f138b48d5">AttributeList::getMinArgs</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00163"></a><span class="lineno">  163</span>   <span class="keywordflow">return</span> <a class="code" href="AttributeList_8cpp.html#ac264a323a3b1cca3b6e216b68325d7a3">getInfo</a>(*this).<a class="code" href="structParsedAttrInfo.html#ad4bd68fc14fb83d144f500d7e84df492">NumArgs</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> </div>
+<div class="line"><a name="l00166"></a><span class="lineno"><a class="code" href="classclang_1_1AttributeList.html#aa7ee1854886b0be2899011efa10a3c7d">  166</a></span> <span class="keywordtype">unsigned</span> <a class="code" href="classclang_1_1AttributeList.html#aa7ee1854886b0be2899011efa10a3c7d">AttributeList::getMaxArgs</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00167"></a><span class="lineno">  167</span>   <span class="keywordflow">return</span> <a class="code" href="classclang_1_1AttributeList.html#a9247e9b386f2910b292e620f138b48d5">getMinArgs</a>() + <a class="code" href="AttributeList_8cpp.html#ac264a323a3b1cca3b6e216b68325d7a3">getInfo</a>(*this).<a class="code" href="structParsedAttrInfo.html#ac74ebaaf0e82df28249f19f62c579298">OptArgs</a>;</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> </div>
+<div class="line"><a name="l00170"></a><span class="lineno"><a class="code" href="classclang_1_1AttributeList.html#a9f6b5bbb3d10a4ba0be3e5dee02f3072">  170</a></span> <span class="keywordtype">bool</span> <a class="code" href="classclang_1_1AttributeList.html#a9f6b5bbb3d10a4ba0be3e5dee02f3072">AttributeList::hasCustomParsing</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00171"></a><span class="lineno">  171</span>   <span class="keywordflow">return</span> <a class="code" href="AttributeList_8cpp.html#ac264a323a3b1cca3b6e216b68325d7a3">getInfo</a>(*this).<a class="code" href="structParsedAttrInfo.html#acab19b815c53c903e803ab4f132ae002">HasCustomParsing</a>;</div>
+<div class="line"><a name="l00172"></a><span class="lineno">  172</span> }</div>
+</div><!-- fragment --></div><!-- contents -->
+<hr>
+<p class="footer">
+Generated on Mon May 12 2014 12:13:18 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/AttributeList_8d_source.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/3.5.1/tools/clang/docs/doxygen/html/AttributeList_8d_source.html?rev=225843&view=auto
==============================================================================
--- www-releases/trunk/3.5.1/tools/clang/docs/doxygen/html/AttributeList_8d_source.html (added)
+++ www-releases/trunk/3.5.1/tools/clang/docs/doxygen/html/AttributeList_8d_source.html Tue Jan 13 16:55:20 2015
@@ -0,0 +1,424 @@
+<!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: AttributeList.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_0c3cadfa2fbef89a3b8f57073e8a31f9.html">Sema</a></li><li class="navelem"><a class="el" href="dir_eb0099ce9b4bd055698282f76081f892.html">Release+Asserts</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">AttributeList.d</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="AttributeList_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/Sema/Release+Asserts/AttributeList.o \</div>
+<div class="line"><a name="l00002"></a><span class="lineno">    2</span>  /home/tstellar/llvm/tools/clang/lib/Sema/Release+Asserts/AttributeList.d: \</div>
+<div class="line"><a name="l00003"></a><span class="lineno">    3</span>  AttributeList.cpp \</div>
+<div class="line"><a name="l00004"></a><span class="lineno">    4</span>  /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/Sema/AttributeList.h \</div>
+<div class="line"><a name="l00005"></a><span class="lineno">    5</span>  /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/Basic/SourceLocation.h \</div>
+<div class="line"><a name="l00006"></a><span class="lineno">    6</span>  /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/Basic/LLVM.h \</div>
+<div class="line"><a name="l00007"></a><span class="lineno">    7</span>  /home/tstellar/llvm/include/llvm/Support/Casting.h \</div>
+<div class="line"><a name="l00008"></a><span class="lineno">    8</span>  /home/tstellar/llvm/include/llvm/Support/type_traits.h \</div>
+<div class="line"><a name="l00009"></a><span class="lineno">    9</span>  /home/tstellar/llvm/include/llvm/Support/DataTypes.h \</div>
+<div class="line"><a name="l00010"></a><span class="lineno">   10</span>  /home/tstellar/llvm/include/llvm/ADT/None.h \</div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span>  /home/tstellar/llvm/include/llvm/Support/Compiler.h \</div>
+<div class="line"><a name="l00012"></a><span class="lineno">   12</span>  /home/tstellar/llvm/include/llvm/Config/llvm-config.h \</div>
+<div class="line"><a name="l00013"></a><span class="lineno">   13</span>  /home/tstellar/llvm/include/llvm/Support/PointerLikeTypeTraits.h \</div>
+<div class="line"><a name="l00014"></a><span class="lineno">   14</span>  /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/Basic/VersionTuple.h \</div>
+<div class="line"><a name="l00015"></a><span class="lineno">   15</span>  /home/tstellar/llvm/include/llvm/ADT/Optional.h \</div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span>  /home/tstellar/llvm/include/llvm/Support/AlignOf.h \</div>
+<div class="line"><a name="l00017"></a><span class="lineno">   17</span>  /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/Sema/Ownership.h \</div>
+<div class="line"><a name="l00018"></a><span class="lineno">   18</span>  /home/tstellar/llvm/include/llvm/ADT/ArrayRef.h \</div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span>  /home/tstellar/llvm/include/llvm/ADT/SmallVector.h \</div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span>  /home/tstellar/llvm/include/llvm/Support/MathExtras.h \</div>
+<div class="line"><a name="l00021"></a><span class="lineno">   21</span>  /home/tstellar/llvm/include/llvm/Support/SwapByteOrder.h \</div>
+<div class="line"><a name="l00022"></a><span class="lineno">   22</span>  /home/tstellar/llvm/include/llvm/ADT/PointerIntPair.h \</div>
+<div class="line"><a name="l00023"></a><span class="lineno">   23</span>  /home/tstellar/llvm/include/llvm/ADT/PointerUnion.h \</div>
+<div class="line"><a name="l00024"></a><span class="lineno">   24</span>  /home/tstellar/llvm/include/llvm/Support/<a class="code" href="Format_8cpp.html#a0805f884ee63233d49322f71926371de">Allocator</a>.h \</div>
+<div class="line"><a name="l00025"></a><span class="lineno">   25</span>  /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/Sema/AttrParsedAttrList.inc \</div>
+<div class="line"><a name="l00026"></a><span class="lineno">   26</span>  /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/AST/ASTContext.h \</div>
+<div class="line"><a name="l00027"></a><span class="lineno">   27</span>  /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/AST/ASTTypeTraits.h \</div>
+<div class="line"><a name="l00028"></a><span class="lineno">   28</span>  /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/AST/ASTFwd.h \</div>
+<div class="line"><a name="l00029"></a><span class="lineno">   29</span>  /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/AST/DeclNodes.inc \</div>
+<div class="line"><a name="l00030"></a><span class="lineno">   30</span>  /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/AST/StmtNodes.inc \</div>
+<div class="line"><a name="l00031"></a><span class="lineno">   31</span>  /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/AST/TypeNodes.def \</div>
+<div class="line"><a name="l00032"></a><span class="lineno">   32</span>  /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/AST/Decl.h \</div>
+<div class="line"><a name="l00033"></a><span class="lineno">   33</span>  /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/AST/APValue.h \</div>
+<div class="line"><a name="l00034"></a><span class="lineno">   34</span>  /home/tstellar/llvm/include/llvm/ADT/APFloat.h \</div>
+<div class="line"><a name="l00035"></a><span class="lineno">   35</span>  /home/tstellar/llvm/include/llvm/ADT/APInt.h \</div>
+<div class="line"><a name="l00036"></a><span class="lineno">   36</span>  /home/tstellar/llvm/include/llvm/ADT/APSInt.h \</div>
+<div class="line"><a name="l00037"></a><span class="lineno">   37</span>  /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/AST/DeclBase.h \</div>
+<div class="line"><a name="l00038"></a><span class="lineno">   38</span>  /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/AST/AttrIterator.h \</div>
+<div class="line"><a name="l00039"></a><span class="lineno">   39</span>  /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/AST/DeclarationName.h \</div>
+<div class="line"><a name="l00040"></a><span class="lineno">   40</span>  /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/Basic/IdentifierTable.h \</div>
+<div class="line"><a name="l00041"></a><span class="lineno">   41</span>  /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/Basic/OperatorKinds.h \</div>
+<div class="line"><a name="l00042"></a><span class="lineno">   42</span>  /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/Basic/OperatorKinds.def \</div>
+<div class="line"><a name="l00043"></a><span class="lineno">   43</span>  /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/Basic/TokenKinds.h \</div>
+<div class="line"><a name="l00044"></a><span class="lineno">   44</span>  /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/Basic/TokenKinds.def \</div>
+<div class="line"><a name="l00045"></a><span class="lineno">   45</span>  /home/tstellar/llvm/include/llvm/ADT/SmallString.h \</div>
+<div class="line"><a name="l00046"></a><span class="lineno">   46</span>  /home/tstellar/llvm/include/llvm/ADT/StringRef.h \</div>
+<div class="line"><a name="l00047"></a><span class="lineno">   47</span>  /home/tstellar/llvm/include/llvm/ADT/StringMap.h \</div>
+<div class="line"><a name="l00048"></a><span class="lineno">   48</span>  /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/Basic/PartialDiagnostic.h \</div>
+<div class="line"><a name="l00049"></a><span class="lineno">   49</span>  /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/Basic/Diagnostic.h \</div>
+<div class="line"><a name="l00050"></a><span class="lineno">   50</span>  /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/Basic/DiagnosticIDs.h \</div>
+<div class="line"><a name="l00051"></a><span class="lineno">   51</span>  /home/tstellar/llvm/include/llvm/ADT/IntrusiveRefCntPtr.h \</div>
+<div class="line"><a name="l00052"></a><span class="lineno">   52</span>  /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/Basic/DiagnosticCommonKinds.inc \</div>
+<div class="line"><a name="l00053"></a><span class="lineno">   53</span>  /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/Basic/DiagnosticOptions.h \</div>
+<div class="line"><a name="l00054"></a><span class="lineno">   54</span>  /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/Basic/DiagnosticOptions.def \</div>
+<div class="line"><a name="l00055"></a><span class="lineno">   55</span>  /home/tstellar/llvm/include/llvm/ADT/DenseMap.h \</div>
+<div class="line"><a name="l00056"></a><span class="lineno">   56</span>  /home/tstellar/llvm/include/llvm/ADT/DenseMapInfo.h \</div>
+<div class="line"><a name="l00057"></a><span class="lineno">   57</span>  /home/tstellar/llvm/include/llvm/ADT/STLExtras.h \</div>
+<div class="line"><a name="l00058"></a><span class="lineno">   58</span>  /home/tstellar/llvm/tools/clang/lib/Sema/../../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="l00059"></a><span class="lineno">   59</span>  /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/Basic/Specifiers.h \</div>
+<div class="line"><a name="l00060"></a><span class="lineno">   60</span>  /home/tstellar/llvm/include/llvm/Support/PrettyStackTrace.h \</div>
+<div class="line"><a name="l00061"></a><span class="lineno">   61</span>  /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/AST/ExternalASTSource.h \</div>
+<div class="line"><a name="l00062"></a><span class="lineno">   62</span>  /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/AST/CharUnits.h \</div>
+<div class="line"><a name="l00063"></a><span class="lineno">   63</span>  /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/AST/Redeclarable.h \</div>
+<div class="line"><a name="l00064"></a><span class="lineno">   64</span>  /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/AST/Type.h \</div>
+<div class="line"><a name="l00065"></a><span class="lineno">   65</span>  /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/AST/NestedNameSpecifier.h \</div>
+<div class="line"><a name="l00066"></a><span class="lineno">   66</span>  /home/tstellar/llvm/include/llvm/ADT/FoldingSet.h \</div>
+<div class="line"><a name="l00067"></a><span class="lineno">   67</span>  /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/AST/TemplateName.h \</div>
+<div class="line"><a name="l00068"></a><span class="lineno">   68</span>  /home/tstellar/llvm/tools/clang/lib/Sema/../../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="l00069"></a><span class="lineno">   69</span>  /home/tstellar/llvm/tools/clang/lib/Sema/../../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="l00070"></a><span class="lineno">   70</span>  /home/tstellar/llvm/include/llvm/ADT/Twine.h \</div>
+<div class="line"><a name="l00071"></a><span class="lineno">   71</span>  /home/tstellar/llvm/include/llvm/Support/ErrorHandling.h \</div>
+<div class="line"><a name="l00072"></a><span class="lineno">   72</span>  /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/AST/BuiltinTypes.def \</div>
+<div class="line"><a name="l00073"></a><span class="lineno">   73</span>  /home/tstellar/llvm/include/llvm/Support/raw_ostream.h \</div>
+<div class="line"><a name="l00074"></a><span class="lineno">   74</span>  /home/tstellar/llvm/include/llvm/Support/FileSystem.h \</div>
+<div class="line"><a name="l00075"></a><span class="lineno">   75</span>  /home/tstellar/llvm/include/llvm/ADT/OwningPtr.h \</div>
+<div class="line"><a name="l00076"></a><span class="lineno">   76</span>  /home/tstellar/llvm/include/llvm/Support/TimeValue.h \</div>
+<div class="line"><a name="l00077"></a><span class="lineno">   77</span>  /home/tstellar/llvm/include/llvm/Support/system_error.h \</div>
+<div class="line"><a name="l00078"></a><span class="lineno">   78</span>  /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/AST/Stmt.h \</div>
+<div class="line"><a name="l00079"></a><span class="lineno">   79</span>  /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/AST/DeclGroup.h \</div>
+<div class="line"><a name="l00080"></a><span class="lineno">   80</span>  /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/AST/StmtIterator.h \</div>
+<div class="line"><a name="l00081"></a><span class="lineno">   81</span>  /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/Basic/CapturedStmt.h \</div>
+<div class="line"><a name="l00082"></a><span class="lineno">   82</span>  /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/AST/TemplateBase.h \</div>
+<div class="line"><a name="l00083"></a><span class="lineno">   83</span>  /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/AST/TypeLoc.h \</div>
+<div class="line"><a name="l00084"></a><span class="lineno">   84</span>  /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/AST/TypeLocNodes.def \</div>
+<div class="line"><a name="l00085"></a><span class="lineno">   85</span>  /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/AST/CanonicalType.h \</div>
+<div class="line"><a name="l00086"></a><span class="lineno">   86</span>  /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/AST/CommentCommandTraits.h \</div>
+<div class="line"><a name="l00087"></a><span class="lineno">   87</span>  /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/Basic/CommentOptions.h \</div>
+<div class="line"><a name="l00088"></a><span class="lineno">   88</span>  /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/AST/CommentCommandList.inc \</div>
+<div class="line"><a name="l00089"></a><span class="lineno">   89</span>  /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/AST/PrettyPrinter.h \</div>
+<div class="line"><a name="l00090"></a><span class="lineno">   90</span>  /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/Basic/LangOptions.h \</div>
+<div class="line"><a name="l00091"></a><span class="lineno">   91</span>  /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/Basic/ObjCRuntime.h \</div>
+<div class="line"><a name="l00092"></a><span class="lineno">   92</span>  /home/tstellar/llvm/include/llvm/ADT/Triple.h \</div>
+<div class="line"><a name="l00093"></a><span class="lineno">   93</span>  /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/Basic/Sanitizers.def \</div>
+<div class="line"><a name="l00094"></a><span class="lineno">   94</span>  /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/Basic/LangOptions.def \</div>
+<div class="line"><a name="l00095"></a><span class="lineno">   95</span>  /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/Basic/OpenCLExtensions.def \</div>
+<div class="line"><a name="l00096"></a><span class="lineno">   96</span>  /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/AST/RawCommentList.h \</div>
+<div class="line"><a name="l00097"></a><span class="lineno">   97</span>  /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/Basic/SourceManager.h \</div>
+<div class="line"><a name="l00098"></a><span class="lineno">   98</span>  /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/Basic/FileManager.h \</div>
+<div class="line"><a name="l00099"></a><span class="lineno">   99</span>  /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/Basic/FileSystemOptions.h \</div>
+<div class="line"><a name="l00100"></a><span class="lineno">  100</span>  /home/tstellar/llvm/include/llvm/ADT/DenseSet.h \</div>
+<div class="line"><a name="l00101"></a><span class="lineno">  101</span>  /home/tstellar/llvm/include/llvm/Support/MemoryBuffer.h \</div>
+<div class="line"><a name="l00102"></a><span class="lineno">  102</span>  /home/tstellar/llvm/include/llvm/Support/CBindingWrapping.h \</div>
+<div class="line"><a name="l00103"></a><span class="lineno">  103</span>  /home/tstellar/llvm/include/llvm-c/Core.h \</div>
+<div class="line"><a name="l00104"></a><span class="lineno">  104</span>  /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/Basic/AddressSpaces.h \</div>
+<div class="line"><a name="l00105"></a><span class="lineno">  105</span>  /home/tstellar/llvm/include/llvm/ADT/SmallPtrSet.h \</div>
+<div class="line"><a name="l00106"></a><span class="lineno">  106</span>  /home/tstellar/llvm/include/llvm/ADT/TinyPtrVector.h \</div>
+<div class="line"><a name="l00107"></a><span class="lineno">  107</span>  /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/AST/Expr.h \</div>
+<div class="line"><a name="l00108"></a><span class="lineno">  108</span>  /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/AST/ASTVector.h \</div>
+<div class="line"><a name="l00109"></a><span class="lineno">  109</span>  /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/AST/DeclAccessPair.h \</div>
+<div class="line"><a name="l00110"></a><span class="lineno">  110</span>  /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/AST/OperationKinds.h \</div>
+<div class="line"><a name="l00111"></a><span class="lineno">  111</span>  /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/Basic/CharInfo.h \</div>
+<div class="line"><a name="l00112"></a><span class="lineno">  112</span>  /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/Basic/TypeTraits.h \</div>
+<div class="line"><a name="l00113"></a><span class="lineno">  113</span>  /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/Basic/Builtins.def \</div>
+<div class="line"><a name="l00114"></a><span class="lineno">  114</span>  /home/tstellar/llvm/include/llvm/ADT/StringSwitch.h \</div>
+<div class="line"><a name="l00115"></a><span class="lineno">  115</span>  /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/Sema/AttrParsedAttrKinds.inc \</div>
+<div class="line"><a name="l00116"></a><span class="lineno">  116</span>  /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/Sema/AttrSpellingListIndex.inc \</div>
+<div class="line"><a name="l00117"></a><span class="lineno">  117</span>  /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/Sema/AttrParsedAttrImpl.inc</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/tools/clang/lib/Sema/../../include/clang/Sema/AttributeList.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/Sema/../../include/clang/Basic/SourceLocation.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/Sema/../../include/clang/Basic/LLVM.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/Support/Casting.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/include/llvm/Support/type_traits.h:</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/include/llvm/Support/DataTypes.h:</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/include/llvm/ADT/None.h:</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/include/llvm/Support/Compiler.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/include/llvm/Config/llvm-config.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/PointerLikeTypeTraits.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/tools/clang/lib/Sema/../../include/clang/Basic/VersionTuple.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/ADT/Optional.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/AlignOf.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/tools/clang/lib/Sema/../../include/clang/Sema/Ownership.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/ADT/ArrayRef.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/ADT/SmallVector.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/MathExtras.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/Support/SwapByteOrder.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/PointerIntPair.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/ADT/PointerUnion.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/<a class="code" href="Format_8cpp.html#a0805f884ee63233d49322f71926371de">Allocator</a>.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/Sema/../../include/clang/Sema/AttrParsedAttrList.inc:</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/Sema/../../include/clang/AST/ASTContext.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/Sema/../../include/clang/AST/ASTTypeTraits.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/tools/clang/lib/Sema/../../include/clang/AST/ASTFwd.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/Sema/../../include/clang/AST/DeclNodes.inc:</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/Sema/../../include/clang/AST/StmtNodes.inc:</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/Sema/../../include/clang/AST/TypeNodes.def:</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/Sema/../../include/clang/AST/Decl.h:</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/Sema/../../include/clang/AST/APValue.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/include/llvm/ADT/APFloat.h:</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/APInt.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/APSInt.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/tools/clang/lib/Sema/../../include/clang/AST/DeclBase.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/Sema/../../include/clang/AST/AttrIterator.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/Sema/../../include/clang/AST/DeclarationName.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/Sema/../../include/clang/Basic/IdentifierTable.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/Sema/../../include/clang/Basic/OperatorKinds.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/Sema/../../include/clang/Basic/OperatorKinds.def:</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/Sema/../../include/clang/Basic/TokenKinds.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/Sema/../../include/clang/Basic/TokenKinds.def:</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/include/llvm/ADT/SmallString.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/include/llvm/ADT/StringRef.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/include/llvm/ADT/StringMap.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/Sema/../../include/clang/Basic/PartialDiagnostic.h:</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/Sema/../../include/clang/Basic/Diagnostic.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> /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/Basic/DiagnosticIDs.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> /home/tstellar/llvm/include/llvm/ADT/IntrusiveRefCntPtr.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/tools/clang/lib/Sema/../../include/clang/Basic/DiagnosticCommonKinds.inc:</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/tools/clang/lib/Sema/../../include/clang/Basic/DiagnosticOptions.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/tools/clang/lib/Sema/../../include/clang/Basic/DiagnosticOptions.def:</div>
+<div class="line"><a name="l00220"></a><span class="lineno">  220</span> </div>
+<div class="line"><a name="l00221"></a><span class="lineno">  221</span> /home/tstellar/llvm/include/llvm/ADT/DenseMap.h:</div>
+<div class="line"><a name="l00222"></a><span class="lineno">  222</span> </div>
+<div class="line"><a name="l00223"></a><span class="lineno">  223</span> /home/tstellar/llvm/include/llvm/ADT/DenseMapInfo.h:</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> /home/tstellar/llvm/include/llvm/ADT/STLExtras.h:</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> /home/tstellar/llvm/tools/clang/lib/Sema/../../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="l00228"></a><span class="lineno">  228</span> </div>
+<div class="line"><a name="l00229"></a><span class="lineno">  229</span> /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/Basic/Specifiers.h:</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> /home/tstellar/llvm/include/llvm/Support/PrettyStackTrace.h:</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> /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/AST/ExternalASTSource.h:</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> /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/AST/CharUnits.h:</div>
+<div class="line"><a name="l00236"></a><span class="lineno">  236</span> </div>
+<div class="line"><a name="l00237"></a><span class="lineno">  237</span> /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/AST/Redeclarable.h:</div>
+<div class="line"><a name="l00238"></a><span class="lineno">  238</span> </div>
+<div class="line"><a name="l00239"></a><span class="lineno">  239</span> /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/AST/Type.h:</div>
+<div class="line"><a name="l00240"></a><span class="lineno">  240</span> </div>
+<div class="line"><a name="l00241"></a><span class="lineno">  241</span> /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/AST/NestedNameSpecifier.h:</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> /home/tstellar/llvm/include/llvm/ADT/FoldingSet.h:</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> /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/AST/TemplateName.h:</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> /home/tstellar/llvm/tools/clang/lib/Sema/../../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="l00248"></a><span class="lineno">  248</span> </div>
+<div class="line"><a name="l00249"></a><span class="lineno">  249</span> /home/tstellar/llvm/tools/clang/lib/Sema/../../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="l00250"></a><span class="lineno">  250</span> </div>
+<div class="line"><a name="l00251"></a><span class="lineno">  251</span> /home/tstellar/llvm/include/llvm/ADT/Twine.h:</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> /home/tstellar/llvm/include/llvm/Support/ErrorHandling.h:</div>
+<div class="line"><a name="l00254"></a><span class="lineno">  254</span> </div>
+<div class="line"><a name="l00255"></a><span class="lineno">  255</span> /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/AST/BuiltinTypes.def:</div>
+<div class="line"><a name="l00256"></a><span class="lineno">  256</span> </div>
+<div class="line"><a name="l00257"></a><span class="lineno">  257</span> /home/tstellar/llvm/include/llvm/Support/raw_ostream.h:</div>
+<div class="line"><a name="l00258"></a><span class="lineno">  258</span> </div>
+<div class="line"><a name="l00259"></a><span class="lineno">  259</span> /home/tstellar/llvm/include/llvm/Support/FileSystem.h:</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> /home/tstellar/llvm/include/llvm/ADT/OwningPtr.h:</div>
+<div class="line"><a name="l00262"></a><span class="lineno">  262</span> </div>
+<div class="line"><a name="l00263"></a><span class="lineno">  263</span> /home/tstellar/llvm/include/llvm/Support/TimeValue.h:</div>
+<div class="line"><a name="l00264"></a><span class="lineno">  264</span> </div>
+<div class="line"><a name="l00265"></a><span class="lineno">  265</span> /home/tstellar/llvm/include/llvm/Support/system_error.h:</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> /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/AST/Stmt.h:</div>
+<div class="line"><a name="l00268"></a><span class="lineno">  268</span> </div>
+<div class="line"><a name="l00269"></a><span class="lineno">  269</span> /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/AST/DeclGroup.h:</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> /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/AST/StmtIterator.h:</div>
+<div class="line"><a name="l00272"></a><span class="lineno">  272</span> </div>
+<div class="line"><a name="l00273"></a><span class="lineno">  273</span> /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/Basic/CapturedStmt.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">  275</span> /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/AST/TemplateBase.h:</div>
+<div class="line"><a name="l00276"></a><span class="lineno">  276</span> </div>
+<div class="line"><a name="l00277"></a><span class="lineno">  277</span> /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/AST/TypeLoc.h:</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> /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/AST/TypeLocNodes.def:</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> /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/AST/CanonicalType.h:</div>
+<div class="line"><a name="l00282"></a><span class="lineno">  282</span> </div>
+<div class="line"><a name="l00283"></a><span class="lineno">  283</span> /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/AST/CommentCommandTraits.h:</div>
+<div class="line"><a name="l00284"></a><span class="lineno">  284</span> </div>
+<div class="line"><a name="l00285"></a><span class="lineno">  285</span> /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/Basic/CommentOptions.h:</div>
+<div class="line"><a name="l00286"></a><span class="lineno">  286</span> </div>
+<div class="line"><a name="l00287"></a><span class="lineno">  287</span> /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/AST/CommentCommandList.inc:</div>
+<div class="line"><a name="l00288"></a><span class="lineno">  288</span> </div>
+<div class="line"><a name="l00289"></a><span class="lineno">  289</span> /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/AST/PrettyPrinter.h:</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> /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/Basic/LangOptions.h:</div>
+<div class="line"><a name="l00292"></a><span class="lineno">  292</span> </div>
+<div class="line"><a name="l00293"></a><span class="lineno">  293</span> /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/Basic/ObjCRuntime.h:</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> /home/tstellar/llvm/include/llvm/ADT/Triple.h:</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> /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/Basic/Sanitizers.def:</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> /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/Basic/LangOptions.def:</div>
+<div class="line"><a name="l00300"></a><span class="lineno">  300</span> </div>
+<div class="line"><a name="l00301"></a><span class="lineno">  301</span> /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/Basic/OpenCLExtensions.def:</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> /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/AST/RawCommentList.h:</div>
+<div class="line"><a name="l00304"></a><span class="lineno">  304</span> </div>
+<div class="line"><a name="l00305"></a><span class="lineno">  305</span> /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/Basic/SourceManager.h:</div>
+<div class="line"><a name="l00306"></a><span class="lineno">  306</span> </div>
+<div class="line"><a name="l00307"></a><span class="lineno">  307</span> /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/Basic/FileManager.h:</div>
+<div class="line"><a name="l00308"></a><span class="lineno">  308</span> </div>
+<div class="line"><a name="l00309"></a><span class="lineno">  309</span> /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/Basic/FileSystemOptions.h:</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> /home/tstellar/llvm/include/llvm/ADT/DenseSet.h:</div>
+<div class="line"><a name="l00312"></a><span class="lineno">  312</span> </div>
+<div class="line"><a name="l00313"></a><span class="lineno">  313</span> /home/tstellar/llvm/include/llvm/Support/MemoryBuffer.h:</div>
+<div class="line"><a name="l00314"></a><span class="lineno">  314</span> </div>
+<div class="line"><a name="l00315"></a><span class="lineno">  315</span> /home/tstellar/llvm/include/llvm/Support/CBindingWrapping.h:</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> /home/tstellar/llvm/include/llvm-c/Core.h:</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> /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/Basic/AddressSpaces.h:</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> /home/tstellar/llvm/include/llvm/ADT/SmallPtrSet.h:</div>
+<div class="line"><a name="l00322"></a><span class="lineno">  322</span> </div>
+<div class="line"><a name="l00323"></a><span class="lineno">  323</span> /home/tstellar/llvm/include/llvm/ADT/TinyPtrVector.h:</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> /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/AST/Expr.h:</div>
+<div class="line"><a name="l00326"></a><span class="lineno">  326</span> </div>
+<div class="line"><a name="l00327"></a><span class="lineno">  327</span> /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/AST/ASTVector.h:</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> /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/AST/DeclAccessPair.h:</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> /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/AST/OperationKinds.h:</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> /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/Basic/CharInfo.h:</div>
+<div class="line"><a name="l00334"></a><span class="lineno">  334</span> </div>
+<div class="line"><a name="l00335"></a><span class="lineno">  335</span> /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/Basic/TypeTraits.h:</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> /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/Basic/Builtins.def:</div>
+<div class="line"><a name="l00338"></a><span class="lineno">  338</span> </div>
+<div class="line"><a name="l00339"></a><span class="lineno">  339</span> /home/tstellar/llvm/include/llvm/ADT/StringSwitch.h:</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> /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/Sema/AttrParsedAttrKinds.inc:</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> /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/Sema/AttrSpellingListIndex.inc:</div>
+<div class="line"><a name="l00344"></a><span class="lineno">  344</span> </div>
+<div class="line"><a name="l00345"></a><span class="lineno">  345</span> /home/tstellar/llvm/tools/clang/lib/Sema/../../include/clang/Sema/AttrParsedAttrImpl.inc:</div>
+</div><!-- fragment --></div><!-- contents -->
+<hr>
+<p class="footer">
+Generated on Mon May 12 2014 12:13:18 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/AttributeList_8h_source.html
URL: http://llvm.org/viewvc/llvm-project/www-releases/trunk/3.5.1/tools/clang/docs/doxygen/html/AttributeList_8h_source.html?rev=225843&view=auto
==============================================================================
--- www-releases/trunk/3.5.1/tools/clang/docs/doxygen/html/AttributeList_8h_source.html (added)
+++ www-releases/trunk/3.5.1/tools/clang/docs/doxygen/html/AttributeList_8h_source.html Tue Jan 13 16:55:20 2015
@@ -0,0 +1,915 @@
+<!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: AttributeList.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_d527ffe6334522956bc19a2da6aab47c.html">Sema</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">AttributeList.h</div>  </div>
+</div><!--header-->
+<div class="contents">
+<a href="AttributeList_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">//===--- AttributeList.h - Parsed attribute sets ----------------*- 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 the AttributeList class, which is used to collect</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno">   11</span> <span class="comment">// parsed attributes.</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">#ifndef LLVM_CLANG_SEMA_ATTRLIST_H</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno">   16</span> <span class="preprocessor"></span><span class="preprocessor">#define LLVM_CLANG_SEMA_ATTRLIST_H</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="SourceLocation_8h.html" title="Defines the clang::SourceLocation class and associated facilities.">clang/Basic/SourceLocation.h</a>"</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno">   19</span> <span class="preprocessor">#include "<a class="code" href="VersionTuple_8h.html" title="Defines the clang::VersionTuple class, which represents a version in the form major[.minor[.subminor]].">clang/Basic/VersionTuple.h</a>"</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno">   20</span> <span class="preprocessor">#include "<a class="code" href="Ownership_8h.html">clang/Sema/Ownership.h</a>"</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno">   21</span> <span class="preprocessor">#include "llvm/ADT/SmallVector.h"</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno">   22</span> <span class="preprocessor">#include "llvm/ADT/PointerUnion.h"</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno">   23</span> <span class="preprocessor">#include "llvm/Support/Allocator.h"</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno">   24</span> <span class="preprocessor">#include <cassert></span></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">namespace </span>clang {</div>
+<div class="line"><a name="l00027"></a><span class="lineno">   27</span>   <span class="keyword">class </span>ASTContext;</div>
+<div class="line"><a name="l00028"></a><span class="lineno">   28</span>   <span class="keyword">class </span>IdentifierInfo;</div>
+<div class="line"><a name="l00029"></a><span class="lineno">   29</span>   <span class="keyword">class </span>Expr;</div>
+<div class="line"><a name="l00030"></a><span class="lineno">   30</span> <span class="comment"></span></div>
+<div class="line"><a name="l00031"></a><span class="lineno">   31</span> <span class="comment">/// \brief Represents information about a change in availability for</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno">   32</span> <span class="comment">/// an entity, which is part of the encoding of the 'availability'</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno">   33</span> <span class="comment">/// attribute.</span></div>
+<div class="line"><a name="l00034"></a><span class="lineno"><a class="code" href="structclang_1_1AvailabilityChange.html">   34</a></span> <span class="comment"></span><span class="keyword">struct </span><a class="code" href="structclang_1_1AvailabilityChange.html" title="Represents information about a change in availability for an entity, which is part of the encoding of...">AvailabilityChange</a> {<span class="comment"></span></div>
+<div class="line"><a name="l00035"></a><span class="lineno">   35</span> <span class="comment">  /// \brief The location of the keyword indicating the kind of change.</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"><a class="code" href="structclang_1_1AvailabilityChange.html#a6e4f67663d3e5e2963eac048d7023100">   36</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_1AvailabilityChange.html#a6e4f67663d3e5e2963eac048d7023100" title="The location of the keyword indicating the kind of change.">KeywordLoc</a>;</div>
+<div class="line"><a name="l00037"></a><span class="lineno">   37</span> <span class="comment"></span></div>
+<div class="line"><a name="l00038"></a><span class="lineno">   38</span> <span class="comment">  /// \brief The version number at which the change occurred.</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno"><a class="code" href="structclang_1_1AvailabilityChange.html#a08876af43059ef0b231423e9a304d23d">   39</a></span> <span class="comment"></span>  <a class="code" href="classclang_1_1VersionTuple.html" title="Represents a version number in the form major[.minor[.subminor]].">VersionTuple</a> <a class="code" href="structclang_1_1AvailabilityChange.html#a08876af43059ef0b231423e9a304d23d" title="The version number at which the change occurred.">Version</a>;</div>
+<div class="line"><a name="l00040"></a><span class="lineno">   40</span> <span class="comment"></span></div>
+<div class="line"><a name="l00041"></a><span class="lineno">   41</span> <span class="comment">  /// \brief The source range covering the version number.</span></div>
+<div class="line"><a name="l00042"></a><span class="lineno"><a class="code" href="structclang_1_1AvailabilityChange.html#acf3abfcb38da7431f3bff4849ea6ff67">   42</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_1AvailabilityChange.html#acf3abfcb38da7431f3bff4849ea6ff67" title="The source range covering the version number.">VersionRange</a>;</div>
+<div class="line"><a name="l00043"></a><span class="lineno">   43</span> <span class="comment"></span></div>
+<div class="line"><a name="l00044"></a><span class="lineno">   44</span> <span class="comment">  /// \brief Determine whether this availability change is valid.</span></div>
+<div class="line"><a name="l00045"></a><span class="lineno"><a class="code" href="structclang_1_1AvailabilityChange.html#acbe2ddacf5b06df9f22420530837c21a">   45</a></span> <span class="comment"></span>  <span class="keywordtype">bool</span> <a class="code" href="structclang_1_1AvailabilityChange.html#acbe2ddacf5b06df9f22420530837c21a" title="Determine whether this availability change is valid.">isValid</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> !<a class="code" href="structclang_1_1AvailabilityChange.html#a08876af43059ef0b231423e9a304d23d" title="The version number at which the change occurred.">Version</a>.<a class="code" href="classclang_1_1VersionTuple.html#aa7a2358d7b875464f151055a384d098b" title="Determine whether this version information is empty (e.g., all version components are zero)...">empty</a>(); }</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> <span class="comment"></span></div>
+<div class="line"><a name="l00048"></a><span class="lineno">   48</span> <span class="comment">/// \brief Wraps an identifier and optional source location for the identifier.</span></div>
+<div class="line"><a name="l00049"></a><span class="lineno"><a class="code" href="structclang_1_1IdentifierLoc.html">   49</a></span> <span class="comment"></span><span class="keyword">struct </span><a class="code" href="structclang_1_1IdentifierLoc.html" title="Wraps an identifier and optional source location for the identifier.">IdentifierLoc</a> {</div>
+<div class="line"><a name="l00050"></a><span class="lineno"><a class="code" href="structclang_1_1IdentifierLoc.html#a578b8e66510e593cace88d60a2a00325">   50</a></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_1IdentifierLoc.html#a578b8e66510e593cace88d60a2a00325">Loc</a>;</div>
+<div class="line"><a name="l00051"></a><span class="lineno"><a class="code" href="structclang_1_1IdentifierLoc.html#a57f05785901045720c4255a8761f780c">   51</a></span>   <a class="code" href="classclang_1_1IdentifierInfo.html">IdentifierInfo</a> *<a class="code" href="structclang_1_1IdentifierLoc.html#a57f05785901045720c4255a8761f780c">Ident</a>;</div>
+<div class="line"><a name="l00052"></a><span class="lineno">   52</span> </div>
+<div class="line"><a name="l00053"></a><span class="lineno">   53</span>   <span class="keyword">static</span> <a class="code" href="structclang_1_1IdentifierLoc.html" title="Wraps an identifier and optional source location for the identifier.">IdentifierLoc</a> *<a class="code" href="structclang_1_1IdentifierLoc.html#a892a078bd75776549e681860755ef32f">create</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, <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_1IdentifierLoc.html#a578b8e66510e593cace88d60a2a00325">Loc</a>,</div>
+<div class="line"><a name="l00054"></a><span class="lineno">   54</span>                                <a class="code" href="classclang_1_1IdentifierInfo.html">IdentifierInfo</a> *<a class="code" href="structclang_1_1IdentifierLoc.html#a57f05785901045720c4255a8761f780c">Ident</a>);</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="comment"></span></div>
+<div class="line"><a name="l00057"></a><span class="lineno">   57</span> <span class="comment">/// \brief A union of the various pointer types that can be passed to an</span></div>
+<div class="line"><a name="l00058"></a><span class="lineno">   58</span> <span class="comment">/// AttributeList as an argument.</span></div>
+<div class="line"><a name="l00059"></a><span class="lineno"><a class="code" href="namespaceclang.html#aef421691d7b5e01971c6bf88afc6a969">   59</a></span> <span class="comment"></span><span class="keyword">typedef</span> llvm::PointerUnion<Expr*, IdentifierLoc*> <a class="code" href="namespaceclang.html#aef421691d7b5e01971c6bf88afc6a969" title="A union of the various pointer types that can be passed to an AttributeList as an argument...">ArgsUnion</a>;</div>
+<div class="line"><a name="l00060"></a><span class="lineno"><a class="code" href="namespaceclang.html#ac5efa58b7abd897e5c243507c0b0e70c">   60</a></span> <span class="keyword">typedef</span> <a class="code" href="classllvm_1_1SmallVector.html">llvm::SmallVector<ArgsUnion, 12U></a> <a class="code" href="namespaceclang.html#ac5efa58b7abd897e5c243507c0b0e70c">ArgsVector</a>;</div>
+<div class="line"><a name="l00061"></a><span class="lineno">   61</span> <span class="comment"></span></div>
+<div class="line"><a name="l00062"></a><span class="lineno">   62</span> <span class="comment">/// AttributeList - Represents a syntactic attribute.</span></div>
+<div class="line"><a name="l00063"></a><span class="lineno">   63</span> <span class="comment">///</span></div>
+<div class="line"><a name="l00064"></a><span class="lineno">   64</span> <span class="comment">/// For a GNU attribute, there are four forms of this construct:</span></div>
+<div class="line"><a name="l00065"></a><span class="lineno">   65</span> <span class="comment">///</span></div>
+<div class="line"><a name="l00066"></a><span class="lineno">   66</span> <span class="comment">/// 1: __attribute__(( const )). ParmName/Args/NumArgs will all be unused.</span></div>
+<div class="line"><a name="l00067"></a><span class="lineno">   67</span> <span class="comment">/// 2: __attribute__(( mode(byte) )). ParmName used, Args/NumArgs unused.</span></div>
+<div class="line"><a name="l00068"></a><span class="lineno">   68</span> <span class="comment">/// 3: __attribute__(( format(printf, 1, 2) )). ParmName/Args/NumArgs all used.</span></div>
+<div class="line"><a name="l00069"></a><span class="lineno">   69</span> <span class="comment">/// 4: __attribute__(( aligned(16) )). ParmName is unused, Args/Num used.</span></div>
+<div class="line"><a name="l00070"></a><span class="lineno">   70</span> <span class="comment">///</span></div>
+<div class="line"><a name="l00071"></a><span class="lineno"><a class="code" href="classclang_1_1AttributeList.html">   71</a></span> <span class="comment"></span><span class="keyword">class </span><a class="code" href="classclang_1_1AttributeList.html">AttributeList</a> { <span class="comment">// TODO: This should really be called ParsedAttribute</span></div>
+<div class="line"><a name="l00072"></a><span class="lineno">   72</span> <span class="keyword">public</span>:<span class="comment"></span></div>
+<div class="line"><a name="l00073"></a><span class="lineno">   73</span> <span class="comment">  /// The style used to specify an attribute.</span></div>
+<div class="line"><a name="l00074"></a><span class="lineno"><a class="code" href="classclang_1_1AttributeList.html#a7e6e722d96e46b102c1de17fea3a6374">   74</a></span> <span class="comment"></span>  <span class="keyword">enum</span> <a class="code" href="classclang_1_1AttributeList.html#a7e6e722d96e46b102c1de17fea3a6374" title="The style used to specify an attribute.">Syntax</a> {<span class="comment"></span></div>
+<div class="line"><a name="l00075"></a><span class="lineno">   75</span> <span class="comment">    /// __attribute__((...))</span></div>
+<div class="line"><a name="l00076"></a><span class="lineno"><a class="code" href="classclang_1_1AttributeList.html#a7e6e722d96e46b102c1de17fea3a6374a0bf6a4c4b559fe779e07ad7dfe51621b">   76</a></span> <span class="comment"></span>    <a class="code" href="classclang_1_1AttributeList.html#a7e6e722d96e46b102c1de17fea3a6374a0bf6a4c4b559fe779e07ad7dfe51621b" title="attribute((...))">AS_GNU</a>,<span class="comment"></span></div>
+<div class="line"><a name="l00077"></a><span class="lineno">   77</span> <span class="comment">    /// [[...]]</span></div>
+<div class="line"><a name="l00078"></a><span class="lineno"><a class="code" href="classclang_1_1AttributeList.html#a7e6e722d96e46b102c1de17fea3a6374aa5ea0ec784985c05430e002c3ca6f561">   78</a></span> <span class="comment"></span>    <a class="code" href="classclang_1_1AttributeList.html#a7e6e722d96e46b102c1de17fea3a6374aa5ea0ec784985c05430e002c3ca6f561" title="[[...]]">AS_CXX11</a>,<span class="comment"></span></div>
+<div class="line"><a name="l00079"></a><span class="lineno">   79</span> <span class="comment">    /// __declspec(...)</span></div>
+<div class="line"><a name="l00080"></a><span class="lineno"><a class="code" href="classclang_1_1AttributeList.html#a7e6e722d96e46b102c1de17fea3a6374a78bf3b581d93a7e3f343da39aef1c2f7">   80</a></span> <span class="comment"></span>    <a class="code" href="classclang_1_1AttributeList.html#a7e6e722d96e46b102c1de17fea3a6374a78bf3b581d93a7e3f343da39aef1c2f7" title="__declspec(...)">AS_Declspec</a>,<span class="comment"></span></div>
+<div class="line"><a name="l00081"></a><span class="lineno">   81</span> <span class="comment">    /// __ptr16, alignas(...), etc.</span></div>
+<div class="line"><a name="l00082"></a><span class="lineno"><a class="code" href="classclang_1_1AttributeList.html#a7e6e722d96e46b102c1de17fea3a6374ae031ff8f56d481dfd27e5b656fa543d0">   82</a></span> <span class="comment"></span>    <a class="code" href="classclang_1_1AttributeList.html#a7e6e722d96e46b102c1de17fea3a6374ae031ff8f56d481dfd27e5b656fa543d0" title="__ptr16, alignas(...), etc.">AS_Keyword</a></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">   85</span> <span class="keyword">private</span>:</div>
+<div class="line"><a name="l00086"></a><span class="lineno">   86</span>   <a class="code" href="classclang_1_1IdentifierInfo.html">IdentifierInfo</a> *AttrName;</div>
+<div class="line"><a name="l00087"></a><span class="lineno">   87</span>   <a class="code" href="classclang_1_1IdentifierInfo.html">IdentifierInfo</a> *ScopeName;</div>
+<div class="line"><a name="l00088"></a><span class="lineno">   88</span>   <a class="code" href="classclang_1_1SourceRange.html" title="A trival tuple used to represent a source range.">SourceRange</a> AttrRange;</div>
+<div class="line"><a name="l00089"></a><span class="lineno">   89</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> ScopeLoc;</div>
+<div class="line"><a name="l00090"></a><span class="lineno">   90</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> EllipsisLoc;</div>
+<div class="line"><a name="l00091"></a><span class="lineno">   91</span> <span class="comment"></span></div>
+<div class="line"><a name="l00092"></a><span class="lineno">   92</span> <span class="comment">  /// The number of expression arguments this attribute has.</span></div>
+<div class="line"><a name="l00093"></a><span class="lineno">   93</span> <span class="comment">  /// The expressions themselves are stored after the object.</span></div>
+<div class="line"><a name="l00094"></a><span class="lineno">   94</span> <span class="comment"></span>  <span class="keywordtype">unsigned</span> NumArgs : 16;</div>
+<div class="line"><a name="l00095"></a><span class="lineno">   95</span> <span class="comment"></span></div>
+<div class="line"><a name="l00096"></a><span class="lineno">   96</span> <span class="comment">  /// Corresponds to the Syntax enum.</span></div>
+<div class="line"><a name="l00097"></a><span class="lineno">   97</span> <span class="comment"></span>  <span class="keywordtype">unsigned</span> SyntaxUsed : 2;</div>
+<div class="line"><a name="l00098"></a><span class="lineno">   98</span> <span class="comment"></span></div>
+<div class="line"><a name="l00099"></a><span class="lineno">   99</span> <span class="comment">  /// True if already diagnosed as invalid.</span></div>
+<div class="line"><a name="l00100"></a><span class="lineno">  100</span> <span class="comment"></span>  <span class="keyword">mutable</span> <span class="keywordtype">unsigned</span> Invalid : 1;</div>
+<div class="line"><a name="l00101"></a><span class="lineno">  101</span> <span class="comment"></span></div>
+<div class="line"><a name="l00102"></a><span class="lineno">  102</span> <span class="comment">  /// True if this attribute was used as a type attribute.</span></div>
+<div class="line"><a name="l00103"></a><span class="lineno">  103</span> <span class="comment"></span>  <span class="keyword">mutable</span> <span class="keywordtype">unsigned</span> UsedAsTypeAttr : 1;</div>
+<div class="line"><a name="l00104"></a><span class="lineno">  104</span> <span class="comment"></span></div>
+<div class="line"><a name="l00105"></a><span class="lineno">  105</span> <span class="comment">  /// True if this has the extra information associated with an</span></div>
+<div class="line"><a name="l00106"></a><span class="lineno">  106</span> <span class="comment">  /// availability attribute.</span></div>
+<div class="line"><a name="l00107"></a><span class="lineno">  107</span> <span class="comment"></span>  <span class="keywordtype">unsigned</span> IsAvailability : 1;</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">  /// True if this has extra information associated with a</span></div>
+<div class="line"><a name="l00110"></a><span class="lineno">  110</span> <span class="comment">  /// type_tag_for_datatype attribute.</span></div>
+<div class="line"><a name="l00111"></a><span class="lineno">  111</span> <span class="comment"></span>  <span class="keywordtype">unsigned</span> IsTypeTagForDatatype : 1;</div>
+<div class="line"><a name="l00112"></a><span class="lineno">  112</span> <span class="comment"></span></div>
+<div class="line"><a name="l00113"></a><span class="lineno">  113</span> <span class="comment">  /// True if this has extra information associated with a</span></div>
+<div class="line"><a name="l00114"></a><span class="lineno">  114</span> <span class="comment">  /// Microsoft __delcspec(property) attribute.</span></div>
+<div class="line"><a name="l00115"></a><span class="lineno">  115</span> <span class="comment"></span>  <span class="keywordtype">unsigned</span> IsProperty : 1;</div>
+<div class="line"><a name="l00116"></a><span class="lineno">  116</span> <span class="comment"></span></div>
+<div class="line"><a name="l00117"></a><span class="lineno">  117</span> <span class="comment">  /// True if this has a ParsedType</span></div>
+<div class="line"><a name="l00118"></a><span class="lineno">  118</span> <span class="comment"></span>  <span class="keywordtype">unsigned</span> HasParsedType : 1;</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>   <span class="keywordtype">unsigned</span> AttrKind : 8;</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 location of the 'unavailable' keyword in an</span></div>
+<div class="line"><a name="l00123"></a><span class="lineno">  123</span> <span class="comment">  /// availability attribute.</span></div>
+<div class="line"><a name="l00124"></a><span class="lineno">  124</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> UnavailableLoc;</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>   <span class="keyword">const</span> <a class="code" href="classclang_1_1Expr.html">Expr</a> *MessageExpr;</div>
+<div class="line"><a name="l00127"></a><span class="lineno">  127</span> <span class="comment"></span></div>
+<div class="line"><a name="l00128"></a><span class="lineno">  128</span> <span class="comment">  /// The next attribute in the current position.</span></div>
+<div class="line"><a name="l00129"></a><span class="lineno">  129</span> <span class="comment"></span>  <a class="code" href="classclang_1_1AttributeList.html">AttributeList</a> *NextInPosition;</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">  /// The next attribute allocated in the current Pool.</span></div>
+<div class="line"><a name="l00132"></a><span class="lineno">  132</span> <span class="comment"></span>  <a class="code" href="classclang_1_1AttributeList.html">AttributeList</a> *NextInPool;</div>
+<div class="line"><a name="l00133"></a><span class="lineno">  133</span> <span class="comment"></span></div>
+<div class="line"><a name="l00134"></a><span class="lineno">  134</span> <span class="comment">  /// Arguments, if any, are stored immediately following the object.</span></div>
+<div class="line"><a name="l00135"></a><span class="lineno">  135</span> <span class="comment"></span>  <a class="code" href="namespaceclang.html#aef421691d7b5e01971c6bf88afc6a969" title="A union of the various pointer types that can be passed to an AttributeList as an argument...">ArgsUnion</a> *getArgsBuffer() {</div>
+<div class="line"><a name="l00136"></a><span class="lineno">  136</span>     <span class="keywordflow">return</span> <span class="keyword">reinterpret_cast<</span><a class="code" href="namespaceclang.html#aef421691d7b5e01971c6bf88afc6a969" title="A union of the various pointer types that can be passed to an AttributeList as an argument...">ArgsUnion</a>*<span class="keyword">></span>(<span class="keyword">this</span>+1);</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>   <a class="code" href="namespaceclang.html#aef421691d7b5e01971c6bf88afc6a969" title="A union of the various pointer types that can be passed to an AttributeList as an argument...">ArgsUnion</a> <span class="keyword">const</span> *getArgsBuffer()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00139"></a><span class="lineno">  139</span>     <span class="keywordflow">return</span> <span class="keyword">reinterpret_cast<</span><a class="code" href="namespaceclang.html#aef421691d7b5e01971c6bf88afc6a969" title="A union of the various pointer types that can be passed to an AttributeList as an argument...">ArgsUnion</a> <span class="keyword">const </span>*<span class="keyword">></span>(<span class="keyword">this</span>+1);</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="keyword">enum</span> AvailabilitySlot {</div>
+<div class="line"><a name="l00143"></a><span class="lineno">  143</span>     IntroducedSlot, DeprecatedSlot, ObsoletedSlot</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> <span class="comment"></span></div>
+<div class="line"><a name="l00146"></a><span class="lineno">  146</span> <span class="comment">  /// Availability information is stored immediately following the arguments,</span></div>
+<div class="line"><a name="l00147"></a><span class="lineno">  147</span> <span class="comment">  /// if any, at the end of the object.</span></div>
+<div class="line"><a name="l00148"></a><span class="lineno">  148</span> <span class="comment"></span>  AvailabilityChange &getAvailabilitySlot(AvailabilitySlot index) {    </div>
+<div class="line"><a name="l00149"></a><span class="lineno">  149</span>     <span class="keywordflow">return</span> <span class="keyword">reinterpret_cast<</span>AvailabilityChange*<span class="keyword">></span>(getArgsBuffer()</div>
+<div class="line"><a name="l00150"></a><span class="lineno">  150</span>                                                  + NumArgs)[index];</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>   <span class="keyword">const</span> AvailabilityChange &getAvailabilitySlot(AvailabilitySlot index)<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00153"></a><span class="lineno">  153</span>     <span class="keywordflow">return</span> <span class="keyword">reinterpret_cast<</span><span class="keyword">const </span>AvailabilityChange*<span class="keyword">></span>(getArgsBuffer()</div>
+<div class="line"><a name="l00154"></a><span class="lineno">  154</span>                                                        + NumArgs)[index];</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> </div>
+<div class="line"><a name="l00157"></a><span class="lineno">  157</span> <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00158"></a><span class="lineno"><a class="code" href="structclang_1_1AttributeList_1_1TypeTagForDatatypeData.html">  158</a></span>   <span class="keyword">struct </span><a class="code" href="structclang_1_1AttributeList_1_1TypeTagForDatatypeData.html">TypeTagForDatatypeData</a> {</div>
+<div class="line"><a name="l00159"></a><span class="lineno"><a class="code" href="structclang_1_1AttributeList_1_1TypeTagForDatatypeData.html#a6ef71bed5f416cf17d0f51cd778bb089">  159</a></span>     <a class="code" href="classclang_1_1OpaquePtr.html">ParsedType</a> *<a class="code" href="structclang_1_1AttributeList_1_1TypeTagForDatatypeData.html#a6ef71bed5f416cf17d0f51cd778bb089">MatchingCType</a>;</div>
+<div class="line"><a name="l00160"></a><span class="lineno"><a class="code" href="structclang_1_1AttributeList_1_1TypeTagForDatatypeData.html#a40bd2caf311a5649c74a87600a3619f1">  160</a></span>     <span class="keywordtype">unsigned</span> <a class="code" href="structclang_1_1AttributeList_1_1TypeTagForDatatypeData.html#a40bd2caf311a5649c74a87600a3619f1">LayoutCompatible</a> : 1;</div>
+<div class="line"><a name="l00161"></a><span class="lineno"><a class="code" href="structclang_1_1AttributeList_1_1TypeTagForDatatypeData.html#a27982d86b871db12f82cc8da396e266b">  161</a></span>     <span class="keywordtype">unsigned</span> <a class="code" href="structclang_1_1AttributeList_1_1TypeTagForDatatypeData.html#a27982d86b871db12f82cc8da396e266b">MustBeNull</a> : 1;</div>
+<div class="line"><a name="l00162"></a><span class="lineno">  162</span>   };</div>
+<div class="line"><a name="l00163"></a><span class="lineno"><a class="code" href="structclang_1_1AttributeList_1_1PropertyData.html">  163</a></span>   <span class="keyword">struct </span><a class="code" href="structclang_1_1AttributeList_1_1PropertyData.html">PropertyData</a> {</div>
+<div class="line"><a name="l00164"></a><span class="lineno"><a class="code" href="structclang_1_1AttributeList_1_1PropertyData.html#a4afd4a47a41a5e25c9520dd3127039d9">  164</a></span>     <a class="code" href="classclang_1_1IdentifierInfo.html">IdentifierInfo</a> *<a class="code" href="structclang_1_1AttributeList_1_1PropertyData.html#ad6cdded3e12748f8c18f9c6f0940e13a">GetterId</a>, *<a class="code" href="structclang_1_1AttributeList_1_1PropertyData.html#a4afd4a47a41a5e25c9520dd3127039d9">SetterId</a>;</div>
+<div class="line"><a name="l00165"></a><span class="lineno"><a class="code" href="structclang_1_1AttributeList_1_1PropertyData.html#acc406965371fbb3086c5a4c47cdfa692">  165</a></span>     <a class="code" href="structclang_1_1AttributeList_1_1PropertyData.html#acc406965371fbb3086c5a4c47cdfa692">PropertyData</a>(<a class="code" href="classclang_1_1IdentifierInfo.html">IdentifierInfo</a> *getterId, <a class="code" href="classclang_1_1IdentifierInfo.html">IdentifierInfo</a> *setterId)</div>
+<div class="line"><a name="l00166"></a><span class="lineno">  166</span>     : <a class="code" href="structclang_1_1AttributeList_1_1PropertyData.html#ad6cdded3e12748f8c18f9c6f0940e13a">GetterId</a>(getterId), <a class="code" href="structclang_1_1AttributeList_1_1PropertyData.html#a4afd4a47a41a5e25c9520dd3127039d9">SetterId</a>(setterId) {}</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> <span class="keyword">private</span>:<span class="comment"></span></div>
+<div class="line"><a name="l00170"></a><span class="lineno">  170</span> <span class="comment">  /// Type tag information is stored immediately following the arguments, if</span></div>
+<div class="line"><a name="l00171"></a><span class="lineno">  171</span> <span class="comment">  /// any, at the end of the object.  They are mutually exlusive with</span></div>
+<div class="line"><a name="l00172"></a><span class="lineno">  172</span> <span class="comment">  /// availability slots.</span></div>
+<div class="line"><a name="l00173"></a><span class="lineno">  173</span> <span class="comment"></span>  TypeTagForDatatypeData &getTypeTagForDatatypeDataSlot() {</div>
+<div class="line"><a name="l00174"></a><span class="lineno">  174</span>     <span class="keywordflow">return</span> *<span class="keyword">reinterpret_cast<</span>TypeTagForDatatypeData*<span class="keyword">></span>(getArgsBuffer()+NumArgs);</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">const</span> TypeTagForDatatypeData &getTypeTagForDatatypeDataSlot()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00178"></a><span class="lineno">  178</span>     <span class="keywordflow">return</span> *<span class="keyword">reinterpret_cast<</span><span class="keyword">const </span>TypeTagForDatatypeData*<span class="keyword">></span>(getArgsBuffer()</div>
+<div class="line"><a name="l00179"></a><span class="lineno">  179</span>                                                             + NumArgs);</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> <span class="comment"></span></div>
+<div class="line"><a name="l00182"></a><span class="lineno">  182</span> <span class="comment">  /// The type buffer immediately follows the object and are mutually exclusive</span></div>
+<div class="line"><a name="l00183"></a><span class="lineno">  183</span> <span class="comment">  /// with arguments.</span></div>
+<div class="line"><a name="l00184"></a><span class="lineno">  184</span> <span class="comment"></span>  <a class="code" href="namespaceclang.html#aeb304ed08ffec14495690938d6bd95e2">ParsedType</a> &getTypeBuffer() {</div>
+<div class="line"><a name="l00185"></a><span class="lineno">  185</span>     <span class="keywordflow">return</span> *<span class="keyword">reinterpret_cast<</span><a class="code" href="namespaceclang.html#aeb304ed08ffec14495690938d6bd95e2">ParsedType</a> *<span class="keyword">></span>(<span class="keyword">this</span> + 1);</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> </div>
+<div class="line"><a name="l00188"></a><span class="lineno">  188</span>   <span class="keyword">const</span> <a class="code" href="namespaceclang.html#aeb304ed08ffec14495690938d6bd95e2">ParsedType</a> &getTypeBuffer()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00189"></a><span class="lineno">  189</span>     <span class="keywordflow">return</span> *<span class="keyword">reinterpret_cast<</span><span class="keyword">const </span><a class="code" href="namespaceclang.html#aeb304ed08ffec14495690938d6bd95e2">ParsedType</a> *<span class="keyword">></span>(<span class="keyword">this</span> + 1);</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> <span class="comment"></span></div>
+<div class="line"><a name="l00192"></a><span class="lineno">  192</span> <span class="comment">  /// The property data immediately follows the object is is mutually exclusive</span></div>
+<div class="line"><a name="l00193"></a><span class="lineno">  193</span> <span class="comment">  /// with arguments.</span></div>
+<div class="line"><a name="l00194"></a><span class="lineno">  194</span> <span class="comment"></span>  PropertyData &getPropertyDataBuffer() {</div>
+<div class="line"><a name="l00195"></a><span class="lineno">  195</span>     assert(IsProperty);</div>
+<div class="line"><a name="l00196"></a><span class="lineno">  196</span>     <span class="keywordflow">return</span> *<span class="keyword">reinterpret_cast<</span>PropertyData*<span class="keyword">></span>(<span class="keyword">this</span> + 1);</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> </div>
+<div class="line"><a name="l00199"></a><span class="lineno">  199</span>   <span class="keyword">const</span> PropertyData &getPropertyDataBuffer()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00200"></a><span class="lineno">  200</span>     assert(IsProperty);</div>
+<div class="line"><a name="l00201"></a><span class="lineno">  201</span>     <span class="keywordflow">return</span> *<span class="keyword">reinterpret_cast<</span><span class="keyword">const </span>PropertyData*<span class="keyword">></span>(<span class="keyword">this</span> + 1);</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> </div>
+<div class="line"><a name="l00204"></a><span class="lineno">  204</span>   AttributeList(<span class="keyword">const</span> AttributeList &) LLVM_DELETED_FUNCTION;</div>
+<div class="line"><a name="l00205"></a><span class="lineno">  205</span>   <span class="keywordtype">void</span> operator=(const AttributeList &) LLVM_DELETED_FUNCTION;</div>
+<div class="line"><a name="l00206"></a><span class="lineno">  206</span>   <span class="keywordtype">void</span> operator delete(<span class="keywordtype">void</span> *) LLVM_DELETED_FUNCTION;</div>
+<div class="line"><a name="l00207"></a><span class="lineno">  207</span>   ~AttributeList() LLVM_DELETED_FUNCTION;</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>   <span class="keywordtype">size_t</span> allocated_size() const;</div>
+<div class="line"><a name="l00210"></a><span class="lineno">  210</span> <span class="comment"></span></div>
+<div class="line"><a name="l00211"></a><span class="lineno">  211</span> <span class="comment">  /// Constructor for attributes with expression arguments.</span></div>
+<div class="line"><a name="l00212"></a><span class="lineno">  212</span> <span class="comment"></span>  AttributeList(IdentifierInfo *attrName, SourceRange attrRange,</div>
+<div class="line"><a name="l00213"></a><span class="lineno">  213</span>                 IdentifierInfo *scopeName, SourceLocation scopeLoc,</div>
+<div class="line"><a name="l00214"></a><span class="lineno">  214</span>                 <a class="code" href="namespaceclang.html#aef421691d7b5e01971c6bf88afc6a969" title="A union of the various pointer types that can be passed to an AttributeList as an argument...">ArgsUnion</a> *args, <span class="keywordtype">unsigned</span> numArgs,</div>
+<div class="line"><a name="l00215"></a><span class="lineno">  215</span>                 <a class="code" href="classclang_1_1AttributeList.html#a7e6e722d96e46b102c1de17fea3a6374" title="The style used to specify an attribute.">Syntax</a> syntaxUsed, SourceLocation ellipsisLoc)</div>
+<div class="line"><a name="l00216"></a><span class="lineno">  216</span>     : AttrName(attrName), ScopeName(scopeName), AttrRange(attrRange),</div>
+<div class="line"><a name="l00217"></a><span class="lineno">  217</span>       ScopeLoc(scopeLoc), EllipsisLoc(ellipsisLoc), NumArgs(numArgs),</div>
+<div class="line"><a name="l00218"></a><span class="lineno">  218</span>       SyntaxUsed(syntaxUsed), Invalid(<a class="code" href="stdbool_8h.html#a65e9886d74aaee76545e83dd09011727">false</a>), UsedAsTypeAttr(false),</div>
+<div class="line"><a name="l00219"></a><span class="lineno">  219</span>       IsAvailability(false), IsTypeTagForDatatype(false), IsProperty(false),</div>
+<div class="line"><a name="l00220"></a><span class="lineno">  220</span>       HasParsedType(false), NextInPosition(0), NextInPool(0) {</div>
+<div class="line"><a name="l00221"></a><span class="lineno">  221</span>     <span class="keywordflow">if</span> (numArgs) memcpy(getArgsBuffer(), args, numArgs * <span class="keyword">sizeof</span>(<a class="code" href="namespaceclang.html#aef421691d7b5e01971c6bf88afc6a969" title="A union of the various pointer types that can be passed to an AttributeList as an argument...">ArgsUnion</a>));</div>
+<div class="line"><a name="l00222"></a><span class="lineno">  222</span>     AttrKind = <a class="code" href="classclang_1_1AttributeList.html#a4e563bd986f1003c1e51398b1f7aadd9">getKind</a>(<a class="code" href="classclang_1_1AttributeList.html#ad33e72a3989e9a61697da22d0211bf15">getName</a>(), <a class="code" href="classclang_1_1AttributeList.html#a782573ecc730e001b85ace3579053ee4">getScopeName</a>(), syntaxUsed);</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> <span class="comment"></span></div>
+<div class="line"><a name="l00225"></a><span class="lineno">  225</span> <span class="comment">  /// Constructor for availability attributes.</span></div>
+<div class="line"><a name="l00226"></a><span class="lineno">  226</span> <span class="comment"></span>  AttributeList(IdentifierInfo *attrName, SourceRange attrRange,</div>
+<div class="line"><a name="l00227"></a><span class="lineno">  227</span>                 IdentifierInfo *scopeName, SourceLocation scopeLoc,</div>
+<div class="line"><a name="l00228"></a><span class="lineno">  228</span>                 IdentifierLoc *Parm, <span class="keyword">const</span> AvailabilityChange &introduced,</div>
+<div class="line"><a name="l00229"></a><span class="lineno">  229</span>                 <span class="keyword">const</span> AvailabilityChange &deprecated,</div>
+<div class="line"><a name="l00230"></a><span class="lineno">  230</span>                 <span class="keyword">const</span> AvailabilityChange &obsoleted,</div>
+<div class="line"><a name="l00231"></a><span class="lineno">  231</span>                 SourceLocation unavailable, </div>
+<div class="line"><a name="l00232"></a><span class="lineno">  232</span>                 <span class="keyword">const</span> Expr *messageExpr,</div>
+<div class="line"><a name="l00233"></a><span class="lineno">  233</span>                 <a class="code" href="classclang_1_1AttributeList.html#a7e6e722d96e46b102c1de17fea3a6374" title="The style used to specify an attribute.">Syntax</a> syntaxUsed)</div>
+<div class="line"><a name="l00234"></a><span class="lineno">  234</span>     : AttrName(attrName), ScopeName(scopeName), AttrRange(attrRange),</div>
+<div class="line"><a name="l00235"></a><span class="lineno">  235</span>       ScopeLoc(scopeLoc), EllipsisLoc(), NumArgs(1), SyntaxUsed(syntaxUsed),</div>
+<div class="line"><a name="l00236"></a><span class="lineno">  236</span>       Invalid(false), UsedAsTypeAttr(false), IsAvailability(<a class="code" href="stdbool_8h.html#a41f9c5fb8b08eb5dc3edce4dcb37fee7">true</a>),</div>
+<div class="line"><a name="l00237"></a><span class="lineno">  237</span>       IsTypeTagForDatatype(false), IsProperty(false), HasParsedType(false),</div>
+<div class="line"><a name="l00238"></a><span class="lineno">  238</span>       UnavailableLoc(unavailable), MessageExpr(messageExpr),</div>
+<div class="line"><a name="l00239"></a><span class="lineno">  239</span>       NextInPosition(0), NextInPool(0) {</div>
+<div class="line"><a name="l00240"></a><span class="lineno">  240</span>     <a class="code" href="namespaceclang.html#aef421691d7b5e01971c6bf88afc6a969" title="A union of the various pointer types that can be passed to an AttributeList as an argument...">ArgsUnion</a> PVal(Parm);</div>
+<div class="line"><a name="l00241"></a><span class="lineno">  241</span>     memcpy(getArgsBuffer(), &PVal, <span class="keyword">sizeof</span>(<a class="code" href="namespaceclang.html#aef421691d7b5e01971c6bf88afc6a969" title="A union of the various pointer types that can be passed to an AttributeList as an argument...">ArgsUnion</a>));</div>
+<div class="line"><a name="l00242"></a><span class="lineno">  242</span>     <span class="keyword">new</span> (&getAvailabilitySlot(IntroducedSlot)) AvailabilityChange(introduced);</div>
+<div class="line"><a name="l00243"></a><span class="lineno">  243</span>     <span class="keyword">new</span> (&getAvailabilitySlot(DeprecatedSlot)) AvailabilityChange(deprecated);</div>
+<div class="line"><a name="l00244"></a><span class="lineno">  244</span>     <span class="keyword">new</span> (&getAvailabilitySlot(ObsoletedSlot)) AvailabilityChange(obsoleted);</div>
+<div class="line"><a name="l00245"></a><span class="lineno">  245</span>     AttrKind = <a class="code" href="classclang_1_1AttributeList.html#a4e563bd986f1003c1e51398b1f7aadd9">getKind</a>(<a class="code" href="classclang_1_1AttributeList.html#ad33e72a3989e9a61697da22d0211bf15">getName</a>(), <a class="code" href="classclang_1_1AttributeList.html#a782573ecc730e001b85ace3579053ee4">getScopeName</a>(), syntaxUsed);</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> <span class="comment"></span></div>
+<div class="line"><a name="l00248"></a><span class="lineno">  248</span> <span class="comment">  /// Constructor for type_tag_for_datatype attribute.</span></div>
+<div class="line"><a name="l00249"></a><span class="lineno">  249</span> <span class="comment"></span>  AttributeList(IdentifierInfo *attrName, SourceRange attrRange,</div>
+<div class="line"><a name="l00250"></a><span class="lineno">  250</span>                 IdentifierInfo *scopeName, SourceLocation scopeLoc,</div>
+<div class="line"><a name="l00251"></a><span class="lineno">  251</span>                 IdentifierLoc *ArgKind, <a class="code" href="namespaceclang.html#aeb304ed08ffec14495690938d6bd95e2">ParsedType</a> matchingCType,</div>
+<div class="line"><a name="l00252"></a><span class="lineno">  252</span>                 <span class="keywordtype">bool</span> layoutCompatible, <span class="keywordtype">bool</span> mustBeNull, <a class="code" href="classclang_1_1AttributeList.html#a7e6e722d96e46b102c1de17fea3a6374" title="The style used to specify an attribute.">Syntax</a> syntaxUsed)</div>
+<div class="line"><a name="l00253"></a><span class="lineno">  253</span>     : AttrName(attrName), ScopeName(scopeName), AttrRange(attrRange),</div>
+<div class="line"><a name="l00254"></a><span class="lineno">  254</span>       ScopeLoc(scopeLoc), EllipsisLoc(), NumArgs(1), SyntaxUsed(syntaxUsed),</div>
+<div class="line"><a name="l00255"></a><span class="lineno">  255</span>       Invalid(false), UsedAsTypeAttr(false), IsAvailability(false),</div>
+<div class="line"><a name="l00256"></a><span class="lineno">  256</span>       IsTypeTagForDatatype(<a class="code" href="stdbool_8h.html#a41f9c5fb8b08eb5dc3edce4dcb37fee7">true</a>), IsProperty(false), HasParsedType(false),</div>
+<div class="line"><a name="l00257"></a><span class="lineno">  257</span>       NextInPosition(<a class="code" href="stddef_8h.html#a070d2ce7b6bb7e5c05602aa8c308d0c4">NULL</a>), NextInPool(<a class="code" href="stddef_8h.html#a070d2ce7b6bb7e5c05602aa8c308d0c4">NULL</a>) {</div>
+<div class="line"><a name="l00258"></a><span class="lineno">  258</span>     <a class="code" href="namespaceclang.html#aef421691d7b5e01971c6bf88afc6a969" title="A union of the various pointer types that can be passed to an AttributeList as an argument...">ArgsUnion</a> PVal(ArgKind);</div>
+<div class="line"><a name="l00259"></a><span class="lineno">  259</span>     memcpy(getArgsBuffer(), &PVal, <span class="keyword">sizeof</span>(<a class="code" href="namespaceclang.html#aef421691d7b5e01971c6bf88afc6a969" title="A union of the various pointer types that can be passed to an AttributeList as an argument...">ArgsUnion</a>));</div>
+<div class="line"><a name="l00260"></a><span class="lineno">  260</span>     TypeTagForDatatypeData &ExtraData = getTypeTagForDatatypeDataSlot();</div>
+<div class="line"><a name="l00261"></a><span class="lineno">  261</span>     <span class="keyword">new</span> (&ExtraData.MatchingCType) <a class="code" href="namespaceclang.html#aeb304ed08ffec14495690938d6bd95e2">ParsedType</a>(matchingCType);</div>
+<div class="line"><a name="l00262"></a><span class="lineno">  262</span>     ExtraData.LayoutCompatible = layoutCompatible;</div>
+<div class="line"><a name="l00263"></a><span class="lineno">  263</span>     ExtraData.MustBeNull = mustBeNull;</div>
+<div class="line"><a name="l00264"></a><span class="lineno">  264</span>     AttrKind = <a class="code" href="classclang_1_1AttributeList.html#a4e563bd986f1003c1e51398b1f7aadd9">getKind</a>(<a class="code" href="classclang_1_1AttributeList.html#ad33e72a3989e9a61697da22d0211bf15">getName</a>(), <a class="code" href="classclang_1_1AttributeList.html#a782573ecc730e001b85ace3579053ee4">getScopeName</a>(), syntaxUsed);</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> <span class="comment"></span></div>
+<div class="line"><a name="l00267"></a><span class="lineno">  267</span> <span class="comment">  /// Constructor for attributes with a single type argument.</span></div>
+<div class="line"><a name="l00268"></a><span class="lineno">  268</span> <span class="comment"></span>  AttributeList(IdentifierInfo *attrName, SourceRange attrRange,</div>
+<div class="line"><a name="l00269"></a><span class="lineno">  269</span>                 IdentifierInfo *scopeName, SourceLocation scopeLoc,</div>
+<div class="line"><a name="l00270"></a><span class="lineno">  270</span>                 <a class="code" href="namespaceclang.html#aeb304ed08ffec14495690938d6bd95e2">ParsedType</a> typeArg, <a class="code" href="classclang_1_1AttributeList.html#a7e6e722d96e46b102c1de17fea3a6374" title="The style used to specify an attribute.">Syntax</a> syntaxUsed)</div>
+<div class="line"><a name="l00271"></a><span class="lineno">  271</span>       : AttrName(attrName), ScopeName(scopeName), AttrRange(attrRange),</div>
+<div class="line"><a name="l00272"></a><span class="lineno">  272</span>         ScopeLoc(scopeLoc), EllipsisLoc(), NumArgs(0), SyntaxUsed(syntaxUsed),</div>
+<div class="line"><a name="l00273"></a><span class="lineno">  273</span>         Invalid(false), UsedAsTypeAttr(false), IsAvailability(false),</div>
+<div class="line"><a name="l00274"></a><span class="lineno">  274</span>         IsTypeTagForDatatype(false), IsProperty(false), HasParsedType(<a class="code" href="stdbool_8h.html#a41f9c5fb8b08eb5dc3edce4dcb37fee7">true</a>),</div>
+<div class="line"><a name="l00275"></a><span class="lineno">  275</span>         NextInPosition(0), NextInPool(0) {</div>
+<div class="line"><a name="l00276"></a><span class="lineno">  276</span>     <span class="keyword">new</span> (&getTypeBuffer()) <a class="code" href="namespaceclang.html#aeb304ed08ffec14495690938d6bd95e2">ParsedType</a>(typeArg);</div>
+<div class="line"><a name="l00277"></a><span class="lineno">  277</span>     AttrKind = <a class="code" href="classclang_1_1AttributeList.html#a4e563bd986f1003c1e51398b1f7aadd9">getKind</a>(<a class="code" href="classclang_1_1AttributeList.html#ad33e72a3989e9a61697da22d0211bf15">getName</a>(), <a class="code" href="classclang_1_1AttributeList.html#a782573ecc730e001b85ace3579053ee4">getScopeName</a>(), syntaxUsed);</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">  /// Constructor for microsoft __declspec(property) attribute.</span></div>
+<div class="line"><a name="l00281"></a><span class="lineno">  281</span> <span class="comment"></span>  AttributeList(IdentifierInfo *attrName, SourceRange attrRange,</div>
+<div class="line"><a name="l00282"></a><span class="lineno">  282</span>                 IdentifierInfo *scopeName, SourceLocation scopeLoc,</div>
+<div class="line"><a name="l00283"></a><span class="lineno">  283</span>                 IdentifierInfo *getterId, IdentifierInfo *setterId,</div>
+<div class="line"><a name="l00284"></a><span class="lineno">  284</span>                 <a class="code" href="classclang_1_1AttributeList.html#a7e6e722d96e46b102c1de17fea3a6374" title="The style used to specify an attribute.">Syntax</a> syntaxUsed)</div>
+<div class="line"><a name="l00285"></a><span class="lineno">  285</span>     : AttrName(attrName), ScopeName(scopeName), AttrRange(attrRange),</div>
+<div class="line"><a name="l00286"></a><span class="lineno">  286</span>       ScopeLoc(scopeLoc), EllipsisLoc(), NumArgs(0), SyntaxUsed(syntaxUsed),</div>
+<div class="line"><a name="l00287"></a><span class="lineno">  287</span>       Invalid(false), UsedAsTypeAttr(false), IsAvailability(false),</div>
+<div class="line"><a name="l00288"></a><span class="lineno">  288</span>       IsTypeTagForDatatype(false), IsProperty(<a class="code" href="stdbool_8h.html#a41f9c5fb8b08eb5dc3edce4dcb37fee7">true</a>), HasParsedType(false),</div>
+<div class="line"><a name="l00289"></a><span class="lineno">  289</span>       NextInPosition(0), NextInPool(0) {</div>
+<div class="line"><a name="l00290"></a><span class="lineno">  290</span>     <span class="keyword">new</span> (&getPropertyDataBuffer()) PropertyData(getterId, setterId);</div>
+<div class="line"><a name="l00291"></a><span class="lineno">  291</span>     AttrKind = <a class="code" href="classclang_1_1AttributeList.html#a4e563bd986f1003c1e51398b1f7aadd9">getKind</a>(<a class="code" href="classclang_1_1AttributeList.html#ad33e72a3989e9a61697da22d0211bf15">getName</a>(), <a class="code" href="classclang_1_1AttributeList.html#a782573ecc730e001b85ace3579053ee4">getScopeName</a>(), syntaxUsed);</div>
+<div class="line"><a name="l00292"></a><span class="lineno">  292</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"><a class="code" href="classclang_1_1AttributeList.html#a066c0e62cc61537808ad06b55d441fc6">  294</a></span>   <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classclang_1_1AttributePool.html">AttributePool</a>;</div>
+<div class="line"><a name="l00295"></a><span class="lineno"><a class="code" href="classclang_1_1AttributeList.html#adc0e60a3c2a804e122ac09690f21f1b3">  295</a></span>   <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classclang_1_1AttributeFactory.html">AttributeFactory</a>;</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> <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00298"></a><span class="lineno"><a class="code" href="classclang_1_1AttributeList.html#abfb7b1d3d2044394d2733eeba84cf8a2">  298</a></span>   <span class="keyword">enum</span> <a class="code" href="classclang_1_1AttributeList.html#abfb7b1d3d2044394d2733eeba84cf8a2">Kind</a> {           </div>
+<div class="line"><a name="l00299"></a><span class="lineno"><a class="code" href="AttributeList_8h.html#aaed9f93120f2fb290c7791afee43a65f">  299</a></span> <span class="preprocessor">    #define PARSED_ATTR(NAME) AT_##NAME,</span></div>
+<div class="line"><a name="l00300"></a><span class="lineno">  300</span> <span class="preprocessor"></span><span class="preprocessor">    #include "<a class="code" href="AttrParsedAttrList_8inc.html">clang/Sema/AttrParsedAttrList.inc</a>"</span></div>
+<div class="line"><a name="l00301"></a><span class="lineno">  301</span> <span class="preprocessor">    #undef PARSED_ATTR</span></div>
+<div class="line"><a name="l00302"></a><span class="lineno">  302</span> <span class="preprocessor"></span>    <a class="code" href="classclang_1_1AttributeList.html#abfb7b1d3d2044394d2733eeba84cf8a2ad890afb2a2da2d3b37d755375ae0736a">IgnoredAttribute</a>,</div>
+<div class="line"><a name="l00303"></a><span class="lineno">  303</span>     <a class="code" href="classclang_1_1AttributeList.html#abfb7b1d3d2044394d2733eeba84cf8a2a5e8d2e994fe496b67bb2968257a7c308">UnknownAttribute</a></div>
+<div class="line"><a name="l00304"></a><span class="lineno">  304</span>   };</div>
+<div class="line"><a name="l00305"></a><span class="lineno">  305</span> </div>
+<div class="line"><a name="l00306"></a><span class="lineno"><a class="code" href="classclang_1_1AttributeList.html#ad33e72a3989e9a61697da22d0211bf15">  306</a></span>   <a class="code" href="classclang_1_1IdentifierInfo.html">IdentifierInfo</a> *<a class="code" href="classclang_1_1AttributeList.html#ad33e72a3989e9a61697da22d0211bf15">getName</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> AttrName; }</div>
+<div class="line"><a name="l00307"></a><span class="lineno"><a class="code" href="classclang_1_1AttributeList.html#a764e55754a52aa43b991dbbb24fa1450">  307</a></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="classclang_1_1AttributeList.html#a764e55754a52aa43b991dbbb24fa1450">getLoc</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> AttrRange.<a class="code" href="classclang_1_1SourceRange.html#a890dff14560eb9aceb08be18dfe74208">getBegin</a>(); }</div>
+<div class="line"><a name="l00308"></a><span class="lineno"><a class="code" href="classclang_1_1AttributeList.html#a8ac1ba0f1ee3819ffdea1a6102ddf037">  308</a></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="classclang_1_1AttributeList.html#a8ac1ba0f1ee3819ffdea1a6102ddf037">getRange</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> AttrRange; }</div>
+<div class="line"><a name="l00309"></a><span class="lineno">  309</span>   </div>
+<div class="line"><a name="l00310"></a><span class="lineno"><a class="code" href="classclang_1_1AttributeList.html#a7edcb1372f2e18d86d380d35c3ce5ef9">  310</a></span>   <span class="keywordtype">bool</span> <a class="code" href="classclang_1_1AttributeList.html#a7edcb1372f2e18d86d380d35c3ce5ef9">hasScope</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> ScopeName; }</div>
+<div class="line"><a name="l00311"></a><span class="lineno"><a class="code" href="classclang_1_1AttributeList.html#a782573ecc730e001b85ace3579053ee4">  311</a></span>   <a class="code" href="classclang_1_1IdentifierInfo.html">IdentifierInfo</a> *<a class="code" href="classclang_1_1AttributeList.html#a782573ecc730e001b85ace3579053ee4">getScopeName</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> ScopeName; }</div>
+<div class="line"><a name="l00312"></a><span class="lineno"><a class="code" href="classclang_1_1AttributeList.html#a4fc20e489f9c712ae6f0a00665cd25cc">  312</a></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="classclang_1_1AttributeList.html#a4fc20e489f9c712ae6f0a00665cd25cc">getScopeLoc</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> ScopeLoc; }</div>
+<div class="line"><a name="l00313"></a><span class="lineno">  313</span>   </div>
+<div class="line"><a name="l00314"></a><span class="lineno"><a class="code" href="classclang_1_1AttributeList.html#a443782ffc92d54b0d0de5404a4f1ed8a">  314</a></span>   <span class="keywordtype">bool</span> <a class="code" href="classclang_1_1AttributeList.html#a443782ffc92d54b0d0de5404a4f1ed8a">hasParsedType</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> HasParsedType; }</div>
+<div class="line"><a name="l00315"></a><span class="lineno">  315</span> <span class="comment"></span></div>
+<div class="line"><a name="l00316"></a><span class="lineno">  316</span> <span class="comment">  /// Is this the Microsoft __declspec(property) attribute?</span></div>
+<div class="line"><a name="l00317"></a><span class="lineno"><a class="code" href="classclang_1_1AttributeList.html#a768a6ede4895f8abdad36369e9821ccc">  317</a></span> <span class="comment"></span>  <span class="keywordtype">bool</span> <a class="code" href="classclang_1_1AttributeList.html#a768a6ede4895f8abdad36369e9821ccc" title="Is this the Microsoft __declspec(property) attribute?">isDeclspecPropertyAttribute</a>()<span class="keyword"> const  </span>{</div>
+<div class="line"><a name="l00318"></a><span class="lineno">  318</span>     <span class="keywordflow">return</span> IsProperty;</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> </div>
+<div class="line"><a name="l00321"></a><span class="lineno"><a class="code" href="classclang_1_1AttributeList.html#aa2bf45a71248a4ba50bb9d070217bbf2">  321</a></span>   <span class="keywordtype">bool</span> <a class="code" href="classclang_1_1AttributeList.html#aa2bf45a71248a4ba50bb9d070217bbf2">isAlignasAttribute</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00322"></a><span class="lineno">  322</span>     <span class="comment">// FIXME: Use a better mechanism to determine this.</span></div>
+<div class="line"><a name="l00323"></a><span class="lineno">  323</span>     <span class="keywordflow">return</span> <a class="code" href="classclang_1_1AttributeList.html#a4e563bd986f1003c1e51398b1f7aadd9">getKind</a>() == AT_Aligned && SyntaxUsed == <a class="code" href="classclang_1_1AttributeList.html#a7e6e722d96e46b102c1de17fea3a6374ae031ff8f56d481dfd27e5b656fa543d0" title="__ptr16, alignas(...), etc.">AS_Keyword</a>;</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> </div>
+<div class="line"><a name="l00326"></a><span class="lineno"><a class="code" href="classclang_1_1AttributeList.html#ae69ff70890a01e295b3fd176545040ac">  326</a></span>   <span class="keywordtype">bool</span> <a class="code" href="classclang_1_1AttributeList.html#ae69ff70890a01e295b3fd176545040ac">isDeclspecAttribute</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> SyntaxUsed == <a class="code" href="classclang_1_1AttributeList.html#a7e6e722d96e46b102c1de17fea3a6374a78bf3b581d93a7e3f343da39aef1c2f7" title="__declspec(...)">AS_Declspec</a>; }</div>
+<div class="line"><a name="l00327"></a><span class="lineno"><a class="code" href="classclang_1_1AttributeList.html#a6e7765977c4d8e2f47197ef94f5e0b37">  327</a></span>   <span class="keywordtype">bool</span> <a class="code" href="classclang_1_1AttributeList.html#a6e7765977c4d8e2f47197ef94f5e0b37">isCXX11Attribute</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00328"></a><span class="lineno">  328</span>     <span class="keywordflow">return</span> SyntaxUsed == <a class="code" href="classclang_1_1AttributeList.html#a7e6e722d96e46b102c1de17fea3a6374aa5ea0ec784985c05430e002c3ca6f561" title="[[...]]">AS_CXX11</a> || <a class="code" href="classclang_1_1AttributeList.html#aa2bf45a71248a4ba50bb9d070217bbf2">isAlignasAttribute</a>();</div>
+<div class="line"><a name="l00329"></a><span class="lineno">  329</span>   }</div>
+<div class="line"><a name="l00330"></a><span class="lineno"><a class="code" href="classclang_1_1AttributeList.html#ac12bd74a458389835869b4b0ecbe5f03">  330</a></span>   <span class="keywordtype">bool</span> <a class="code" href="classclang_1_1AttributeList.html#ac12bd74a458389835869b4b0ecbe5f03">isKeywordAttribute</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> SyntaxUsed == <a class="code" href="classclang_1_1AttributeList.html#a7e6e722d96e46b102c1de17fea3a6374ae031ff8f56d481dfd27e5b656fa543d0" title="__ptr16, alignas(...), etc.">AS_Keyword</a>; }</div>
+<div class="line"><a name="l00331"></a><span class="lineno">  331</span> </div>
+<div class="line"><a name="l00332"></a><span class="lineno"><a class="code" href="classclang_1_1AttributeList.html#ae4460a3244af2faadc0d88239b786b5f">  332</a></span>   <span class="keywordtype">bool</span> <a class="code" href="classclang_1_1AttributeList.html#ae4460a3244af2faadc0d88239b786b5f">isInvalid</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> Invalid; }</div>
+<div class="line"><a name="l00333"></a><span class="lineno"><a class="code" href="classclang_1_1AttributeList.html#ad2ce5246eed483669e582893448602d8">  333</a></span>   <span class="keywordtype">void</span> <a class="code" href="classclang_1_1AttributeList.html#ad2ce5246eed483669e582893448602d8">setInvalid</a>(<span class="keywordtype">bool</span> b = <span class="keyword">true</span>)<span class="keyword"> const </span>{ Invalid = b; }</div>
+<div class="line"><a name="l00334"></a><span class="lineno">  334</span> </div>
+<div class="line"><a name="l00335"></a><span class="lineno"><a class="code" href="classclang_1_1AttributeList.html#aa8e6afe9f19419aeab75fecc6a92b24e">  335</a></span>   <span class="keywordtype">bool</span> <a class="code" href="classclang_1_1AttributeList.html#aa8e6afe9f19419aeab75fecc6a92b24e">isUsedAsTypeAttr</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> UsedAsTypeAttr; }</div>
+<div class="line"><a name="l00336"></a><span class="lineno"><a class="code" href="classclang_1_1AttributeList.html#a77194ed2e064521650d9a9c6f7ca676e">  336</a></span>   <span class="keywordtype">void</span> <a class="code" href="classclang_1_1AttributeList.html#a77194ed2e064521650d9a9c6f7ca676e">setUsedAsTypeAttr</a>() { UsedAsTypeAttr = <span class="keyword">true</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_1AttributeList.html#a8350bfcbdb1bebb5bc45efde5e335dca">  338</a></span>   <span class="keywordtype">bool</span> <a class="code" href="classclang_1_1AttributeList.html#a8350bfcbdb1bebb5bc45efde5e335dca">isPackExpansion</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> EllipsisLoc.<a class="code" href="classclang_1_1SourceLocation.html#ad504978d83973770506b6ddb1d7b48f9" title="Return true if this is a valid SourceLocation object.">isValid</a>(); }</div>
+<div class="line"><a name="l00339"></a><span class="lineno"><a class="code" href="classclang_1_1AttributeList.html#a1ce93067c7dd9d88f2d520a7b8b204b1">  339</a></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="classclang_1_1AttributeList.html#a1ce93067c7dd9d88f2d520a7b8b204b1">getEllipsisLoc</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> EllipsisLoc; }</div>
+<div class="line"><a name="l00340"></a><span class="lineno">  340</span> </div>
+<div class="line"><a name="l00341"></a><span class="lineno"><a class="code" href="classclang_1_1AttributeList.html#a4e563bd986f1003c1e51398b1f7aadd9">  341</a></span>   <a class="code" href="classclang_1_1AttributeList.html#abfb7b1d3d2044394d2733eeba84cf8a2">Kind</a> <a class="code" href="classclang_1_1AttributeList.html#a4e563bd986f1003c1e51398b1f7aadd9">getKind</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="classclang_1_1AttributeList.html#abfb7b1d3d2044394d2733eeba84cf8a2">Kind</a>(AttrKind); }</div>
+<div class="line"><a name="l00342"></a><span class="lineno">  342</span>   <span class="keyword">static</span> <a class="code" href="ChrootChecker_8cpp.html#aa10c9e8951b8ccf714a59ec321bdac5b">Kind</a> <a class="code" href="classclang_1_1AttributeList.html#a4e563bd986f1003c1e51398b1f7aadd9">getKind</a>(<span class="keyword">const</span> <a class="code" href="classclang_1_1IdentifierInfo.html">IdentifierInfo</a> *Name, <span class="keyword">const</span> <a class="code" href="classclang_1_1IdentifierInfo.html">IdentifierInfo</a> *<a class="code" href="classclang_1_1Scope.html">Scope</a>,</div>
+<div class="line"><a name="l00343"></a><span class="lineno">  343</span>                       <a class="code" href="classclang_1_1AttributeList.html#a7e6e722d96e46b102c1de17fea3a6374" title="The style used to specify an attribute.">Syntax</a> SyntaxUsed);</div>
+<div class="line"><a name="l00344"></a><span class="lineno">  344</span> </div>
+<div class="line"><a name="l00345"></a><span class="lineno"><a class="code" href="classclang_1_1AttributeList.html#a9e8836cfe5794658c6811dc504476f39">  345</a></span>   <a class="code" href="classclang_1_1AttributeList.html">AttributeList</a> *<a class="code" href="classclang_1_1AttributeList.html#a9e8836cfe5794658c6811dc504476f39">getNext</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> NextInPosition; }</div>
+<div class="line"><a name="l00346"></a><span class="lineno"><a class="code" href="classclang_1_1AttributeList.html#a124c946728b963a801ee83a43a2a3b82">  346</a></span>   <span class="keywordtype">void</span> <a class="code" href="classclang_1_1AttributeList.html#a124c946728b963a801ee83a43a2a3b82">setNext</a>(<a class="code" href="classclang_1_1AttributeList.html">AttributeList</a> *N) { NextInPosition = N; }</div>
+<div class="line"><a name="l00347"></a><span class="lineno">  347</span> <span class="comment"></span></div>
+<div class="line"><a name="l00348"></a><span class="lineno">  348</span> <span class="comment">  /// getNumArgs - Return the number of actual arguments to this attribute.</span></div>
+<div class="line"><a name="l00349"></a><span class="lineno"><a class="code" href="classclang_1_1AttributeList.html#abe4b9dde110816c0a2a970bbdb3c866a">  349</a></span> <span class="comment"></span>  <span class="keywordtype">unsigned</span> <a class="code" href="classclang_1_1AttributeList.html#abe4b9dde110816c0a2a970bbdb3c866a" title="getNumArgs - Return the number of actual arguments to this attribute.">getNumArgs</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> NumArgs; }</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">  /// getArg - Return the specified argument.</span></div>
+<div class="line"><a name="l00352"></a><span class="lineno"><a class="code" href="classclang_1_1AttributeList.html#ae13175654c2b519c78ae876b36fe3ef5">  352</a></span> <span class="comment"></span>  <a class="code" href="namespaceclang.html#aef421691d7b5e01971c6bf88afc6a969" title="A union of the various pointer types that can be passed to an AttributeList as an argument...">ArgsUnion</a> <a class="code" href="classclang_1_1AttributeList.html#ae13175654c2b519c78ae876b36fe3ef5" title="getArg - Return the specified argument.">getArg</a>(<span class="keywordtype">unsigned</span> Arg)<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00353"></a><span class="lineno">  353</span>     assert(Arg < NumArgs && <span class="stringliteral">"Arg access out of range!"</span>);</div>
+<div class="line"><a name="l00354"></a><span class="lineno">  354</span>     <span class="keywordflow">return</span> getArgsBuffer()[Arg];</div>
+<div class="line"><a name="l00355"></a><span class="lineno">  355</span>   }</div>
+<div class="line"><a name="l00356"></a><span class="lineno">  356</span> </div>
+<div class="line"><a name="l00357"></a><span class="lineno"><a class="code" href="classclang_1_1AttributeList.html#adb8dcc90f498b7e546985aee0baa92e3">  357</a></span>   <span class="keywordtype">bool</span> <a class="code" href="classclang_1_1AttributeList.html#adb8dcc90f498b7e546985aee0baa92e3">isArgExpr</a>(<span class="keywordtype">unsigned</span> Arg)<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00358"></a><span class="lineno">  358</span>     <span class="keywordflow">return</span> Arg < NumArgs && <a class="code" href="classclang_1_1AttributeList.html#ae13175654c2b519c78ae876b36fe3ef5" title="getArg - Return the specified argument.">getArg</a>(Arg).is<<a class="code" href="classclang_1_1Expr.html">Expr</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"><a class="code" href="classclang_1_1AttributeList.html#a265d2e7800361a5124d7455fdd432424">  360</a></span>   <a class="code" href="classclang_1_1Expr.html">Expr</a> *<a class="code" href="classclang_1_1AttributeList.html#a265d2e7800361a5124d7455fdd432424">getArgAsExpr</a>(<span class="keywordtype">unsigned</span> Arg)<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00361"></a><span class="lineno">  361</span>     <span class="keywordflow">return</span> <a class="code" href="classclang_1_1AttributeList.html#ae13175654c2b519c78ae876b36fe3ef5" title="getArg - Return the specified argument.">getArg</a>(Arg).get<<a class="code" href="classclang_1_1Expr.html">Expr</a>*>();</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_1AttributeList.html#aa2aa8f2227a167ee171e216977d1c03a">  364</a></span>   <span class="keywordtype">bool</span> <a class="code" href="classclang_1_1AttributeList.html#aa2aa8f2227a167ee171e216977d1c03a">isArgIdent</a>(<span class="keywordtype">unsigned</span> Arg)<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00365"></a><span class="lineno">  365</span>     <span class="keywordflow">return</span> Arg < NumArgs && <a class="code" href="classclang_1_1AttributeList.html#ae13175654c2b519c78ae876b36fe3ef5" title="getArg - Return the specified argument.">getArg</a>(Arg).is<<a class="code" href="structclang_1_1IdentifierLoc.html" title="Wraps an identifier and optional source location for the identifier.">IdentifierLoc</a>*>();</div>
+<div class="line"><a name="l00366"></a><span class="lineno">  366</span>   }</div>
+<div class="line"><a name="l00367"></a><span class="lineno"><a class="code" href="classclang_1_1AttributeList.html#a19844e07d5dc2adeef68b4bd51fd2021">  367</a></span>   <a class="code" href="structclang_1_1IdentifierLoc.html" title="Wraps an identifier and optional source location for the identifier.">IdentifierLoc</a> *<a class="code" href="classclang_1_1AttributeList.html#a19844e07d5dc2adeef68b4bd51fd2021">getArgAsIdent</a>(<span class="keywordtype">unsigned</span> Arg)<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00368"></a><span class="lineno">  368</span>     <span class="keywordflow">return</span> <a class="code" href="classclang_1_1AttributeList.html#ae13175654c2b519c78ae876b36fe3ef5" title="getArg - Return the specified argument.">getArg</a>(Arg).get<<a class="code" href="structclang_1_1IdentifierLoc.html" title="Wraps an identifier and optional source location for the identifier.">IdentifierLoc</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> </div>
+<div class="line"><a name="l00371"></a><span class="lineno"><a class="code" href="classclang_1_1AttributeList_1_1arg__iterator.html">  371</a></span>   <span class="keyword">class </span><a class="code" href="classclang_1_1AttributeList_1_1arg__iterator.html">arg_iterator</a> {</div>
+<div class="line"><a name="l00372"></a><span class="lineno">  372</span>     <a class="code" href="namespaceclang.html#aef421691d7b5e01971c6bf88afc6a969" title="A union of the various pointer types that can be passed to an AttributeList as an argument...">ArgsUnion</a> <span class="keyword">const</span> *X;</div>
+<div class="line"><a name="l00373"></a><span class="lineno">  373</span>     <span class="keywordtype">unsigned</span> Idx;</div>
+<div class="line"><a name="l00374"></a><span class="lineno">  374</span>   <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00375"></a><span class="lineno"><a class="code" href="classclang_1_1AttributeList_1_1arg__iterator.html#a175ab80264af5fa56624bec2fc23c0b6">  375</a></span>     <a class="code" href="classclang_1_1AttributeList_1_1arg__iterator.html#a175ab80264af5fa56624bec2fc23c0b6">arg_iterator</a>(<a class="code" href="namespaceclang.html#aef421691d7b5e01971c6bf88afc6a969" title="A union of the various pointer types that can be passed to an AttributeList as an argument...">ArgsUnion</a> <span class="keyword">const</span> *x, <span class="keywordtype">unsigned</span> idx) : X(x), Idx(idx) {}</div>
+<div class="line"><a name="l00376"></a><span class="lineno">  376</span> </div>
+<div class="line"><a name="l00377"></a><span class="lineno"><a class="code" href="classclang_1_1AttributeList_1_1arg__iterator.html#a61f1c9791f19952899d5529f8034c856">  377</a></span>     <a class="code" href="classclang_1_1AttributeList_1_1arg__iterator.html">arg_iterator</a>& <a class="code" href="classclang_1_1AttributeList_1_1arg__iterator.html#a61f1c9791f19952899d5529f8034c856">operator++</a>() {</div>
+<div class="line"><a name="l00378"></a><span class="lineno">  378</span>       ++Idx;</div>
+<div class="line"><a name="l00379"></a><span class="lineno">  379</span>       <span class="keywordflow">return</span> *<span class="keyword">this</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> </div>
+<div class="line"><a name="l00382"></a><span class="lineno"><a class="code" href="classclang_1_1AttributeList_1_1arg__iterator.html#a3ac0b30e7298bdee8b5291763fca53ff">  382</a></span>     <span class="keywordtype">bool</span> <a class="code" href="classclang_1_1AttributeList_1_1arg__iterator.html#a3ac0b30e7298bdee8b5291763fca53ff">operator==</a>(<span class="keyword">const</span> <a class="code" href="classclang_1_1AttributeList_1_1arg__iterator.html">arg_iterator</a>& I)<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00383"></a><span class="lineno">  383</span>       assert (X == I.X &&</div>
+<div class="line"><a name="l00384"></a><span class="lineno">  384</span>               <span class="stringliteral">"compared arg_iterators are for different argument lists"</span>);</div>
+<div class="line"><a name="l00385"></a><span class="lineno">  385</span>       <span class="keywordflow">return</span> Idx == I.Idx;</div>
+<div class="line"><a name="l00386"></a><span class="lineno">  386</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"><a class="code" href="classclang_1_1AttributeList_1_1arg__iterator.html#af91acdf0571df5200e4aae08f7fd0ba3">  388</a></span>     <span class="keywordtype">bool</span> <a class="code" href="classclang_1_1AttributeList_1_1arg__iterator.html#af91acdf0571df5200e4aae08f7fd0ba3">operator!=</a>(<span class="keyword">const</span> <a class="code" href="classclang_1_1AttributeList_1_1arg__iterator.html">arg_iterator</a>& I)<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00389"></a><span class="lineno">  389</span>       <span class="keywordflow">return</span> !<a class="code" href="classclang_1_1AttributeList_1_1arg__iterator.html#a3ac0b30e7298bdee8b5291763fca53ff">operator==</a>(I);</div>
+<div class="line"><a name="l00390"></a><span class="lineno">  390</span>     }</div>
+<div class="line"><a name="l00391"></a><span class="lineno">  391</span> </div>
+<div class="line"><a name="l00392"></a><span class="lineno"><a class="code" href="classclang_1_1AttributeList_1_1arg__iterator.html#a7aa9c509bc99a04b02ec043a546ef1de">  392</a></span>     <a class="code" href="namespaceclang.html#aef421691d7b5e01971c6bf88afc6a969" title="A union of the various pointer types that can be passed to an AttributeList as an argument...">ArgsUnion</a> <a class="code" href="classclang_1_1AttributeList_1_1arg__iterator.html#a7aa9c509bc99a04b02ec043a546ef1de">operator*</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00393"></a><span class="lineno">  393</span>       <span class="keywordflow">return</span> X[Idx];</div>
+<div class="line"><a name="l00394"></a><span class="lineno">  394</span>     }</div>
+<div class="line"><a name="l00395"></a><span class="lineno">  395</span> </div>
+<div class="line"><a name="l00396"></a><span class="lineno"><a class="code" href="classclang_1_1AttributeList_1_1arg__iterator.html#adb839d233ef5795bcd60ad88f87dcff0">  396</a></span>     <span class="keywordtype">unsigned</span> <a class="code" href="classclang_1_1AttributeList_1_1arg__iterator.html#adb839d233ef5795bcd60ad88f87dcff0">getArgNum</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00397"></a><span class="lineno">  397</span>       <span class="keywordflow">return</span> Idx+1;</div>
+<div class="line"><a name="l00398"></a><span class="lineno">  398</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"><a class="code" href="classclang_1_1AttributeList.html#ad3cac7b8582ffe3e8e4402fd917b2623">  401</a></span>   <a class="code" href="classclang_1_1AttributeList_1_1arg__iterator.html">arg_iterator</a> <a class="code" href="classclang_1_1AttributeList.html#ad3cac7b8582ffe3e8e4402fd917b2623">arg_begin</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00402"></a><span class="lineno">  402</span>     <span class="keywordflow">return</span> <a class="code" href="classclang_1_1AttributeList_1_1arg__iterator.html">arg_iterator</a>(getArgsBuffer(), 0);</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_1AttributeList.html#ab7929c8b4a06a1d1432cdff685343375">  405</a></span>   <a class="code" href="classclang_1_1AttributeList_1_1arg__iterator.html">arg_iterator</a> <a class="code" href="classclang_1_1AttributeList.html#ab7929c8b4a06a1d1432cdff685343375">arg_end</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00406"></a><span class="lineno">  406</span>     <span class="keywordflow">return</span> <a class="code" href="classclang_1_1AttributeList_1_1arg__iterator.html">arg_iterator</a>(getArgsBuffer(), NumArgs);</div>
+<div class="line"><a name="l00407"></a><span class="lineno">  407</span>   }</div>
+<div class="line"><a name="l00408"></a><span class="lineno">  408</span> </div>
+<div class="line"><a name="l00409"></a><span class="lineno"><a class="code" href="classclang_1_1AttributeList.html#ac0b3802b4c690421075b80271037a0c2">  409</a></span>   <span class="keyword">const</span> <a class="code" href="structclang_1_1AvailabilityChange.html" title="Represents information about a change in availability for an entity, which is part of the encoding of...">AvailabilityChange</a> &<a class="code" href="classclang_1_1AttributeList.html#ac0b3802b4c690421075b80271037a0c2">getAvailabilityIntroduced</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00410"></a><span class="lineno">  410</span>     assert(<a class="code" href="classclang_1_1AttributeList.html#a4e563bd986f1003c1e51398b1f7aadd9">getKind</a>() == AT_Availability && <span class="stringliteral">"Not an availability attribute"</span>);</div>
+<div class="line"><a name="l00411"></a><span class="lineno">  411</span>     <span class="keywordflow">return</span> getAvailabilitySlot(IntroducedSlot);</div>
+<div class="line"><a name="l00412"></a><span class="lineno">  412</span>   }</div>
+<div class="line"><a name="l00413"></a><span class="lineno">  413</span> </div>
+<div class="line"><a name="l00414"></a><span class="lineno"><a class="code" href="classclang_1_1AttributeList.html#a1b52eef1afc2609d26e8eb6ae7c818a0">  414</a></span>   <span class="keyword">const</span> <a class="code" href="structclang_1_1AvailabilityChange.html" title="Represents information about a change in availability for an entity, which is part of the encoding of...">AvailabilityChange</a> &<a class="code" href="classclang_1_1AttributeList.html#a1b52eef1afc2609d26e8eb6ae7c818a0">getAvailabilityDeprecated</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00415"></a><span class="lineno">  415</span>     assert(<a class="code" href="classclang_1_1AttributeList.html#a4e563bd986f1003c1e51398b1f7aadd9">getKind</a>() == AT_Availability && <span class="stringliteral">"Not an availability attribute"</span>);</div>
+<div class="line"><a name="l00416"></a><span class="lineno">  416</span>     <span class="keywordflow">return</span> getAvailabilitySlot(DeprecatedSlot);</div>
+<div class="line"><a name="l00417"></a><span class="lineno">  417</span>   }</div>
+<div class="line"><a name="l00418"></a><span class="lineno">  418</span> </div>
+<div class="line"><a name="l00419"></a><span class="lineno"><a class="code" href="classclang_1_1AttributeList.html#a36f327bc4318fdc6e849736fc148c1ae">  419</a></span>   <span class="keyword">const</span> <a class="code" href="structclang_1_1AvailabilityChange.html" title="Represents information about a change in availability for an entity, which is part of the encoding of...">AvailabilityChange</a> &<a class="code" href="classclang_1_1AttributeList.html#a36f327bc4318fdc6e849736fc148c1ae">getAvailabilityObsoleted</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00420"></a><span class="lineno">  420</span>     assert(<a class="code" href="classclang_1_1AttributeList.html#a4e563bd986f1003c1e51398b1f7aadd9">getKind</a>() == AT_Availability && <span class="stringliteral">"Not an availability attribute"</span>);</div>
+<div class="line"><a name="l00421"></a><span class="lineno">  421</span>     <span class="keywordflow">return</span> getAvailabilitySlot(ObsoletedSlot);</div>
+<div class="line"><a name="l00422"></a><span class="lineno">  422</span>   }</div>
+<div class="line"><a name="l00423"></a><span class="lineno">  423</span> </div>
+<div class="line"><a name="l00424"></a><span class="lineno"><a class="code" href="classclang_1_1AttributeList.html#a89877faf6e91e34c93b851873b7a4b46">  424</a></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="classclang_1_1AttributeList.html#a89877faf6e91e34c93b851873b7a4b46">getUnavailableLoc</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00425"></a><span class="lineno">  425</span>     assert(<a class="code" href="classclang_1_1AttributeList.html#a4e563bd986f1003c1e51398b1f7aadd9">getKind</a>() == AT_Availability && <span class="stringliteral">"Not an availability attribute"</span>);</div>
+<div class="line"><a name="l00426"></a><span class="lineno">  426</span>     <span class="keywordflow">return</span> UnavailableLoc;</div>
+<div class="line"><a name="l00427"></a><span class="lineno">  427</span>   }</div>
+<div class="line"><a name="l00428"></a><span class="lineno">  428</span>   </div>
+<div class="line"><a name="l00429"></a><span class="lineno"><a class="code" href="classclang_1_1AttributeList.html#a9180da2e874e0f34126f580ee4006a2e">  429</a></span>   <span class="keyword">const</span> <a class="code" href="classclang_1_1Expr.html">Expr</a> * <a class="code" href="classclang_1_1AttributeList.html#a9180da2e874e0f34126f580ee4006a2e">getMessageExpr</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00430"></a><span class="lineno">  430</span>     assert(<a class="code" href="classclang_1_1AttributeList.html#a4e563bd986f1003c1e51398b1f7aadd9">getKind</a>() == AT_Availability && <span class="stringliteral">"Not an availability attribute"</span>);</div>
+<div class="line"><a name="l00431"></a><span class="lineno">  431</span>     <span class="keywordflow">return</span> MessageExpr;</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> </div>
+<div class="line"><a name="l00434"></a><span class="lineno"><a class="code" href="classclang_1_1AttributeList.html#aa7194fa0d7bcc962032db34b6341b6c8">  434</a></span>   <span class="keyword">const</span> <a class="code" href="classclang_1_1OpaquePtr.html">ParsedType</a> &<a class="code" href="classclang_1_1AttributeList.html#aa7194fa0d7bcc962032db34b6341b6c8">getMatchingCType</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00435"></a><span class="lineno">  435</span>     assert(<a class="code" href="classclang_1_1AttributeList.html#a4e563bd986f1003c1e51398b1f7aadd9">getKind</a>() == AT_TypeTagForDatatype &&</div>
+<div class="line"><a name="l00436"></a><span class="lineno">  436</span>            <span class="stringliteral">"Not a type_tag_for_datatype attribute"</span>);</div>
+<div class="line"><a name="l00437"></a><span class="lineno">  437</span>     <span class="keywordflow">return</span> *getTypeTagForDatatypeDataSlot().<a class="code" href="structclang_1_1AttributeList_1_1TypeTagForDatatypeData.html#a6ef71bed5f416cf17d0f51cd778bb089">MatchingCType</a>;</div>
+<div class="line"><a name="l00438"></a><span class="lineno">  438</span>   }</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_1AttributeList.html#ae7a8090ed5340a5833c0e2c8a47a9d55">  440</a></span>   <span class="keywordtype">bool</span> <a class="code" href="classclang_1_1AttributeList.html#ae7a8090ed5340a5833c0e2c8a47a9d55">getLayoutCompatible</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00441"></a><span class="lineno">  441</span>     assert(<a class="code" href="classclang_1_1AttributeList.html#a4e563bd986f1003c1e51398b1f7aadd9">getKind</a>() == AT_TypeTagForDatatype &&</div>
+<div class="line"><a name="l00442"></a><span class="lineno">  442</span>            <span class="stringliteral">"Not a type_tag_for_datatype attribute"</span>);</div>
+<div class="line"><a name="l00443"></a><span class="lineno">  443</span>     <span class="keywordflow">return</span> getTypeTagForDatatypeDataSlot().<a class="code" href="structclang_1_1AttributeList_1_1TypeTagForDatatypeData.html#a40bd2caf311a5649c74a87600a3619f1">LayoutCompatible</a>;</div>
+<div class="line"><a name="l00444"></a><span class="lineno">  444</span>   }</div>
+<div class="line"><a name="l00445"></a><span class="lineno">  445</span> </div>
+<div class="line"><a name="l00446"></a><span class="lineno"><a class="code" href="classclang_1_1AttributeList.html#adc0ff9c887501ce51c6c15cb01ac5f1f">  446</a></span>   <span class="keywordtype">bool</span> <a class="code" href="classclang_1_1AttributeList.html#adc0ff9c887501ce51c6c15cb01ac5f1f">getMustBeNull</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00447"></a><span class="lineno">  447</span>     assert(<a class="code" href="classclang_1_1AttributeList.html#a4e563bd986f1003c1e51398b1f7aadd9">getKind</a>() == AT_TypeTagForDatatype &&</div>
+<div class="line"><a name="l00448"></a><span class="lineno">  448</span>            <span class="stringliteral">"Not a type_tag_for_datatype attribute"</span>);</div>
+<div class="line"><a name="l00449"></a><span class="lineno">  449</span>     <span class="keywordflow">return</span> getTypeTagForDatatypeDataSlot().<a class="code" href="structclang_1_1AttributeList_1_1TypeTagForDatatypeData.html#a27982d86b871db12f82cc8da396e266b">MustBeNull</a>;</div>
+<div class="line"><a name="l00450"></a><span class="lineno">  450</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"><a class="code" href="classclang_1_1AttributeList.html#adbc1a2481c417b75d4179e4ebb9d5049">  452</a></span>   <span class="keyword">const</span> <a class="code" href="classclang_1_1OpaquePtr.html">ParsedType</a> &<a class="code" href="classclang_1_1AttributeList.html#adbc1a2481c417b75d4179e4ebb9d5049">getTypeArg</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00453"></a><span class="lineno">  453</span>     assert(HasParsedType && <span class="stringliteral">"Not a type attribute"</span>);</div>
+<div class="line"><a name="l00454"></a><span class="lineno">  454</span>     <span class="keywordflow">return</span> getTypeBuffer();</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"><a class="code" href="classclang_1_1AttributeList.html#a053c29c76ec18c9e74a0b889162b79c1">  457</a></span>   <span class="keyword">const</span> <a class="code" href="structclang_1_1AttributeList_1_1PropertyData.html">PropertyData</a> &<a class="code" href="classclang_1_1AttributeList.html#a053c29c76ec18c9e74a0b889162b79c1">getPropertyData</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00458"></a><span class="lineno">  458</span>     assert(<a class="code" href="classclang_1_1AttributeList.html#a768a6ede4895f8abdad36369e9821ccc" title="Is this the Microsoft __declspec(property) attribute?">isDeclspecPropertyAttribute</a>() && <span class="stringliteral">"Not a __delcspec(property) attribute"</span>);</div>
+<div class="line"><a name="l00459"></a><span class="lineno">  459</span>     <span class="keywordflow">return</span> getPropertyDataBuffer();</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> <span class="comment"></span></div>
+<div class="line"><a name="l00462"></a><span class="lineno">  462</span> <span class="comment">  /// \brief Get an index into the attribute spelling list</span></div>
+<div class="line"><a name="l00463"></a><span class="lineno">  463</span> <span class="comment">  /// defined in Attr.td. This index is used by an attribute</span></div>
+<div class="line"><a name="l00464"></a><span class="lineno">  464</span> <span class="comment">  /// to pretty print itself.</span></div>
+<div class="line"><a name="l00465"></a><span class="lineno">  465</span> <span class="comment"></span>  <span class="keywordtype">unsigned</span> <a class="code" href="classclang_1_1AttributeList.html#a974c2758cab66d8b8f94c368c3ccf57c" title="Get an index into the attribute spelling list defined in Attr.td. This index is used by an attribute ...">getAttributeSpellingListIndex</a>() <span class="keyword">const</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>   <span class="keywordtype">bool</span> <a class="code" href="classclang_1_1AttributeList.html#a9f6b5bbb3d10a4ba0be3e5dee02f3072">hasCustomParsing</a>() <span class="keyword">const</span>;</div>
+<div class="line"><a name="l00468"></a><span class="lineno">  468</span>   <span class="keywordtype">unsigned</span> <a class="code" href="classclang_1_1AttributeList.html#a9247e9b386f2910b292e620f138b48d5">getMinArgs</a>() <span class="keyword">const</span>;</div>
+<div class="line"><a name="l00469"></a><span class="lineno">  469</span>   <span class="keywordtype">unsigned</span> <a class="code" href="classclang_1_1AttributeList.html#aa7ee1854886b0be2899011efa10a3c7d">getMaxArgs</a>() <span class="keyword">const</span>;</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> <span class="comment"></span></div>
+<div class="line"><a name="l00472"></a><span class="lineno">  472</span> <span class="comment">/// A factory, from which one makes pools, from which one creates</span></div>
+<div class="line"><a name="l00473"></a><span class="lineno">  473</span> <span class="comment">/// individual attributes which are deallocated with the pool.</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> <span class="comment">/// Note that it's tolerably cheap to create and destroy one of</span></div>
+<div class="line"><a name="l00476"></a><span class="lineno"><a class="code" href="classclang_1_1AttributeList.html#abfb7b1d3d2044394d2733eeba84cf8a2ad890afb2a2da2d3b37d755375ae0736a">  476</a></span> <span class="comment">/// these as long as you don't actually allocate anything in it.</span></div>
+<div class="line"><a name="l00477"></a><span class="lineno"><a class="code" href="classclang_1_1AttributeList.html#abfb7b1d3d2044394d2733eeba84cf8a2a5e8d2e994fe496b67bb2968257a7c308">  477</a></span> <span class="comment"></span><span class="keyword">class </span><a class="code" href="classclang_1_1AttributeFactory.html">AttributeFactory</a> {</div>
+<div class="line"><a name="l00478"></a><span class="lineno">  478</span> <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00479"></a><span class="lineno">  479</span>   <span class="keyword">enum</span> {<span class="comment"></span></div>
+<div class="line"><a name="l00480"></a><span class="lineno">  480</span> <span class="comment">    /// The required allocation size of an availability attribute,</span></div>
+<div class="line"><a name="l00481"></a><span class="lineno">  481</span> <span class="comment">    /// which we want to ensure is a multiple of sizeof(void*).</span></div>
+<div class="line"><a name="l00482"></a><span class="lineno"><a class="code" href="classclang_1_1AttributeFactory.html#a9474896d41475d565726965fef1dfb80aea582c9ffd33a969e15bb1f53d36975c">  482</a></span> <span class="comment"></span>    <a class="code" href="classclang_1_1AttributeFactory.html#a9474896d41475d565726965fef1dfb80aea582c9ffd33a969e15bb1f53d36975c">AvailabilityAllocSize</a> =</div>
+<div class="line"><a name="l00483"></a><span class="lineno">  483</span>       <span class="keyword">sizeof</span>(<a class="code" href="classclang_1_1AttributeList.html">AttributeList</a>)</div>
+<div class="line"><a name="l00484"></a><span class="lineno">  484</span>       + ((3 * <span class="keyword">sizeof</span>(<a class="code" href="structclang_1_1AvailabilityChange.html" title="Represents information about a change in availability for an entity, which is part of the encoding of...">AvailabilityChange</a>) + <span class="keyword">sizeof</span>(<span class="keywordtype">void</span>*) +</div>
+<div class="line"><a name="l00485"></a><span class="lineno">  485</span>          <span class="keyword">sizeof</span>(<a class="code" href="namespaceclang.html#aef421691d7b5e01971c6bf88afc6a969" title="A union of the various pointer types that can be passed to an AttributeList as an argument...">ArgsUnion</a>) - 1)</div>
+<div class="line"><a name="l00486"></a><span class="lineno">  486</span>          / <span class="keyword">sizeof</span>(<span class="keywordtype">void</span>*) * <span class="keyword">sizeof</span>(<span class="keywordtype">void</span>*)),</div>
+<div class="line"><a name="l00487"></a><span class="lineno"><a class="code" href="classclang_1_1AttributeFactory.html#a9474896d41475d565726965fef1dfb80a7002d4373448039aecb3b5fc622d8aa8">  487</a></span>     <a class="code" href="classclang_1_1AttributeFactory.html#a9474896d41475d565726965fef1dfb80a7002d4373448039aecb3b5fc622d8aa8">TypeTagForDatatypeAllocSize</a> =</div>
+<div class="line"><a name="l00488"></a><span class="lineno">  488</span>       <span class="keyword">sizeof</span>(<a class="code" href="classclang_1_1AttributeList.html">AttributeList</a>)</div>
+<div class="line"><a name="l00489"></a><span class="lineno">  489</span>       + (<span class="keyword">sizeof</span>(<a class="code" href="structclang_1_1AttributeList_1_1TypeTagForDatatypeData.html">AttributeList::TypeTagForDatatypeData</a>) + <span class="keyword">sizeof</span>(<span class="keywordtype">void</span> *) +</div>
+<div class="line"><a name="l00490"></a><span class="lineno">  490</span>          <span class="keyword">sizeof</span>(<a class="code" href="namespaceclang.html#aef421691d7b5e01971c6bf88afc6a969" title="A union of the various pointer types that can be passed to an AttributeList as an argument...">ArgsUnion</a>) - 1)</div>
+<div class="line"><a name="l00491"></a><span class="lineno">  491</span>         / <span class="keyword">sizeof</span>(<span class="keywordtype">void</span>*) * <span class="keyword">sizeof</span>(<span class="keywordtype">void</span>*),</div>
+<div class="line"><a name="l00492"></a><span class="lineno"><a class="code" href="classclang_1_1AttributeFactory.html#a9474896d41475d565726965fef1dfb80ac52ee6eeb6ae80dee1ef6d0ee9517265">  492</a></span>     <a class="code" href="classclang_1_1AttributeFactory.html#a9474896d41475d565726965fef1dfb80ac52ee6eeb6ae80dee1ef6d0ee9517265">PropertyAllocSize</a> =</div>
+<div class="line"><a name="l00493"></a><span class="lineno">  493</span>       <span class="keyword">sizeof</span>(<a class="code" href="classclang_1_1AttributeList.html">AttributeList</a>)</div>
+<div class="line"><a name="l00494"></a><span class="lineno">  494</span>       + (<span class="keyword">sizeof</span>(<a class="code" href="structclang_1_1AttributeList_1_1PropertyData.html">AttributeList::PropertyData</a>) + <span class="keyword">sizeof</span>(<span class="keywordtype">void</span> *) - 1)</div>
+<div class="line"><a name="l00495"></a><span class="lineno">  495</span>         / <span class="keyword">sizeof</span>(<span class="keywordtype">void</span>*) * <span class="keyword">sizeof</span>(<span class="keywordtype">void</span>*)</div>
+<div class="line"><a name="l00496"></a><span class="lineno">  496</span>   };</div>
+<div class="line"><a name="l00497"></a><span class="lineno">  497</span> </div>
+<div class="line"><a name="l00498"></a><span class="lineno">  498</span> <span class="keyword">private</span>:</div>
+<div class="line"><a name="l00499"></a><span class="lineno">  499</span>   <span class="keyword">enum</span> {<span class="comment"></span></div>
+<div class="line"><a name="l00500"></a><span class="lineno">  500</span> <span class="comment">    /// The number of free lists we want to be sure to support</span></div>
+<div class="line"><a name="l00501"></a><span class="lineno">  501</span> <span class="comment">    /// inline.  This is just enough that availability attributes</span></div>
+<div class="line"><a name="l00502"></a><span class="lineno">  502</span> <span class="comment">    /// don't surpass it.  It's actually very unlikely we'll see an</span></div>
+<div class="line"><a name="l00503"></a><span class="lineno">  503</span> <span class="comment">    /// attribute that needs more than that; on x86-64 you'd need 10</span></div>
+<div class="line"><a name="l00504"></a><span class="lineno">  504</span> <span class="comment">    /// expression arguments, and on i386 you'd need 19.</span></div>
+<div class="line"><a name="l00505"></a><span class="lineno">  505</span> <span class="comment"></span>    InlineFreeListsCapacity =</div>
+<div class="line"><a name="l00506"></a><span class="lineno">  506</span>       1 + (<a class="code" href="classclang_1_1AttributeFactory.html#a9474896d41475d565726965fef1dfb80aea582c9ffd33a969e15bb1f53d36975c">AvailabilityAllocSize</a> - <span class="keyword">sizeof</span>(<a class="code" href="classclang_1_1AttributeList.html">AttributeList</a>)) / <span class="keyword">sizeof</span>(<span class="keywordtype">void</span>*)</div>
+<div class="line"><a name="l00507"></a><span class="lineno">  507</span>   };</div>
+<div class="line"><a name="l00508"></a><span class="lineno">  508</span> </div>
+<div class="line"><a name="l00509"></a><span class="lineno">  509</span>   llvm::BumpPtrAllocator Alloc;</div>
+<div class="line"><a name="l00510"></a><span class="lineno">  510</span> <span class="comment"></span></div>
+<div class="line"><a name="l00511"></a><span class="lineno">  511</span> <span class="comment">  /// Free lists.  The index is determined by the following formula:</span></div>
+<div class="line"><a name="l00512"></a><span class="lineno">  512</span> <span class="comment">  ///   (size - sizeof(AttributeList)) / sizeof(void*)</span></div>
+<div class="line"><a name="l00513"></a><span class="lineno">  513</span> <span class="comment"></span>  <a class="code" href="classllvm_1_1SmallVector.html">SmallVector<AttributeList*, InlineFreeListsCapacity></a> FreeLists;</div>
+<div class="line"><a name="l00514"></a><span class="lineno">  514</span> </div>
+<div class="line"><a name="l00515"></a><span class="lineno">  515</span>   <span class="comment">// The following are the private interface used by AttributePool.</span></div>
+<div class="line"><a name="l00516"></a><span class="lineno"><a class="code" href="classclang_1_1AttributeFactory.html#a066c0e62cc61537808ad06b55d441fc6">  516</a></span>   <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classclang_1_1AttributePool.html">AttributePool</a>;</div>
+<div class="line"><a name="l00517"></a><span class="lineno">  517</span> <span class="comment"></span></div>
+<div class="line"><a name="l00518"></a><span class="lineno">  518</span> <span class="comment">  /// Allocate an attribute of the given size.</span></div>
+<div class="line"><a name="l00519"></a><span class="lineno">  519</span> <span class="comment"></span>  <span class="keywordtype">void</span> *allocate(<span class="keywordtype">size_t</span> size);</div>
+<div class="line"><a name="l00520"></a><span class="lineno">  520</span> <span class="comment"></span></div>
+<div class="line"><a name="l00521"></a><span class="lineno">  521</span> <span class="comment">  /// Reclaim all the attributes in the given pool chain, which is</span></div>
+<div class="line"><a name="l00522"></a><span class="lineno">  522</span> <span class="comment">  /// non-empty.  Note that the current implementation is safe</span></div>
+<div class="line"><a name="l00523"></a><span class="lineno">  523</span> <span class="comment">  /// against reclaiming things which were not actually allocated</span></div>
+<div class="line"><a name="l00524"></a><span class="lineno">  524</span> <span class="comment">  /// with the allocator, although of course it's important to make</span></div>
+<div class="line"><a name="l00525"></a><span class="lineno">  525</span> <span class="comment">  /// sure that their allocator lives at least as long as this one.</span></div>
+<div class="line"><a name="l00526"></a><span class="lineno">  526</span> <span class="comment"></span>  <span class="keywordtype">void</span> reclaimPool(<a class="code" href="classclang_1_1AttributeList.html">AttributeList</a> *head);</div>
+<div class="line"><a name="l00527"></a><span class="lineno">  527</span> </div>
+<div class="line"><a name="l00528"></a><span class="lineno">  528</span> <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00529"></a><span class="lineno">  529</span>   <a class="code" href="classclang_1_1AttributeFactory.html#a55d388271f308e3105344163e56dddc4">AttributeFactory</a>();</div>
+<div class="line"><a name="l00530"></a><span class="lineno">  530</span>   <a class="code" href="classclang_1_1AttributeFactory.html#aa61358476fd57a78a4f3d6476b0ca64b">~AttributeFactory</a>();</div>
+<div class="line"><a name="l00531"></a><span class="lineno">  531</span> };</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_1AttributePool.html">  533</a></span> <span class="keyword">class </span><a class="code" href="classclang_1_1AttributePool.html">AttributePool</a> {</div>
+<div class="line"><a name="l00534"></a><span class="lineno">  534</span>   <a class="code" href="classclang_1_1AttributeFactory.html">AttributeFactory</a> &Factory;</div>
+<div class="line"><a name="l00535"></a><span class="lineno">  535</span>   <a class="code" href="classclang_1_1AttributeList.html">AttributeList</a> *Head;</div>
+<div class="line"><a name="l00536"></a><span class="lineno">  536</span> </div>
+<div class="line"><a name="l00537"></a><span class="lineno">  537</span>   <span class="keywordtype">void</span> *allocate(<span class="keywordtype">size_t</span> size) {</div>
+<div class="line"><a name="l00538"></a><span class="lineno">  538</span>     <span class="keywordflow">return</span> Factory.allocate(size);</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> </div>
+<div class="line"><a name="l00541"></a><span class="lineno">  541</span>   <a class="code" href="classclang_1_1AttributeList.html">AttributeList</a> *add(<a class="code" href="classclang_1_1AttributeList.html">AttributeList</a> *attr) {</div>
+<div class="line"><a name="l00542"></a><span class="lineno">  542</span>     <span class="comment">// We don't care about the order of the pool.</span></div>
+<div class="line"><a name="l00543"></a><span class="lineno">  543</span>     attr->NextInPool = Head;</div>
+<div class="line"><a name="l00544"></a><span class="lineno">  544</span>     Head = attr;</div>
+<div class="line"><a name="l00545"></a><span class="lineno">  545</span>     <span class="keywordflow">return</span> attr;</div>
+<div class="line"><a name="l00546"></a><span class="lineno">  546</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="keywordtype">void</span> takePool(<a class="code" href="classclang_1_1AttributeList.html">AttributeList</a> *pool);</div>
+<div class="line"><a name="l00549"></a><span class="lineno">  549</span> </div>
+<div class="line"><a name="l00550"></a><span class="lineno">  550</span> <span class="keyword">public</span>:<span class="comment"></span></div>
+<div class="line"><a name="l00551"></a><span class="lineno">  551</span> <span class="comment">  /// Create a new pool for a factory.</span></div>
+<div class="line"><a name="l00552"></a><span class="lineno"><a class="code" href="classclang_1_1AttributePool.html#a44798ecfa4da7d7abf4c4ffbb11f39ff">  552</a></span> <span class="comment"></span>  <a class="code" href="classclang_1_1AttributePool.html#a44798ecfa4da7d7abf4c4ffbb11f39ff" title="Create a new pool for a factory.">AttributePool</a>(<a class="code" href="classclang_1_1AttributeFactory.html">AttributeFactory</a> &factory) : Factory(factory), Head(0) {}</div>
+<div class="line"><a name="l00553"></a><span class="lineno">  553</span> <span class="comment"></span></div>
+<div class="line"><a name="l00554"></a><span class="lineno">  554</span> <span class="comment">  /// Move the given pool's allocations to this pool.</span></div>
+<div class="line"><a name="l00555"></a><span class="lineno"><a class="code" href="classclang_1_1AttributePool.html#acb36479cff0c768c012810657f851d6c">  555</a></span> <span class="comment"></span>  <a class="code" href="classclang_1_1AttributePool.html#acb36479cff0c768c012810657f851d6c" title="Move the given pool's allocations to this pool.">AttributePool</a>(<a class="code" href="classclang_1_1AttributePool.html">AttributePool</a> &pool) : Factory(pool.Factory), Head(pool.Head) {</div>
+<div class="line"><a name="l00556"></a><span class="lineno">  556</span>     pool.Head = 0;</div>
+<div class="line"><a name="l00557"></a><span class="lineno">  557</span>   }</div>
+<div class="line"><a name="l00558"></a><span class="lineno">  558</span> </div>
+<div class="line"><a name="l00559"></a><span class="lineno"><a class="code" href="classclang_1_1AttributePool.html#a96c2b74f1eb147cc0e3747c3120ee655">  559</a></span>   <a class="code" href="classclang_1_1AttributeFactory.html">AttributeFactory</a> &<a class="code" href="classclang_1_1AttributePool.html#a96c2b74f1eb147cc0e3747c3120ee655">getFactory</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> Factory; }</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_1AttributePool.html#a5e5af75916f787118f09c6fbdbe71aa0">  561</a></span>   <span class="keywordtype">void</span> <a class="code" href="classclang_1_1AttributePool.html#a5e5af75916f787118f09c6fbdbe71aa0">clear</a>() {</div>
+<div class="line"><a name="l00562"></a><span class="lineno">  562</span>     <span class="keywordflow">if</span> (Head) {</div>
+<div class="line"><a name="l00563"></a><span class="lineno">  563</span>       Factory.reclaimPool(Head);</div>
+<div class="line"><a name="l00564"></a><span class="lineno">  564</span>       Head = 0;</div>
+<div class="line"><a name="l00565"></a><span class="lineno">  565</span>     }</div>
+<div class="line"><a name="l00566"></a><span class="lineno">  566</span>   }</div>
+<div class="line"><a name="l00567"></a><span class="lineno">  567</span> <span class="comment"></span></div>
+<div class="line"><a name="l00568"></a><span class="lineno">  568</span> <span class="comment">  /// Take the given pool's allocations and add them to this pool.</span></div>
+<div class="line"><a name="l00569"></a><span class="lineno"><a class="code" href="classclang_1_1AttributePool.html#add5093382258402a0ee1c2a53b0ed0da">  569</a></span> <span class="comment"></span>  <span class="keywordtype">void</span> <a class="code" href="classclang_1_1AttributePool.html#add5093382258402a0ee1c2a53b0ed0da" title="Take the given pool's allocations and add them to this pool.">takeAllFrom</a>(<a class="code" href="classclang_1_1AttributePool.html">AttributePool</a> &pool) {</div>
+<div class="line"><a name="l00570"></a><span class="lineno">  570</span>     <span class="keywordflow">if</span> (pool.Head) {</div>
+<div class="line"><a name="l00571"></a><span class="lineno">  571</span>       takePool(pool.Head);</div>
+<div class="line"><a name="l00572"></a><span class="lineno">  572</span>       pool.Head = 0;</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> </div>
+<div class="line"><a name="l00576"></a><span class="lineno"><a class="code" href="classclang_1_1AttributePool.html#a655e46a5f469d0a5d8323c4967e0e1fb">  576</a></span>   <a class="code" href="classclang_1_1AttributePool.html#a655e46a5f469d0a5d8323c4967e0e1fb">~AttributePool</a>() {</div>
+<div class="line"><a name="l00577"></a><span class="lineno">  577</span>     <span class="keywordflow">if</span> (Head) Factory.reclaimPool(Head);</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"><a class="code" href="classclang_1_1AttributePool.html#a2d2e65f3a85f5799c78cee56a2b2804c">  580</a></span>   <a class="code" href="classclang_1_1AttributeList.html">AttributeList</a> *<a class="code" href="namespaceclang_1_1serialized__diags.html#a36bc44b1b04b3c0c421e02761c2d0282" title="Returns a DiagnosticConsumer that serializes diagnostics to a bitcode file.">create</a>(<a class="code" href="classclang_1_1IdentifierInfo.html">IdentifierInfo</a> *attrName, <a class="code" href="classclang_1_1SourceRange.html" title="A trival tuple used to represent a source range.">SourceRange</a> attrRange,</div>
+<div class="line"><a name="l00581"></a><span class="lineno">  581</span>                         <a class="code" href="classclang_1_1IdentifierInfo.html">IdentifierInfo</a> *scopeName, <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> scopeLoc,</div>
+<div class="line"><a name="l00582"></a><span class="lineno">  582</span>                         <a class="code" href="namespaceclang.html#aef421691d7b5e01971c6bf88afc6a969" title="A union of the various pointer types that can be passed to an AttributeList as an argument...">ArgsUnion</a> *args, <span class="keywordtype">unsigned</span> numArgs,</div>
+<div class="line"><a name="l00583"></a><span class="lineno">  583</span>                         <a class="code" href="classclang_1_1AttributeList.html#a7e6e722d96e46b102c1de17fea3a6374" title="The style used to specify an attribute.">AttributeList::Syntax</a> syntax,</div>
+<div class="line"><a name="l00584"></a><span class="lineno">  584</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> ellipsisLoc = <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>()) {</div>
+<div class="line"><a name="l00585"></a><span class="lineno">  585</span>     <span class="keywordtype">void</span> *memory = allocate(<span class="keyword">sizeof</span>(<a class="code" href="classclang_1_1AttributeList.html">AttributeList</a>)</div>
+<div class="line"><a name="l00586"></a><span class="lineno">  586</span>                             + numArgs * <span class="keyword">sizeof</span>(<a class="code" href="namespaceclang.html#aef421691d7b5e01971c6bf88afc6a969" title="A union of the various pointer types that can be passed to an AttributeList as an argument...">ArgsUnion</a>));</div>
+<div class="line"><a name="l00587"></a><span class="lineno">  587</span>     <span class="keywordflow">return</span> add(<span class="keyword">new</span> (memory) <a class="code" href="classclang_1_1AttributeList.html">AttributeList</a>(attrName, attrRange,</div>
+<div class="line"><a name="l00588"></a><span class="lineno">  588</span>                                           scopeName, scopeLoc,</div>
+<div class="line"><a name="l00589"></a><span class="lineno">  589</span>                                           args, numArgs, syntax,</div>
+<div class="line"><a name="l00590"></a><span class="lineno">  590</span>                                           ellipsisLoc));</div>
+<div class="line"><a name="l00591"></a><span class="lineno">  591</span>   }</div>
+<div class="line"><a name="l00592"></a><span class="lineno">  592</span> </div>
+<div class="line"><a name="l00593"></a><span class="lineno"><a class="code" href="classclang_1_1AttributePool.html#a4436ea6fc546ce80683e1388b368323d">  593</a></span>   <a class="code" href="classclang_1_1AttributeList.html">AttributeList</a> *<a class="code" href="namespaceclang_1_1serialized__diags.html#a36bc44b1b04b3c0c421e02761c2d0282" title="Returns a DiagnosticConsumer that serializes diagnostics to a bitcode file.">create</a>(<a class="code" href="classclang_1_1IdentifierInfo.html">IdentifierInfo</a> *attrName, <a class="code" href="classclang_1_1SourceRange.html" title="A trival tuple used to represent a source range.">SourceRange</a> attrRange,</div>
+<div class="line"><a name="l00594"></a><span class="lineno">  594</span>                         <a class="code" href="classclang_1_1IdentifierInfo.html">IdentifierInfo</a> *scopeName, <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> scopeLoc,</div>
+<div class="line"><a name="l00595"></a><span class="lineno">  595</span>                         <a class="code" href="structclang_1_1IdentifierLoc.html" title="Wraps an identifier and optional source location for the identifier.">IdentifierLoc</a> *<a class="code" href="SemaOverload_8cpp.html#af465899bf43044df83229078154bc2ed">Param</a>,</div>
+<div class="line"><a name="l00596"></a><span class="lineno">  596</span>                         <span class="keyword">const</span> <a class="code" href="structclang_1_1AvailabilityChange.html" title="Represents information about a change in availability for an entity, which is part of the encoding of...">AvailabilityChange</a> &introduced,</div>
+<div class="line"><a name="l00597"></a><span class="lineno">  597</span>                         <span class="keyword">const</span> <a class="code" href="structclang_1_1AvailabilityChange.html" title="Represents information about a change in availability for an entity, which is part of the encoding of...">AvailabilityChange</a> &deprecated,</div>
+<div class="line"><a name="l00598"></a><span class="lineno">  598</span>                         <span class="keyword">const</span> <a class="code" href="structclang_1_1AvailabilityChange.html" title="Represents information about a change in availability for an entity, which is part of the encoding of...">AvailabilityChange</a> &obsoleted,</div>
+<div class="line"><a name="l00599"></a><span class="lineno">  599</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> unavailable,</div>
+<div class="line"><a name="l00600"></a><span class="lineno">  600</span>                         <span class="keyword">const</span> <a class="code" href="classclang_1_1Expr.html">Expr</a> *MessageExpr,</div>
+<div class="line"><a name="l00601"></a><span class="lineno">  601</span>                         <a class="code" href="classclang_1_1AttributeList.html#a7e6e722d96e46b102c1de17fea3a6374" title="The style used to specify an attribute.">AttributeList::Syntax</a> syntax) {</div>
+<div class="line"><a name="l00602"></a><span class="lineno">  602</span>     <span class="keywordtype">void</span> *memory = allocate(<a class="code" href="classclang_1_1AttributeFactory.html#a9474896d41475d565726965fef1dfb80aea582c9ffd33a969e15bb1f53d36975c">AttributeFactory::AvailabilityAllocSize</a>);</div>
+<div class="line"><a name="l00603"></a><span class="lineno">  603</span>     <span class="keywordflow">return</span> add(<span class="keyword">new</span> (memory) <a class="code" href="classclang_1_1AttributeList.html">AttributeList</a>(attrName, attrRange,</div>
+<div class="line"><a name="l00604"></a><span class="lineno">  604</span>                                           scopeName, scopeLoc,</div>
+<div class="line"><a name="l00605"></a><span class="lineno">  605</span>                                           Param, introduced, deprecated,</div>
+<div class="line"><a name="l00606"></a><span class="lineno">  606</span>                                           obsoleted, unavailable, MessageExpr,</div>
+<div class="line"><a name="l00607"></a><span class="lineno">  607</span>                                           syntax));</div>
+<div class="line"><a name="l00608"></a><span class="lineno">  608</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>   <a class="code" href="classclang_1_1AttributeList.html">AttributeList</a> *createIntegerAttribute(<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_1IdentifierInfo.html">IdentifierInfo</a> *Name,</div>
+<div class="line"><a name="l00611"></a><span class="lineno">  611</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> TokLoc, <span class="keywordtype">int</span> Arg);</div>
+<div class="line"><a name="l00612"></a><span class="lineno">  612</span> </div>
+<div class="line"><a name="l00613"></a><span class="lineno"><a class="code" href="classclang_1_1AttributePool.html#a5190c4b6ad9fb09e58f00434a19539d3">  613</a></span>   <a class="code" href="classclang_1_1AttributeList.html">AttributeList</a> *createTypeTagForDatatype(</div>
+<div class="line"><a name="l00614"></a><span class="lineno">  614</span>                     <a class="code" href="classclang_1_1IdentifierInfo.html">IdentifierInfo</a> *attrName, <a class="code" href="classclang_1_1SourceRange.html" title="A trival tuple used to represent a source range.">SourceRange</a> attrRange,</div>
+<div class="line"><a name="l00615"></a><span class="lineno">  615</span>                     <a class="code" href="classclang_1_1IdentifierInfo.html">IdentifierInfo</a> *scopeName, <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> scopeLoc,</div>
+<div class="line"><a name="l00616"></a><span class="lineno">  616</span>                     <a class="code" href="structclang_1_1IdentifierLoc.html" title="Wraps an identifier and optional source location for the identifier.">IdentifierLoc</a> *argumentKind, <a class="code" href="classclang_1_1OpaquePtr.html">ParsedType</a> matchingCType,</div>
+<div class="line"><a name="l00617"></a><span class="lineno">  617</span>                     <span class="keywordtype">bool</span> layoutCompatible, <span class="keywordtype">bool</span> mustBeNull,</div>
+<div class="line"><a name="l00618"></a><span class="lineno">  618</span>                     <a class="code" href="classclang_1_1AttributeList.html#a7e6e722d96e46b102c1de17fea3a6374" title="The style used to specify an attribute.">AttributeList::Syntax</a> syntax) {</div>
+<div class="line"><a name="l00619"></a><span class="lineno">  619</span>     <span class="keywordtype">void</span> *memory = allocate(<a class="code" href="classclang_1_1AttributeFactory.html#a9474896d41475d565726965fef1dfb80a7002d4373448039aecb3b5fc622d8aa8">AttributeFactory::TypeTagForDatatypeAllocSize</a>);</div>
+<div class="line"><a name="l00620"></a><span class="lineno">  620</span>     <span class="keywordflow">return</span> add(<span class="keyword">new</span> (memory) <a class="code" href="classclang_1_1AttributeList.html">AttributeList</a>(attrName, attrRange,</div>
+<div class="line"><a name="l00621"></a><span class="lineno">  621</span>                                           scopeName, scopeLoc,</div>
+<div class="line"><a name="l00622"></a><span class="lineno">  622</span>                                           argumentKind, matchingCType,</div>
+<div class="line"><a name="l00623"></a><span class="lineno">  623</span>                                           layoutCompatible, mustBeNull,</div>
+<div class="line"><a name="l00624"></a><span class="lineno">  624</span>                                           syntax));</div>
+<div class="line"><a name="l00625"></a><span class="lineno">  625</span>   }</div>
+<div class="line"><a name="l00626"></a><span class="lineno">  626</span> </div>
+<div class="line"><a name="l00627"></a><span class="lineno"><a class="code" href="classclang_1_1AttributePool.html#a87ab3ebe7add0f6d1d6934be78c0a587">  627</a></span>   <a class="code" href="classclang_1_1AttributeList.html">AttributeList</a> *createTypeAttribute(</div>
+<div class="line"><a name="l00628"></a><span class="lineno">  628</span>                     <a class="code" href="classclang_1_1IdentifierInfo.html">IdentifierInfo</a> *attrName, <a class="code" href="classclang_1_1SourceRange.html" title="A trival tuple used to represent a source range.">SourceRange</a> attrRange,</div>
+<div class="line"><a name="l00629"></a><span class="lineno">  629</span>                     <a class="code" href="classclang_1_1IdentifierInfo.html">IdentifierInfo</a> *scopeName, <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> scopeLoc,</div>
+<div class="line"><a name="l00630"></a><span class="lineno">  630</span>                     <a class="code" href="classclang_1_1OpaquePtr.html">ParsedType</a> typeArg, <a class="code" href="classclang_1_1AttributeList.html#a7e6e722d96e46b102c1de17fea3a6374" title="The style used to specify an attribute.">AttributeList::Syntax</a> syntaxUsed) {</div>
+<div class="line"><a name="l00631"></a><span class="lineno">  631</span>     <span class="keywordtype">void</span> *memory = allocate(<span class="keyword">sizeof</span>(<a class="code" href="classclang_1_1AttributeList.html">AttributeList</a>) + <span class="keyword">sizeof</span>(<span class="keywordtype">void</span> *));</div>
+<div class="line"><a name="l00632"></a><span class="lineno">  632</span>     <span class="keywordflow">return</span> add(<span class="keyword">new</span> (memory) <a class="code" href="classclang_1_1AttributeList.html">AttributeList</a>(attrName, attrRange,</div>
+<div class="line"><a name="l00633"></a><span class="lineno">  633</span>                                           scopeName, scopeLoc,</div>
+<div class="line"><a name="l00634"></a><span class="lineno">  634</span>                                           typeArg, syntaxUsed));</div>
+<div class="line"><a name="l00635"></a><span class="lineno">  635</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"><a class="code" href="classclang_1_1AttributePool.html#a6c7ffe8215e329c7852fbe7c6d75bf9b">  637</a></span>   <a class="code" href="classclang_1_1AttributeList.html">AttributeList</a> *createPropertyAttribute(</div>
+<div class="line"><a name="l00638"></a><span class="lineno">  638</span>                     <a class="code" href="classclang_1_1IdentifierInfo.html">IdentifierInfo</a> *attrName, <a class="code" href="classclang_1_1SourceRange.html" title="A trival tuple used to represent a source range.">SourceRange</a> attrRange,</div>
+<div class="line"><a name="l00639"></a><span class="lineno">  639</span>                     <a class="code" href="classclang_1_1IdentifierInfo.html">IdentifierInfo</a> *scopeName, <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> scopeLoc,</div>
+<div class="line"><a name="l00640"></a><span class="lineno">  640</span>                     <a class="code" href="classclang_1_1IdentifierInfo.html">IdentifierInfo</a> *getterId, <a class="code" href="classclang_1_1IdentifierInfo.html">IdentifierInfo</a> *setterId,</div>
+<div class="line"><a name="l00641"></a><span class="lineno">  641</span>                     <a class="code" href="classclang_1_1AttributeList.html#a7e6e722d96e46b102c1de17fea3a6374" title="The style used to specify an attribute.">AttributeList::Syntax</a> syntaxUsed) {</div>
+<div class="line"><a name="l00642"></a><span class="lineno">  642</span>     <span class="keywordtype">void</span> *memory = allocate(<a class="code" href="classclang_1_1AttributeFactory.html#a9474896d41475d565726965fef1dfb80ac52ee6eeb6ae80dee1ef6d0ee9517265">AttributeFactory::PropertyAllocSize</a>);</div>
+<div class="line"><a name="l00643"></a><span class="lineno">  643</span>     <span class="keywordflow">return</span> add(<span class="keyword">new</span> (memory) <a class="code" href="classclang_1_1AttributeList.html">AttributeList</a>(attrName, attrRange,</div>
+<div class="line"><a name="l00644"></a><span class="lineno">  644</span>                                           scopeName, scopeLoc,</div>
+<div class="line"><a name="l00645"></a><span class="lineno">  645</span>                                           getterId, setterId,</div>
+<div class="line"><a name="l00646"></a><span class="lineno">  646</span>                                           syntaxUsed));</div>
+<div class="line"><a name="l00647"></a><span class="lineno">  647</span>   }</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"></span></div>
+<div class="line"><a name="l00650"></a><span class="lineno">  650</span> <span class="comment">/// addAttributeLists - Add two AttributeLists together</span></div>
+<div class="line"><a name="l00651"></a><span class="lineno">  651</span> <span class="comment">/// The right-hand list is appended to the left-hand list, if any</span></div>
+<div class="line"><a name="l00652"></a><span class="lineno">  652</span> <span class="comment">/// A pointer to the joined list is returned.</span></div>
+<div class="line"><a name="l00653"></a><span class="lineno">  653</span> <span class="comment">/// Note: the lists are not left unmodified.</span></div>
+<div class="line"><a name="l00654"></a><span class="lineno"><a class="code" href="namespaceclang.html#af2912188cefc7ac511d116b4005974f0">  654</a></span> <span class="comment"></span><span class="keyword">inline</span> <a class="code" href="classclang_1_1AttributeList.html">AttributeList</a> *<a class="code" href="namespaceclang.html#af2912188cefc7ac511d116b4005974f0">addAttributeLists</a>(<a class="code" href="classclang_1_1AttributeList.html">AttributeList</a> *Left,</div>
+<div class="line"><a name="l00655"></a><span class="lineno">  655</span>                                         <a class="code" href="classclang_1_1AttributeList.html">AttributeList</a> *Right) {</div>
+<div class="line"><a name="l00656"></a><span class="lineno">  656</span>   <span class="keywordflow">if</span> (!Left)</div>
+<div class="line"><a name="l00657"></a><span class="lineno">  657</span>     <span class="keywordflow">return</span> Right;</div>
+<div class="line"><a name="l00658"></a><span class="lineno">  658</span> </div>
+<div class="line"><a name="l00659"></a><span class="lineno">  659</span>   <a class="code" href="classclang_1_1AttributeList.html">AttributeList</a> *next = Left, *prev;</div>
+<div class="line"><a name="l00660"></a><span class="lineno">  660</span>   <span class="keywordflow">do</span> {</div>
+<div class="line"><a name="l00661"></a><span class="lineno">  661</span>     prev = next;</div>
+<div class="line"><a name="l00662"></a><span class="lineno">  662</span>     next = next-><a class="code" href="classclang_1_1AttributeList.html#a9e8836cfe5794658c6811dc504476f39">getNext</a>();</div>
+<div class="line"><a name="l00663"></a><span class="lineno">  663</span>   } <span class="keywordflow">while</span> (next);</div>
+<div class="line"><a name="l00664"></a><span class="lineno">  664</span>   prev-><a class="code" href="classclang_1_1AttributeList.html#a124c946728b963a801ee83a43a2a3b82">setNext</a>(Right);</div>
+<div class="line"><a name="l00665"></a><span class="lineno">  665</span>   <span class="keywordflow">return</span> Left;</div>
+<div class="line"><a name="l00666"></a><span class="lineno">  666</span> }</div>
+<div class="line"><a name="l00667"></a><span class="lineno">  667</span> <span class="comment"></span></div>
+<div class="line"><a name="l00668"></a><span class="lineno">  668</span> <span class="comment">/// CXX11AttributeList - A wrapper around a C++11 attribute list.</span></div>
+<div class="line"><a name="l00669"></a><span class="lineno">  669</span> <span class="comment">/// Stores, in addition to the list proper, whether or not an actual list was</span></div>
+<div class="line"><a name="l00670"></a><span class="lineno">  670</span> <span class="comment">/// (as opposed to an empty list, which may be ill-formed in some places) and</span></div>
+<div class="line"><a name="l00671"></a><span class="lineno">  671</span> <span class="comment">/// the source range of the list.</span></div>
+<div class="line"><a name="l00672"></a><span class="lineno"><a class="code" href="structclang_1_1CXX11AttributeList.html">  672</a></span> <span class="comment"></span><span class="keyword">struct </span><a class="code" href="structclang_1_1CXX11AttributeList.html">CXX11AttributeList</a> { </div>
+<div class="line"><a name="l00673"></a><span class="lineno"><a class="code" href="structclang_1_1CXX11AttributeList.html#a1de33311d10e80631c4621eebbdb20f7">  673</a></span>   <a class="code" href="classclang_1_1AttributeList.html">AttributeList</a> *<a class="code" href="structclang_1_1CXX11AttributeList.html#a1de33311d10e80631c4621eebbdb20f7">AttrList</a>;</div>
+<div class="line"><a name="l00674"></a><span class="lineno"><a class="code" href="structclang_1_1CXX11AttributeList.html#ad07cfa18ca2e67038907e194c1109d62">  674</a></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_1CXX11AttributeList.html#ad07cfa18ca2e67038907e194c1109d62">Range</a>;</div>
+<div class="line"><a name="l00675"></a><span class="lineno"><a class="code" href="structclang_1_1CXX11AttributeList.html#a279d7a90171b630459be0c7598510365">  675</a></span>   <span class="keywordtype">bool</span> <a class="code" href="structclang_1_1CXX11AttributeList.html#a279d7a90171b630459be0c7598510365">HasAttr</a>;</div>
+<div class="line"><a name="l00676"></a><span class="lineno"><a class="code" href="structclang_1_1CXX11AttributeList.html#a63a230315704dbb5e9752cb9d974ef72">  676</a></span>   <a class="code" href="structclang_1_1CXX11AttributeList.html">CXX11AttributeList</a> (<a class="code" href="classclang_1_1AttributeList.html">AttributeList</a> *attrList, <a class="code" href="classclang_1_1SourceRange.html" title="A trival tuple used to represent a source range.">SourceRange</a> range, <span class="keywordtype">bool</span> hasAttr)</div>
+<div class="line"><a name="l00677"></a><span class="lineno">  677</span>     : AttrList(attrList), Range(range), HasAttr (hasAttr) {</div>
+<div class="line"><a name="l00678"></a><span class="lineno">  678</span>   }</div>
+<div class="line"><a name="l00679"></a><span class="lineno"><a class="code" href="structclang_1_1CXX11AttributeList.html#af1eb8d5583aa8c0c4646c9f6913c943e">  679</a></span>   <a class="code" href="structclang_1_1CXX11AttributeList.html">CXX11AttributeList</a> ()</div>
+<div class="line"><a name="l00680"></a><span class="lineno">  680</span>     : AttrList(0), Range(), HasAttr(false) {</div>
+<div class="line"><a name="l00681"></a><span class="lineno">  681</span>   }</div>
+<div class="line"><a name="l00682"></a><span class="lineno">  682</span> };</div>
+<div class="line"><a name="l00683"></a><span class="lineno">  683</span> <span class="comment"></span></div>
+<div class="line"><a name="l00684"></a><span class="lineno">  684</span> <span class="comment">/// ParsedAttributes - A collection of parsed attributes.  Currently</span></div>
+<div class="line"><a name="l00685"></a><span class="lineno">  685</span> <span class="comment">/// we don't differentiate between the various attribute syntaxes,</span></div>
+<div class="line"><a name="l00686"></a><span class="lineno">  686</span> <span class="comment">/// which is basically silly.</span></div>
+<div class="line"><a name="l00687"></a><span class="lineno">  687</span> <span class="comment">///</span></div>
+<div class="line"><a name="l00688"></a><span class="lineno">  688</span> <span class="comment">/// Right now this is a very lightweight container, but the expectation</span></div>
+<div class="line"><a name="l00689"></a><span class="lineno">  689</span> <span class="comment">/// is that this will become significantly more serious.</span></div>
+<div class="line"><a name="l00690"></a><span class="lineno"><a class="code" href="classclang_1_1ParsedAttributes.html">  690</a></span> <span class="comment"></span><span class="keyword">class </span><a class="code" href="classclang_1_1ParsedAttributes.html">ParsedAttributes</a> {</div>
+<div class="line"><a name="l00691"></a><span class="lineno">  691</span> <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00692"></a><span class="lineno"><a class="code" href="classclang_1_1ParsedAttributes.html#aa995a144b59d002adb7864163ce8da78">  692</a></span>   <a class="code" href="classclang_1_1ParsedAttributes.html">ParsedAttributes</a>(<a class="code" href="classclang_1_1AttributeFactory.html">AttributeFactory</a> &factory)</div>
+<div class="line"><a name="l00693"></a><span class="lineno">  693</span>     : pool(factory), list(0) {</div>
+<div class="line"><a name="l00694"></a><span class="lineno">  694</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"><a class="code" href="classclang_1_1ParsedAttributes.html#a8a9c54131c32b88a4db652b4d34267f7">  696</a></span>   <a class="code" href="classclang_1_1ParsedAttributes.html">ParsedAttributes</a>(<a class="code" href="classclang_1_1ParsedAttributes.html">ParsedAttributes</a> &attrs)</div>
+<div class="line"><a name="l00697"></a><span class="lineno">  697</span>     : pool(attrs.pool), list(attrs.list) {</div>
+<div class="line"><a name="l00698"></a><span class="lineno">  698</span>     attrs.list = 0;</div>
+<div class="line"><a name="l00699"></a><span class="lineno">  699</span>   }</div>
+<div class="line"><a name="l00700"></a><span class="lineno">  700</span> </div>
+<div class="line"><a name="l00701"></a><span class="lineno"><a class="code" href="classclang_1_1ParsedAttributes.html#a0bc560881446c33bc5312c1b72f5308b">  701</a></span>   <a class="code" href="classclang_1_1AttributePool.html">AttributePool</a> &<a class="code" href="classclang_1_1ParsedAttributes.html#a0bc560881446c33bc5312c1b72f5308b">getPool</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> pool; }</div>
+<div class="line"><a name="l00702"></a><span class="lineno">  702</span> </div>
+<div class="line"><a name="l00703"></a><span class="lineno"><a class="code" href="classclang_1_1ParsedAttributes.html#a30d43a6e61891eba38d140071abb24a8">  703</a></span>   <span class="keywordtype">bool</span> <a class="code" href="classclang_1_1ParsedAttributes.html#a30d43a6e61891eba38d140071abb24a8">empty</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> list == 0; }</div>
+<div class="line"><a name="l00704"></a><span class="lineno">  704</span> </div>
+<div class="line"><a name="l00705"></a><span class="lineno"><a class="code" href="classclang_1_1ParsedAttributes.html#ad2f1c9d3231d0895a73307dfcf512e7c">  705</a></span>   <span class="keywordtype">void</span> <a class="code" href="classclang_1_1ParsedAttributes.html#ad2f1c9d3231d0895a73307dfcf512e7c">add</a>(<a class="code" href="classclang_1_1AttributeList.html">AttributeList</a> *newAttr) {</div>
+<div class="line"><a name="l00706"></a><span class="lineno">  706</span>     assert(newAttr);</div>
+<div class="line"><a name="l00707"></a><span class="lineno">  707</span>     assert(newAttr-><a class="code" href="classclang_1_1AttributeList.html#a9e8836cfe5794658c6811dc504476f39">getNext</a>() == 0);</div>
+<div class="line"><a name="l00708"></a><span class="lineno">  708</span>     newAttr-><a class="code" href="classclang_1_1AttributeList.html#a124c946728b963a801ee83a43a2a3b82">setNext</a>(list);</div>
+<div class="line"><a name="l00709"></a><span class="lineno">  709</span>     list = newAttr;</div>
+<div class="line"><a name="l00710"></a><span class="lineno">  710</span>   }</div>
+<div class="line"><a name="l00711"></a><span class="lineno">  711</span> </div>
+<div class="line"><a name="l00712"></a><span class="lineno"><a class="code" href="classclang_1_1ParsedAttributes.html#aa848a250c5ec2cdbeabb02f6cce695e7">  712</a></span>   <span class="keywordtype">void</span> <a class="code" href="classclang_1_1ParsedAttributes.html#aa848a250c5ec2cdbeabb02f6cce695e7">addAll</a>(<a class="code" href="classclang_1_1AttributeList.html">AttributeList</a> *newList) {</div>
+<div class="line"><a name="l00713"></a><span class="lineno">  713</span>     <span class="keywordflow">if</span> (!newList) <span class="keywordflow">return</span>;</div>
+<div class="line"><a name="l00714"></a><span class="lineno">  714</span> </div>
+<div class="line"><a name="l00715"></a><span class="lineno">  715</span>     <a class="code" href="classclang_1_1AttributeList.html">AttributeList</a> *lastInNewList = newList;</div>
+<div class="line"><a name="l00716"></a><span class="lineno">  716</span>     <span class="keywordflow">while</span> (<a class="code" href="classclang_1_1AttributeList.html">AttributeList</a> *next = lastInNewList-><a class="code" href="classclang_1_1AttributeList.html#a9e8836cfe5794658c6811dc504476f39">getNext</a>())</div>
+<div class="line"><a name="l00717"></a><span class="lineno">  717</span>       lastInNewList = next;</div>
+<div class="line"><a name="l00718"></a><span class="lineno">  718</span> </div>
+<div class="line"><a name="l00719"></a><span class="lineno">  719</span>     lastInNewList-><a class="code" href="classclang_1_1AttributeList.html#a124c946728b963a801ee83a43a2a3b82">setNext</a>(list);</div>
+<div class="line"><a name="l00720"></a><span class="lineno">  720</span>     list = newList;</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"><a class="code" href="classclang_1_1ParsedAttributes.html#abc93652e189d447e0cab80d6c978c668">  723</a></span>   <span class="keywordtype">void</span> <span class="keyword">set</span>(<a class="code" href="classclang_1_1AttributeList.html">AttributeList</a> *newList) {</div>
+<div class="line"><a name="l00724"></a><span class="lineno">  724</span>     list = newList;</div>
+<div class="line"><a name="l00725"></a><span class="lineno">  725</span>   }</div>
+<div class="line"><a name="l00726"></a><span class="lineno">  726</span> </div>
+<div class="line"><a name="l00727"></a><span class="lineno"><a class="code" href="classclang_1_1ParsedAttributes.html#a349d4d89c35d9792ef5695d9ae2d2f20">  727</a></span>   <span class="keywordtype">void</span> <a class="code" href="classclang_1_1ParsedAttributes.html#a349d4d89c35d9792ef5695d9ae2d2f20">takeAllFrom</a>(<a class="code" href="classclang_1_1ParsedAttributes.html">ParsedAttributes</a> &attrs) {</div>
+<div class="line"><a name="l00728"></a><span class="lineno">  728</span>     addAll(attrs.list);</div>
+<div class="line"><a name="l00729"></a><span class="lineno">  729</span>     attrs.list = 0;</div>
+<div class="line"><a name="l00730"></a><span class="lineno">  730</span>     pool.takeAllFrom(attrs.pool);</div>
+<div class="line"><a name="l00731"></a><span class="lineno">  731</span>   }</div>
+<div class="line"><a name="l00732"></a><span class="lineno">  732</span> </div>
+<div class="line"><a name="l00733"></a><span class="lineno"><a class="code" href="classclang_1_1ParsedAttributes.html#a8b9e7033604ddf2cbed05437fad683d8">  733</a></span>   <span class="keywordtype">void</span> <a class="code" href="classclang_1_1ParsedAttributes.html#a8b9e7033604ddf2cbed05437fad683d8">clear</a>() { list = 0; pool.clear(); }</div>
+<div class="line"><a name="l00734"></a><span class="lineno"><a class="code" href="classclang_1_1ParsedAttributes.html#a6a91d21507f031359225804d26671da5">  734</a></span>   <a class="code" href="classclang_1_1AttributeList.html">AttributeList</a> *<a class="code" href="classclang_1_1ParsedAttributes.html#a6a91d21507f031359225804d26671da5">getList</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> list; }</div>
+<div class="line"><a name="l00735"></a><span class="lineno">  735</span> <span class="comment"></span></div>
+<div class="line"><a name="l00736"></a><span class="lineno">  736</span> <span class="comment">  /// Returns a reference to the attribute list.  Try not to introduce</span></div>
+<div class="line"><a name="l00737"></a><span class="lineno">  737</span> <span class="comment">  /// dependencies on this method, it may not be long-lived.</span></div>
+<div class="line"><a name="l00738"></a><span class="lineno"><a class="code" href="classclang_1_1ParsedAttributes.html#ad3d88f42687ff2158462bf24f4473f0a">  738</a></span> <span class="comment"></span>  <a class="code" href="classclang_1_1AttributeList.html">AttributeList</a> *&<a class="code" href="classclang_1_1ParsedAttributes.html#ad3d88f42687ff2158462bf24f4473f0a">getListRef</a>() { <span class="keywordflow">return</span> list; }</div>
+<div class="line"><a name="l00739"></a><span class="lineno">  739</span> <span class="comment"></span></div>
+<div class="line"><a name="l00740"></a><span class="lineno">  740</span> <span class="comment">  /// Add attribute with expression arguments.</span></div>
+<div class="line"><a name="l00741"></a><span class="lineno"><a class="code" href="classclang_1_1ParsedAttributes.html#aa46509e0ecf15308c427adf0c2814c23">  741</a></span> <span class="comment"></span>  <a class="code" href="classclang_1_1AttributeList.html">AttributeList</a> *addNew(<a class="code" href="classclang_1_1IdentifierInfo.html">IdentifierInfo</a> *attrName, <a class="code" href="classclang_1_1SourceRange.html" title="A trival tuple used to represent a source range.">SourceRange</a> attrRange,</div>
+<div class="line"><a name="l00742"></a><span class="lineno">  742</span>                         <a class="code" href="classclang_1_1IdentifierInfo.html">IdentifierInfo</a> *scopeName, <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> scopeLoc,</div>
+<div class="line"><a name="l00743"></a><span class="lineno">  743</span>                         <a class="code" href="namespaceclang.html#aef421691d7b5e01971c6bf88afc6a969" title="A union of the various pointer types that can be passed to an AttributeList as an argument...">ArgsUnion</a> *args, <span class="keywordtype">unsigned</span> numArgs,</div>
+<div class="line"><a name="l00744"></a><span class="lineno">  744</span>                         <a class="code" href="classclang_1_1AttributeList.html#a7e6e722d96e46b102c1de17fea3a6374" title="The style used to specify an attribute.">AttributeList::Syntax</a> syntax,</div>
+<div class="line"><a name="l00745"></a><span class="lineno">  745</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> ellipsisLoc = <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>()) {</div>
+<div class="line"><a name="l00746"></a><span class="lineno">  746</span>     <a class="code" href="classclang_1_1AttributeList.html">AttributeList</a> *attr =</div>
+<div class="line"><a name="l00747"></a><span class="lineno">  747</span>       pool.create(attrName, attrRange, scopeName, scopeLoc, args, numArgs,</div>
+<div class="line"><a name="l00748"></a><span class="lineno">  748</span>                   syntax, ellipsisLoc);</div>
+<div class="line"><a name="l00749"></a><span class="lineno">  749</span>     add(attr);</div>
+<div class="line"><a name="l00750"></a><span class="lineno">  750</span>     <span class="keywordflow">return</span> attr;</div>
+<div class="line"><a name="l00751"></a><span class="lineno">  751</span>   }</div>
+<div class="line"><a name="l00752"></a><span class="lineno">  752</span> <span class="comment"></span></div>
+<div class="line"><a name="l00753"></a><span class="lineno">  753</span> <span class="comment">  /// Add availability attribute.</span></div>
+<div class="line"><a name="l00754"></a><span class="lineno"><a class="code" href="classclang_1_1ParsedAttributes.html#a4fdaceb16b1e57d7d85686187c23a965">  754</a></span> <span class="comment"></span>  <a class="code" href="classclang_1_1AttributeList.html">AttributeList</a> *addNew(<a class="code" href="classclang_1_1IdentifierInfo.html">IdentifierInfo</a> *attrName, <a class="code" href="classclang_1_1SourceRange.html" title="A trival tuple used to represent a source range.">SourceRange</a> attrRange,</div>
+<div class="line"><a name="l00755"></a><span class="lineno">  755</span>                         <a class="code" href="classclang_1_1IdentifierInfo.html">IdentifierInfo</a> *scopeName, <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> scopeLoc,</div>
+<div class="line"><a name="l00756"></a><span class="lineno">  756</span>                         <a class="code" href="structclang_1_1IdentifierLoc.html" title="Wraps an identifier and optional source location for the identifier.">IdentifierLoc</a> *<a class="code" href="SemaOverload_8cpp.html#af465899bf43044df83229078154bc2ed">Param</a>,</div>
+<div class="line"><a name="l00757"></a><span class="lineno">  757</span>                         <span class="keyword">const</span> <a class="code" href="structclang_1_1AvailabilityChange.html" title="Represents information about a change in availability for an entity, which is part of the encoding of...">AvailabilityChange</a> &introduced,</div>
+<div class="line"><a name="l00758"></a><span class="lineno">  758</span>                         <span class="keyword">const</span> <a class="code" href="structclang_1_1AvailabilityChange.html" title="Represents information about a change in availability for an entity, which is part of the encoding of...">AvailabilityChange</a> &deprecated,</div>
+<div class="line"><a name="l00759"></a><span class="lineno">  759</span>                         <span class="keyword">const</span> <a class="code" href="structclang_1_1AvailabilityChange.html" title="Represents information about a change in availability for an entity, which is part of the encoding of...">AvailabilityChange</a> &obsoleted,</div>
+<div class="line"><a name="l00760"></a><span class="lineno">  760</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> unavailable,</div>
+<div class="line"><a name="l00761"></a><span class="lineno">  761</span>                         <span class="keyword">const</span> <a class="code" href="classclang_1_1Expr.html">Expr</a> *MessageExpr,</div>
+<div class="line"><a name="l00762"></a><span class="lineno">  762</span>                         <a class="code" href="classclang_1_1AttributeList.html#a7e6e722d96e46b102c1de17fea3a6374" title="The style used to specify an attribute.">AttributeList::Syntax</a> syntax) {</div>
+<div class="line"><a name="l00763"></a><span class="lineno">  763</span>     <a class="code" href="classclang_1_1AttributeList.html">AttributeList</a> *attr =</div>
+<div class="line"><a name="l00764"></a><span class="lineno">  764</span>       pool.create(attrName, attrRange, scopeName, scopeLoc, Param, introduced,</div>
+<div class="line"><a name="l00765"></a><span class="lineno">  765</span>                   deprecated, obsoleted, unavailable, MessageExpr, syntax);</div>
+<div class="line"><a name="l00766"></a><span class="lineno">  766</span>     add(attr);</div>
+<div class="line"><a name="l00767"></a><span class="lineno">  767</span>     <span class="keywordflow">return</span> attr;</div>
+<div class="line"><a name="l00768"></a><span class="lineno">  768</span>   }</div>
+<div class="line"><a name="l00769"></a><span class="lineno">  769</span> <span class="comment"></span></div>
+<div class="line"><a name="l00770"></a><span class="lineno">  770</span> <span class="comment">  /// Add type_tag_for_datatype attribute.</span></div>
+<div class="line"><a name="l00771"></a><span class="lineno"><a class="code" href="classclang_1_1ParsedAttributes.html#a0b00b6982b70da9e139492092b397625">  771</a></span> <span class="comment"></span>  <a class="code" href="classclang_1_1AttributeList.html">AttributeList</a> *addNewTypeTagForDatatype(</div>
+<div class="line"><a name="l00772"></a><span class="lineno">  772</span>                         <a class="code" href="classclang_1_1IdentifierInfo.html">IdentifierInfo</a> *attrName, <a class="code" href="classclang_1_1SourceRange.html" title="A trival tuple used to represent a source range.">SourceRange</a> attrRange,</div>
+<div class="line"><a name="l00773"></a><span class="lineno">  773</span>                         <a class="code" href="classclang_1_1IdentifierInfo.html">IdentifierInfo</a> *scopeName, <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> scopeLoc,</div>
+<div class="line"><a name="l00774"></a><span class="lineno">  774</span>                         <a class="code" href="structclang_1_1IdentifierLoc.html" title="Wraps an identifier and optional source location for the identifier.">IdentifierLoc</a> *argumentKind, <a class="code" href="classclang_1_1OpaquePtr.html">ParsedType</a> matchingCType,</div>
+<div class="line"><a name="l00775"></a><span class="lineno">  775</span>                         <span class="keywordtype">bool</span> layoutCompatible, <span class="keywordtype">bool</span> mustBeNull,</div>
+<div class="line"><a name="l00776"></a><span class="lineno">  776</span>                         <a class="code" href="classclang_1_1AttributeList.html#a7e6e722d96e46b102c1de17fea3a6374" title="The style used to specify an attribute.">AttributeList::Syntax</a> syntax) {</div>
+<div class="line"><a name="l00777"></a><span class="lineno">  777</span>     <a class="code" href="classclang_1_1AttributeList.html">AttributeList</a> *attr =</div>
+<div class="line"><a name="l00778"></a><span class="lineno">  778</span>       pool.createTypeTagForDatatype(attrName, attrRange,</div>
+<div class="line"><a name="l00779"></a><span class="lineno">  779</span>                                     scopeName, scopeLoc,</div>
+<div class="line"><a name="l00780"></a><span class="lineno">  780</span>                                     argumentKind, matchingCType,</div>
+<div class="line"><a name="l00781"></a><span class="lineno">  781</span>                                     layoutCompatible, mustBeNull, syntax);</div>
+<div class="line"><a name="l00782"></a><span class="lineno">  782</span>     add(attr);</div>
+<div class="line"><a name="l00783"></a><span class="lineno">  783</span>     <span class="keywordflow">return</span> attr;</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> <span class="comment"></span></div>
+<div class="line"><a name="l00786"></a><span class="lineno">  786</span> <span class="comment">  /// Add an attribute with a single type argument.</span></div>
+<div class="line"><a name="l00787"></a><span class="lineno">  787</span> <span class="comment"></span>  <a class="code" href="classclang_1_1AttributeList.html">AttributeList</a> *</div>
+<div class="line"><a name="l00788"></a><span class="lineno"><a class="code" href="classclang_1_1ParsedAttributes.html#ade82a1c28a072e8b74d24656244b187e">  788</a></span>   addNewTypeAttr(<a class="code" href="classclang_1_1IdentifierInfo.html">IdentifierInfo</a> *attrName, <a class="code" href="classclang_1_1SourceRange.html" title="A trival tuple used to represent a source range.">SourceRange</a> attrRange,</div>
+<div class="line"><a name="l00789"></a><span class="lineno">  789</span>                  <a class="code" href="classclang_1_1IdentifierInfo.html">IdentifierInfo</a> *scopeName, <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> scopeLoc,</div>
+<div class="line"><a name="l00790"></a><span class="lineno">  790</span>                  <a class="code" href="classclang_1_1OpaquePtr.html">ParsedType</a> typeArg, <a class="code" href="classclang_1_1AttributeList.html#a7e6e722d96e46b102c1de17fea3a6374" title="The style used to specify an attribute.">AttributeList::Syntax</a> syntaxUsed) {</div>
+<div class="line"><a name="l00791"></a><span class="lineno">  791</span>     <a class="code" href="classclang_1_1AttributeList.html">AttributeList</a> *attr =</div>
+<div class="line"><a name="l00792"></a><span class="lineno">  792</span>         pool.createTypeAttribute(attrName, attrRange, scopeName, scopeLoc,</div>
+<div class="line"><a name="l00793"></a><span class="lineno">  793</span>                                  typeArg, syntaxUsed);</div>
+<div class="line"><a name="l00794"></a><span class="lineno">  794</span>     add(attr);</div>
+<div class="line"><a name="l00795"></a><span class="lineno">  795</span>     <span class="keywordflow">return</span> attr;</div>
+<div class="line"><a name="l00796"></a><span class="lineno">  796</span>   }</div>
+<div class="line"><a name="l00797"></a><span class="lineno">  797</span> <span class="comment"></span></div>
+<div class="line"><a name="l00798"></a><span class="lineno">  798</span> <span class="comment">  /// Add microsoft __delspec(property) attribute.</span></div>
+<div class="line"><a name="l00799"></a><span class="lineno">  799</span> <span class="comment"></span>  <a class="code" href="classclang_1_1AttributeList.html">AttributeList</a> *</div>
+<div class="line"><a name="l00800"></a><span class="lineno"><a class="code" href="classclang_1_1ParsedAttributes.html#a091bf3bf1cdc17e160684be363be022e">  800</a></span>   addNewPropertyAttr(<a class="code" href="classclang_1_1IdentifierInfo.html">IdentifierInfo</a> *attrName, <a class="code" href="classclang_1_1SourceRange.html" title="A trival tuple used to represent a source range.">SourceRange</a> attrRange,</div>
+<div class="line"><a name="l00801"></a><span class="lineno">  801</span>                  <a class="code" href="classclang_1_1IdentifierInfo.html">IdentifierInfo</a> *scopeName, <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> scopeLoc,</div>
+<div class="line"><a name="l00802"></a><span class="lineno">  802</span>                  <a class="code" href="classclang_1_1IdentifierInfo.html">IdentifierInfo</a> *getterId, <a class="code" href="classclang_1_1IdentifierInfo.html">IdentifierInfo</a> *setterId,</div>
+<div class="line"><a name="l00803"></a><span class="lineno">  803</span>                  <a class="code" href="classclang_1_1AttributeList.html#a7e6e722d96e46b102c1de17fea3a6374" title="The style used to specify an attribute.">AttributeList::Syntax</a> syntaxUsed) {</div>
+<div class="line"><a name="l00804"></a><span class="lineno">  804</span>     <a class="code" href="classclang_1_1AttributeList.html">AttributeList</a> *attr =</div>
+<div class="line"><a name="l00805"></a><span class="lineno">  805</span>         pool.createPropertyAttribute(attrName, attrRange, scopeName, scopeLoc,</div>
+<div class="line"><a name="l00806"></a><span class="lineno">  806</span>                                      getterId, setterId, syntaxUsed);</div>
+<div class="line"><a name="l00807"></a><span class="lineno">  807</span>     add(attr);</div>
+<div class="line"><a name="l00808"></a><span class="lineno">  808</span>     <span class="keywordflow">return</span> attr;</div>
+<div class="line"><a name="l00809"></a><span class="lineno">  809</span>   }</div>
+<div class="line"><a name="l00810"></a><span class="lineno">  810</span> </div>
+<div class="line"><a name="l00811"></a><span class="lineno"><a class="code" href="classclang_1_1ParsedAttributes.html#a5029404f1c780aa0fd55d881194b0b89">  811</a></span>   <a class="code" href="classclang_1_1AttributeList.html">AttributeList</a> *addNewInteger(<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_1IdentifierInfo.html">IdentifierInfo</a> *name,</div>
+<div class="line"><a name="l00812"></a><span class="lineno">  812</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="namespaceclang_1_1ast__matchers.html#af2a0068a0d7c4962e52a7a70967fa5df" title="Matches TypeLocs for which the given inner QualType-matcher matches.">loc</a>, <span class="keywordtype">int</span> arg) {</div>
+<div class="line"><a name="l00813"></a><span class="lineno">  813</span>     <a class="code" href="classclang_1_1AttributeList.html">AttributeList</a> *attr =</div>
+<div class="line"><a name="l00814"></a><span class="lineno">  814</span>       pool.createIntegerAttribute(C, name, loc, arg);</div>
+<div class="line"><a name="l00815"></a><span class="lineno">  815</span>     add(attr);</div>
+<div class="line"><a name="l00816"></a><span class="lineno">  816</span>     <span class="keywordflow">return</span> attr;</div>
+<div class="line"><a name="l00817"></a><span class="lineno">  817</span>   }</div>
+<div class="line"><a name="l00818"></a><span class="lineno">  818</span> </div>
+<div class="line"><a name="l00819"></a><span class="lineno">  819</span> </div>
+<div class="line"><a name="l00820"></a><span class="lineno">  820</span> <span class="keyword">private</span>:</div>
+<div class="line"><a name="l00821"></a><span class="lineno">  821</span>   <span class="keyword">mutable</span> <a class="code" href="classclang_1_1AttributePool.html">AttributePool</a> pool;</div>
+<div class="line"><a name="l00822"></a><span class="lineno">  822</span>   <a class="code" href="classclang_1_1AttributeList.html">AttributeList</a> *list;</div>
+<div class="line"><a name="l00823"></a><span class="lineno">  823</span> };</div>
+<div class="line"><a name="l00824"></a><span class="lineno">  824</span> <span class="comment"></span></div>
+<div class="line"><a name="l00825"></a><span class="lineno">  825</span> <span class="comment">/// These constants match the enumerated choices of</span></div>
+<div class="line"><a name="l00826"></a><span class="lineno">  826</span> <span class="comment">/// err_attribute_argument_n_type and err_attribute_argument_type.</span></div>
+<div class="line"><a name="l00827"></a><span class="lineno"><a class="code" href="namespaceclang.html#a702b0ec61c5bb9df98d3364a170c0dfc">  827</a></span> <span class="comment"></span><span class="keyword">enum</span> <a class="code" href="namespaceclang.html#a702b0ec61c5bb9df98d3364a170c0dfc">AttributeArgumentNType</a> {</div>
+<div class="line"><a name="l00828"></a><span class="lineno"><a class="code" href="namespaceclang.html#a702b0ec61c5bb9df98d3364a170c0dfca6d2ba8014bbcf83ee5761acc5dbbacf7">  828</a></span>   <a class="code" href="namespaceclang.html#a702b0ec61c5bb9df98d3364a170c0dfca6d2ba8014bbcf83ee5761acc5dbbacf7">AANT_ArgumentIntOrBool</a>,</div>
+<div class="line"><a name="l00829"></a><span class="lineno"><a class="code" href="namespaceclang.html#a702b0ec61c5bb9df98d3364a170c0dfca026f679d45ce5b7f618b89ac18d8595e">  829</a></span>   <a class="code" href="namespaceclang.html#a702b0ec61c5bb9df98d3364a170c0dfca026f679d45ce5b7f618b89ac18d8595e">AANT_ArgumentIntegerConstant</a>,</div>
+<div class="line"><a name="l00830"></a><span class="lineno"><a class="code" href="namespaceclang.html#a702b0ec61c5bb9df98d3364a170c0dfcacd1c26a060b255bf967903d838dcae73">  830</a></span>   <a class="code" href="namespaceclang.html#a702b0ec61c5bb9df98d3364a170c0dfcacd1c26a060b255bf967903d838dcae73">AANT_ArgumentString</a>,</div>
+<div class="line"><a name="l00831"></a><span class="lineno"><a class="code" href="namespaceclang.html#a702b0ec61c5bb9df98d3364a170c0dfcabb61c424dd5e8dd7b07865081bb3fb2b">  831</a></span>   <a class="code" href="namespaceclang.html#a702b0ec61c5bb9df98d3364a170c0dfcabb61c424dd5e8dd7b07865081bb3fb2b">AANT_ArgumentIdentifier</a></div>
+<div class="line"><a name="l00832"></a><span class="lineno">  832</span> };</div>
+<div class="line"><a name="l00833"></a><span class="lineno">  833</span> </div>
+<div class="line"><a name="l00834"></a><span class="lineno">  834</span> }  <span class="comment">// end namespace clang</span></div>
+<div class="line"><a name="l00835"></a><span class="lineno">  835</span> </div>
+<div class="line"><a name="l00836"></a><span class="lineno">  836</span> <span class="preprocessor">#endif</span></div>
+</div><!-- fragment --></div><!-- contents -->
+<hr>
+<p class="footer">
+Generated on Mon May 12 2014 12:13:18 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>





More information about the llvm-commits mailing list