Commit Graph

5559 Commits

Author SHA1 Message Date
karlklose@google.com b8e93b6c5a Convert static error to warning for calls to nonexisting toplevel methods, getters and setters.
This also fixes an issue with calling nonexisting static getters/setters when an abstract field was defined.

R=ngeoffray@google.com

Review URL: https://chromiumcodereview.appspot.com//10908236

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@12361 260f80e4-7a28-3924-810f-c04153c831b5
2012-09-14 05:29:22 +00:00
scheglov@google.com ea65bbb961 Issue 3553. Stop treating static final variables as constants
http://code.google.com/p/dart/issues/detail?id=3553
http://code.google.com/p/dart/issues/detail?id=3476

R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org//10907215

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@12336 260f80e4-7a28-3924-810f-c04153c831b5
2012-09-13 15:49:07 +00:00
brianwilkerson@google.com cd57835f8f Add built-in identifiers 'library', 'import', 'export' and 'part' (issue 5120)
Review URL: https://codereview.chromium.org//10919266

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@12335 260f80e4-7a28-3924-810f-c04153c831b5
2012-09-13 15:27:51 +00:00
iposva@google.com 8ff541e0b9 - Fix status file.
Review URL: https://codereview.chromium.org//10918217

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@12334 260f80e4-7a28-3924-810f-c04153c831b5
2012-09-13 15:17:01 +00:00
iposva@google.com fd7cb10f82 Missing test fixes from previous commit:
- Smi, Mint, Bigint and Double are not available any longer.

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@12331 260f80e4-7a28-3924-810f-c04153c831b5
2012-09-13 14:22:32 +00:00
kasperl@google.com 55733ca3bf Add missing :.
R=antonm@google.com
BUG=

Review URL: https://codereview.chromium.org//10905261

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@12327 260f80e4-7a28-3924-810f-c04153c831b5
2012-09-13 13:36:17 +00:00
kasperl@google.com cf10562f07 Fix status file for dart2dart.
R=antonm@google.com
BUG=http://dartbug.com/5141

Review URL: https://codereview.chromium.org//10918214

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@12326 260f80e4-7a28-3924-810f-c04153c831b5
2012-09-13 13:30:25 +00:00
kasperl@google.com f015adb586 Update test expectations for dart2dart.
TBR'ed.

R=hausner@google.com
BUG=

Review URL: https://codereview.chromium.org//10914260

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@12323 260f80e4-7a28-3924-810f-c04153c831b5
2012-09-13 12:56:21 +00:00
srdjan@google.com f15805004a Optimize code for bound checks if array is constant. Skip unnecessary Smi checks if they still survived to code emission.
Review URL: https://codereview.chromium.org//10911277

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@12322 260f80e4-7a28-3924-810f-c04153c831b5
2012-09-13 12:49:50 +00:00
kasperl@google.com d1da3ed908 Re-land r12289.
Looks like Johnni has fixed the dartdoc issues.

R=iposva@google.com,hausner@google.com
BUG=

Review URL: https://codereview.chromium.org//10919263

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@12321 260f80e4-7a28-3924-810f-c04153c831b5
2012-09-13 12:37:00 +00:00
aprelev@gmail.com 9ecad0703b issue 4817 fixed. Implemented raw strings with 'r' instead of '@' for dart2js
BUG=dart:4817

