Commit Graph

213 Commits

Author SHA1 Message Date
scheglov@google.com 2ae9b5fcaf Issue 1251. Check for getter existence.
http://code.google.com/p/dart/issues/detail?id=1251

R=zundel@google.com
BUG=
TEST=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3693 260f80e4-7a28-3924-810f-c04153c831b5
2012-01-30 17:36:42 +00:00
zundel@google.com 8d897192ae Call operator shared test and parser updates for operator call in dartc.
http://code.google.com/p/dart/issues/detail?id=1355

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3671 260f80e4-7a28-3924-810f-c04153c831b5
2012-01-27 22:32:00 +00:00
zundel@google.com afeaa7ed81 DartToSourceVisitor was omitting type annotations on list/map literals
Review URL: https://chromiumcodereview.appspot.com//9295019

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3664 260f80e4-7a28-3924-810f-c04153c831b5
2012-01-27 19:57:28 +00:00
scheglov@google.com 3964729a31 Issue 801. Use actual super constructor with all named or synthetic.
http://code.google.com/p/dart/issues/detail?id=801

R=zundel@google.com
BUG=
TEST=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3661 260f80e4-7a28-3924-810f-c04153c831b5
2012-01-27 17:12:43 +00:00
scheglov@google.com 49e1adff6f Issue 962. Fix for crash in nested function parameters list code generation.
http://code.google.com/p/dart/issues/detail?id=962

R=zundel@google.com
BUG=
TEST=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3655 260f80e4-7a28-3924-810f-c04153c831b5
2012-01-27 14:58:22 +00:00
scheglov@google.com 99cc34e500 Issue 1287. Allow to invoke function literal.
http://code.google.com/p/dart/issues/detail?id=1287

R=zundel@google.com
BUG=
TEST=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3626 260f80e4-7a28-3924-810f-c04153c831b5
2012-01-26 20:22:08 +00:00
zundel@google.com 226ed91138 Added runtime type checking to the elements of list and map literals in dartc
http://code.google.com/p/dart/issues/detail?id=220
http://code.google.com/p/dart/issues/detail?id=221

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3619 260f80e4-7a28-3924-810f-c04153c831b5
2012-01-26 17:33:04 +00:00
scheglov@google.com 6f85c329e7 Issue 1330. Return actual Type from DartNewExpression.
http://code.google.com/p/dart/issues/detail?id=1330

R=zundel@google.com
BUG=
TEST=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3609 260f80e4-7a28-3924-810f-c04153c831b5
2012-01-25 21:43:57 +00:00
zundel@google.com 7169189529 Update map literal syntax to expect only one type parameter
As of the spec v0.6, the correct syntax is now:
  <V>{"key" : value };
Whereas you used to also specify the key. Added a deprecation warning
for the old syntax.

http://code.google.com/p/dart/issues/detail?id=1151

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3606 260f80e4-7a28-3924-810f-c04153c831b5
2012-01-25 20:21:24 +00:00
zundel@google.com 1431b3238e Provide better debugging if a null type is encountered.
Patches up at least one case where the 'this' keyword could return null if used in a static context.

http://code.google.com/p/dart/issues/detail?id=761

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3564 260f80e4-7a28-3924-810f-c04153c831b5
2012-01-24 20:12:07 +00:00
scheglov@google.com f7182176bf Issue 1229. Report error for using unary plus operator.
http://code.google.com/p/dart/issues/detail?id=1229

R=zundel@google.com
BUG=
TEST=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3560 260f80e4-7a28-3924-810f-c04153c831b5
2012-01-24 19:05:55 +00:00
mmendez@google.com 64085a0adf Remove RTT.derivedTypes and all generated initializations thereof.
This code is not currently used by the RTT system and was actually incomplete.  If we need it for mirrors at some future point, then we can add it back.

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3516 260f80e4-7a28-3924-810f-c04153c831b5
2012-01-23 22:00:12 +00:00
scheglov@google.com c0a3f43ce6 Issue 932. Checks for various named arguments cases.
http://code.google.com/p/dart/issues/detail?id=932

1. Clean up List<? extends Type>;

2. Generate compile time warnings/errors.

3. Generate run time errors.

4. Fix corresponding tests according to spec.

