Update assumption in template diffing about integer template arguments.
authorRichard Trieu <rtrieu@google.com>
Thu, 26 Feb 2015 02:40:48 +0000 (02:40 +0000)
committerRichard Trieu <rtrieu@google.com>
Thu, 26 Feb 2015 02:40:48 +0000 (02:40 +0000)
commit555c9673fd8c2380bf47f41450ce932472496376
tree368e8500be701d746fb9aad53bf3cd0aed4f76d7
parent99b0a9cdd7a70300cc935fe9edaa19cdcf968d24
Update assumption in template diffing about integer template arguments.

Fix for PR22017.  Integer template arguments are automatically bit extended to
the size of the integer type.  In template diffing, evaluated expressions were
not having their results extending, leading to comparing two APSInt's with
different widths.  Apply the proper bit extending when evaluating template
arguments.  This mainly affected bool template arguments.

llvm-svn: 230603
clang/lib/AST/ASTDiagnostic.cpp
clang/test/Misc/diag-template-diffing.cpp