Skip to content

Commit 532b632

Browse files
committed
Sema: Make -debug-generic-signatures output legible
1 parent 7b787a6 commit 532b632

File tree

3 files changed

+9
-4
lines changed

3 files changed

+9
-4
lines changed

lib/Sema/TypeCheckDeclPrimary.cpp

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2057,6 +2057,7 @@ class DeclChecker : public DeclVisitor<DeclChecker> {
20572057
GenericSignature::get({PD->getProtocolSelfType()},
20582058
PD->getRequirementSignature());
20592059

2060+
llvm::errs() << "\n";
20602061
llvm::errs() << "Protocol requirement signature:\n";
20612062
PD->dumpRef(llvm::errs());
20622063
llvm::errs() << "\n";

lib/Sema/TypeCheckGeneric.cpp

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -467,12 +467,13 @@ GenericSignature TypeChecker::checkGenericSignature(
467467
// Debugging of the generic signature builder and generic signature
468468
// generation.
469469
if (dc->getASTContext().TypeCheckerOpts.DebugGenericSignatures) {
470+
llvm::errs() << "\n";
470471
if (auto *VD = dyn_cast_or_null<ValueDecl>(dc->getAsDecl())) {
471472
VD->dumpRef(llvm::errs());
473+
llvm::errs() << "\n";
472474
} else {
473475
dc->printContext(llvm::errs());
474476
}
475-
llvm::errs() << "\n";
476477
llvm::errs() << "Generic signature: ";
477478
sig->print(llvm::errs());
478479
llvm::errs() << "\n";
@@ -589,8 +590,8 @@ GenericSignatureRequest::evaluate(Evaluator &evaluator,
589590
// Debugging of the generic signature builder and generic signature
590591
// generation.
591592
if (GC->getASTContext().TypeCheckerOpts.DebugGenericSignatures) {
592-
PD->printContext(llvm::errs());
593593
llvm::errs() << "\n";
594+
PD->printContext(llvm::errs());
594595
llvm::errs() << "Generic signature: ";
595596
sig->print(llvm::errs());
596597
llvm::errs() << "\n";

lib/Sema/TypeCheckProtocol.cpp

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5087,12 +5087,15 @@ void TypeChecker::checkConformancesInContext(DeclContext *dc,
50875087
// Check all conformances.
50885088
groupChecker.checkAllConformances();
50895089

5090-
if (Context.TypeCheckerOpts.DebugGenericSignatures) {
5090+
if (Context.TypeCheckerOpts.DebugGenericSignatures &&
5091+
!conformances.empty()) {
50915092
// Now that they're filled out, print out information about the conformances
50925093
// here, when requested.
5094+
llvm::errs() << "\n";
5095+
dc->printContext(llvm::errs());
50935096
for (auto conformance : conformances) {
5094-
dc->printContext(llvm::errs());
50955097
conformance->dump(llvm::errs());
5098+
llvm::errs() << "\n";
50965099
}
50975100
}
50985101

0 commit comments

Comments
 (0)