-
Notifications
You must be signed in to change notification settings - Fork 1.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Analyzer thinks that private methods from other library is overridable #25538
Labels
area-analyzer
Use area-analyzer for Dart analyzer issues, including the analysis server and code completion.
P2
A bug or feature request we're likely to work on
type-bug
Incorrect behavior (everything from a crash to more subtle misbehavior)
Comments
CL for |
scheglov
added a commit
that referenced
this issue
Jan 21, 2016
R=brianwilkerson@google.com BUG= #25538 Review URL: https://codereview.chromium.org/1610773003 .
CL for |
scheglov
added a commit
that referenced
this issue
Jan 21, 2016
…members. R=brianwilkerson@google.com BUG= #25538 Review URL: https://codereview.chromium.org/1615023002 .
CL for type hierarchy https://codereview.chromium.org/1615093002 |
scheglov
added a commit
that referenced
this issue
Jan 21, 2016
R=brianwilkerson@google.com BUG= #25538 Review URL: https://codereview.chromium.org/1615093002 .
Fixed. |
It seems that this bug has resurfaced import 'package:flutter/material.dart';
class _PercentText extends MultiChildLayoutDelegate {
performLa
@override
bool shouldRelayout(MultiChildLayoutDelegate oldDelegate) => false;
}
|
dart-bot
pushed a commit
that referenced
this issue
Dec 6, 2018
R=brianwilkerson@google.com Bug: #25538 Change-Id: I61904881c602f373df839bc546b1e65665997bb9 Reviewed-on: https://dart-review.googlesource.com/c/86480 Reviewed-by: Brian Wilkerson <brianwilkerson@google.com> Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
area-analyzer
Use area-analyzer for Dart analyzer issues, including the analysis server and code completion.
P2
A bug or feature request we're likely to work on
type-bug
Incorrect behavior (everything from a crash to more subtle misbehavior)
Analyzer thinks that private methods from other library is overridable, but according to the spec they are not.
See section
10.9.1 Inheritance and Overriding
in the Dart Language spec:C inherits all accessible instance members of A that have not been overridden by a declaration in C
."accessible" is defined in section
6.2 Privacy
:A declaration m is accessible to library L if m is declared in L or if m is public
.Now consider this code:
file1.dart
file2.dart
Output is:
Output shows that
B._privateMethod()
overridesA._privateMethod
- DAS thinks the same, so far so good.But also output shows that
C._privateMethod()
doesn't overrideA._privateMethod
. But all DAS methods that deal with hierarchy say that it does. I mean:AnalysisServer.search_getTypeHierarchy()
AnalysisServerListener.computedOverrides()
notificationAnalysisServerListener.computedImplemented()
notificationMay be some other DAS methods use incorrect assumption as well, not sure.
The text was updated successfully, but these errors were encountered: