Alexander Udalov
fdfd808d80
Remove KForeignMemberProperty and KClassOrigin, use KMemberPropertyImpl instead
2015-03-11 16:42:36 +03:00
Alexander Udalov
ff0044f66a
Use descriptors for reflection on extension properties
2015-03-11 16:42:34 +03:00
Alexander Udalov
1a618deeab
Use descriptors for reflection on top level properties
...
This also allows to obtain a Field object from the package part (see
mapping.kt)
2015-03-11 16:42:33 +03:00
Alexander Udalov
64fdb18ad3
Use descriptors for reflection on class properties
...
- use ConcurrentHashMap as a cache of class loaders to module descriptors
- KClassImpl now has a lazy class descriptor and it manages property creation
by looking (also lazily) for the property descriptor in the corresponding
scope
- since deserialized descriptors have full information about where a JVM symbol
is located and what signature it has, new tests will begin to pass where
Kotlin model and Java reflection model differ, see classObjectVar.kt
2015-03-11 16:42:31 +03:00
Alexander Udalov
a8046020fb
Rename kotlin.reflect.IllegalAccessException -> IllegalPropertyAccessException
...
The former name clashes with java.lang.IllegalAccessException and proved to be
inconvenient because it should always be qualified in the source.
Also use java.lang exception's message as kotlin.reflect exception's message
2015-03-07 02:32:15 +03:00
Pavel V. Talanov
59f192ef90
Replace 'class object' with 'default object' in renderers and test data
...
Includes changes to decompiled text
Old syntax is used in builtins and project code for now
2015-03-06 19:36:54 +03:00
Evgeny Gerashchenko
14b16ff87c
KT-6916 Slow bytecode for downTo iteration like for (i in max downTo min)
...
#KT-6916 fixed
2015-03-06 13:43:02 +03:00
Dmitry Jemerov
c029fa2ed0
add test for generating annotations on the setter of a delegated property; (KT-4169); properly generate backing field for delegated property with a setter
2015-03-05 19:04:18 +03:00
Dmitry Jemerov
48b0afd84d
correctly generate safe casts from Unit type
...
#KT-4494 fixed
2015-03-05 11:59:23 +01:00
Dmitry Jemerov
2835459920
correctly generate 'in' expressions with IntRange on RHS and a type other than Int on LHS
2015-03-05 11:33:24 +01:00
Dmitry Jemerov
1188be9070
generate correct bytecode for constructors using infix call syntax
...
#KT-4589 Fixed
2015-03-05 11:26:27 +01:00
Nikolay Krasko
30a50746b5
Intrinsic default objects implementation: tests
2015-03-05 01:30:38 +03:00
Dmitry Jemerov
e60aafb18a
regression test for KT-3421
2015-03-04 17:43:38 +01:00
Dmitry Jemerov
46e0fdc067
regression test for KT-3442
2015-03-04 17:41:27 +01:00
Dmitry Jemerov
7522eb4032
regression test for KT-3903
2015-03-04 17:32:40 +01:00
Dmitry Jemerov
18e54322b8
regression test for KT-4281
2015-03-04 17:27:55 +01:00
Dmitry Jemerov
a2e22c6d20
regression test for KT-3107
2015-03-04 17:24:58 +01:00
Pavel V. Talanov
ffabe19229
Prohibit accessing nested classes/objects of class object using class literal
...
The fqname of class should be clear from code
Example: can't shorten A.Default.B.Default.C to A.B.C
Also fixes problem when nested class of enum class could be accessed via enum entry
2015-03-03 13:04:29 +03:00
Pavel V. Talanov
cceb5738c8
Can't omit default object name in imports and types
...
There should be only one way to denote a type (A.Default.B can't be denoted as A.B)
2015-03-03 13:04:28 +03:00
Alexander Udalov
2c0830b017
Change synthetic accessor method names to "access$..."
...
As per discussion in https://youtrack.jetbrains.com/issue/KT-6870
2015-02-27 20:30:51 +03:00
Yan Zhulanow
fa62d3bcec
Move Android compiler plugin tests to android-compiler-plugin module
2015-02-26 15:25:48 +03:00
Mikhail Mutcianko
bf25dffb85
add android bytecode persistence test
2015-02-26 15:25:37 +03:00
Mikhail Mutcianko
08245ffe1c
add android properties box tests
2015-02-26 15:25:31 +03:00
dedoz
f2ab424c41
add generated tests
2015-02-26 15:25:31 +03:00
Alexander Udalov
6f0ccbfab8
Reuse class loader for kotlin-runtime.jar in codegen tests
...
Also delete questionable ClassPathInParentClassLoaderTest
2015-02-25 20:13:47 +03:00
Pavel V. Talanov
96e54b4872
Test accessing class object from java
2015-02-16 15:38:45 +03:00
Pavel V. Talanov
7b837e2631
Updata test data: txt files for diagnostics tests
2015-02-16 15:38:36 +03:00
Pavel V. Talanov
a1f4c06a49
Update test data that mentioned old JvmAbi constants
2015-02-16 15:38:34 +03:00
Pavel V. Talanov
894c3bceac
Test: add jvm backend test for named class object
2015-02-16 15:38:29 +03:00
Alexander Udalov
9b28e19551
Use CodegenContext to determine outer class & enclosing method
2015-02-11 18:10:49 +03:00
Alexander Udalov
c417d984c4
Minor, move tests under common directory
2015-02-11 18:10:46 +03:00
Alexander Udalov
32c371dd41
Minor, uncomment previously failing checks
...
#KT-5092 Fixed
2015-02-11 18:10:44 +03:00
Alexander Udalov
e7a744b315
Make JetTypeMapper aware of SAM constructor arguments
...
This obsoletes 'replaceName' workaround that was present in ClosureCodegen but
missing in other crucial call sites of mapSignature, e.g. generation of
EnclosingMethod info
#KT-6691 Fixed
2015-02-11 18:10:41 +03:00
Alexander Udalov
a280599969
Fix wrong checkcast for === on objects
...
#KT-6747 Fixed
2015-02-11 18:10:35 +03:00
Alexander Udalov
5c2d0c6173
Generate not-null assertions on extension receiver parameters
2015-02-03 21:40:39 +03:00
Dmitry Jemerov
6442b61db8
Don't generate redundant initializers for 'var' properties.
...
Since only 'val' properties store initializers as compile time constants in descriptors, we need to take the initializer expression from the PSI and try to evaluate it as a constant.
#KT-6661 fixed
2015-01-30 14:05:25 +01:00
Alexander Udalov
ae6ffeb88a
Skip inlined lambdas when determining EnclosingMethod
...
#KT-6368 Fixed
2015-01-20 21:02:57 +03:00
Alexander Udalov
baea660a0b
Rewrite hack in codegen for lambdas in anonymous object super calls
...
Synthetic ClassDescriptor created in codegen for lambdas and such should have
correct container, because it'll be used in generation of InnerClasses
2015-01-16 21:48:57 +03:00
Denis Zharkov
6f94ebb9d6
Refined redundant null check optimization
2015-01-15 15:13:05 +03:00
Denis Zharkov
5675d2b26b
Dead code elimination
...
#KT-6602 Fixed
#KT-6305 Fixed
#KT-5656 Fixed
2015-01-15 15:13:05 +03:00
Alexander Udalov
76d11330ee
Fix === comparison for primitive types
...
#KT-6590 Fixed
2015-01-13 17:40:21 +03:00
Alexander Udalov
f3b2193afd
Delete traces of "jet" in test data and unimportant code
2015-01-13 15:02:16 +03:00
Alexander Udalov
2b8c358614
Minor, drop irrelevant package from test data comment
2015-01-11 05:09:03 +03:00
Alexander Udalov
7f90dc3934
Regenerate tests
2015-01-03 00:20:28 +03:00
Alexander Udalov
6cd6704bcf
Remove obsolete codegen test data
2014-12-29 19:32:09 +03:00
Alexander Udalov
11dfdfc123
Minor, add test for obsolete issue
...
#KT-4228 Obsolete
2014-12-26 22:52:39 +03:00
Michael Nedzelsky
eded72d633
fix KT-6192: VerifyError when using spreads with primitive arrays
...
#KT-6192 Fixed
2014-12-25 22:07:24 +03:00
Michael Bogdanov
9e864f3c36
Fix java visibility publicity
...
#KT-6478 Fixed
2014-12-23 16:28:44 +03:00
Andrey Breslav
6728a384e4
KT-4881 Annotation resolved to package should be compile-time error
...
#KT-4881 Fixed
2014-12-23 15:18:47 +03:00
Denis Zharkov
04e560bc74
Get reified signature from JetTypeMapper
...
#KT-6485 Fixed
2014-12-18 21:12:52 +03:00