Review URL: https://chromiumcodereview.appspot.com//10920066

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@12292 260f80e4-7a28-3924-810f-c04153c831b5
2012-09-13 01:43:23 +00:00
hausner@google.com 08893af550 Revert change 12289
Will resubmit tomorrow. Dartc and Editor need to cleanup static finals.
Review URL: https://codereview.chromium.org//10928169

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@12291 260f80e4-7a28-3924-810f-c04153c831b5
2012-09-13 00:22:12 +00:00
hausner@google.com b740a3266f Stop treating finals as const
Toplevel final variables and static final fields are no longer
considered compile-time constants.
Review URL: https://codereview.chromium.org//10918203

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@12289 260f80e4-7a28-3924-810f-c04153c831b5
2012-09-13 00:03:16 +00:00
brianwilkerson@google.com 578208a363 Clean up many tests marked as skipped or flaky (issue 5064)
Review URL: https://chromiumcodereview.appspot.com//10928150

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@12272 260f80e4-7a28-3924-810f-c04153c831b5
2012-09-12 17:30:09 +00:00
ngeoffray@google.com 7e081e5e1e Fix for issue 4921: ad the generic type info to a List when we create it.
Review URL: https://chromiumcodereview.appspot.com//10905234

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@12260 260f80e4-7a28-3924-810f-c04153c831b5
2012-09-12 12:44:53 +00:00
ngeoffray@google.com b2b57490f9 Runtime support for the new parameter specification.
Review URL: https://chromiumcodereview.appspot.com//10911211

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@12258 260f80e4-7a28-3924-810f-c04153c831b5
2012-09-12 12:01:17 +00:00
kasperl@google.com e89a2ddea4 Update test expectations for dartc and dart2dart.
R=ngeoffray@google.com
BUG=

Review URL: https://chromiumcodereview.appspot.com//10933036

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@12237 260f80e4-7a28-3924-810f-c04153c831b5
2012-09-12 07:16:02 +00:00
kasperl@google.com 6acb4e8c72 Stop treating final as const in dart2js.
R=iposva@google.com,ngeoffray@google.com
BUG=

Review URL: https://chromiumcodereview.appspot.com//10918188

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@12235 260f80e4-7a28-3924-810f-c04153c831b5
2012-09-12 07:02:14 +00:00
kasperl@google.com 55140fd125 Remove support for operator negate and replace occurrences with unary
operator -.

In the VM, I have disabled the operator negate support in the parser but I
have not removed the keyword because the token is used in quite a few other
places.

R=ahe@google.com,iposva@google.com,hausner@google.com
BUG=

Review URL: https://chromiumcodereview.appspot.com//10911206

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@12233 260f80e4-7a28-3924-810f-c04153c831b5
2012-09-12 05:29:03 +00:00
hausner@google.com ab30a5c4bb One day I'll understand status files.
Review URL: https://chromiumcodereview.appspot.com//10917201

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@12230 260f80e4-7a28-3924-810f-c04153c831b5
2012-09-12 00:29:54 +00:00
hausner@google.com 7c6d3cde75 Update status for raw string test in dartium
Review URL: https://chromiumcodereview.appspot.com//10911232

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@12228 260f80e4-7a28-3924-810f-c04153c831b5
2012-09-11 23:25:38 +00:00
hausner@google.com d12165f5ca Fix dart2js status for raw string test
Review URL: https://chromiumcodereview.appspot.com//10928131

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@12227 260f80e4-7a28-3924-810f-c04153c831b5
2012-09-11 23:21:16 +00:00
hausner@google.com 8f5eea3291 Support r"xxx" raw strings
Review URL: https://chromiumcodereview.appspot.com//10914213

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@12225 260f80e4-7a28-3924-810f-c04153c831b5
2012-09-11 22:53:45 +00:00
hausner@google.com 3c3c9f1d25 Fix dartium/drt status
Review URL: https://chromiumcodereview.appspot.com//10907184

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@12221 260f80e4-7a28-3924-810f-c04153c831b5
2012-09-11 20:44:47 +00:00
hausner@google.com 4b382c2b5c Fix dartc status
Review URL: https://chromiumcodereview.appspot.com//10916242

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@12218 260f80e4-7a28-3924-810f-c04153c831b5
2012-09-11 20:20:49 +00:00
hausner@google.com a32a698c6f Support new library/import syntax
This change simply adds new syntax support for the functionality we
currently have in the VM.

- Support for library and import, import-as.
- Still to do: show/hide combinators, export, library parts.
Review URL: https://chromiumcodereview.appspot.com//10928121

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@12216 260f80e4-7a28-3924-810f-c04153c831b5
2012-09-11 20:10:56 +00:00
regis@google.com ab967e15c0 Fix issue with optional named parameters.
Update tests.
Review URL: https://chromiumcodereview.appspot.com//10911217

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@12214 260f80e4-7a28-3924-810f-c04153c831b5
2012-09-11 18:44:16 +00:00
ngeoffray@google.com ea9ddcd617 Fix bug in dart2js spotted by the change:
interface Iterable -> class Iterable
interface Collection extends Iterable -> class Collection extends Iterable

