Igor Chevdar
ccbf4bb963
Supported KProperty2 and KMutableProperty2 ( #340 )
...
Consider this code:
object Delegate {
operator fun getValue(t: Any?, p: KProperty<*>): String {
return ""
}
}
class A {
val String.ext by Delegate
}
then the type of <p> is KProperty2 (it has 2 receivers).
2017-03-14 08:43:30 -04:00
Nikolay Igotti
29726e601f
Fix interop tool on Linux
2017-03-14 13:04:33 +03:00
Nikolay Igotti
7615931b84
Add missing exceptions, make exception classes open ( #338 )
2017-03-14 12:01:37 +03:00
Svyatoslav Scherbina
c9e2b5ac69
backend: fix handling unreachable return from inlined function
2017-03-14 13:32:46 +07:00
Svyatoslav Scherbina
37b7940544
Interop: generate fewer adapters when targeting Kotlin Native
...
Also do some refactoring.
2017-03-14 13:01:38 +07:00
Vasily Levchenko
a78f38d26c
compiler: 1.1-20170310.145051-441
2017-03-13 19:14:40 +03:00
Ilya Matveev
d3945bff3b
tests: Add fail() function to TestUtils
2017-03-13 19:03:57 +03:00
Ilya Matveev
8e91da7aad
build/tests: Import box() function package in the launcher
2017-03-13 19:03:57 +03:00
Ilya Matveev
89b2cc05bd
build/tests: Create separate output dir for each external test
2017-03-13 19:03:57 +03:00
Vasily Levchenko
366b0834ae
compiler: 1.1-20170309.105410-440
2017-03-13 19:01:09 +03:00
Igor Chevdar
1cd229d8e5
Default enum class should not have primary constructor. ( #335 )
...
* Default enum class should not have primary constructor.
* Made simple delegating constructor non-primary + some refactoring.
* Make singleton object constructor primary.
2017-03-13 11:46:11 -04:00
SvyatoslavScherbina
b803e95c0b
backend: fix kt6590_identityEquals.kt ( #333 )
...
Customize `===` for value types to achive the same behavior as with JVM BE
2017-03-13 16:45:33 +03:00
Ilya Matveev
20ffd6d90b
tests: Add test for assertion fail
2017-03-13 16:25:48 +03:00
Ilya Matveev
97b5bb527d
backend: Generate assert call depending on the compiler key
2017-03-13 16:25:48 +03:00
Ilya Matveev
30be84cd55
stdlib: Add assert() functions.
2017-03-13 16:25:48 +03:00
Ilya Matveev
a181b0301e
Update README.md and HACKING.md
2017-03-13 15:31:46 +03:00
Ilya Matveev
bc074e6d39
tests: Update external tests (1.1.2-dev-393)
2017-03-13 15:31:46 +03:00
Ilya Matveev
ac56fccb15
tests: Download test data as a teamcity artifact
2017-03-13 15:31:46 +03:00
Ilya Matveev
232d2ff14c
tests: Compile only *.kt files
2017-03-13 15:31:46 +03:00
Svyatoslav Scherbina
7751e66daa
backend: validate IR module after every phase if -verify_ir is enabled
2017-03-13 17:07:55 +07:00
Svyatoslav Scherbina
95935921ba
backend: implement simple IR validator
2017-03-13 17:07:55 +07:00
Svyatoslav Scherbina
d4fc79da43
backend: fix type operator result type in autoboxing
2017-03-13 17:07:55 +07:00
Svyatoslav Scherbina
11f2ea7e38
backend: fix IrReturn type in enum class lowering
2017-03-13 17:07:55 +07:00
Svyatoslav Scherbina
d49023e172
backend: fix null type in default arguments lowering
2017-03-13 17:07:55 +07:00
Svyatoslav Scherbina
a41f575f52
backend/tests: add interop_opengl_teapot
2017-03-13 11:00:33 +07:00
Svyatoslav Scherbina
304a9ebd8e
build/tests: support declaring tests to be manually executed
2017-03-13 11:00:33 +07:00
Svyatoslav Scherbina
725e367614
build/tests: implement passing interop linker args to compiler
2017-03-13 11:00:33 +07:00
Svyatoslav Scherbina
7ad36ac035
backend: implement '-linkerArg' to pass arguments to the linker
2017-03-13 11:00:33 +07:00
Svyatoslav Scherbina
46fde200be
Interop/Runtime: add allocArrayOf(vararg Float)
2017-03-13 11:00:33 +07:00
Svyatoslav Scherbina
498c33a4e0
Interop/StubGenerator: fix some bugs related to typedef
2017-03-13 11:00:33 +07:00
Svyatoslav Scherbina
54b8b5f3a3
Interop/StubGenerator: improve naming
2017-03-13 11:00:33 +07:00
Igor Chevdar
ed2191b4a3
Initializers lowering fix: clone init blocks. ( #321 )
...
* Initializers lowering fix: clone init blocks.
In order to let following phases to modify IR we need to clone init blocks
for each constructor before inserting it.
* Used DeepCopyIRTreeWithDescriptors.
* Shared variables lowering must be performed before local functions lowering.
Local functions lowering makes all variables non-shared, thus they must be
transformed into Ref<> before this.
* Moved all initializers into a method.
In order not to deal with copying of IR at all it is easier to create a
method 'initialize' which will be called from each constructor.
* Used right parameters for call.
* If class has primary constructor then move initializers to it.
* review fixes
2017-03-10 19:02:02 +05:00
Alexander Gorshenev
1f9d41b291
Added a TODO on -Dkonan.home use in pre-dist world.
2017-03-10 17:36:58 +04:00
Alexander Gorshenev
aea99897c4
Added -isystem to Mac interop stub build, so that it doesn't lose the clang owned headers.
2017-03-10 17:36:58 +04:00
Alexander Gorshenev
a995fbcb59
This is a simple command line tool for interop.
...
See INTEROP.md on how to use it.
2017-03-10 17:36:58 +04:00
Svyatoslav Scherbina
62e678a37a
backend/tests: add inline21
2017-03-10 18:08:47 +07:00
Svyatoslav Scherbina
404be59f62
backend/tests: add missing task for inline20
2017-03-10 18:08:47 +07:00
Svyatoslav Scherbina
24d5bd966e
backend/inline: rework getting lambda function from argument
2017-03-10 18:08:47 +07:00
Ilya Matveev
ec52aad146
tests: Update some tests
2017-03-10 11:37:00 +03:00
Svyatoslav Scherbina
9e15873d6c
backend/testUtils: add assertTrue and assertFalse
2017-03-10 15:30:18 +07:00
Svyatoslav Scherbina
bbcbd03941
stdlib: add Array<*>.contentToString()
...
Extract common implementation from ArrayList<*>.toString()
2017-03-10 15:30:18 +07:00
Svyatoslav Scherbina
5c0cb5e236
stdlib: add kotlin.io.print*(Any?)
2017-03-10 15:30:18 +07:00
Svyatoslav Scherbina
2cdff9d1e7
stdlib: add companion objects for Enum and String
2017-03-10 15:30:18 +07:00
Svyatoslav Scherbina
06ba63af06
backend/tests/external: Mute tests with java collection inheritance
2017-03-10 15:03:43 +07:00
Svyatoslav Scherbina
7f72c1c037
backend/tests/external: Mute tests depending on Math
2017-03-10 15:03:43 +07:00
Svyatoslav Scherbina
9e58f884d3
build/tests: check exit status instead of output of external tests
2017-03-10 14:34:10 +07:00
Svyatoslav Scherbina
13bbd7af81
runtime: use exitStatus == 1 if main finished with exception
...
Also update the corresponding test.
2017-03-10 14:34:10 +07:00
Svyatoslav Scherbina
051f42667c
build/tests: support KonanTest.expectedExitStatus
2017-03-10 14:34:10 +07:00
Ilya Matveev
853a40b230
tests: Mute tests with '::class'
2017-03-09 18:01:19 +03:00
Ilya Matveev
fd64de3f23
backend: Fix lowering of default arguments to local functions
...
Fix:
external_codegen_blackbox_functions_localFunctions/kt3978.kt
external_codegen_blackbox_closures/kt5589.kt
2017-03-09 18:01:19 +03:00