Skip to content
New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # 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.
# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants