Skip to content

Commit e8a4fc5

Browse files
committed
[Sema] Print location for unused generic param error
Do this for implicit param declarations
1 parent ca99c18 commit e8a4fc5

File tree

1 file changed

+9
-2
lines changed

1 file changed

+9
-2
lines changed

lib/Sema/TypeCheckGeneric.cpp

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -469,8 +469,15 @@ void TypeChecker::checkReferencedGenericParams(GenericContext *dc) {
469469
continue;
470470
}
471471
// Produce an error that this generic parameter cannot be bound.
472-
paramDecl->diagnose(diag::unreferenced_generic_parameter,
473-
paramDecl->getNameStr());
472+
if (paramDecl->isImplicit()) {
473+
paramDecl->getASTContext().Diags
474+
.diagnose(paramDecl->getOpaqueTypeRepr()->getLoc(),
475+
diag::unreferenced_generic_parameter,
476+
paramDecl->getNameStr());
477+
} else {
478+
paramDecl->diagnose(diag::unreferenced_generic_parameter,
479+
paramDecl->getNameStr());
480+
}
474481
}
475482
}
476483
}

0 commit comments

Comments
 (0)