Skip to content

Commit 6dbcd67

Browse files
Remove deprecated API from scope.
[email protected] Review-Url: https://codereview.chromium.org/2975163002 .
1 parent 8a6cf60 commit 6dbcd67

File tree

4 files changed

+65
-19
lines changed

4 files changed

+65
-19
lines changed

pkg/front_end/lib/src/fasta/fasta_codes_generated.dart

+38
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,25 @@ const MessageCode messageAbstractNotSync = const MessageCode("AbstractNotSync",
3939
dart2jsCode: "*ignored*",
4040
message: r"""Abstract methods can't use 'async', 'async*', or 'sync*'.""");
4141

42+
// DO NOT EDIT. THIS FILE IS GENERATED. SEE TOP OF FILE.
43+
const Template<Message Function(String name)> templateAccessError =
44+
const Template<Message Function(String name)>(
45+
messageTemplate: r"""Access error: '#name'.""",
46+
withArguments: _withArgumentsAccessError);
47+
48+
// DO NOT EDIT. THIS FILE IS GENERATED. SEE TOP OF FILE.
49+
const Code<Message Function(String name)> codeAccessError =
50+
const Code<Message Function(String name)>(
51+
"AccessError",
52+
templateAccessError,
53+
);
54+
55+
// DO NOT EDIT. THIS FILE IS GENERATED. SEE TOP OF FILE.
56+
Message _withArgumentsAccessError(String name) {
57+
return new Message(codeAccessError,
58+
message: """Access error: '$name'.""", arguments: {'name': name});
59+
}
60+
4261
// DO NOT EDIT. THIS FILE IS GENERATED. SEE TOP OF FILE.
4362
const Template<
4463
Message Function(
@@ -2209,6 +2228,25 @@ const MessageCode messagePositionalParameterWithEquals = const MessageCode(
22092228
r"""Positional optional parameters can't use ':' to specify a default value.""",
22102229
tip: r"""Try replacing ':' with '='.""");
22112230

2231+
// DO NOT EDIT. THIS FILE IS GENERATED. SEE TOP OF FILE.
2232+
const Template<Message Function(String name)> templatePreviousUseOfName =
2233+
const Template<Message Function(String name)>(
2234+
messageTemplate: r"""Previous use of '#name'.""",
2235+
withArguments: _withArgumentsPreviousUseOfName);
2236+
2237+
// DO NOT EDIT. THIS FILE IS GENERATED. SEE TOP OF FILE.
2238+
const Code<Message Function(String name)> codePreviousUseOfName =
2239+
const Code<Message Function(String name)>(
2240+
"PreviousUseOfName",
2241+
templatePreviousUseOfName,
2242+
);
2243+
2244+
// DO NOT EDIT. THIS FILE IS GENERATED. SEE TOP OF FILE.
2245+
Message _withArgumentsPreviousUseOfName(String name) {
2246+
return new Message(codePreviousUseOfName,
2247+
message: """Previous use of '$name'.""", arguments: {'name': name});
2248+
}
2249+
22122250
// DO NOT EDIT. THIS FILE IS GENERATED. SEE TOP OF FILE.
22132251
const Code<Null> codePrivateNamedParameter = messagePrivateNamedParameter;
22142252

pkg/front_end/lib/src/fasta/kernel/body_builder.dart

+6-10
Original file line numberDiff line numberDiff line change
@@ -17,12 +17,11 @@ import 'package:kernel/transformations/flags.dart' show TransformerFlag;
1717

1818
import '../../scanner/token.dart' show BeginToken, Token;
1919

20-
import '../deprecated_problems.dart'
21-
show deprecated_InputError, deprecated_formatUnexpected;
20+
import '../deprecated_problems.dart' show deprecated_formatUnexpected;
2221

2322
import '../fasta_codes.dart' as fasta;
2423

25-
import '../fasta_codes.dart' show Message;
24+
import '../fasta_codes.dart' show LocatedMessage, Message;
2625

2726
import '../messages.dart' as messages show getLocationFromUri;
2827

@@ -326,7 +325,7 @@ class BodyBuilder extends ScopeListener<JumpTarget> implements BuilderHelper {
326325
"'$name' already declared in this scope.", offset));
327326
return;
328327
}
329-
deprecated_InputError error = scope.declare(
328+
LocatedMessage error = scope.declare(
330329
variable.name,
331330
new KernelVariableBuilder(
332331
variable, member ?? classBuilder ?? library, uri),
@@ -346,9 +345,7 @@ class BodyBuilder extends ScopeListener<JumpTarget> implements BuilderHelper {
346345

347346
// Reports the error on `print(x)`.
348347
library.addCompileTimeError(
349-
fasta.templateUnspecified.withArguments(error.error),
350-
error.charOffset,
351-
error.uri);
348+
error.messageObject, error.charOffset, error.uri);
352349
}
353350
}
354351

