Skip to content
This repository was archived by the owner on Feb 25, 2025. It is now read-only.

Commit 0bc104c

Browse files
author
Dart CI
committed
Version 2.18.0-123.0.dev
Merge commit '53944e1c643bb377e1c55f786343207fdda52a57' into 'dev'
2 parents 1bdb83b + 53944e1 commit 0bc104c

25 files changed

+75
-53
lines changed

pkg/_fe_analyzer_shared/pubspec.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
name: _fe_analyzer_shared
2-
version: 39.0.0
2+
version: 40.0.0
33
description: Logic that is shared between the front_end and analyzer packages.
44
repository: https://github.com/dart-lang/sdk/tree/main/pkg/_fe_analyzer_shared
55

pkg/analyzer/CHANGELOG.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
1-
## 4.1.0-dev
1+
## 4.1.0
22
* Deprecated `ParameterElement.isNotOptional`, use `isRequired` instead.
33
* Deprecated `ResourceProviderMixin.newFile2`, use `newFile` instead.
44
* Deprecated `ResourceProviderMixin.newAnalysisOptionsYamlFile2`, use `newAnalysisOptionsYamlFile` instead.
55
* Deprecated `DartType.resolveToBound`, use `TypeSystem.resolveToBound` instead.
66
* Deprecated `LibraryElement.getImportsWithPrefix`, use `PrefixElement.imports` instead.
7-
* Fix for `AnalysisSession.getFile()` to return stale content even after `applyPendingFileChanges`.
7+
* Fix for `AnalysisSession.getFile()` to return updated content after `applyPendingFileChanges`.
88

99
## 4.0.0
1010
* Removed deprecated `UriKind` and `Source.uriKind`.

pkg/analyzer/pubspec.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
11
name: analyzer
2-
version: 4.1.0-dev
2+
version: 4.1.0
33
description: This package provides a library that performs static analysis of Dart code.
44
repository: https://github.com/dart-lang/sdk/tree/main/pkg/analyzer
55

66
environment:
77
sdk: '>=2.15.0 <3.0.0'
88

99
dependencies:
10-
_fe_analyzer_shared: ^39.0.0
10+
_fe_analyzer_shared: ^40.0.0
1111
collection: ^1.15.0
1212
convert: ^3.0.0
1313
crypto: ^3.0.0

pkg/compiler/lib/src/compiler.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ import 'dump_info.dart' show DumpInfoStateData, DumpInfoTask;
3232
import 'elements/entities.dart';
3333
import 'enqueue.dart' show Enqueuer;
3434
import 'environment.dart';
35-
import 'inferrer/abstract_value_domain.dart' show AbstractValueStrategy;
35+
import 'inferrer/abstract_value_strategy.dart';
3636
import 'inferrer/trivial.dart' show TrivialAbstractValueStrategy;
3737
import 'inferrer/powersets/powersets.dart' show PowersetStrategy;
3838
import 'inferrer/typemasks/masks.dart' show TypeMaskStrategy;

pkg/compiler/lib/src/inferrer/abstract_value_domain.dart

Lines changed: 10 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -2,23 +2,19 @@
22
// for details. All rights reserved. Use of this source code is governed by a
33
// BSD-style license that can be found in the LICENSE file.
44

5-
// @dart = 2.10
6-
75
library dart2js.abstract_value_domain;
86

97
import '../constants/values.dart' show ConstantValue, PrimitiveConstantValue;
108
import '../elements/entities.dart';
119
import '../elements/names.dart';
1210
import '../elements/types.dart' show DartType;
13-
import '../ir/static_type.dart';
14-
import '../serialization/serialization.dart';
11+
import '../ir/class_relation.dart';
12+
import '../serialization/serialization_interfaces.dart';
1513
import '../universe/selector.dart';
16-
import '../universe/world_builder.dart';
17-
import '../world.dart';
1814

