History log of /external/clang/test/Misc/diag-template-diffing.cpp
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
ef8225444452a1486bd721f3285301fe84643b00 21-Jul-2014 Stephen Hines <srhines@google.com> Update Clang for rebase to r212749.

This also fixes a small issue with arm_neon.h not being generated always.

Includes a cherry-pick of:
r213450 - fixes mac-specific header issue
r213126 - removes a default -Bsymbolic on Android

Change-Id: I2a790a0f5d3b2aab11de596fc3a74e7cbc99081d
/external/clang/test/Misc/diag-template-diffing.cpp
5ce45c77fc986d13f8cf566b2c195c7cda8afde3 08-Oct-2013 Benjamin Kramer <benny.kra@googlemail.com> Fix an edge case in the template differ with default arguments.

In the test case one type is coming from a typedef with no default arg, the
other has the default arg. Taking the default arg from the typedef crashes, so
always use the real template paramter declaration. PR17510.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@192202 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Misc/diag-template-diffing.cpp
03bf10dc4f245a17ee4f702461cba5120cc4d09b 20-Jul-2013 Richard Trieu <rtrieu@google.com> If a default argument is a dependent type, get the real type from the desugared
template. Passing around dependent types can lead to integral arguments that
cannot be evaluated.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@186757 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Misc/diag-template-diffing.cpp
96e7813f08c6adf1d8657b0da86741b54e850fd7 04-Jul-2013 Rafael Espindola <rafael.espindola@gmail.com> Add 'not' to commands that are expected to fail.

This is at least good documentation, but also opens the possibility of
using pipefail.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@185652 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Misc/diag-template-diffing.cpp
28b34d86baca3282704de364b98a123baf426799 07-May-2013 Richard Trieu <rtrieu@google.com> Fix crash on invalid in template type diffing.

This is a fix for PR15895, where Clang will crash when trying to print a
template diff and the template uses an address of operator. This resulted
from expecting a DeclRefExpr when the Expr could have also been
UnaryOperator->DeclRefExpr.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@181365 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Misc/diag-template-diffing.cpp
709caea14f3a31265d6a791d8e3897ca7b65c1cb 03-Apr-2013 Richard Trieu <rtrieu@google.com> Do not assume the template argument is an integer only because the
expressions are integer. It can also be ValueDecl expressions

Use the type information from the TemplateParameterList instead

Patch by Olivier Goffart!


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@178611 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Misc/diag-template-diffing.cpp
fa3d2758653113cd2b5fff06f8ff22eeb669c044 03-Apr-2013 Richard Trieu <rtrieu@google.com> Fix a crasher in Template Diffing.

When support was added for declaration arguments, the case of variadic
declaration arguments was not supported. This patch fixes that problem by
not crashing when certain ValueDecl's are null.

Patch by Olivier Goffart!


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@178610 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Misc/diag-template-diffing.cpp
625785d370f6c0d8262090b8a2abe3799f72d58d 03-Apr-2013 Richard Trieu <rtrieu@google.com> Fix a crasher in Template Diffing.

Value depenedent expressions for default arguments cannot be evaluated.
Instead, use the desugared template type to get an argument expression that
can be used. This is needed for both integer and declaration arguements.

Also, move this common code into a separate function.

Patch by Olivier Goffart!


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@178609 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Misc/diag-template-diffing.cpp
060fe33d41ea975db519c96def5c2d2b1da7a78f 23-Mar-2013 Richard Trieu <rtrieu@google.com> Strip off local qualifiers when converting from RecordType to
TemplateSpecializationType during template type diffing. This allows the
correct printing of diffing qualifiers on templates.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@177809 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Misc/diag-template-diffing.cpp
70e82dc7a254054f0de491493489da162e63c364 16-Mar-2013 Richard Trieu <rtrieu@google.com> Improve template diffing handling of default integer values.

