Fix the printing of constants. Patch by Stepan Dyatkovskiy!
llvm-svn: 144079
diff --git a/llvm/tools/llvm-diff/DiffConsumer.cpp b/llvm/tools/llvm-diff/DiffConsumer.cpp
index c23e8fb..24b372d 100644
--- a/llvm/tools/llvm-diff/DiffConsumer.cpp
+++ b/llvm/tools/llvm-diff/DiffConsumer.cpp
@@ -64,6 +64,10 @@
}
return;
}
+ if (dyn_cast<Constant>(V)) {
+ out << *V;
+ return;
+ }
unsigned N = contexts.size();
while (N > 0) {
diff --git a/llvm/tools/llvm-diff/DifferenceEngine.cpp b/llvm/tools/llvm-diff/DifferenceEngine.cpp
index b240d8c..435cd87 100644
--- a/llvm/tools/llvm-diff/DifferenceEngine.cpp
+++ b/llvm/tools/llvm-diff/DifferenceEngine.cpp
@@ -327,7 +327,7 @@
if (LCase) {
if (TryUnify) tryUnify(LCase, RI->getSuccessor(I));
LCases.erase(CaseValue);
- } else if (!Difference) {
+ } else if (Complain || !Difference) {
if (Complain)
Engine.logf("right switch has extra case %r") << CaseValue;
Difference = true;