1915
/// Enum-like values used for reporting known and unknown truth values.
2016
class AbstractBool {
21-
final bool _value;
17+
final bool? _value;
2218

2319
const AbstractBool._(this._value);
2420

@@ -75,17 +71,7 @@ class AbstractBool {
7571

7672
@override
7773
String toString() =>
78-
'AbstractBool.${_value == null ? 'Maybe' : (_value ? 'True' : 'False')}';
79-
}
80-
81-
/// Strategy for the abstraction of runtime values used by the global type
82-
/// inference.
83-
abstract class AbstractValueStrategy {
84-
/// Creates the abstract value domain for [closedWorld].
85-
AbstractValueDomain createDomain(JClosedWorld closedWorld);
86-
87-
/// Creates the [SelectorConstraintsStrategy] used by the backend enqueuer.
88-
SelectorConstraintsStrategy createSelectorStrategy();
74+
'AbstractBool.${_value == null ? 'Maybe' : (_value! ? 'True' : 'False')}';
8975
}
9076

9177
/// A value in an abstraction of runtime values.
@@ -634,8 +620,12 @@ abstract class AbstractValueDomain {
634620
String getCompactText(AbstractValue value);
635621

636622
/// Deserializes an [AbstractValue] for this domain from [source].
637-
AbstractValue readAbstractValueFromDataSource(DataSourceReader source);
623+
// TODO(48820): Remove covariant when DataSourceReader is migrated.
624+
AbstractValue readAbstractValueFromDataSource(
625+
covariant DataSourceReader source);
638626

639627
/// Serializes this [value] for this domain to [sink].
640-
void writeAbstractValueToDataSink(DataSinkWriter sink, AbstractValue value);
628+
// TODO(48820): Remove covariant when DataSinkWriter is migrated.
629+
void writeAbstractValueToDataSink(
630+
covariant DataSinkWriter sink, AbstractValue value);
641631
}
Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
// Copyright (c) 2015, the Dart project authors. Please see the AUTHORS file
2+
// for details. All rights reserved. Use of this source code is governed by a
3+
// BSD-style license that can be found in the LICENSE file.
4+
5+
// @dart = 2.10
6+
7+
import '../universe/world_builder.dart';
8+
import '../world.dart';
9+
import 'abstract_value_domain.dart';
10+
11+
/// Strategy for the abstraction of runtime values used by the global type
12+
/// inference.
13+
abstract class AbstractValueStrategy {
14+
/// Creates the abstract value domain for [closedWorld].
15+
AbstractValueDomain createDomain(covariant JClosedWorld closedWorld);
16+
17+
/// Creates the [SelectorConstraintsStrategy] used by the backend enqueuer.
18+
SelectorConstraintsStrategy createSelectorStrategy();
19+
}

pkg/compiler/lib/src/inferrer/powersets/powerset_bits.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ import '../../constants/values.dart';
99
import '../../elements/entities.dart';
1010
import '../../elements/names.dart';
1111
import '../../elements/types.dart';
12-
import '../../ir/static_type.dart';
12+
import '../../ir/class_relation.dart';
1313
import '../../universe/selector.dart';
1414
import '../../world.dart';
1515
import '../abstract_value_domain.dart';

pkg/compiler/lib/src/inferrer/powersets/powersets.dart

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,13 +8,14 @@ import '../../constants/values.dart' show ConstantValue, PrimitiveConstantValue;
88
import '../../elements/entities.dart';
99
import '../../elements/names.dart';
1010
import '../../elements/types.dart' show DartType;
11-
import '../../ir/static_type.dart';
11+
import '../../ir/class_relation.dart';
1212
import '../../serialization/serialization.dart';
1313
import '../../universe/selector.dart';
1414
import '../../universe/world_builder.dart';
1515
import '../../universe/use.dart';
1616
import '../../world.dart';
1717
import '../abstract_value_domain.dart';
18+
import '../abstract_value_strategy.dart';
1819
import 'powerset_bits.dart';
1920

2021
class PowersetValue implements AbstractValue {

pkg/compiler/lib/src/inferrer/trivial.dart

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,13 +8,14 @@ import '../constants/values.dart' show ConstantValue, PrimitiveConstantValue;
88
import '../elements/entities.dart';
99
import '../elements/names.dart';
1010
import '../elements/types.dart' show DartType;
11-
import '../ir/static_type.dart';
11+
import '../ir/class_relation.dart';
1212
import '../serialization/serialization_interfaces.dart';
1313
import '../universe/selector.dart';
1414
import '../universe/world_builder.dart';
1515
import '../universe/use.dart';
1616
import '../world.dart';
1717
import 'abstract_value_domain.dart';
18+
import 'abstract_value_strategy.dart';
1819

1920
class TrivialAbstractValue implements AbstractValue {
2021
const TrivialAbstractValue();

pkg/compiler/lib/src/inferrer/typemasks/masks.dart

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ import '../../constants/values.dart';
1414
import '../../elements/entities.dart';
1515
import '../../elements/names.dart';
1616
import '../../elements/types.dart';
17-
import '../../ir/static_type.dart';
17+
import '../../ir/class_relation.dart';
1818
import '../../serialization/serialization.dart';
1919
import '../../universe/class_hierarchy.dart';
2020
import '../../universe/selector.dart' show Selector;
@@ -24,6 +24,7 @@ import '../../universe/world_builder.dart'
2424
import '../../util/util.dart';
2525
import '../../world.dart' show JClosedWorld;
2626
import '../abstract_value_domain.dart';
27+
import '../abstract_value_strategy.dart';
2728
import '../type_graph_inferrer.dart' show TypeGraphInferrer;
2829
import 'constants.dart';
2930

0 commit comments

Comments
 (0)