File tree Expand file tree Collapse file tree 1 file changed +13
-1
lines changed Expand file tree Collapse file tree 1 file changed +13
-1
lines changed Original file line number Diff line number Diff line change @@ -882,6 +882,11 @@ void GenericSignature::verify() const {
882
882
883
883
void GenericSignature::verify (ArrayRef<Requirement> reqts) const {
884
884
auto dumpAndAbort = [&]() {
885
+ llvm::errs () << " All requirements:\n " ;
886
+ for (auto reqt : reqts) {
887
+ reqt.dump (llvm::errs ());
888
+ llvm::errs () << " \n " ;
889
+ }
885
890
getPointer ()->getRequirementMachine ()->dump (llvm::errs ());
886
891
abort ();
887
892
};
@@ -1081,7 +1086,14 @@ void GenericSignature::verify(ArrayRef<Requirement> reqts) const {
1081
1086
ProtocolType::canonicalizeProtocols (canonicalProtos);
1082
1087
1083
1088
if (protos.size () != canonicalProtos.size ()) {
1084
- llvm::errs () << " Redundant conformance requirements in signature\n " ;
1089
+ llvm::errs () << " Redundant conformance requirements in signature "
1090
+ << *this << " :\n " ;
1091
+ llvm::errs () << " Ours:\n " ;
1092
+ for (auto *proto : protos)
1093
+ llvm::errs () << " - " << proto->getName () << " \n " ;
1094
+ llvm::errs () << " Theirs:\n " ;
1095
+ for (auto *proto : canonicalProtos)
1096
+ llvm::errs () << " - " << proto->getName () << " \n " ;
1085
1097
dumpAndAbort ();
1086
1098
}
1087
1099
if (!std::equal (protos.begin (), protos.end (), canonicalProtos.begin ())) {
You can’t perform that action at this time.
0 commit comments