We were not emitting the is checks for superclasses of classes that a class implements.
Review URL: https://chromiumcodereview.appspot.com//10915204

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@12210 260f80e4-7a28-3924-810f-c04153c831b5
2012-09-11 16:40:44 +00:00
srdjan@google.com 3051c69910 Improve moves of Smi and null objects. Add result cid to List constructor calls. Add tracing of inline cache misses in optimized code (a big no-no).
Review URL: https://chromiumcodereview.appspot.com//10933019

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@12208 260f80e4-7a28-3924-810f-c04153c831b5
2012-09-11 15:41:34 +00:00
lrn@google.com 51bc6c6479 Change switch to give warnings when cases don't follow the newest syntax.
The current implementation still falls back on if-else-if dispatch if
the case expressions are not compile-time constants. It also falls back
if the expressions fail to follow the specification for any other reason.

The specification requires that case expressions:
- Are compile-time constants.
- All have the same type and are instances of the same class.
- Do not override Object.operator==.
For the last one, I've made exceptions for int/double/String.

Function constants are rejected due to overriding operator==.
I'm not sure they do yet, but they will eventually.

Map and List are accepted. All constant Map/List instances are
expected to be instances of the same class. If we later decide to make
them override operator==, we'll have to reject them too. If we decide
to have a special class for some List/Map constants, we'll let it
override runtimeType to hide it.

Type equality is only checked as far as the constants know their type.
Type parameters are not included in the test since I don't think they
are recorded in the compile-time constant (I could be wrong).

The new switch semantics are still on "hold", so this change retains
the old version too (which accepted any expression). When we want to
remove that, it's a matter of making the warnings into errors and
remove the fallback (the current content of visitSwitchStatement after
the call to tryBuildConstantSwitch).

The validation of switch cases should really happen during resolution
if possible. I'll try to figure out how to move it there in a later
CL.

Review URL: https://chromiumcodereview.appspot.com//10916002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@12189 260f80e4-7a28-3924-810f-c04153c831b5
2012-09-11 12:26:41 +00:00
ngeoffray@google.com 0982c13abe Fix status for dart2dart
Review URL: https://chromiumcodereview.appspot.com//10933020

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@12188 260f80e4-7a28-3924-810f-c04153c831b5
2012-09-11 12:24:11 +00:00
ngeoffray@google.com d50ea302af Support check mode for statics.
Review URL: https://chromiumcodereview.appspot.com//10908143

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@12187 260f80e4-7a28-3924-810f-c04153c831b5
2012-09-11 12:02:48 +00:00
lrn@google.com f52c24b62f Rename NoSuchMethodException to NoSuchMethodError.
Moved NoSuchMethodError to errors.dart.
No changes in co19 tests, but test status updated.

Review URL: https://chromiumcodereview.appspot.com//10909166

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@12172 260f80e4-7a28-3924-810f-c04153c831b5
2012-09-11 09:52:25 +00:00
ahe@google.com 7567a89a6f Update status file for dart2dart.
Review URL: https://chromiumcodereview.appspot.com//10914182

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@12146 260f80e4-7a28-3924-810f-c04153c831b5
2012-09-10 19:14:14 +00:00
ahe@google.com 2e9f67c3ca Parse methods named 'get' or 'set'.
Review URL: https://chromiumcodereview.appspot.com//10913153

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@12143 260f80e4-7a28-3924-810f-c04153c831b5
2012-09-10 18:42:41 +00:00
ahe@google.com 50286e535e Improve handling of built-in identifiers.
Review URL: https://chromiumcodereview.appspot.com//10917170

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@12132 260f80e4-7a28-3924-810f-c04153c831b5
2012-09-10 17:08:19 +00:00
ahe@google.com 644cc196a9 Update dart2dart status file after supporting named parameter syntax.
Review URL: https://chromiumcodereview.appspot.com//10919192

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@12115 260f80e4-7a28-3924-810f-c04153c831b5
2012-09-10 14:25:17 +00:00
ahe@google.com 3bd4e97cb8 Parse and resolve new syntax for named parameters.
Review URL: https://chromiumcodereview.appspot.com//10907129

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@12114 260f80e4-7a28-3924-810f-c04153c831b5
2012-09-10 14:06:56 +00:00
aprelev@gmail.com 6cd6d6f6c5 Fix 5024 - diagnostic on unresolved catch types, added test case
BUG=5024
TEST=

Review URL: https://chromiumcodereview.appspot.com//10915163

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@12095 260f80e4-7a28-3924-810f-c04153c831b5
2012-09-09 17:19:51 +00:00
ahe@google.com c8b9d12a5a Update dart2js test status
Review URL: https://chromiumcodereview.appspot.com//10911167

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@12086 260f80e4-7a28-3924-810f-c04153c831b5
2012-09-08 08:37:33 +00:00
hausner@google.com 910b34e331 Hopefully fix Dartium test for language/metadata_test
Review URL: https://chromiumcodereview.appspot.com//10915156

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@12083 260f80e4-7a28-3924-810f-c04153c831b5
2012-09-08 00:41:02 +00:00
hausner@google.com 03a60da652 Fix metadata test in checked mode.
Review URL: https://chromiumcodereview.appspot.com//10912163

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@12080 260f80e4-7a28-3924-810f-c04153c831b5
2012-09-07 23:20:21 +00:00
hausner@google.com 22fdbae05b VM can parse and ignore metadata
Support parsing of metadata in all legal locations except library
and import directives. The metadata is simply ignored. It is not
evaluated or validated for correctness.
 
Review URL: https://chromiumcodereview.appspot.com//10913138

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@12078 260f80e4-7a28-3924-810f-c04153c831b5
2012-09-07 23:06:48 +00:00
scheglov@google.com 03ccc4df50 Issue 4988. Fixe for 'assert' statement vs function resolving
http://code.google.com/p/dart/issues/detail?id=4988

R=brianwilkerson@google.com
BUG=

Review URL: https://chromiumcodereview.appspot.com//10910142

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@12071 260f80e4-7a28-3924-810f-c04153c831b5
2012-09-07 22:09:49 +00:00
antonm@google.com 123a2620f7 Do not rename assert syntax.
TBR=lrn@google.com,smok@google.com

Review URL: https://chromiumcodereview.appspot.com//10914150

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@12048 260f80e4-7a28-3924-810f-c04153c831b5
2012-09-07 17:11:14 +00:00
ahe@google.com c8ca545f23 Update status file for dart2dart.
Review URL: https://chromiumcodereview.appspot.com//10908147

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@12047 260f80e4-7a28-3924-810f-c04153c831b5
2012-09-07 17:01:24 +00:00
ahe@google.com 6aa2dcff6f Update status files on your behalf.
Review URL: https://chromiumcodereview.appspot.com//10907114

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@12041 260f80e4-7a28-3924-810f-c04153c831b5
2012-09-07 15:15:24 +00:00
ngeoffray@google.com 13dd7022b5 num implements Comparable and Hashable.
Review URL: https://chromiumcodereview.appspot.com//10916172

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@12037 260f80e4-7a28-3924-810f-c04153c831b5
2012-09-07 14:20:36 +00:00
ngeoffray@google.com b288dd5239 Fix typo.
Review URL: https://chromiumcodereview.appspot.com//10909117

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@12027 260f80e4-7a28-3924-810f-c04153c831b5
2012-09-07 12:54:03 +00:00
lrn@google.com be2453bae1 Removed/moved "assert" function to core_patch.dart as "_assert".
Changed resolution of assert to only accepting assert in a statement position.
Added more assert tests.

Review URL: https://chromiumcodereview.appspot.com//10915083

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@12026 260f80e4-7a28-3924-810f-c04153c831b5
2012-09-07 12:45:02 +00:00