Skip to content

Commit 65719d7

Browse files
committed
[Sema] checkInheritedDefaultValueRestrictions doesn't need a TypeChecker
1 parent 25015a5 commit 65719d7

File tree

1 file changed

+8
-10
lines changed

1 file changed

+8
-10
lines changed

lib/Sema/TypeCheckDecl.cpp

Lines changed: 8 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1906,8 +1906,7 @@ getParamIndex(const ParameterList *paramList, const ParamDecl *decl) {
19061906
return None;
19071907
}
19081908

1909-
static void
1910-
checkInheritedDefaultValueRestrictions(TypeChecker &TC, ParamDecl *PD) {
1909+
static void checkInheritedDefaultValueRestrictions(ParamDecl *PD) {
19111910
if (PD->getDefaultArgumentKind() != DefaultArgumentKind::Inherited)
19121911
return;
19131912

@@ -1919,18 +1918,17 @@ checkInheritedDefaultValueRestrictions(TypeChecker &TC, ParamDecl *PD) {
19191918
// The containing decl should be a designated initializer.
19201919
auto ctor = dyn_cast<ConstructorDecl>(DC);
19211920
if (!ctor || ctor->isConvenienceInit()) {
1922-
TC.diagnose(
1923-
PD, diag::inherited_default_value_not_in_designated_constructor);
1921+
PD->diagnose(diag::inherited_default_value_not_in_designated_constructor);
19241922
return;
19251923
}
19261924

19271925
// The decl it overrides should also be a designated initializer.
19281926
auto overridden = ctor->getOverriddenDecl();
19291927
if (!overridden || overridden->isConvenienceInit()) {
1930-
TC.diagnose(
1931-
PD, diag::inherited_default_value_used_in_non_overriding_constructor);
1928+
PD->diagnose(
1929+
diag::inherited_default_value_used_in_non_overriding_constructor);
19321930
if (overridden)
1933-
TC.diagnose(overridden, diag::overridden_here);
1931+
overridden->diagnose(diag::overridden_here);
19341932
return;
19351933
}
19361934

@@ -1939,16 +1937,16 @@ checkInheritedDefaultValueRestrictions(TypeChecker &TC, ParamDecl *PD) {
19391937
assert(idx && "containing decl does not contain param?");
19401938
ParamDecl *equivalentParam = overridden->getParameters()->get(*idx);
19411939
if (equivalentParam->getDefaultArgumentKind() == DefaultArgumentKind::None) {
1942-
TC.diagnose(PD, diag::corresponding_param_not_defaulted);
1943-
TC.diagnose(equivalentParam, diag::inherited_default_param_here);
1940+
PD->diagnose(diag::corresponding_param_not_defaulted);
1941+
equivalentParam->diagnose(diag::inherited_default_param_here);
19441942
}
19451943
}
19461944

19471945
/// Check the default arguments that occur within this pattern.
19481946
static void checkDefaultArguments(TypeChecker &tc, ParameterList *params,
19491947
ValueDecl *VD) {
19501948
for (auto *param : *params) {
1951-
checkInheritedDefaultValueRestrictions(tc, param);
1949+
checkInheritedDefaultValueRestrictions(param);
19521950
if (!param->getDefaultValue() ||
19531951
!param->hasInterfaceType() ||
19541952
param->getInterfaceType()->hasError())

0 commit comments

Comments
 (0)