Commit Graph

104 Commits

Author SHA1 Message Date
mmendez@google.com f739bfb992 This is not meant to be a general purpose indexer, but it is meant to be sufficient for conservative tree shaking of dartc generated JS code and the native code of the various libraries.
Review URL: http://codereview.chromium.org//8486015

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@1656 260f80e4-7a28-3924-810f-c04153c831b5
2011-11-18 14:03:33 +00:00
zundel@google.com 5c0361579f Compile Time Constants cycle check
http://code.google.com/p/dart/issues/detail?id=120

This adds a check to compile time constants to make sure there
are no cycles.  This turned out to be a bit more difficult than
I had hoped, due to interaction with incremenatal compile, when
only a diet parse tree was available for modules that did not
need a full compile. To fix this, I added a lite resolution step
(CompileTimeConstantResolver) to be performed on all units.

Review URL: http://codereview.chromium.org//8523034

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@1625 260f80e4-7a28-3924-810f-c04153c831b5
2011-11-17 20:52:48 +00:00
shauvik@google.com 5491527d87 Added support for dumping AST to console, text file or dot file
Review URL: http://codereview.chromium.org//8566019

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@1587 260f80e4-7a28-3924-810f-c04153c831b5
2011-11-16 22:33:55 +00:00
codefu@google.com efcbffc225 Handle NPE case for 'dart:typo'
http://code.google.com/p/dart/issues/detail?id=203

R=jwren@google.com
BUG=
TEST=

Review URL: http://codereview.chromium.org//8572026

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@1553 260f80e4-7a28-3924-810f-c04153c831b5
2011-11-15 22:36:03 +00:00
scheglov@google.com f53a4aa109 Report errors for default parameter values, issue 351
http://code.google.com/p/dart/issues/detail?id=351

R=zundel@google.com
BUG=
TEST=

Review URL: http://codereview.chromium.org//8564027

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@1536 260f80e4-7a28-3924-810f-c04153c831b5
2011-11-15 16:58:28 +00:00
mmendez@google.com 8274140bb5 Sort the file members.
TBR=codefu

Review URL: http://codereview.chromium.org//8566008

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@1512 260f80e4-7a28-3924-810f-c04153c831b5
2011-11-14 16:27:53 +00:00
scheglov@google.com 7cea876fef Better redirecting constructor and initializers problems reporting.
Preparation for work on http://code.google.com/p/dart/issues/detail?id=351

R=zundel@google.com
BUG=
TEST=

Review URL: http://codereview.chromium.org//8527005

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@1511 260f80e4-7a28-3924-810f-c04153c831b5
2011-11-14 16:18:08 +00:00
scheglov@google.com 88d9638bcb Convert top level factory into method
http://code.google.com/p/dart/issues/detail?id=345

R=zundel@google.com
BUG=
TEST=

Review URL: http://codereview.chromium.org//8506019

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@1364 260f80e4-7a28-3924-810f-c04153c831b5
2011-11-09 18:11:04 +00:00
fabiomfv@google.com f95d52d827 https://code.google.com/p/dart/issues/detail?id=255
Review URL: http://codereview.chromium.org//8479041

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@1317 260f80e4-7a28-3924-810f-c04153c831b5
2011-11-08 15:56:45 +00:00
scheglov@google.com 59a8c89aab Provide enclosing element (method) for local function object
http://code.google.com/p/dart/issues/detail?id=145

1. I've made MethodElement an EnclosingElement to be able to return it from Element.getenclosingElement().

2. I've changed GenerateJavascriptAST.GenerateJavascriptVisitor to use directly method only if it is enclosed with Class, not just any element.

R=zundel@google.com
BUG=
TEST=

Review URL: http://codereview.chromium.org//8479037

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@1268 260f80e4-7a28-3924-810f-c04153c831b5
2011-11-07 20:58:40 +00:00
scheglov@google.com 5b2586fd1c Fix for cyclic declaration
http://code.google.com/p/dart/issues/detail?id=348

R=zundel@google.com
BUG=
TEST=

Review URL: http://codereview.chromium.org//8467017

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@1264 260f80e4-7a28-3924-810f-c04153c831b5
2011-11-07 16:43:45 +00:00
scheglov@google.com 7d8db52436 Support for --machine-problems, tests for PrettyErrorFormatter
R=zundel@google.com
BUG=
TEST=

Review URL: http://codereview.chromium.org//8476005

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@1261 260f80e4-7a28-3924-810f-c04153c831b5
2011-11-07 15:06:56 +00:00
danrubel@google.com 1660d0e135 Ensure ClassElementImplementation removed from ThreadLocal set to prevent memory leak
Review URL: http://codereview.chromium.org//8477025

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@1259 260f80e4-7a28-3924-810f-c04153c831b5
2011-11-07 15:03:12 +00:00
scheglov@google.com d9ecbeff5b Support for --machine-problems, tests for PrettyErrorFormatter
R=zundel@google.com
BUG=
TEST=

