Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(171)

Issue 178173003: Fix for 16498. (Closed)

Created:
6 years, 10 months ago by jwren
Modified:
6 years, 10 months ago
Reviewers:
Brian Wilkerson
CC:
reviews_dartlang.org
Visibility:
Public.

Description

Fix for 16498. This fixes this issue, but also re-implements much of the inheritance logic to bring the analyzer closer to spec-compliance with the changes that landed in January. R=brianwilkerson@google.com Committed: https://code.google.com/p/dart/source/detail?r=32982

Patch Set 1 #

Total comments: 10
Unified diffs Side-by-side diffs Delta from patch set Stats (+915 lines, -114 lines) Patch
A + editor/tools/plugins/com.google.dart.engine/src/com/google/dart/engine/element/MultiplyInheritedExecutableElement.java View 1 chunk +10 lines, -10 lines 4 comments Download
M editor/tools/plugins/com.google.dart.engine/src/com/google/dart/engine/error/StaticTypeWarningCode.java View 1 chunk +1 line, -1 line 2 comments Download
A editor/tools/plugins/com.google.dart.engine/src/com/google/dart/engine/internal/element/MultiplyInheritedMethodElementImpl.java View 1 chunk +49 lines, -0 lines 0 comments Download
A editor/tools/plugins/com.google.dart.engine/src/com/google/dart/engine/internal/element/MultiplyInheritedPropertyAccessorElementImpl.java View 1 chunk +49 lines, -0 lines 0 comments Download
M editor/tools/plugins/com.google.dart.engine/src/com/google/dart/engine/internal/resolver/InheritanceManager.java View 6 chunks +285 lines, -36 lines 4 comments Download
M editor/tools/plugins/com.google.dart.engine/src/com/google/dart/engine/internal/verifier/ErrorVerifier.java View 6 chunks +65 lines, -8 lines 0 comments Download
M editor/tools/plugins/com.google.dart.engine_test/src/com/google/dart/engine/internal/resolver/InheritanceManagerTest.java View 16 chunks +402 lines, -58 lines 0 comments Download
M editor/tools/plugins/com.google.dart.engine_test/src/com/google/dart/engine/resolver/StaticWarningCodeTest.java View 3 chunks +54 lines, -0 lines 0 comments Download
M tests/language/language_analyzer.status View 1 chunk +0 lines, -1 line 0 comments Download

Messages

Total messages: 4 (0 generated)
jwren
6 years, 10 months ago (2014-02-24 19:30:51 UTC) #1
Brian Wilkerson
LGTM https://codereview.chromium.org/178173003/diff/1/editor/tools/plugins/com.google.dart.engine/src/com/google/dart/engine/element/MultiplyInheritedExecutableElement.java File editor/tools/plugins/com.google.dart.engine/src/com/google/dart/engine/element/MultiplyInheritedExecutableElement.java (right): https://codereview.chromium.org/178173003/diff/1/editor/tools/plugins/com.google.dart.engine/src/com/google/dart/engine/element/MultiplyInheritedExecutableElement.java#newcode19 editor/tools/plugins/com.google.dart.engine/src/com/google/dart/engine/element/MultiplyInheritedExecutableElement.java:19: * {@link ExecutableElement}s that this element was composed. ...
6 years, 10 months ago (2014-02-24 19:59:00 UTC) #2
jwren
Committed patchset #1 manually as r32982 (presubmit successful).
6 years, 10 months ago (2014-02-24 20:34:28 UTC) #3
jwren
6 years, 10 months ago (2014-02-24 20:34:44 UTC) #4
Message was sent while issue was closed.
https://codereview.chromium.org/178173003/diff/1/editor/tools/plugins/com.goo...
File
editor/tools/plugins/com.google.dart.engine/src/com/google/dart/engine/element/MultiplyInheritedExecutableElement.java
(right):

https://codereview.chromium.org/178173003/diff/1/editor/tools/plugins/com.goo...
editor/tools/plugins/com.google.dart.engine/src/com/google/dart/engine/element/MultiplyInheritedExecutableElement.java:19:
* {@link ExecutableElement}s that this element was composed.
On 2014/02/24 19:59:00, Brian Wilkerson wrote:
> nit: "that" --> "from which"?

Done.

https://codereview.chromium.org/178173003/diff/1/editor/tools/plugins/com.goo...
editor/tools/plugins/com.google.dart.engine/src/com/google/dart/engine/element/MultiplyInheritedExecutableElement.java:30:
public ExecutableElement[] getExecutableElements();
On 2014/02/24 19:59:00, Brian Wilkerson wrote:
> With the change of name for the class, should this method be renamed? Perhaps
> something like getInheritedElements()?

Done.

https://codereview.chromium.org/178173003/diff/1/editor/tools/plugins/com.goo...
File
editor/tools/plugins/com.google.dart.engine/src/com/google/dart/engine/error/StaticTypeWarningCode.java
(right):

https://codereview.chromium.org/178173003/diff/1/editor/tools/plugins/com.goo...
editor/tools/plugins/com.google.dart.engine/src/com/google/dart/engine/error/StaticTypeWarningCode.java:75:
INCONSISTENT_METHOD_INHERITANCE("'%s' is inherited by at least two interfaces
inconsistently: %s"),
Done.  Change it to "from"

https://codereview.chromium.org/178173003/diff/1/editor/tools/plugins/com.goo...
File
editor/tools/plugins/com.google.dart.engine/src/com/google/dart/engine/internal/resolver/InheritanceManager.java
(right):

https://codereview.chromium.org/178173003/diff/1/editor/tools/plugins/com.goo...
editor/tools/plugins/com.google.dart.engine/src/com/google/dart/engine/internal/resolver/InheritanceManager.java:639:
// function types. (We also take note too of the type of the element: ()->int
and () -> int may
On 2014/02/24 19:59:00, Brian Wilkerson wrote:
> nit: "type" --> "kind"?

Done.

https://codereview.chromium.org/178173003/diff/1/editor/tools/plugins/com.goo...
editor/tools/plugins/com.google.dart.engine/src/com/google/dart/engine/internal/resolver/InheritanceManager.java:770:
// TODO (jwren) Do we create warning only if subtypesOfAllOtherTypesIndexes is
empty, or
Removing.

Powered by Google App Engine
This is Rietveld 408576698