@@ -746,7 +746,7 @@ class ResolverVisitor extends ThrowingAstVisitor<void>
746746 var args = < String > [];
747747 var propertyReference = whyNotPromotedVisitor.propertyReference;
748748 if (propertyReference != null ) {
749- var id = computeMemberId (propertyReference.asElement2 );
749+ var id = computeMemberId (propertyReference);
750750 args.add ('target: $id ' );
751751 }
752752 if (args.isNotEmpty) {
@@ -5658,7 +5658,7 @@ class _WhyNotPromotedVisitor
56585658
56595659 final FlowAnalysisDataForTesting ? _dataForTesting;
56605660
5661- PropertyAccessorElement ? propertyReference;
5661+ PropertyAccessorElement2 ? propertyReference;
56625662
56635663 _WhyNotPromotedVisitor (this .source, this ._errorEntity, this ._dataForTesting);
56645664
@@ -5681,9 +5681,6 @@ class _WhyNotPromotedVisitor
56815681 PropertyNotPromotedForInherentReason reason) {
56825682 var receiverElement = reason.propertyMember;
56835683 if (receiverElement is PropertyAccessorElement2 ) {
5684- receiverElement = receiverElement.asElement;
5685- }
5686- if (receiverElement is PropertyAccessorElement ) {
56875684 var property = propertyReference = receiverElement;
56885685 var propertyName = reason.propertyName;
56895686 String message = switch (reason.whyNotPromotable) {
@@ -5701,10 +5698,10 @@ class _WhyNotPromotedVisitor
57015698 };
57025699 return [
57035700 DiagnosticMessageImpl (
5704- filePath: property.source.fullName,
5701+ filePath: property.firstFragment.libraryFragment. source.fullName,
57055702 message: message,
5706- offset: property.nonSynthetic.nameOffset ,
5707- length: property.nameLength ,
5703+ offset: property.nonSynthetic2.firstFragment.nameOffset2 ! ,
5704+ length: property.name3 ! .length ,
57085705 url: reason.documentationLink.url),
57095706 if (! reason.fieldPromotionEnabled)
57105707 _fieldPromotionUnavailableMessage (property, propertyName)
@@ -5721,12 +5718,9 @@ class _WhyNotPromotedVisitor
57215718 PropertyNotPromotedForNonInherentReason reason) {
57225719 var receiverElement = reason.propertyMember;
57235720 if (receiverElement is PropertyAccessorElement2 ) {
5724- receiverElement = receiverElement.asElement;
5725- }
5726- if (receiverElement is PropertyAccessorElement ) {
57275721 var property = propertyReference = receiverElement;
57285722 var propertyName = reason.propertyName;
5729- var library = receiverElement.library as LibraryElementImpl ;
5723+ var library = receiverElement.library2 as LibraryElementImpl ;
57305724 var fieldNonPromotabilityInfo = library.fieldNameNonPromotabilityInfo;
57315725 var fieldNameInfo = fieldNonPromotabilityInfo[reason.propertyName];
57325726 var messages = < DiagnosticMessage > [];
@@ -5822,14 +5816,14 @@ class _WhyNotPromotedVisitor
58225816 }
58235817
58245818 DiagnosticMessageImpl _fieldPromotionUnavailableMessage (
5825- PropertyAccessorElement property, String propertyName) {
5819+ PropertyAccessorElement2 property, String propertyName) {
58265820 return DiagnosticMessageImpl (
5827- filePath: property.source.fullName,
5821+ filePath: property.firstFragment.libraryFragment. source.fullName,
58285822 message: "'$propertyName ' couldn't be promoted "
58295823 "because field promotion is only available in Dart 3.2 and "
58305824 "above." ,
5831- offset: property.nonSynthetic.nameOffset ,
5832- length: property.nameLength ,
5825+ offset: property.nonSynthetic2.firstFragment.nameOffset2 ! ,
5826+ length: property.name3 ! .length ,
58335827 url: NonPromotionDocumentationLink .fieldPromotionUnavailable.url);
58345828 }
58355829}
0 commit comments