Alexey Sedunov
4f54d833d3
Pseudocode: Generate instructions for callable reference expressions
2014-07-28 13:03:05 +04:00
Alexander Udalov
c24c799819
Fix NoSuchMethodError on private components of data classes
...
A follow-up to
https://github.com/JetBrains/kotlin/commit/d5681540ec47ee5c9a548ba56df8b4e20097549d
2014-07-26 01:31:11 +04:00
Alexander Udalov
99025de748
Drop "-jar" and "-output" kotlinc-jvm CLI arguments
...
In favor of a brand new "-d" option
2014-07-26 00:32:28 +04:00
Alexander Udalov
9908d797e0
Minor, fix LoadBuiltinsTest test data
2014-07-26 00:27:31 +04:00
Alexander Udalov
de0f751207
Replace object$ -> OBJECT$, instance$ -> INSTANCE$ in the project
2014-07-26 00:21:05 +04:00
Alexander Udalov
133b2918e1
Drop a hack which allowed to make Unit an object
2014-07-25 21:45:15 +04:00
Alexander Udalov
98ffdb3e32
Minor, delete Object from some test data
2014-07-25 21:19:39 +04:00
Alexander Udalov
fb958897a9
Introduce kotlin.Cloneable
...
- Cloneable is a trait with a single protected member 'clone', which is mapped
to java.lang.Cloneable on JVM
- 'clone' is non-abstract to be able to call 'super.clone()' in the
implementations. Also if you need your class to be Cloneable, most of the
time inheriting from Cloneable and calling 'super.clone()' will work
- hack 'super.clone()' in JVM intrinsics and TImpl delegation generation
- make arrays Cloneable, handle 'clone()' calls in the intrinsic
#KT-4890 Fixed
2014-07-25 21:19:39 +04:00
Alexander Udalov
f3309d1fa7
Don't ignore methods of Object in tests
...
Ignore methods of kotlin.Any instead
2014-07-25 21:19:39 +04:00
Alexander Udalov
5dc37217c8
Remove Object from supertypes in LoadJava testData
2014-07-25 21:19:38 +04:00
Alexander Udalov
a79398fa00
Don't load Object as a supertype for Java classes
...
#KT-4890 In Progress
#KT-5002 Fixed
2014-07-25 21:19:37 +04:00
Svetlana Isakova
8c13a76805
KT-5527 Double TYPE_MISMATCH diagnostic when returns object
...
#KT-5527 Fixed
2014-07-25 21:17:31 +04:00
Alexander Udalov
485f63e1cd
Rename object$ -> OBJECT$, instance$ -> INSTANCE$
...
According to Java code conventions, public static final constants should be
named with all capital letters
2014-07-25 21:15:13 +04:00
Zalim Bashorov
c767ffc3e7
Unit.VALUE -> Unit in testData
2014-07-25 17:16:40 +04:00
Zalim Bashorov
c85ec97589
Minor: revert dc68d78 (Minor: revert changes in StackValue and fix tes data. another fixes)
2014-07-25 17:16:40 +04:00
Alexander Udalov
19b80f57cf
Support "-d" option in kotlinc-jvm
...
The intent is to unify "-output" and "-jar" options into the one "-d"
(destination)
2014-07-23 21:24:40 +04:00
Alexander Udalov
de0fd3818c
Drop "-src" in kotlinc-jvm
...
Free arguments should be used instead
2014-07-23 21:24:39 +04:00
Alexander Udalov
87439b8e0b
Drop "-sourceFiles" in kotlinc-js
...
Use free arguments instead, as is done in kotlinc-jvm and all sensible
compilers everywhere
Also fix some cases of AntTaskTest to be able to run them locally
2014-07-23 21:24:38 +04:00
Alexander Udalov
125c5e2942
Drop "-printArgs"
2014-07-23 16:01:12 +04:00
Alexander Udalov
5003a2f570
Send compiler output to stderr instead of stdout
...
Test only stderr in kotlinc test now and move the '-script' test to integration
tests where both stdout and stderr is tested
2014-07-23 16:01:11 +04:00
Denis Zharkov
18cb479ef3
When2Switch: tests for non-literal expression in when by integral
2014-07-21 17:13:57 +04:00
Denis Zharkov
8d8c3d2b9e
When2Switch: generate ifnonnull check for nullable values before *switch-opcode
2014-07-21 17:13:56 +04:00
Denis Zharkov
d4cb822ee8
When by String constants:
...
Generate TABLESWITCH/LOOKUPSWITCH bytecode operation for when operator by String constants
2014-07-21 17:13:56 +04:00
Denis Zharkov
5a1c995b5c
When by enum:
...
Generate TABLESWITCH/LOOKUPSWITCH bytecode command in case of "when" by enum entries
2014-07-21 17:13:55 +04:00
Alexander Udalov
70adb0f4e2
Temporarily prohibit non-local returns for some stdlib functions
...
Make InlineUtil work with FQ names, not descriptors
#KT-5496 Fixed
#KT-5497 Fixed
2014-07-19 02:13:27 +04:00
Alexander Udalov
540b87a1dc
Support object array annotation arguments in deserialization
2014-07-19 02:13:26 +04:00
Alexander Udalov
d5681540ec
Fix NoSuchMethodError for data classes with private parameters
...
Introduced in a07909bb52
2014-07-19 02:13:26 +04:00
Alexander Udalov
65c21561a4
Fix super constructor calls of anonymous objects and local classes
...
If a class inherits from another class which captures something (outer class
instance, receiver parameter, local variables, etc.), the constructor of the
former class should contain all the parameters of the super constructor as its
own parameters, so that it could make a proper super call. All such parameters
are now replicated in the derived constructor with kind = SUPER_CALL_PARAM,
except an instance of the outer class (kind = OUTER), which can be taken from
the derived's own OUTER when it has one, to prevent multiple passing of the
same argument.
Previously it worked only when inheriting from inner classes via a special hack
(ConstructorFrameMap).
Also reuse recently introduced ArgumentGenerator to automatically take care of
default and vararg arguments of super constructor
#KT-3581 Fixed
#KT-5342 Fixed
#KT-5343 Fixed
2014-07-18 16:26:46 +04:00
Alexander Udalov
a07909bb52
Don't generate unnecessary accessors for private class properties
2014-07-17 19:18:05 +04:00
Alexander Udalov
4bdf7e3426
Use direct field access to trivial class properties
...
#KT-3845 Fixed
2014-07-17 19:18:05 +04:00
Denis Zharkov
0b2b8ba816
Fixed KT-5493: NPE fix
2014-07-17 18:43:44 +04:00
Nikolay Krasko
0b7699b844
Fix silence turning integers with leading zero into doubles
...
#KT-4296 Fixed
2014-07-16 18:35:19 +04:00
Denis Zharkov
0e683b0b99
Added "optimize" flag to settings everywhere
2014-07-15 21:34:32 +04:00
Denis Zharkov
0f5e29df9b
tests added
2014-07-15 21:26:53 +04:00
Denis Zharkov
3fa5fc7b11
Tests updated after integration with optimization subsystem
2014-07-15 21:23:50 +04:00
Zalim Bashorov
dc68d78d9d
Minor: revert changes in StackValue and fix tes data.
...
(this commit should be reverted after make Unit object)
2014-07-11 20:28:57 +04:00
Alexey Sedunov
487e7f2a91
Pseudocode: Replace {<: Any?} type predicate with *
2014-07-11 19:13:52 +04:00
Alexey Sedunov
4707f4a5e9
Pseudocode: Add debug information to magic instructions
2014-07-11 19:13:49 +04:00
Alexey Sedunov
d636d362b7
Pseudocode: Generate proper instructions for when conditions. Eliminate unnecessary magics
2014-07-11 19:13:46 +04:00
Alexey Sedunov
0a8fa404bf
Pseudocode: Generate additional returns for implicit return values (lambdas, functions with expression bodies)
2014-07-11 19:13:26 +04:00
Alexey Sedunov
1c75a5f642
Pseudocode: Generate instructions for superclass constructor calls. Consume value of delegate expression in the by-clause
2014-07-11 19:13:21 +04:00
Evgeny Gerashchenko
708816f09c
Fixed generating method calls from same module when inlining.
2014-07-11 14:54:12 +04:00
Valentin Kipyatkov
9bd742472d
Fixed KT-5339 J2K: convert Objects.equals to == and !=
...
Mock JDK regenerated to add java.util.Objects
#KT-5339 Fixed
2014-07-10 23:20:38 +04:00
Alexander Udalov
947c9fb1bf
Minor, rename "inner" -> "nested" in tests
2014-07-10 20:30:45 +04:00
Zalim Bashorov
c51b653b31
Minor: fixed tests.
2014-07-10 17:25:42 +04:00
Evgeny Gerashchenko
86d2565700
Added test for KT-4827 UOE at PackageType.throwException()
...
#KT-4827 obsolete
#EA-53605 obsolete
2014-07-10 15:05:18 +04:00
Andrey Breslav
e3b1639edf
KT-5425 Kotlin plugin crashes when project uses RxJava 17.0 or older
...
#KT-5425 Fixed
2014-07-09 16:10:41 +04:00
Michael Bogdanov
6ddeb85c00
Added checking for ONLY_LOCAL_RETURN in actual parameter of inline function
2014-07-09 09:46:28 +04:00
Svetlana Isakova
cec01237d0
Added test for labeled delegated expression
2014-07-08 14:57:40 +04:00
Svetlana Isakova
aa26db0538
Updated tests for control flow: call instruction stores call element
...
instead of callee expression
2014-07-08 14:57:38 +04:00