Skip to content
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

Frog fails to add implicit super() call. #283

Closed
rakudrama opened this issue Nov 1, 2011 · 7 comments
Closed

Frog fails to add implicit super() call. #283

rakudrama opened this issue Nov 1, 2011 · 7 comments
Assignees

Comments

@rakudrama
Copy link
Member

"If no superinitializer is provided, an implicit superinitializer of the form super() is added at the end of k’s initializer list, unless the enclosing class is class Object."

Running this program causes a crash:
bug.dart:
class HasMap {
  Map<String, String> map;

  HasMap() {
    map = new Map<String, String>();
  }
}

class D extends HasMap {
  D(){}
}

main() {
  var d = new D();
  d.map[100] = 200;
  print(d.map.length);
}

$ frogsh bug.dart
TypeError: Cannot call method '$setindex' of undefined

The expected results is the same as replacing D(){} with D():super(){} :
$ frogsh bug.dart
1
$

@rakudrama
Copy link
Member Author

Added tests/language/src/Constructor4Test.dart
Expected: 1-2-3-4-
Actual: 1-4-

Both the implicit super() initializers and the implicit super() body calls are missing.

Unlike Constructor2Test and Constructor3Test, this test has different results on Frog to the VM.

@efortuna
Copy link
Contributor

efortuna commented Nov 1, 2011

ConstructorDefaultTest already tests for this. I am working on a fix for this after I get perf testing automated. For now, add an explicit super() call.


Added Accepted label.

@efortuna
Copy link
Contributor

efortuna commented Nov 1, 2011

Set owner to @efortuna.
Added Started label.

@rakudrama
Copy link
Member Author

ConstructorDefaultTest is not quite the same - Constructor4Test checks that the implicit super call happens after the explicit initializers.

@efortuna
Copy link
Contributor

My performance testing has put fixing this on hold. Anyone else can feel free to grab it, or I will get to it when I can.


Added Triaged label.

@jmesserly
Copy link

Set owner to @jmesserly.
Added Started label.

@jmesserly
Copy link

Added Fixed label.

copybara-service bot pushed a commit that referenced this issue Sep 5, 2023
…ion, dartdoc, ecosystem, file, glob, html, http_multi_server, http_parser, json_rpc_2, mockito, package_config, protobuf, pub_semver, source_maps, source_span, sync_http, test_reflective_loader, usage, vector_math, web_socket_channel, webdriver

Revisions updated by `dart tools/rev_sdk_deps.dart`.

args (https://github.com/dart-lang/args/compare/da56b18..5a4e16f):
  5a4e16f  2023-09-01  dependabot[bot]  Bump actions/checkout from 3.5.3 to 3.6.0 (#254)

bazel_worker (https://github.com/dart-lang/bazel_worker/compare/f950bbf..159e671):
  159e671  2023-09-01  dependabot[bot]  Bump actions/checkout from 3.5.3 to 3.6.0 (#80)

benchmark_harness (https://github.com/dart-lang/benchmark_harness/compare/fde73cb..7d0d28e):
  7d0d28e  2023-09-01  dependabot[bot]  Bump actions/checkout from 3.5.3 to 3.6.0 (#92)

characters (https://github.com/dart-lang/characters/compare/ec844db..7633a16):
  7633a16  2023-09-01  dependabot[bot]  Bump actions/checkout from 3.5.3 to 3.6.0 (#86)

collection (https://github.com/dart-lang/collection/compare/1a9b7eb..91afde4):
  91afde4  2023-09-02  dependabot[bot]  Bump actions/checkout from 3.5.3 to 3.6.0 (#311)

dartdoc (https://github.com/dart-lang/dartdoc/compare/695b218..a32ba3a):
  a32ba3a1  2023-09-05  Parker Lougheed  Enable accidentally disabled reflective parameter test (#3490)
  0c0cb4ed  2023-09-04  dependabot[bot]  Bump actions/checkout from 3.5.3 to 4.0.0 (#3492)
  08d8d9c4  2023-09-01  Sam Rawlins  Implement much support for extension types (#3489)

ecosystem (https://github.com/dart-lang/ecosystem/compare/89e58de..2e6c3ec):
  2e6c3ec  2023-09-05  Hossein Yousefi  Fix Publish Workflow (#162)
  2e532e3  2023-09-01  dependabot[bot]  Bump actions/checkout from 3.5.3 to 3.6.0 (#161)

file (https://github.com/google/file.dart/compare/5d9a602..a18ad1c):
  a18ad1c  2023-09-01  dependabot[bot]  Bump actions/checkout from 3.5.2 to 3.6.0 (#228)

glob (https://github.com/dart-lang/glob/compare/5b24393..9c1996f):
  9c1996f  2023-09-01  dependabot[bot]  Bump actions/checkout from 3.5.3 to 3.6.0 (#82)

html (https://github.com/dart-lang/html/compare/4060496..a1b193e):
  a1b193e  2023-09-01  dependabot[bot]  Bump actions/checkout from 3.5.3 to 3.6.0 (#225)

http_multi_server (https://github.com/dart-lang/http_multi_server/compare/aa128cf..9d62ea3):
  9d62ea3  2023-09-01  dependabot[bot]  Bump actions/checkout from 3.5.3 to 3.6.0 (#57)

http_parser (https://github.com/dart-lang/http_parser/compare/c14fbf6..d2d03e7):
  d2d03e7  2023-09-02  dependabot[bot]  Bump actions/checkout from 3.5.3 to 3.6.0 (#77)

json_rpc_2 (https://github.com/dart-lang/json_rpc_2/compare/509f71e..50a3786):
  50a3786  2023-09-01  dependabot[bot]  Bump actions/checkout from 3.5.3 to 3.6.0 (#101)

mockito (https://github.com/dart-lang/mockito/compare/f5abf11..412c0be):
  412c0be  2023-09-01  dependabot[bot]  Bump actions/checkout from 3.5.3 to 3.6.0 (#692)

package_config (https://github.com/dart-lang/package_config/compare/981c49d..ae7ad83):
  ae7ad83  2023-09-01  dependabot[bot]  Bump actions/checkout from 3.5.3 to 3.6.0 (#140)

protobuf (https://github.com/dart-lang/protobuf/compare/5e8f36b..c16bc89):
  c16bc89  2023-09-01  dependabot[bot]  Bump actions/checkout from 3.5.2 to 3.6.0 (#873)

pub_semver (https://github.com/dart-lang/pub_semver/compare/028b435..f0be74a):
  f0be74a  2023-09-01  dependabot[bot]  Bump actions/checkout from 3.5.3 to 3.6.0 (#91)

source_maps (https://github.com/dart-lang/source_maps/compare/97c4833..eb3d40a):
  eb3d40a  2023-09-01  dependabot[bot]  Bump actions/checkout from 3.5.3 to 3.6.0 (#81)

source_span (https://github.com/dart-lang/source_span/compare/37735ae..48d0f57):
  48d0f57  2023-09-01  dependabot[bot]  Bump actions/checkout from 3.5.3 to 3.6.0 (#101)

sync_http (https://github.com/dart-lang/sync_http/compare/c3d6ad4..8233f74):
  8233f74  2023-09-01  Devon Carew  Merge pull request #37 from google/dependabot/github_actions/actions/checkout-3.6.0
  57dc02b  2023-09-01  dependabot[bot]  Bump actions/checkout from 3.5.2 to 3.6.0

test_reflective_loader (https://github.com/dart-lang/test_reflective_loader/compare/0bfaad9..45c57d6):
  45c57d6  2023-09-01  dependabot[bot]  Bump actions/checkout from 3.5.3 to 3.6.0 (#51)

usage (https://github.com/dart-lang/usage/compare/09bb847..7b12d51):
  7b12d51  2023-09-01  dependabot[bot]  Bump actions/checkout from 3.5.3 to 3.6.0 (#197)

vector_math (https://github.com/google/vector_math.dart/compare/88bada3..d54af8a):
  d54af8a  2023-09-01  dependabot[bot]  Bump actions/checkout from 3.5.2 to 3.6.0 (#301)

web_socket_channel (https://github.com/dart-lang/web_socket_channel/compare/4d1b543..af945f1):
  af945f1  2023-09-01  dependabot[bot]  Bump actions/checkout from 3.5.3 to 3.6.0 (#283)

webdriver (https://github.com/google/webdriver.dart/compare/20ec47f..21976d6):
  21976d6  2023-09-01  dependabot[bot]  Bump actions/checkout from 3.5.2 to 3.6.0 (#279)
  352b9b6  2023-09-01  dependabot[bot]  Bump nanasess/setup-chromedriver from 1.1.0 to 2.2.0 (#278)

Change-Id: I0b1f7a8851a7ee992d5b67a221ab523f55b51240
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/324261
Auto-Submit: Devon Carew <devoncarew@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
copybara-service bot pushed a commit that referenced this issue Oct 10, 2023
…t_channel, webdriver

Revisions updated by `dart tools/rev_sdk_deps.dart`.

dartdoc (https://github.com/dart-lang/dartdoc/compare/524b2b6..5156398):
  5156398c  2023-10-09  Sam Rawlins  Fix sidebar links for pub packages (#3510)
  960bac41  2023-10-09  dependabot[bot]  Bump ossf/scorecard-action from 2.2.0 to 2.3.0 (#3513)
  affc5b44  2023-10-08  Sam Rawlins  Remove some old, unused options (#3511)
  c147aa19  2023-10-06  Sam Rawlins  Fix left sidebar (#3507)

mockito (https://github.com/dart-lang/mockito/compare/49859e4..47a5588):
  47a5588  2023-10-06  Ilya Yanok  Don't try to compare fakes to real objects
  6b9eab9  2023-10-06  Ilya Yanok  Undo the formatting fix
  5ad2ff4  2023-10-05  Ilya Yanok  Change default dummy value for `String` to contain some info
  78c650b  2023-10-05  Ilya Yanok  Use SDK 3.0.0 for stable tests
  adbe265  2023-10-04  Ilya Yanok  Use 3.1.3 as stable SDK

native (https://github.com/dart-lang/native/compare/fd21f5b..22f4481):
  22f4481  2023-10-10  Daco Harkes  [native_assets_builder] Fix pub warning in tests (#155)

protobuf (https://github.com/dart-lang/protobuf/compare/c16bc89..c559fe5):
  c559fe5  2023-10-10  Ömer Sinan Ağacan  Release protoc_plugin-21.1.2 (#881)
  32ed0fe  2023-10-09  Ömer Sinan Ağacan  Fix a bug in comment parsing (#879)

test (https://github.com/dart-lang/test/compare/367aa39..4341470):
  4341470a  2023-10-06  Nate Bosch  Mention integration_test as an ignored directory (#2115)

tools (https://github.com/dart-lang/tools/compare/f318c80..92c5c15):
  92c5c15  2023-10-10  Devon Carew  update to the latest package:dart_flutter_team_lints (#174)

web_socket_channel (https://github.com/dart-lang/web_socket_channel/compare/364013d..f3ac1bf):
  f3ac1bf  2023-10-06  Nate Bosch  Mention `ready` in the docs for `connect` (#287)

webdriver (https://github.com/google/webdriver.dart/compare/21976d6..eaf9c58):
  eaf9c58  2023-10-05  Nate Bosch  Spawn test server in a background isolate (#285)
  ccd01e5  2023-10-05  dependabot[bot]  Bump actions/checkout from 3.6.0 to 4.1.0 (#284)
  f753b3e  2023-10-05  dependabot[bot]  Bump dart-lang/setup-dart from 1.5.0 to 1.5.1 (#283)
  6bd246f  2023-10-05  Devon Carew  require dart 3.0; add publishing automation (#282)

Change-Id: I83ec9986cc8acc60be76267c2d1127f237e2b5c3
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/329943
Auto-Submit: Devon Carew <devoncarew@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
This issue was closed.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants