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

CCE in LibraryUnit #839

Closed
stevemessick opened this issue Dec 14, 2011 · 7 comments
Closed

CCE in LibraryUnit #839

stevemessick opened this issue Dec 14, 2011 · 7 comments

Comments

@stevemessick
Copy link
Contributor

Converting JS code to Dart is uncovering new bugs. Here's a stack trace. Source is below.

java.lang.ClassCastException: com.google.dart.compiler.ast.DartPropertyAccess cannot be cast to com.google.dart.compiler.ast.DartIdentifier
    at com.google.dart.compiler.ast.LibraryUnit$1.visitMethodDefinition(LibraryUnit.java:311)
    at com.google.dart.compiler.ast.LibraryUnit$1.visitMethodDefinition(LibraryUnit.java:1)
    at com.google.dart.compiler.ast.DartMethodDefinition.accept(DartMethodDefinition.java:90)
    at com.google.dart.compiler.ast.DartNodeTraverser.visit(DartNodeTraverser.java:413)
    at com.google.dart.compiler.ast.DartUnit.visitChildren(DartUnit.java:99)
    at com.google.dart.compiler.ast.DartNodeTraverser.visitNode(DartNodeTraverser.java:54)
    at com.google.dart.compiler.ast.DartNodeTraverser.visitUnit(DartNodeTraverser.java:391)
    at com.google.dart.compiler.ast.LibraryUnit.populateTopLevelNodes(LibraryUnit.java:324)
    at com.google.dart.compiler.DartCompiler$Compiler.parseOutOfDateFiles(DartCompiler.java:289)
    at com.google.dart.compiler.DartCompiler$Compiler.updateAndResolve(DartCompiler.java:204)
    at com.google.dart.compiler.DartCompiler$Compiler.access$4(DartCompiler.java:193)
    at com.google.dart.compiler.DartCompiler.analyzeLibrary(DartCompiler.java:1197)
    at com.google.dart.tools.core.utilities.compiler.DartCompilerUtilities.secureAnalyzeLibrary(DartCompilerUtilities.java:777)
    at com.google.dart.tools.core.utilities.compiler.DartCompilerUtilities$ResolverRunnable.run(DartCompilerUtilities.java:440)
    at com.google.dart.tools.core.utilities.compiler.DartCompilerUtilities$CompilerRunner.runSafe(DartCompilerUtilities.java:95)
    at com.google.dart.tools.core.utilities.compiler.DartCompilerUtilities.resolveUnit(DartCompilerUtilities.java:760)
    at com.google.dart.tools.core.utilities.compiler.DartCompilerUtilities.resolveUnit(DartCompilerUtilities.java:742)
    at com.google.dart.tools.core.utilities.compiler.DartCompilerUtilities.resolveUnit(DartCompilerUtilities.java:706)
    at com.google.dart.tools.ui.internal.text.editor.DartEditor.getAST(DartEditor.java:2010)
    at com.google.dart.tools.ui.internal.text.editor.DartTextHover.getHoverInfo(DartTextHover.java:46)
    at org.eclipse.jface.text.TextViewerHoverManager$4.run(TextViewerHoverManager.java:168)

import('dart:html');

// Content section used alot

main() {

  var content = document.query('content');

  if (!window.FileReader) {

    content.innerHTML = "<p>This browser doesnt support the File API</p>";

  } else {

  // Page Layout

  content.innerHTML =

    '<p>Pick a text file or drag one into this area <br> <input type="file" id="file" /></p>' +

    '<p><b>Name:</b> <span id="name"></span><br>' +

    '<b>File Size:</b> <span id="size"></span><br>' +

    '<b>Content:</b> <br><br> <pre id="file-content"></pre>' +

    '</p>';

  }

}

// Prints out file properties.

displayFile(file) {

  document.query('name').textContent = file.fileName;

  document.query('size').textContent = file.fileSize;

  document.

    document.getElementById('name').textContent = file.fileName;

    document.getElementById('size').textContent = file.fileSize;

    document.getElementById('file-content').style.border = "1px solid black";

    var reader = new FileReader();

    reader.onload = function(event) {

      document.getElementById('file-content').textContent =

        event.target.result;

    };

    reader.onerror = function() {

      document.getElementById('file-content').innerHTML = 'Unable to read ' + file.fileName;

    };

    reader.readAsText(file);

  }

  // Input handler

  document.getElementById('file').onchange = function() {

    displayFile(this.files[0]);

  };

  // Add invisible border to drop area

  content.style.border = '4px solid transparent';

  // Add dragging events

  content.ondragenter = function() {

    content.style.border = '4px solid #b1ecb3';

    return false;

  };

  content.ondragover = function() {

    return false;

  };

  content.ondragleave = function() {

    return false;

  };

  content.ondrop = function(event) {

    content.style.border = '4px solid transparent';

    displayFile(event.dataTransfer.files[0]);

    return false;

  };

}

@stevemessick
Copy link
Contributor Author

Set owner to mmendez@google.com.

@DartBot
Copy link

DartBot commented Dec 14, 2011

This comment was originally written by mmendez@google.com


Issue #840 has been merged into this issue.

@DartBot
Copy link

DartBot commented Dec 14, 2011

This comment was originally written by mmendez@google.com


I think that this and issue #840 are related.


Set owner to @jtmcdole.

@jtmcdole
Copy link
Contributor

Cannot repro with the code given:

dartc tmp.dart
tmp.dart/tmp.dart:87: Unexpected token 'STRING' (expected 'IDENTIFIER')
    86:
    87: document.getElementById('file').onchange = function() {
tmp.dart/tmp.dart:87: Unexpected token '.' (expected '{')
    86:
    87: document.getElementById('file').onchange = function() {
Compilation failed with 2 problems.

@jtmcdole
Copy link
Contributor

Requires dumping code into the editor to try and repro. Looking at now.

@jtmcdole
Copy link
Contributor

@jtmcdole
Copy link
Contributor

Added Fixed label.

copybara-service bot pushed a commit that referenced this issue Jan 3, 2023
…rtdoc, ffi, fixnum, glob, http, http_parser, intl, json_rpc_2, lints, logging, matcher, path, protobuf, sse, string_scanner, test, typed_data, usage, webdev

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

args (https://github.com/dart-lang/args/compare/da037ac..ac0e2c8):
  ac0e2c8  2023-01-03  dependabot[bot]  Bump actions/checkout from 3.1.0 to 3.2.0 (#229)

async (https://github.com/dart-lang/async/compare/c59c7c5..de1ce93):
  de1ce93  2023-01-03  dependabot[bot]  Bump actions/checkout from 3.1.0 to 3.2.0 (#227)

characters (https://github.com/dart-lang/characters/compare/4ffccb8..fff80aa):
  fff80aa  2023-01-03  dependabot[bot]  Bump actions/checkout from 3.1.0 to 3.2.0 (#69)

cli_util (https://github.com/dart-lang/cli_util/compare/edcf1c3..5a8e8ee):
  5a8e8ee  2023-01-01  dependabot[bot]  Bump actions/checkout from 3.1.0 to 3.2.0 (#72)

collection (https://github.com/dart-lang/collection/compare/cdb11d4..85e987c):
  85e987c  2023-01-03  dependabot[bot]  Bump actions/checkout from 3.1.0 to 3.2.0 (#262)

convert (https://github.com/dart-lang/convert/compare/4feeb10..20d136c):
  20d136c  2023-01-03  dependabot[bot]  Bump actions/checkout from 3.1.0 to 3.2.0 (#73)

dartdoc (https://github.com/dart-lang/dartdoc/compare/1f42216..ce25524):
  ce255246  2023-01-02  dependabot[bot]  Bump actions/cache from 3.2.1 to 3.2.2 (#3287)
  e4948e64  2022-12-28  Sam Rawlins  Refactor search into a stateful class (#3285)
  83a26b87  2022-12-28  Parker Lougheed  Simplify search.html base-href handling (#3259)
  a622a89a  2022-12-27  dependabot[bot]  Bump actions/cache from 3.0.11 to 3.2.1 (#3281)
  f0c7a56a  2022-12-27  dependabot[bot]  Bump ossf/scorecard-action from 2.1.1 to 2.1.2 (#3282)
  702a9d13  2022-12-19  dependabot[bot]  Bump github/codeql-action from 2.1.36 to 2.1.37 (#3276)
  2bbac76b  2022-12-19  dependabot[bot]  Bump actions/checkout from 3.1.0 to 3.2.0 (#3277)
  195dc3da  2022-12-19  dependabot[bot]  Bump ossf/scorecard-action from 2.0.6 to 2.1.1 (#3280)
  4a5ed7e6  2022-12-19  Sam Rawlins  Remove usage of now-removed-in-3.0 elements (#3279)

ffi (https://github.com/dart-lang/ffi/compare/17a8142..2a56c2a):
  2a56c2a  2023-01-02  dependabot[bot]  Bump actions/checkout from 3.1.0 to 3.2.0 (#172)

fixnum (https://github.com/dart-lang/fixnum/compare/e4f5e97..714381c):
  714381c  2023-01-03  dependabot[bot]  Bump actions/checkout from 3.1.0 to 3.2.0 (#102)

glob (https://github.com/dart-lang/glob/compare/7f97bf5..7adf833):
  7adf833  2023-01-03  dependabot[bot]  Bump actions/checkout from 3.1.0 to 3.2.0 (#67)

http (https://github.com/dart-lang/http/compare/46a7708..38d5dd9):
  38d5dd9  2022-12-29  Brian Quinlan  Add usage instructions for runWithClient and Flutter (#846)
  3fba812  2022-12-29  Nate Bosch  Drop avoid_redundant_argument_values (#845)
  88f6fc6  2022-12-14  Brian Quinlan  Always using `package:http` for APIs and image loading. (#839)

http_parser (https://github.com/dart-lang/http_parser/compare/c739675..16a4f34):
  16a4f34  2023-01-03  dependabot[bot]  Bump actions/checkout from 3.1.0 to 3.2.0 (#65)

intl (https://github.com/dart-lang/intl/compare/6fb07f2..59e7bff):
  59e7bff  2022-12-20  Copybara-Service  Merge pull request #263 from sanekyy:update-ruble-sign
  50f93df  2022-12-19  Copybara-Service  Merge pull request #467 from samlythemanly:patch-1
  548ef63  2022-12-19  Aleksandr Yurkovskiy  fix duplicate_import
  5dc6e8f  2022-12-16  Aleksandr Yurkovskiy  Merge remote-tracking branch 'upstream/master' into update-ruble-sign
  60e8cfa  2022-12-09  Moritz  Merge branch 'master' into patch-1
  758d086  2022-04-28  Sam Markoe  Updated PEN to use the proper currency code.
  83e149f  2021-03-10  Aleksandr Yurkovskiy  Merge branch 'master' into update-ruble-sign
  edbbbce  2020-11-16  Aleksandr Yurkovskiy  fix format
  f25b0a6  2020-11-16  Aleksandr Yurkovskiy  add empty line
  a02de91  2020-11-16  Aleksandr Yurkovskiy  fix merge issues
  8a1716f  2020-11-16  Aleksandr Yurkovskiy  Merge branch 'master' into update-ruble-sign
  d3c56e0  2020-10-05  Aleksandr Yurkovskiy  update changelog
  ed3b5f0  2020-10-05  Aleksandr Yurkovskiy  fix test
  d4ad715  2020-09-22  Aleksandr Yurkovskiy  Merge branch 'master' into update-ruble-sign
  077e653  2020-02-27  Aleksandr Yurkovskiy  update version
  b119da3  2020-02-27  Aleksandr Yurkovskiy  update ruble sign

json_rpc_2 (https://github.com/dart-lang/json_rpc_2/compare/16fed53..bd9f8d9):
  bd9f8d9  2023-01-03  dependabot[bot]  Bump actions/checkout from 3.1.0 to 3.2.0 (#87)

lints (https://github.com/dart-lang/lints/compare/16bdefe..dfded5e):
  dfded5e  2023-01-01  dependabot[bot]  Bump actions/checkout from 3.1.0 to 3.2.0 (#96)

logging (https://github.com/dart-lang/logging/compare/0373ef8..b525d5c):
  b525d5c  2023-01-03  dependabot[bot]  Bump actions/checkout from 3.1.0 to 3.2.0 (#125)

matcher (https://github.com/dart-lang/matcher/compare/7e6a665..deedda1):
  deedda1  2023-01-03  dependabot[bot]  Bump actions/checkout from 3.1.0 to 3.2.0 (#202)

path (https://github.com/dart-lang/path/compare/12ce876..1299791):
  1299791  2023-01-03  dependabot[bot]  Bump actions/checkout from 3.1.0 to 3.2.0 (#132)

protobuf (https://github.com/dart-lang/protobuf/compare/2706b53..1d1c92a):
  1d1c92a  2023-01-02  Kevin Moore  Latest github actions (#789)

sse (https://github.com/dart-lang/sse/compare/cfa93b1..2de27fe):
  2de27fe  2022-12-28  dependabot[bot]  Bump nanasess/setup-chromedriver from 1.0.5 to 1.1.0 (#65)

string_scanner (https://github.com/dart-lang/string_scanner/compare/4a5cbc5..6ddab2c):
  6ddab2c  2022-12-28  Kevin Moore  Remove unnecessary parens (#51)
  3e451ab  2022-12-28  dependabot[bot]  Bump actions/checkout from 3.1.0 to 3.2.0 (#50)

test (https://github.com/dart-lang/test/compare/89a8b12..8235a25):
  8235a25b  2022-12-29  Nate Bosch  Add String.equalsIgnoringWhitespace condition (#1835)
  6df19d2e  2022-12-29  Nate Bosch  Add String.containsInOrder condition (#1836)
  b7f4cb54  2022-12-29  Nate Bosch  Collapse core checks to fewer extensions (#1831)
  101df768  2022-12-29  Nate Bosch  Add Function.returnsNormally condition (#1833)
  f0dfdbfc  2022-12-28  Nate Bosch  Tighten types of Extracted constructors (#1829)
  d1211748  2022-12-27  Nate Bosch  Add String.equalsIgnoringCase (#1828)
  c14260b5  2022-12-22  Nate Bosch  Add String.equals condition (#1826)
  1785348f  2022-12-21  Nate Bosch  Add more numeric matchers (#1823)
  66d89348  2022-12-21  Nate Bosch  Allow slower node test on windows (#1825)
  695894ee  2022-12-21  Nate Bosch  Drop dependency overrides from pkg:checks (#1824)
  9be6023c  2022-12-20  Nate Bosch  Add Iterable.every extension (#1822)
  ca412bbf  2022-12-20  Nate Bosch  Add some tests with full failure messages (#1820)
  6650bbb3  2022-12-20  Nate Bosch  Add pairwiseCompare condition (#1821)
  d20eb34d  2022-12-20  Nate Bosch  Add FailureDetail to allow expressive failures (#1818)
  611faeac  2022-12-20  Nate Bosch  Make the prefixFirst utility public (#1819)
  a0562585  2022-12-19  Jacob MacDonald  change the url secrets for browser tests to be alphanumeric characters (#1817)

typed_data (https://github.com/dart-lang/typed_data/compare/1e838b8..dbf81a7):
  dbf81a7  2023-01-03  dependabot[bot]  Bump actions/checkout from 3.1.0 to 3.2.0 (#57)

usage (https://github.com/dart-lang/usage/compare/fee1d9d..2773c7d):
  2773c7d  2023-01-03  dependabot[bot]  Bump actions/checkout from 3.1.0 to 3.2.0 (#186)

webdev (https://github.com/dart-lang/webdev/compare/317288a..8795ca5):
  8795ca5  2022-12-22  Elliott Brooks (she/her)  Tests should serve`main.dart` and `index.html` from the same directory (#1856)
  b127883  2022-12-22  Elliott Brooks (she/her)  Add test timeout of 2 minutes for all tests missing a timeout (#1854)
  c884705  2022-12-22  Elliott Brooks (she/her)  Skip flaky events_test on Windows (#1853)
  5aa3195  2022-12-22  Elliott Brooks (she/her)  Add tests for interacting with the extension panels added to Chrome Devtools (#1836)
  82ac652  2022-12-21  Elliott Brooks (she/her)  Shard DWDS tests and fix CI test flakiness (#1851)
  8e926c0  2022-12-20  Elliott Brooks (she/her)  Fix flaky CI tests (#1848)
  80f8671  2022-12-20  Elliott Brooks (she/her)  File paths in `TestContext` are relative, not absolute (#1843)
  6dedcd5  2022-12-20  Elliott Brooks (she/her)  Move the `scopes` package (used in testing) to the test `fixtures` directory (#1837)
  db5ed71  2022-12-16  Elliott Brooks (she/her)  Fix `package_uri_file_mapper_test` on Linux (#1835)
  243fe42  2022-12-14  Anna Gringauze  Enable weak tests for build daemon and frontend server (#1824)

Change-Id: I0ef4ec924d14d88e4831c7bcb025ff19db288479
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/278083
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 Jun 9, 2023
Revisions updated by `dart tools/rev_sdk_deps.dart`.

protobuf (https://github.com/dart-lang/protobuf/compare/da6953c..edf8e92):
  edf8e92  2023-06-09  Ömer Sinan Ağacan  Fix parsing negative JSON values for uint32 fields (#839)
  2931b2e  2023-06-09  Ömer Sinan Ağacan  Add PR links to recent CHANGELOG entries (#838)

test (https://github.com/dart-lang/test/compare/7a6c98d..e7ae613):
  e7ae6139  2023-06-08  Nate Bosch  Remove redundant type checks (#2031)

webdev (https://github.com/dart-lang/webdev/compare/3d7f546..a6d761d):
  a6d761d8  2023-06-08  Elliott Brooks  Remove tabs permission (#2136)
  b02b344e  2023-06-08  Elliott Brooks  Catch `WipError` on calls to resume and map to appropriate RPC error code (#2134)

Change-Id: I58b111a433cef76a501c959f33db4e5463a34c60
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/308380
Auto-Submit: Devon Carew <devoncarew@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: 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