Review URL: http://codereview.chromium.org//8476005

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@1258 260f80e4-7a28-3924-810f-c04153c831b5
2011-11-07 14:59:56 +00:00
fabiomfv@google.com d3f3a9d193 https://code.google.com/p/dart/issues/detail?id=182
Dart Spec, section "Type Void" (excerpt):
"On the other hand, it is possible to return the result of a void method from within a void method. One can also return null; or a value of type Dynamic. Returning any other result will cause a type warning (or a dynamic type error in checked mode)." (only reference to the subject - non-normative) 
Review URL: http://codereview.chromium.org//8438042

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@1200 260f80e4-7a28-3924-810f-c04153c831b5
2011-11-04 15:00:44 +00:00
scheglov@google.com 220ac6b940 Tweak shouldWarnOnNoSuchType() usage.
R=zundel@google.com
BUG=
TEST=

Review URL: http://codereview.chromium.org//8451002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@1158 260f80e4-7a28-3924-810f-c04153c831b5
2011-11-03 18:13:07 +00:00
benl@google.com 57a533314e Review URL: http://codereview.chromium.org//8403040
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@1139 260f80e4-7a28-3924-810f-c04153c831b5
2011-11-03 10:14:19 +00:00
codefu@google.com 01d80fb5c4 Add negative test for invalid prefixes.
Update dartc's parser to validate identifier in string literal.
Add new error code.
http://code.google.com/p/dart/issues/detail?id=266

R=mmendez
BUG=
TEST=

Review URL: http://codereview.chromium.org//8441001

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@1099 260f80e4-7a28-3924-810f-c04153c831b5
2011-11-02 16:54:27 +00:00
scheglov@google.com a2dfac76d7 Make some ErrorCode-s compile-time errors and some just type warnings
R=zundel@google.com
BUG=
TEST=

Review URL: http://codereview.chromium.org//8384012

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@1089 260f80e4-7a28-3924-810f-c04153c831b5
2011-11-02 13:55:53 +00:00
codefu@google.com b32b5ceb7f Constructor parameters should have this.<field> reference elements set.
R=brianwilkerson@google.com,mmendez
BUG=
TEST=

Review URL: http://codereview.chromium.org//8431008

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@1043 260f80e4-7a28-3924-810f-c04153c831b5
2011-11-01 21:55:16 +00:00
fabiomfv@google.com ec78d3fce6 https://code.google.com/p/dart/issues/detail?id=223
Review URL: http://codereview.chromium.org//8384018

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@1036 260f80e4-7a28-3924-810f-c04153c831b5
2011-11-01 18:42:54 +00:00
codefu@google.com 41a2b62dec Fix prefix variable parse errors
R=floitsch@google.com,mmendez
BUG=
TEST=

Review URL: http://codereview.chromium.org//8428006

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@1010 260f80e4-7a28-3924-810f-c04153c831b5
2011-11-01 13:58:28 +00:00
jat@google.com 502c606b81 Add additional runtime type checks.
Review URL: http://codereview.chromium.org//8393015

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@975 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-31 22:09:42 +00:00
scheglov@google.com d011f459ac New ErrorCode implementations.
R=zundel@google.com
BUG=
TEST=

Review URL: http://codereview.chromium.org//8395013

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@841 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-27 17:22:32 +00:00
mmendez@google.com 959e3573d7 Fixes issue http://code.google.com/p/dart/issues/detail?id=235.
Mismatched type arguments result in an error not a type warning.

BUG=
TEST=

Review URL: http://codereview.chromium.org//8392047

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@821 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-27 13:33:45 +00:00
fabiomfv@google.com 7816675ba0 https://code.google.com/p/dart/issues/detail?id=225
moved CL. LGTM from http://codereview.chromium.org/8390059/
Review URL: http://codereview.chromium.org//8401008

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@815 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-27 12:29:33 +00:00
codefu@google.com 4d71168414 Don't throw assertion when dart:lib cannot be found.
Missing LibrarySource gets reported as such.

R=jwren@google.com
BUG=
TEST=

Review URL: http://codereview.chromium.org//8404004

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@784 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-26 21:13:51 +00:00
mmendez@google.com 2fdc3101c2 Report an error if a constructor initializer calls a setter method.
BUG=http://code.google.com/p/dart/issues/detail?id=92