@@ -1649,7 +1646,7 @@ class BodyBuilder extends ScopeListener<JumpTarget> implements BuilderHelper {
16491646
}
16501647
if (builder.hasProblem) {
16511648
ProblemBuilder problem = builder;
1652-
deprecated_addCompileTimeError(charOffset, problem.deprecated_message);
1649+
addCompileTimeError(problem.message, charOffset);
16531650
} else {
16541651
warningNotError(
16551652
fasta.templateNotAType.withArguments(builder.fullNameForErrors),
@@ -3236,8 +3233,7 @@ class BodyBuilder extends ScopeListener<JumpTarget> implements BuilderHelper {
32363233

32373234
@override
32383235
Expression buildProblemExpression(ProblemBuilder builder, int charOffset) {
3239-
return deprecated_buildCompileTimeError(
3240-
builder.deprecated_message, charOffset);
3236+
return buildCompileTimeError(builder.message, charOffset);
32413237
}
32423238

32433239
@override

pkg/front_end/lib/src/fasta/scope.dart

+15-9
Original file line numberDiff line numberDiff line change
@@ -6,12 +6,17 @@ library fasta.scope;
66

77
import 'builder/builder.dart' show Builder, TypeVariableBuilder;
88

9-
import 'deprecated_problems.dart' show deprecated_InputError;
9+
import 'fasta_codes.dart'
10+
show
11+
LocatedMessage,
12+
Message,
13+
messageInternalProblemExtendingUnmodifiableScope,
14+
templateAccessError,
15+
templateDuplicatedName,
16+
templatePreviousUseOfName;
1017

1118
import 'problems.dart' show internalProblem, unsupported;
1219

13-
import 'fasta_codes.dart' show messageInternalProblemExtendingUnmodifiableScope;
14-
1520
class MutableScope {
1621
/// Names declared in this scope.
1722
Map<String, Builder> local;
@@ -188,12 +193,13 @@ class Scope extends MutableScope {
188193
/// If name was used previously in this scope, this method returns an error
189194
/// that should be reported as a compile-time error. The position of this
190195
/// error is given by [charOffset] and [fileUri].
191-
deprecated_InputError declare(
196+
LocatedMessage declare(
192197
String name, Builder builder, int charOffset, Uri fileUri) {
193198
if (isModifiable) {
194199
if (usedNames?.containsKey(name) ?? false) {
195-
return new deprecated_InputError(
196-
fileUri, usedNames[name], "Previous use of '$name'.");
200+
return templatePreviousUseOfName
201+
.withArguments(name)
202+
.withLocation(fileUri, usedNames[name]);
197203
}
198204
recordUse(name, charOffset, fileUri);
199205
local[name] = builder;
@@ -279,7 +285,7 @@ abstract class ProblemBuilder extends Builder {
279285

280286
bool get hasProblem => true;
281287

282-
String get deprecated_message;
288+
Message get message;
283289

284290
@override
285291
String get fullNameForErrors => name;
@@ -313,12 +319,12 @@ class AccessErrorBuilder extends ProblemBuilder {
313319

314320
bool get isLocal => builder.isLocal;
315321

316-
String get deprecated_message => "Access error: '$name'.";
322+
Message get message => templateAccessError.withArguments(name);
317323
}
318324

319325
class AmbiguousBuilder extends ProblemBuilder {
320326
AmbiguousBuilder(String name, Builder builder, int charOffset, Uri fileUri)
321327
: super(name, builder, charOffset, fileUri);
322328

323-
String get deprecated_message => "Duplicated named: '$name'.";
329+
Message get message => templateDuplicatedName.withArguments(name);
324330
}

pkg/front_end/messages.yaml

+6
Original file line numberDiff line numberDiff line change
@@ -840,3 +840,9 @@ ConstConstructorNonFinalField:
840840

841841
ConstConstructorNonFinalFieldCause:
842842
template: "Field isn't final, but constructor is 'const'."
843+
844+
AccessError:
845+
template: "Access error: '#name'."
846+
847+
PreviousUseOfName:
848+
template: "Previous use of '#name'."

0 commit comments

Comments
 (0)