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

Issue 1089463003: Do not use erroneouselement unless the member is static (Closed)

Created:
5 years, 8 months ago by Siggi Cherem (dart-lang)
Modified:
5 years, 8 months ago
CC:
reviews_dartlang.org
Target Ref:
refs/remotes/git-svn
Visibility:
Public.

Description

Do not use erroneouselement unless the member is static R=het@google.com, johnniwinther@google.com Committed: https://code.google.com/p/dart/source/detail?r=45187

Patch Set 1 : #

Total comments: 5

Patch Set 2 : #

Patch Set 3 : #

Total comments: 2

Patch Set 4 : #

Total comments: 3
Unified diffs Side-by-side diffs Delta from patch set Stats (+93 lines, -36 lines) Patch
M pkg/compiler/lib/src/resolution/members.dart View 1 2 1 chunk +17 lines, -3 lines 3 comments Download
M tests/co19/co19-dart2js.status View 1 chunk +0 lines, -1 line 0 comments Download
M tests/compiler/dart2js/resolver_test.dart View 1 2 3 5 chunks +76 lines, -32 lines 0 comments Download

Messages

Total messages: 13 (3 generated)
Siggi Cherem (dart-lang)
https://codereview.chromium.org/1089463003/diff/20001/tests/compiler/dart2js/resolver_test.dart File tests/compiler/dart2js/resolver_test.dart (right): https://codereview.chromium.org/1089463003/diff/20001/tests/compiler/dart2js/resolver_test.dart#newcode1189 tests/compiler/dart2js/resolver_test.dart:1189: ''', [MessageKind.ASSIGNING_METHOD, MessageKind.SETTER_NOT_FOUND]); I'm not happy with the second ...
5 years, 8 months ago (2015-04-15 01:38:04 UTC) #3
Johnni Winther
lgtm https://codereview.chromium.org/1089463003/diff/20001/tests/compiler/dart2js/resolver_test.dart File tests/compiler/dart2js/resolver_test.dart (right): https://codereview.chromium.org/1089463003/diff/20001/tests/compiler/dart2js/resolver_test.dart#newcode1189 tests/compiler/dart2js/resolver_test.dart:1189: ''', [MessageKind.ASSIGNING_METHOD, MessageKind.SETTER_NOT_FOUND]); On 2015/04/15 01:38:04, Siggi Cherem ...
5 years, 8 months ago (2015-04-15 08:58:03 UTC) #4
Harry Terkelsen
https://codereview.chromium.org/1089463003/diff/20001/pkg/compiler/lib/src/resolution/members.dart File pkg/compiler/lib/src/resolution/members.dart (right): https://codereview.chromium.org/1089463003/diff/20001/pkg/compiler/lib/src/resolution/members.dart#newcode3015 pkg/compiler/lib/src/resolution/members.dart:3015: if (Elements.isStaticOrTopLevelField(target)) { this check causes this to print ...
5 years, 8 months ago (2015-04-15 18:22:34 UTC) #6
Siggi Cherem (dart-lang)
PTAL https://codereview.chromium.org/1089463003/diff/20001/pkg/compiler/lib/src/resolution/members.dart File pkg/compiler/lib/src/resolution/members.dart (right): https://codereview.chromium.org/1089463003/diff/20001/pkg/compiler/lib/src/resolution/members.dart#newcode3015 pkg/compiler/lib/src/resolution/members.dart:3015: if (Elements.isStaticOrTopLevelField(target)) { On 2015/04/15 18:22:34, Harry Terkelsen ...
5 years, 8 months ago (2015-04-15 22:39:46 UTC) #7
Harry Terkelsen
lgtm https://codereview.chromium.org/1089463003/diff/60001/tests/compiler/dart2js/resolver_test.dart File tests/compiler/dart2js/resolver_test.dart (right): https://codereview.chromium.org/1089463003/diff/60001/tests/compiler/dart2js/resolver_test.dart#newcode1241 tests/compiler/dart2js/resolver_test.dart:1241: // Detect assignemtns to final fields: s/assignemnts/assignments/
5 years, 8 months ago (2015-04-15 22:45:41 UTC) #8
Siggi Cherem (dart-lang)
https://codereview.chromium.org/1089463003/diff/60001/tests/compiler/dart2js/resolver_test.dart File tests/compiler/dart2js/resolver_test.dart (right): https://codereview.chromium.org/1089463003/diff/60001/tests/compiler/dart2js/resolver_test.dart#newcode1241 tests/compiler/dart2js/resolver_test.dart:1241: // Detect assignemtns to final fields: On 2015/04/15 22:45:41, ...
5 years, 8 months ago (2015-04-15 22:54:11 UTC) #9
Siggi Cherem (dart-lang)
Committed patchset #4 (id:80001) manually as 45187 (presubmit successful).
5 years, 8 months ago (2015-04-15 23:10:14 UTC) #10
Johnni Winther
LGTM with comment. https://codereview.chromium.org/1089463003/diff/80001/pkg/compiler/lib/src/resolution/members.dart File pkg/compiler/lib/src/resolution/members.dart (right): https://codereview.chromium.org/1089463003/diff/80001/pkg/compiler/lib/src/resolution/members.dart#newcode3025 pkg/compiler/lib/src/resolution/members.dart:3025: if (node.isSuperCall) registry.registerSuperNoSuchMethod(); This case should ...
5 years, 8 months ago (2015-04-16 07:41:05 UTC) #11
Siggi Cherem (dart-lang)
https://codereview.chromium.org/1089463003/diff/80001/pkg/compiler/lib/src/resolution/members.dart File pkg/compiler/lib/src/resolution/members.dart (right): https://codereview.chromium.org/1089463003/diff/80001/pkg/compiler/lib/src/resolution/members.dart#newcode3025 pkg/compiler/lib/src/resolution/members.dart:3025: if (node.isSuperCall) registry.registerSuperNoSuchMethod(); On 2015/04/16 07:41:05, Johnni Winther wrote: ...
5 years, 8 months ago (2015-04-16 15:49:45 UTC) #12
Siggi Cherem (dart-lang)
5 years, 8 months ago (2015-04-16 19:58:15 UTC) #13
Message was sent while issue was closed.
https://codereview.chromium.org/1089463003/diff/80001/pkg/compiler/lib/src/re...
File pkg/compiler/lib/src/resolution/members.dart (right):

https://codereview.chromium.org/1089463003/diff/80001/pkg/compiler/lib/src/re...
pkg/compiler/lib/src/resolution/members.dart:3025: if (node.isSuperCall)
registry.registerSuperNoSuchMethod();
On 2015/04/16 15:49:44, Siggi Cherem (dart-lang) wrote:
> On 2015/04/16 07:41:05, Johnni Winther wrote:
> > This case should create an ErrenousElement since the call isn't using
dynamic
> > dispatch. The SSA backend probably detects this case (I guess we have tests
> for
> > it) but it should have been told to produce the NSM.
> 
> Interesting - I'll create a follow up CL with this (I submitted this one
> yesterday).
> 
> Would that be true also when the "this" receiver is explicit
> (node.receiver.isThis())?

I tried this out, but I think this makes the errror message for `super.x` a bit
worse. It makes us report the error here (cannot-resolve-setter or
assigning-method) rather than the typechecker error (setter-not-found-in-class)
which includes the class where we are looking up the member. (see
https://codereview.chromium.org/1090923004 for the tentative change).

Thoughts?

Powered by Google App Engine
This is Rietveld 408576698