Review URL: http://codereview.chromium.org//8394018

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@760 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-26 17:18:56 +00:00
benl@google.com a64fbe01a8 Rename various Proxy classes. Provide a Proxy interface.
Review URL: http://codereview.chromium.org//8383034

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@684 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-25 11:09:54 +00:00
johnlenz@google.com 8ca0cf3d58 Tweaks to overriden method checks to match the spec.
Review URL: http://codereview.chromium.org//8351013

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@668 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-24 23:45:52 +00:00
scheglov@google.com c177cf4d8c Can not find Element in Dynamic element.
R=zundel@google.com
BUG=
TEST=

Review URL: http://codereview.chromium.org//8382003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@650 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-24 20:26:52 +00:00
scheglov@google.com a56eaa2507 Expect '{' during class parsing, report error if not.
R=zundel@google.com
BUG=
TEST=

Review URL: http://codereview.chromium.org//8381018

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@649 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-24 20:13:52 +00:00
codefu@google.com ad2d02ab52 Always use / with URI
R=jbrosenberg

Review URL: http://codereview.chromium.org//8322016

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@586 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-20 17:29:21 +00:00
jbrosenberg@google.com bd9e090862 Fix libraryDepsVisitor to properly track prefixed library references
Review URL: http://codereview.chromium.org//8359002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@585 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-20 17:15:03 +00:00
danrubel@google.com e24169a7d7 Recommitting http://codereview.chromium.org/8310016/
Review URL: http://codereview.chromium.org//8342051

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@571 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-19 20:58:03 +00:00
zundel@google.com 85a0fa161b Migrate --expose_core_impl flag from DartRunner to DartCompiler.
R=ngeoffray
BUG=527517

Review URL: http://codereview.chromium.org//8333016

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@553 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-19 14:36:07 +00:00
johnlenz@google.com 226701b6ab Insure that isolate specific methods are generated after "inherits". Fixes isolates in Internet Explorer.
Review URL: http://codereview.chromium.org//8346018

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@542 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-18 23:31:47 +00:00
johnlenz@google.com efa0f8eb42 Improve location information for some warnings/errors.
Fixes issue 82
Review URL: http://codereview.chromium.org//8348015

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@533 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-18 21:13:24 +00:00
mmendez@google.com c7b078560a Adds static type checking to the foreach loop.
Notice that the specification only states that the object being iterated over needs to implement Iterator<T> iterator() so this patch adheres to that.

BUG=http://code.google.com/p/dart/issues/detail?id=78 -

Review URL: http://codereview.chromium.org//8322014

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@521 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-18 18:36:34 +00:00
johnlenz@google.com c3cb970918 Fixed alignment of named parameters in the presents of captured scopes
Review URL: http://codereview.chromium.org//8347002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@517 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-18 18:00:04 +00:00
ngeoffray@google.com 70c01beb9b Clean up (most) uses of Array. Still more to come in the VM corelib code base.
Review URL: http://codereview.chromium.org//8321024

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@507 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-18 10:02:59 +00:00
johnlenz@google.com eadf5e05a2 Add a command-line option for generating source maps.
Review URL: http://codereview.chromium.org//8287001

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@486 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-17 20:58:35 +00:00
johnlenz@google.com 69a08abbbd Namespace named parameters to avoid conflicts
Review URL: http://codereview.chromium.org//8301002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@480 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-17 19:31:09 +00:00
johnlenz@google.com 857683a0f1 Addresses issue 10.
Review URL: http://codereview.chromium.org//8304012

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@471 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-17 16:14:53 +00:00
jbrosenberg@google.com eee6552316 Disambiguate non-incremental mode from optimized mode in dartc
Review URL: http://codereview.chromium.org//8289008

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@469 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-17 15:30:03 +00:00
zundel@google.com 20a34d063b This adds checks for compile-time constants in places
where the spec demands it:

  - initializing toplevel finals
  - initializing static final class members
  - initializing named parameters to functions

Review URL: http://codereview.chromium.org//8231031

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@468 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-17 14:12:33 +00:00
johnlenz@google.com b39ac783af Improve error message for over qualified constructor names.
Review URL: http://codereview.chromium.org//8295003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@451 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-14 19:19:08 +00:00
johnlenz@google.com 8ae66721f8 Update assert to follow the spec.
Review URL: http://codereview.chromium.org//8276014

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@446 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-14 17:38:03 +00:00
codefu@google.com 58060dbd96 Ground work for addition to new listener api
Review URL: http://codereview.chromium.org//8285004

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@438 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-14 13:31:33 +00:00
benl@google.com c0a59669cf Do away with the PromiseQueue.
Instead of queuing messages with promises in them until the promises
are ready, send immediately. This is done by sending a port down which
the receiver sends a port which can be used to signal completion of
the outgoing promise.
Review URL: https://chromereviews.googleplex.com/3573013

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@427 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-14 11:18:12 +00:00