R=zundel@google.com
BUG=
TEST=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3511 260f80e4-7a28-3924-810f-c04153c831b5
2012-01-23 20:01:31 +00:00
zundel@google.com 4e9e3f014f More setting of symbols on identifiers
Konstantin was right in http://codereview.chromium.org/9150044/
I should have included a unit test.  This change includes a
hand written unit test for identifiers being set properly on class/interface
definition variants, and fixes to the ResolverAuditVisitor (it was not
catching many problems in just those cases).

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3459 260f80e4-7a28-3924-810f-c04153c831b5
2012-01-20 18:19:49 +00:00
codefu@google.com 40edd9ce12 Issue 1233: Parser does not handle position stack correctly in string interpolation
https://code.google.com/p/dart/issues/detail?id=1233
Missing done()
R=messick@google.com
BUG=1233
TEST=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3456 260f80e4-7a28-3924-810f-c04153c831b5
2012-01-20 14:55:45 +00:00
zundel@google.com c9e4011585 Record the elements on identifiers in the AST referring to types.
When dartc resolved a type, in the past it did not set the elements for the type
on the AST ( you had to go through the type).  This is a bit tedious in the IDE,
so we are going to try to fill in more of the symbols in the AST.

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3449 260f80e4-7a28-3924-810f-c04153c831b5
2012-01-19 21:50:14 +00:00
zundel@google.com bbdbb3791e Protect vs. NPE in TypeAnalyzer.checkInitializedDeclaration()
Stack trace came from user feedback on Dart Editor. See:
http://code.google.com/p/dart/issues/detail?id=759

I wish I could reproduce the original problem, but this guard would be sure to fix it.

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3447 260f80e4-7a28-3924-810f-c04153c831b5
2012-01-19 20:54:58 +00:00
codefu@google.com d7b7edd2e0 Issue 1177: Non-existant documentation directory throws
https://code.google.com/p/dart/issues/detail?id=1177
-Just call mkdirs() before creating PrintStream() in DartDocumentationVisitor

R=zundel
BUG=1177
TEST=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3446 260f80e4-7a28-3924-810f-c04153c831b5
2012-01-19 20:11:36 +00:00
zundel@google.com 2f96a3d8b1 Remove support for >>> and >>>= operators in dartc
http://code.google.com/p/dart/issues/detail?id=1166

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3439 260f80e4-7a28-3924-810f-c04153c831b5
2012-01-19 18:06:22 +00:00
codefu@google.com fd3c2e8ab3 Issue 986: Static type warning when overriding static super members
http://code.google.com/p/dart/issues/detail?id=986

Truth table:
Super    | static  | instance
Local    |         |
---------+---------+---------
static   | warning | error
instance | warning | warning

Ancillary adition: Warnings are now colored differently from errors to help
distinguish between the two.

R=zundel
BUG=
TEST=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3435 260f80e4-7a28-3924-810f-c04153c831b5
2012-01-19 15:38:29 +00:00
zundel@google.com 6b677ae576 Allow classes shadowed by type variables to be referenced in static context
We still print a shadowing warning, but if there is a valid reference outside
the variable is now resolved to it.  Otherwise, we print the existing message
about not being able to reference type variables in a static context.

See bug: http://code.google.com/p/dart/issues/detail?id=643

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3434 260f80e4-7a28-3924-810f-c04153c831b5
2012-01-19 15:12:26 +00:00
mmendez@google.com 2adbd94f14 Revert the revert of http://code.google.com/p/dart/source/detail?r=3360.
Kasper found and fixed the underlying native class code generation bug as part of http://code.google.com/p/dart/source/detail?r=3390.

TBR=kasperl,floitsch

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3412 260f80e4-7a28-3924-810f-c04153c831b5
2012-01-18 20:07:49 +00:00
scheglov@google.com 6ad2499dbd Issue 933: Fix for resolving type of Function in field.
http://code.google.com/p/dart/issues/detail?id=933

R=zundel@google.com
BUG=
TEST=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3410 260f80e4-7a28-3924-810f-c04153c831b5
2012-01-18 19:35:52 +00:00
kasperl@google.com ac0e22f2bc Fix dartc in optimized mode (broken in r3358).
Add checks that ensure that keys used for array access are integers.

Fix bug in the optimization strategy that ended up generating the wrong
code for "native" classes.

R=floitsch@google.com,mmendez@google.com
BUG=
TEST=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3390 260f80e4-7a28-3924-810f-c04153c831b5
2012-01-18 12:44:47 +00:00
mmendez@google.com 6dfce3cc04 Revert "Remove TypeToken as means for assigning type arguments to arrays."
This reverts commit r3356.  Apparently closure will optimize new Array(x) to Array(void 0).

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3360 260f80e4-7a28-3924-810f-c04153c831b5
2012-01-17 15:34:53 +00:00
mmendez@google.com 513d5b44d5 Remove TypeToken as means for assigning type arguments to arrays.
For native, classes with a bodyless constructor, pass the constructor arguments to the native constructor in the generated factory method.  The generated factory method will handle setting the runtime type information if necessary.

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3356 260f80e4-7a28-3924-810f-c04153c831b5
2012-01-17 14:55:26 +00:00
codefu@google.com 353443aa53 Issue 1171: Failing to regenerate deleted output js file.
https://code.google.com/p/dart/issues/detail?id=1171

Basically: if no files have changed, check for out of dateness on the build
file to decide on continuing or not.

R=scheglov
BUG=
TEST=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3308 260f80e4-7a28-3924-810f-c04153c831b5
2012-01-13 20:46:49 +00:00
codefu@google.com d3e882dc53 Issue 1164: Out of date system libraries + restarted compiler
http://code.google.com/p/dart/issues/detail?id=1164

When the compiler fails to complete compilation, and the system libraries are
not bundled, it will fail to recompile the missing elements.  This was only a
problem in the DartEditor and running DartC from an eclipse environment.

Please note that there still exists a condition if you are running DartC
from eclipse and have system libraries, without precompiled artifacts, in a
jar file.  I will file a separate bug for that.

R=mmendez,brianwilkerson@google.com,danrubel
BUG=
TEST=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3301 260f80e4-7a28-3924-810f-c04153c831b5
2012-01-13 18:40:09 +00:00
scheglov@google.com c5e02bcc0d Issue 1140: Tweak relative path for shadowing problems.
http://code.google.com/p/dart/issues/detail?id=1140

This is only tweak for using dart:// protocol where appropriate.
Specify or not location of shadowed element is debatable question.

R=codefu@google.com
BUG=
TEST=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3241 260f80e4-7a28-3924-810f-c04153c831b5
2012-01-12 16:14:34 +00:00
codefu@google.com a5438ac96e Issue 985: Default class without constructor does not cause a compile-time error
http://code.google.com/p/dart/issues/detail?id=985

R=mmendez,zundel
BUG=
TEST=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3239 260f80e4-7a28-3924-810f-c04153c831b5
2012-01-12 16:06:38 +00:00
scheglov@google.com 146e8ebb82 Issue 965: Report error for static local function
http://code.google.com/p/dart/issues/detail?id=965

R=zundel@google.com
BUG=
TEST=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3198 260f80e4-7a28-3924-810f-c04153c831b5
2012-01-11 18:34:54 +00:00
codefu@google.com 159f4dccf8 Issue 1091: Static type warning for setters with non-void return types
http://code.google.com/p/dart/issues/detail?id=1091
Spec 0.06 section 7.3 Setters

R=zundel
BUG=
TEST=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3196 260f80e4-7a28-3924-810f-c04153c831b5
2012-01-11 17:51:52 +00:00
zundel@google.com 568329fe06 Disallow assignment to a top level method in dartc
http://code.google.com/p/dart/issues/detail?id=966

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3154 260f80e4-7a28-3924-810f-c04153c831b5
2012-01-10 16:39:21 +00:00
codefu@google.com d3703d84e7 Issue 1099: Compile time error for RHS this access in initializer
http://code.google.com/p/dart/issues/detail?id=1099
R=zundel
BUG=1099
TEST=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3153 260f80e4-7a28-3924-810f-c04153c831b5
2012-01-10 16:31:48 +00:00
codefu@google.com addcaec400 Issue 1105: Duplicate initialization should have a compile error
http://code.google.com/p/dart/issues/detail?id=1105
7.5.1
It is a compile-time error if more than one initializer corresponding to a
given instance variable appears in k’s initializer list. It is a
compile-time error if k’s initializer list contains an initializer for a
variable that is initialized by means of an initializing formal of k.
R=zundel,mmendez
BUG=1105
TEST=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3152 260f80e4-7a28-3924-810f-c04153c831b5
2012-01-10 16:27:28 +00:00
scheglov@google.com 9eb76b67ca Include dom.dart library into ignoring shadow warnings
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3146 260f80e4-7a28-3924-810f-c04153c831b5
2012-01-10 15:20:03 +00:00
scheglov@google.com 4c274d4106 Fixes for parsing warnigs, issue 1060.
1. Diet parsing notification fix.

2. Disable name shadow warnings for htmlimpl.dart library, until library itself will be fixed.

3. Fix for identifying core libraries in Editor.

R=zundel@google.com
BUG=
TEST=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3113 260f80e4-7a28-3924-810f-c04153c831b5
2012-01-09 20:33:12 +00:00
codefu@google.com 74015409f2 Issue 988: Compile time error missing for const class / non-final instance variables
http://code.google.com/p/dart/issues/detail?id=988
7.5.3: It is a compile-time error if a constant constructor is declared by a class that has a non-final instance variable.
       The above refers to both locally declared and inherited instance variables.
R=mmendez,zundel
BUG=
TEST=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3108 260f80e4-7a28-3924-810f-c04153c831b5
2012-01-09 17:58:08 +00:00
zundel@google.com 69b567e798 in dartc, generics in Typedef not working as expected, when extending generic type
http://code.google.com/p/dart/issues/detail?id=436

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3103 260f80e4-7a28-3924-810f-c04153c831b5
2012-01-09 17:06:37 +00:00
scheglov@google.com 01abdc883f Blacklist types from core library, issue 969
http://code.google.com/p/dart/issues/detail?id=969

R=zundel@google.com
BUG=
TEST=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3102 260f80e4-7a28-3924-810f-c04153c831b5
2012-01-09 16:36:04 +00:00
mmendez@google.com 34b6799f7c Fix http://code.google.com/p/dart/issues/detail?id=990.
Need to check that the implicit super call resolves.  Updated the unit tests until the c019 tests are refreshed.

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3098 260f80e4-7a28-3924-810f-c04153c831b5
2012-01-09 15:35:16 +00:00
brianwilkerson@google.com 8fcfbe459a Fix so that listeners will get notified. Sorry I missed this when reviewing the change.
Review URL: http://codereview.chromium.org//9124018

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3073 260f80e4-7a28-3924-810f-c04153c831b5
2012-01-07 15:54:00 +00:00
codefu@google.com 2726b1e229 Issue 1061: Duplicate members causes NPE in type analyzer
http://code.google.com/p/dart/issues/detail?id=1061
Replace Map<Element> with MultiMap<Element> (LinkedHashMap).
R=zundel,messick
BUG=1061
TEST=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3047 260f80e4-7a28-3924-810f-c04153c831b5
2012-01-06 18:32:20 +00:00
scheglov@google.com bf920d8dfd Add unitAboutToCompile() into DartCompilerListener
R=brianwilkerson@google.com,codefu@google.com
BUG=
TEST=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3045 260f80e4-7a28-3924-810f-c04153c831b5
2012-01-06 16:34:20 +00:00
devoncarew@google.com e7469aa059 Fix for an NPE for cases where the native keyword on a class is not followed by a string identifier.
Review URL: http://codereview.chromium.org//9109019

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3011 260f80e4-7a28-3924-810f-c04153c831b5
2012-01-05 21:08:30 +00:00
scheglov@google.com 4bcedc935b Convert "library unit" File path into "absolute unit path", issue 590.
http://code.google.com/p/dart/issues/detail?id=590

Actually URI is not expectedto be absolute path to the unit, this is just ID.
And Compiler provides it in form pathToTheLibraryUnit/unitName.dart
So, I've tweaked converting URI into File.

R=brianwilkerson@google.com
BUG=
TEST=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3002 260f80e4-7a28-3924-810f-c04153c831b5
2012-01-05 16:05:32 +00:00
scheglov@google.com 0c8e0d803d Report error for interface method with body
http://code.google.com/p/dart/issues/detail?id=971

R=zundel@google.com
BUG=
TEST=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3000 260f80e4-7a28-3924-810f-c04153c831b5
2012-01-05 15:48:06 +00:00
codefu@google.com 7360b44dac Issue 1043: Missing --documentation-out should default to "out" instead of asserting
http://code.google.com/p/dart/issues/detail?id=1043

R=zundel
BUG=
TEST=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2965 260f80e4-7a28-3924-810f-c04153c831b5
2012-01-04 20:16:55 +00:00
codefu@google.com dbb10e2cc8 Issue 1039: Nested comments
http://code.google.com/p/dart/issues/detail?id=1039

Language Specification 0.06, 14.1.2 specifices that multiline comments can
nest:
  MULTI LINE COMMENT:
    ‘/*’ (MULTI LINE COMMENT |  ̃ ‘*/’)* ‘*/’
  ;

R=zundel
BUG=1039
TEST=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2964 260f80e4-7a28-3924-810f-c04153c831b5
2012-01-04 19:59:21 +00:00
zundel@google.com eb007b203c Fix dartc bounds checking for invoking interface constructors/factory methods
http://code.google.com/p/dart/issues/detail?id=943

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2957 260f80e4-7a28-3924-810f-c04153c831b5
2012-01-04 18:24:50 +00:00