Eli Friedman
40ea264c25
Fix a crash in diagnostic printing when a template class type is diff'ed
...
against itself. PR14489.
llvm-svn: 170474
2012-12-18 23:32:47 +00:00
Eli Friedman
c2c982c78b
Make template diffing handle integral expressions of various widths correctly.
...
PR14342.
llvm-svn: 168005
2012-11-14 23:57:08 +00:00
Richard Trieu
6df8945f04
Fix the template type diffing to handle integral template arguments.
...
llvm-svn: 167252
2012-11-01 21:29:28 +00:00
Richard Trieu
b7243855d9
Update template type diffing to handle qualifiers. Differing qualifiers will
...
now be printed with highlighting.
llvm-svn: 164843
2012-09-28 20:32:51 +00:00
Richard Smith
6e0605d654
Teach Type::getAs<TemplateSpecializationType> that a TemplateSpecializationType
...
for a type alias template can appear as sugar at any level of desugaring, just
like a TypedefType.
llvm-svn: 164655
2012-09-26 02:18:13 +00:00
Richard Trieu
db96a42eba
Fix typos from r159463 and update tests. Added Matt Beaumont-Gay's suggestion
...
to improve wording of a diagnostic message.
llvm-svn: 159473
2012-06-29 23:11:10 +00:00
Matt Beaumont-Gay
1571652af9
Only print a semicolon after "no known conversion for Nth argument" if there
...
is a following clause.
llvm-svn: 159369
2012-06-28 19:20:41 +00:00
Richard Trieu
9184423984
Add template type diffing to Clang. This feature will provide a better
...
comparison between two templated types when they both appear in a diagnostic.
Type elision will remove indentical template arguments, which can be disabled
with -fno-elide-type. Cyan highlighting is applied to the differing types.
For more formatting, -fdiagnostic-show-template-tree will output the template
type as an indented text tree, with differences appearing inline. Template
tree works with or without type elision.
llvm-svn: 159216
2012-06-26 18:18:47 +00:00