Commit Graph

350 Commits

Author SHA1 Message Date
Maxim Shafirov 763e41fc5e Failing test, some work for frontend 2011-06-23 12:29:31 +04:00
Maxim Shafirov c75ad51d5c Closure and boxing parameter 2011-06-22 21:35:24 +04:00
Maxim Shafirov 90038fda02 Closure and boxing return value 2011-06-22 21:26:01 +04:00
Maxim Shafirov 3619e411a7 first "OK" closure test. 2011-06-22 18:46:56 +04:00
Andrey Breslav 760b643df9 SimplesClosure test fixed. 2011-06-20 16:18:49 +04:00
Maxim Shafirov b4ded8702c failing test 2011-06-20 14:45:27 +04:00
Andrey Breslav ef601c5710 JetTypeInferrer refactored to enable transactional traces (needed for multi-trial type inference) 2011-06-18 21:54:16 +04:00
Andrey Breslav f1d00f3f59 Cosmetics + Debug info 2011-06-18 21:04:10 +04:00
Dmitry Jemerov 1816ff7c76 StackValue.Property also needs to implement dupReceiver() 2011-06-17 17:33:14 +02:00
Dmitry Jemerov b7e6de73e8 putting a compare on stack as void type is a nop, not an error 2011-06-17 17:33:13 +02:00
Dmitry Jemerov 167e5bb400 correctly generate Java superclass constructor calls; don't replace owner when Java method is called via a Jet class 2011-06-17 17:33:13 +02:00
Dmitry Jemerov 7b9ea52b7a initial support for secondary constructors; constructor generation refactored a bit 2011-06-17 17:33:13 +02:00
Dmitry Jemerov 54d2f25d75 generate checkcast instruction for 'as' calls; use accessors for accessing fields of other instances of the same class 2011-06-17 17:33:13 +02:00
Andrey Breslav 03460e2bcc Returns forbidden outside functions 2011-06-17 18:20:24 +04:00
Andrey Breslav 94f00509e2 JET-34 Require a return statement in a function with a block body
JET-77 Require a return type annotation for non-Unit returning functions with block bodies
2011-06-17 18:03:30 +04:00
Dmitry Jemerov 90c5a66362 allow namespace-qualified references; generate nested namespaces 2011-06-17 12:11:10 +02:00
Dmitry Jemerov a05b65f1a6 initial version of codegen for objects 2011-06-17 12:11:10 +02:00
Andrey Breslav 8786c6a667 Type annotations required on functions 2011-06-15 21:21:33 +04:00
Dmitry Jemerov a5fdcf9fb1 moving stuff around 2011-06-15 18:54:41 +02:00
Andrey Breslav c10c19b848 Services for completion 2011-06-15 19:20:12 +04:00
Andrey Breslav c2fbbff782 JET-50 Drop the 'new' keyword 2011-06-15 18:00:22 +04:00
Andrey Breslav d64b5b3a74 Autocasts implemented 2011-06-12 18:21:35 +04:00
Andrey Breslav 70ed1f8083 Tests fixed 2011-06-12 15:14:13 +04:00
Andrey Breslav 49b60c3af8 More cases for nullability analysis 2011-06-10 19:07:23 +04:00
Andrey Breslav 9e3453a44e Tests fixed
JET-85 Generate code for Java's fully qualified names -- is still open
2011-06-06 21:14:11 +04:00
Andrey Breslav cc54631209 JET-86: Report errors for class objects 2011-06-04 15:32:45 +04:00
Andrey Breslav 7e2e46ec71 JET-61 Support class objects
JET-83 Interpret Java static methods as class objects' members
2011-06-03 19:03:33 +04:00
Andrey Breslav f0b8ef6946 Support for local objects 2011-06-03 16:02:26 +04:00
Andrey Breslav ed16a29a5f JET-76 Support object declarations
JET-62 Support object-expressions
No tests yet
2011-06-02 20:58:12 +04:00
Andrey Breslav dc25c7bb3b Test for JET-68 + regression tests turned on 2011-06-01 15:25:11 +04:00
Dmitry Jemerov 0a1161f5c1 support qualified this 2011-05-30 21:41:15 +04:00
Dmitry Jemerov 664eeb6d54 Merge remote branch 'origin/master' 2011-05-30 21:29:00 +04:00
Dmitry Jemerov 15f55d852d first step of refactoring code to generate 'this' expressions and receivers in ExpressionCodegen; correctly generate references to outer class properties in inner superclass constructor call 2011-05-30 20:35:58 +04:00
Andrey Breslav 6319ada926 Nullablility diagnostics for extension functions 2011-05-30 20:09:04 +04:00
Dmitry Jemerov e616c38a9f pass outer instance when calling base inner class constructor in inner class 2011-05-30 19:55:44 +04:00
Dmitry Jemerov 8adaf297ef correct generation of 'this' in DImpl classes 2011-05-30 18:14:57 +04:00
Dmitry Jemerov 02565f669c Merge remote branch 'origin/master' 2011-05-30 16:29:39 +04:00
Dmitry Jemerov 4fdfcdc541 superclass stuff improvements 2011-05-30 16:26:12 +04:00
Andrey Breslav a676c960cf 'this' is resolved to the corresponding declaration in labeled function literals 2011-05-30 16:02:51 +04:00
Dmitry Jemerov d0f284fd5f fix stupid bug introduced during refactoring 2011-05-30 15:46:57 +04:00
Dmitry Jemerov d4f0486139 generate 'as' 2011-05-30 15:40:13 +04:00
Dmitry Jemerov 5c9a807c57 abstract methods 2011-05-30 15:26:34 +04:00
Dmitry Jemerov 867e2f4938 test for abstract property 2011-05-30 14:39:10 +04:00
Dmitry Jemerov 6517a82ee1 generate initializer blocks 2011-05-29 19:21:24 +04:00
Dmitry Jemerov 17f7ea9292 refactoring: extract ClassBodyCodegen out of ClassCodegen, separate subclasses for interface and implementation 2011-05-29 18:40:56 +04:00
Dmitry Jemerov 9e4567ffc3 initial, barely working implementation of inner classes 2011-05-29 18:16:58 +04:00
Dmitry Jemerov 78247520c7 correctly handle ensureReceiverOnStack() when the expression is itself a receiver; use correct type when putting/storing fields 2011-05-27 19:03:11 +04:00
Dmitry Jemerov 9969b8d7a4 put values of correct type on stack for checking if character is in range 2011-05-27 18:29:48 +04:00
Dmitry Jemerov 6dfa8ca8c6 don't forget to put receiver on stack when calling extension functions 2011-05-27 18:11:42 +04:00
Dmitry Jemerov ff6fcabd00 Merge remote branch 'origin/master' 2011-05-27 17:46:24 +04:00