Skip to content

Commit be380ca

Browse files
committed
Fine. Reduce trigerring opaque APIs.
Change-Id: Id994869c48d5d06cbf4c8662880952d45501cf78 Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/450861 Reviewed-by: Johnni Winther <[email protected]>
1 parent 6152811 commit be380ca

File tree

5 files changed

+17
-4
lines changed

5 files changed

+17
-4
lines changed

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

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3271,8 +3271,8 @@ class _InstanceCreationEvaluator {
32713271
evaluationResult.contextMessages.add(
32723272
DiagnosticMessageImpl(
32733273
filePath: _constructor
3274-
.firstFragment
3275-
.libraryFragment
3274+
.firstFragmentLocation
3275+
.libraryFragment!
32763276
.source
32773277
.fullName,
32783278
length: evaluationResult.length,

pkg/analyzer/lib/src/dart/element/element.dart

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5434,6 +5434,10 @@ mixin InternalConstructorElement on InternalExecutableElement
54345434
@override
54355435
ConstructorFragmentImpl get firstFragment;
54365436

5437+
/// The location of [firstFragment], without recording opaque requirement.
5438+
@trackedIncludedInId
5439+
FirstFragmentLocation get firstFragmentLocation;
5440+
54375441
@override
54385442
List<ConstructorFragmentImpl> get fragments;
54395443

pkg/analyzer/lib/src/dart/element/member.dart

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -52,6 +52,11 @@ class SubstitutedConstructorElementImpl extends SubstitutedExecutableElementImpl
5252
@override
5353
ConstructorFragmentImpl get firstFragment => baseElement.firstFragment;
5454

55+
@override
56+
FirstFragmentLocation get firstFragmentLocation {
57+
return baseElement.firstFragmentLocation;
58+
}
59+
5560
@override
5661
List<ConstructorFragmentImpl> get fragments {
5762
return baseElement.fragments;

pkg/analyzer/lib/src/fine/requirements.dart

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1574,7 +1574,7 @@ class RequirementsManifest {
15741574
required List<LibraryElementImpl> importedLibraries,
15751575
required String id,
15761576
}) {
1577-
assert(!id.endsWith('='));
1577+
assert(!id.asLookupName.isSetter);
15781578

15791579
if (_recordingLockLevel != 0) {
15801580
return;
@@ -1702,7 +1702,7 @@ class RequirementsManifest {
17021702
required InstanceElementImpl element,
17031703
required String name,
17041704
}) {
1705-
assert(!name.endsWith('='));
1705+
assert(!name.asLookupName.isSetter);
17061706
var itemRequirements = _getInstanceItem(element);
17071707
if (itemRequirements == null) {
17081708
return;

pkg/analyzer/lib/src/summary2/variance_builder.dart

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -225,6 +225,10 @@ class VarianceBuilder {
225225
}
226226

227227
void _typeAliasElement(TypeAliasElementImpl element) {
228+
if (!_linker.isLinkingElement(element)) {
229+
return;
230+
}
231+
228232
var node = _linker.getLinkingNode2(element.firstFragment);
229233
if (node == null) {
230234
// Not linking.

0 commit comments

Comments
 (0)