[element model] migrate `unrelated_type_equality_checks`

Bug: https://github.com/dart-lang/linter/issues/5099
Change-Id: I3ff89d06382c13d3c52d4477c7a22778c27f380f
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/390265
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Auto-Submit: Phil Quitslund <pquitslund@google.com>
Commit-Queue: Brian Wilkerson <brianwilkerson@google.com>
diff --git a/pkg/linter/lib/src/rules/unrelated_type_equality_checks.dart b/pkg/linter/lib/src/rules/unrelated_type_equality_checks.dart
index 3d901fa..aefb518 100644
--- a/pkg/linter/lib/src/rules/unrelated_type_equality_checks.dart
+++ b/pkg/linter/lib/src/rules/unrelated_type_equality_checks.dart
@@ -101,9 +101,9 @@
     // TODO(pq): add tests that ensure this predicate works with fixnum >= 1.1.0-dev
     // See: https://github.com/dart-lang/linter/issues/3868
     if (self is! InterfaceType) return false;
-    var element = self.element;
+    var element = self.element3;
     if (element.name != 'Int32' && element.name != 'Int64') return false;
-    var uri = element.library.source.uri;
+    var uri = element.library2.firstFragment.source.uri;
     if (!uri.isScheme('package')) return false;
     return uri.pathSegments.firstOrNull == 'fixnum';
   }