When the template argument is both default and value dependent, the expression
retrieved for the default argument cannot be evaluated, thus never matching
any argument value. To get the proper value, get the template argument
from the desugared template specialization. Also, output the original
expression to provide more information about the argument mismatch.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@177209 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Misc/diag-template-diffing.cpp
da8910519b8dc79826781e74aaafddbd5c4ba19c 27-Feb-2013 Richard Trieu <rtrieu@google.com> Update template diffing to handle template arguments that are declarations.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@176153 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Misc/diag-template-diffing.cpp
f499b34d4911dda3b20ede1377ea29b83d3f149e 31-Jan-2013 Richard Trieu <rtrieu@google.com> When comparing two template template arguments in the template differ, consider
them the same if they are actually the same; having the same name isn't enough.

Similar to r174013, template template arguments were also mistakenly considered
the same when they had the same name but were in different namespaces.
In addition, when printing template template arguments, use the qualified name
if the regular name is the same.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@174029 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Misc/diag-template-diffing.cpp
1166723df8af0f062c3f6d473d8ae7bb2b64e572 31-Jan-2013 Douglas Gregor <dgregor@apple.com> When comparing two templates in the template differ, consider them the
same if they are actually the same; having the same name isn't
enough. Fixes <rdar://problem/12931988>.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@174013 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Misc/diag-template-diffing.cpp
877761c56d850a6cc5f9246bf248c8a4dc2b0554 30-Jan-2013 Richard Trieu <rtrieu@google.com> Handle passing non-Qualtypes to %diff better. Instead of asserting, fall back
to printing the default case. This is a fix for PR15023.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@173965 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Misc/diag-template-diffing.cpp
335153679daf37c13a8c89266056b4be061e34e3 22-Dec-2012 Douglas Gregor <dgregor@apple.com> Use a safe default width for template-diff'ing integral arguments, in
case we can't find an exact width to use. Fixes crash in
<rdar://problem/12456626>.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@170951 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Misc/diag-template-diffing.cpp
1850ac6ae954524c821723a0f87df62d004a7293 19-Dec-2012 Eli Friedman <eli.friedman@gmail.com> Fix a crash in diagnostic printing when a template class type is diff'ed
against itself. PR14489.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@170474 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Misc/diag-template-diffing.cpp
924d5c9853fbdfabc54a473e680f3b6bb8a1b940 15-Nov-2012 Eli Friedman <eli.friedman@gmail.com> Make template diffing handle integral expressions of various widths correctly.
PR14342.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@168005 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Misc/diag-template-diffing.cpp
54c45453359b47646a1c8d072b02f628b7e16eaa 01-Nov-2012 Richard Trieu <rtrieu@google.com> Fix the template type diffing to handle integral template arguments.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@167252 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Misc/diag-template-diffing.cpp
3c88301b551add30e9a4b59af325534643dc4b21 28-Sep-2012 Richard Trieu <rtrieu@google.com> Update template type diffing to handle qualifiers. Differing qualifiers will
now be printed with highlighting.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@164843 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Misc/diag-template-diffing.cpp
073819806ba2441e2a3e550107f1e756a6ee3ad0 26-Sep-2012 Richard Smith <richard-llvm@metafoo.co.uk> 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.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@164655 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Misc/diag-template-diffing.cpp
648e7630008aac5caa591bcc6d0f77b9594b85fd 30-Jun-2012 Richard Trieu <rtrieu@google.com> Fix typos from r159463 and update tests. Added Matt Beaumont-Gay's suggestion
to improve wording of a diagnostic message.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159473 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Misc/diag-template-diffing.cpp
712692e130af20b1759b1cf1aae83e22d585233f 28-Jun-2012 Matt Beaumont-Gay <matthewbg@google.com> Only print a semicolon after "no known conversion for Nth argument" if there
is a following clause.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159369 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Misc/diag-template-diffing.cpp
246b6aa6763de8c617d564ef33123a8f3293a80e 26-Jun-2012 Richard Trieu <rtrieu@google.com> 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.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@159216 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Misc/diag-template-diffing.cpp