Skip to content

Commit 9117097

Browse files
stereotype441Commit Queue
authored andcommitted
[messages] Update parameter names for more analyzer diagnostics.
In the following analyzer diagnostics, updates the placeholder parameter names `p0`, `p1`, `p2`, etc. with descriptive parameter names, and updates the call sites that use those diagnostic messages to use the new literate diagnostic reporting API: - `ambiguousExport` - `ambiguousExtensionMemberAccessTwo` - `ambiguousExtensionMemberAccessThreeOrMore` - `ambiguousImport` - `assignmentToFinal` - `assignmentToFinalLocal` - `assignmentToFinalNoSetter` - `augmentationModifierExtra` - `augmentationModifierMissing` - `augmentationOfDifferentDeclarationKind` - `augmentedExpressionNotOperator` - `builtInIdentifierAsType` - `caseExpressionTypeImplementsEquals` Only the `messages.yaml` changes were done manually; the changes to `dart` code were produced either by the diagnostic message code generator or by the script `use_literate_api_in_analyzer.dart`. Change-Id: I6a6a69642fea2a18e0a661c4aadbbc434aba7e77 Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/467685 Commit-Queue: Paul Berry <paulberry@google.com> Reviewed-by: Johnni Winther <johnniwinther@google.com>
1 parent b888cb7 commit 9117097

File tree

9 files changed

+216
-177
lines changed

9 files changed

+216
-177
lines changed

pkg/analyzer/lib/src/dart/constant/constant_verifier.dart

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1092,10 +1092,10 @@ class ConstantVerifier extends RecursiveAstVisitor<void> {
10921092
if (!featureSet.isEnabled(Feature.patterns)) {
10931093
var expressionType = expressionValue.type;
10941094
if (!expressionValue.hasPrimitiveEquality(featureSet)) {
1095-
_diagnosticReporter.atNode(
1096-
expression,
1097-
diag.caseExpressionTypeImplementsEquals,
1098-
arguments: [expressionType],
1095+
_diagnosticReporter.report(
1096+
diag.caseExpressionTypeImplementsEquals
1097+
.withArguments(type: expressionType)
1098+
.at(expression),
10991099
);
11001100
}
11011101
}

pkg/analyzer/lib/src/dart/resolver/assignment_expression_resolver.dart

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -398,10 +398,10 @@ class AssignmentExpressionShared {
398398
}
399399
} else {
400400
if (isForEachIdentifier || !unassigned) {
401-
_errorReporter.atNode(
402-
left,
403-
diag.assignmentToFinalLocal,
404-
arguments: [element.name!],
401+
_errorReporter.report(
402+
diag.assignmentToFinalLocal
403+
.withArguments(variableName: element.name!)
404+
.at(left),
405405
);
406406
}
407407
}

pkg/analyzer/lib/src/dart/resolver/extension_member_resolver.dart

Lines changed: 23 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -127,32 +127,32 @@ class ExtensionMemberResolver {
127127

128128
// The most specific extension is ambiguous.
129129
if (mostSpecific.length == 2) {
130-
_diagnosticReporter.atEntity(
131-
nameEntity,
132-
diag.ambiguousExtensionMemberAccessTwo,
133-
arguments: [
134-
name.name,
135-
mostSpecific[0].extension,
136-
mostSpecific[1].extension,
137-
],
130+
_diagnosticReporter.report(
131+
diag.ambiguousExtensionMemberAccessTwo
132+
.withArguments(
133+
name: name.name,
134+
firstExtension: mostSpecific[0].extension,
135+
secondExtension: mostSpecific[1].extension,
136+
)
137+
.at(nameEntity),
138138
);
139139
} else {
140140
var extensions = mostSpecific.map((e) => e.extension).toList();
141-
_diagnosticReporter.atEntity(
142-
nameEntity,
143-
diag.ambiguousExtensionMemberAccessThreeOrMore,
144-
arguments: [
145-
name.name,
146-
mostSpecific.map((e) {
147-
var name = e.extension.name;
148-
if (name != null) {
149-
return "extension '$name'";
150-
}
151-
var type = e.extendedType.getDisplayString();
152-
return "unnamed extension on '$type'";
153-
}).commaSeparatedWithAnd,
154-
],
155-
contextMessages: convertTypeNames(<Object>[...extensions]),
141+
_diagnosticReporter.report(
142+
diag.ambiguousExtensionMemberAccessThreeOrMore
143+
.withArguments(
144+
name: name.name,
145+
extensions: mostSpecific.map((e) {
146+
var name = e.extension.name;
147+
if (name != null) {
148+
return "extension '$name'";
149+
}
150+
var type = e.extendedType.getDisplayString();
151+
return "unnamed extension on '$type'";
152+
}).commaSeparatedWithAnd,
153+
)
154+
.withContextMessages(convertTypeNames(<Object>[...extensions]))
155+
.at(nameEntity),
156156
);
157157
}
158158
return ExtensionResolutionError.ambiguous;

0 commit comments

Comments
 (0)