Update documentation with regards to template type diffing.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159249 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/docs/ReleaseNotes.html b/docs/ReleaseNotes.html
index 7bca3bf..b820e8d 100644
--- a/docs/ReleaseNotes.html
+++ b/docs/ReleaseNotes.html
@@ -121,6 +121,55 @@
This functionality can be enabled or disabled separately from
<tt>-Wuninitialized</tt> with the <tt>-Wsometimes-uninitialized</tt> warning
flag.</li>
+
+ <li>Template type diffing improves the display of diagnostics with templated
+ types in them.
+
+<pre>
+int f(vector<map<int, double>>);
+int x = f(vector<map<int, float>>());
+</pre>
+ The error message is the same, but the note is different based on the options selected.
+<pre>
+<b>template-diff.cpp:5:9: <span class="error">error:</span> no matching function for call to 'f'</b>
+int x = f(vector<map<int, float>>());
+ <span class="caret">^</span>
+</pre>
+ Templated type diffing with type elision (default):
+<pre>
+<b>template-diff.cpp:4:5: <span class="note">note:</span></b> candidate function not viable: no known conversion from 'vector<map<[...], <span class="template-highlight">float</span>>>' to 'vector<map<[...], <span class="template-highlight">double</span>>>' for 1st argument;
+int f(vector<map<int, double>>);
+ <span class="caret">^</span>
+</pre>
+ Templated type diffing without type elision (-fno-elide-type):
+<pre>
+<b>template-diff.cpp:4:5: <span class="note">note:</span></b> candidate function not viable: no known conversion from 'vector<map<int, <span class="template-highlight">float</span>>>' to 'vector<map<int, <span class="template-highlight">double</span>>>' for 1st argument;
+int f(vector<map<int, double>>);
+ <span class="caret">^</span>
+</pre>
+ Templated tree printing with type elision (-fdiagnostics-show-template-tree):
+<pre>
+<b>template-diff.cpp:4:5: <span class="note">note:</span></b> candidate function not viable: no known conversion for 1st argument;
+ vector<
+ map<
+ [...],
+ [<span class="template-highlight">float</span> != <span class="template-highlight">double</span>]>>
+int f(vector<map<int, double>>);
+ <span class="caret">^</span>
+</pre>
+ Templated tree printing without type elision (-fdiagnostics-show-template-tree -fno-elide-type):
+<pre>
+<b>template-diff.cpp:4:5: <span class="note">note:</span></b> candidate function not viable: no known conversion for 1st argument;
+ vector<
+ map<
+ int,
+ [<span class="template-highlight">float</span> != <span class="template-highlight">double</span>]>>
+int f(vector<map<int, double>>);
+ <span class="caret">^</span>
+</pre>
+
+ </li>
+
</ul>
<h4 id="tlsmodel">Support for <code>tls_model</code> attribute</h4>