Commit Graph

1890 Commits

Author SHA1 Message Date
Igor Chevdar 8afa12684e Implemented StringBuilder.deleteCharAt 2017-03-22 22:25:24 +03:00
Igor Chevdar fc9638dbd4 Added ranges from Kotlin 1.1 2017-03-22 22:24:40 +03:00
Svyatoslav Scherbina 8ec4cb48f9 Rework primitive types handling in interop stub generation
Use libclang API to get correct size and spelling.
This should improve support for e.g. 32-bit platforms.
2017-03-22 20:45:08 +07:00
Svyatoslav Scherbina d6ba399e1e Refactor Pointer*Type in interop stub generation
All types should have correct `equals`/`hashCode` implementation.

Also update Indexer prebuilts.
2017-03-22 20:45:08 +07:00
Alexander Gorshenev f402b3e180 Tell lto to preserve Konan_main, rather than main. 2017-03-22 17:00:11 +04:00
Alexander Gorshenev 2071414079 Split LINK_STAGE phase into OBJECT_FILES and LINKER sub-phases,
to be able to measure lcc/lto time separately from ld time.
2017-03-22 16:53:15 +04:00
Nikolay Igotti e197573e3e Raspberry Pi target (#365) 2017-03-22 15:43:19 +03:00
Konstantin Anisimov bfc4e1106a Noinline support
Bug fix
2017-03-22 19:22:59 +07:00
Konstantin Anisimov 26f4271906 Type propagation on call sites 2017-03-22 19:22:59 +07:00
Alexander Gorshenev c06eeb096a Removed -compile_as_stdlib mode, as it is not needed anymore.
Moved "compiler hacker" options to use double dash. Like "--verbose linker".
2017-03-22 16:16:50 +04:00
Alexander Gorshenev 3189d1d8bc Two aliases for konanc: kotlinc, kotlinc-native. 2017-03-22 16:15:54 +04:00
Alexander Gorshenev 1942b0eb04 Produce .tgz on './gradlew bundle'. 2017-03-22 16:15:54 +04:00
Igor Chevdar dc5edfeda3 Fixed type of callable reference to property with private setter
The actual type of callable reference is presented in IR, take it
from there.
2017-03-22 13:15:45 +03:00
Igor Chevdar e133e3379b Added COMPILER_OPTS to build script
Option -nomain is needed only for iphone target.
2017-03-22 12:43:22 +03:00
Igor Chevdar 1577938f53 Added assertion 2017-03-21 19:47:41 +03:00
Igor Chevdar a1061246c9 Added tests on lateinit properties 2017-03-21 19:47:41 +03:00
Igor Chevdar 55d3b23cfe Implemented 'lateinit' properties
If property is lateinit, then on each access we need to test its value
and throw UninitializedPropertyAccessException if it is null.
2017-03-21 19:47:41 +03:00
Igor Chevdar e170edac17 Added option to build script for tetris 2017-03-21 17:24:55 +03:00
Alexander Gorshenev 2d0aa9dcbb Introduced -nomain flag to disable generation of main(),
in assumption that it is provided by one of the libraries.
2017-03-21 18:05:03 +04:00
Svyatoslav Scherbina b5441f7470 Exclude _cvtsh_ss when interoping with SDL2
This function requires some target features to be enabled.
2017-03-21 20:33:03 +07:00
Svyatoslav Scherbina 49f1873efd Generate C interop adapters for functions defined in headers 2017-03-21 20:33:03 +07:00
Konstantin Anisimov edd8489f6b Evaluation of lambda arguments
DeepCopyIrTree with IrInlineFunctionBody support
2017-03-21 19:23:35 +07:00
Igor Chevdar 1be913de63 Review fixes 2017-03-21 14:04:30 +03:00
Igor Chevdar 02878f14c0 Fixes in build scripts & tools.
Tetris: fixes for full screen mode.
2017-03-21 14:04:30 +03:00
Igor Chevdar c8493eb2a9 Added panel to control tetris with mouse 2017-03-21 14:04:30 +03:00
Nikolay Igotti 73b1b18036 Provide entry point customization 2017-03-21 14:04:30 +03:00
Nikolay Igotti c6845cf929 Implement on-load helper (#364) 2017-03-21 11:44:34 +03:00
Nikolay Igotti a15be29519 More of stdlib (#363) 2017-03-21 09:36:11 +03:00
Igor Chevdar 3820ea0724 Fix in handling of nested vararg parameters 2017-03-20 19:18:03 +03:00
Igor Chevdar 9c180ff4e1 Implemented equals(), hashCode(), toString() for K*Property<> 2017-03-20 16:21:58 +03:00
Igor Chevdar 3d233db3b0 Removed creation of descriptors for Enum.valueOf() & values()
Those descriptors are already presented in enum's declaration and
are perfectly fine. We just need to replace their synthetic bodies
with real implementations.
2017-03-20 12:52:05 +03:00
Nikolay Igotti 80041e6559 Sequences support improved (#358) 2017-03-20 11:52:52 +03:00
Svyatoslav Scherbina c9d8d4d57d Implement CValuesRef in interop
* Represent pointer parameters of C functions as `CValuesRef`.
* Represent struct value parameters as `CValue`.
* Implement some helper methods to make the new approach more useful.
* Migrate some code to new interop approach for pointers and values.

Also do not map to `String?`:
- pointers to 8-bit integers;
- pointers to non-const chars.
2017-03-20 15:52:23 +07:00
Nikolay Igotti 7a876a3ccd Provide entry point customization (#352) 2017-03-17 17:40:24 +03:00
Svyatoslav Scherbina 47dfe122fc Handle String constructor call in code generator 2017-03-17 21:05:24 +07:00
Svyatoslav Scherbina bb1c52c23b Fix launcher for external box tests with one-letter package 2017-03-17 20:08:36 +07:00
Konstantin Anisimov 864bd9a212 Support cast type operations in inline 2017-03-17 19:29:35 +07:00
Konstantin Anisimov ba8621389e Output formatting 2017-03-17 19:29:35 +07:00
Konstantin Anisimov bf9cd488ef Turn inlining in inline functions on 2017-03-17 19:29:35 +07:00
Konstantin Anisimov 449b4cd4b1 Minor test improvement 2017-03-17 19:29:35 +07:00
Nikolay Igotti a2e8c7f638 Do not fail if locale is not supported 2017-03-16 18:02:55 +03:00
Konstantin Anisimov 384e895f70 Variable substitution leads to necessity to create new SetVariable expressions 2017-03-16 19:29:10 +07:00
Konstantin Anisimov 0ba37d9ac0 getArguments now work with original descriptor
Extension receiver is included in parameter -> argument substitution for lambda
2017-03-16 19:29:10 +07:00
Nikolay Igotti 1e5d34bc85 Provide nicer Tetris build env (#350) 2017-03-16 11:58:04 +03:00
Alexander Gorshenev a0fe8b8be8 Removed a parasitic println. 2017-03-16 01:55:57 +04:00
Alexander Gorshenev afdcca86c0 Allow ios and ios-sim targets. 2017-03-16 01:55:36 +04:00
Alexander Gorshenev a7677e2a8b Renamed interop 'target' to 'flavour'. 2017-03-16 01:55:36 +04:00
Nikolay Igotti 7279873bb4 Fix build of interop tests. 2017-03-15 19:19:16 +03:00
Igor Chevdar 6cb0f5ad41 Merge pull request #343 from JetBrains/tetris
Tetris
2017-03-15 11:54:13 -04:00
Igor Chevdar 151bb6793d Review fix 2017-03-15 18:53:06 +03:00