Commit Graph

2200 Commits

Author SHA1 Message Date
Ilya Matveev f2fd80e9e3 stdlib: Add CharSequence extensions 2017-04-21 16:23:27 +07:00
Ilya Matveev f9c6b6e6e4 stdlib: Add StringBuilder.reverse method 2017-04-21 16:23:27 +07:00
Nikolay Igotti 5517ed7296 GTK sample (#515)
* GTK sample

* Add full UTF8 recoding ability to interop
2017-04-20 23:09:36 +03:00
Alexander Gorshenev 5368eb0f2f Only sort contributed methods for vtable generation. 2017-04-20 22:46:48 +03:00
Alexander Gorshenev 7d111c4d31 Slightly refactored cross compilation infrastructure. 2017-04-20 18:37:45 +03:00
Svyatoslav Scherbina 8b148fd35c Make interop callback types more precise 2017-04-20 17:36:22 +03:00
Svyatoslav Scherbina c0b40ffedb Remove callbacks-related hacks from samples/libcurl 2017-04-20 17:36:22 +03:00
Svyatoslav Scherbina 3f84ba462f Rework interop callbacks
*   Do not rely on type inference and `CFunctionType`;
*   Represent struct-typed parameters and return values as `CValue<*>`
    (currently supported only on JVM).
2017-04-20 17:36:22 +03:00
Svyatoslav Scherbina cc73c7e009 Reduce amount of redundant empty lines in C interop stubs 2017-04-20 17:36:22 +03:00
Svyatoslav Scherbina ee70deae49 Fix broken Interop:Indexer:updatePrebuilt task 2017-04-20 17:36:22 +03:00
Vasily Levchenko a679b05456 CODEGEN: compiler calculates path of compile unit as absolute path 2017-04-19 23:42:13 +03:00
Vasily Levchenko 65efdb18cf UTIL: java.io.File like wrapper for operation with files 2017-04-19 23:42:13 +03:00
Kjell Winblad 93ef9c5e5c Fix small typo (#510) 2017-04-19 22:10:47 +03:00
Vasily Levchenko ee116b1a91 CODEGEN: conversion IR line/column numbering to dwarf one 2017-04-19 21:08:26 +03:00
Alexander Gorshenev 4cf27e44ec Turned conext.log("text") into context.log{"text"} so that the argument
evaluated lazily. This is especially useful when the text is constructed from
large IR pieces using ir2stringWhole().
2017-04-19 15:53:08 +03:00
Vasily Levchenko 3bdc7f6514 kotlin-compiler:1.1-20170418.161005-471 2017-04-19 15:29:00 +03:00
Ilya Matveev 46229636fc stdlib: Add plus/minus extensions for Set 2017-04-19 18:27:32 +07:00
Ilya Matveev b9b8c6e192 stdlib: Suppress/fix warnings in stdlib
This patch fixes redundant safe calls/casts/type projections
and suppresses some casts which are actually safe but reported
as unsafe.
2017-04-19 18:27:32 +07:00
Ilya Matveev fcece669ec stdlib: Add AbstractMutableList implementation
The implementation is based on the AbstractMutableList class
of JS backend.
2017-04-19 18:27:32 +07:00
Ilya Matveev 9da229896b stdlib: Fix variance for map and collection extensions 2017-04-19 18:27:32 +07:00
Ilya Matveev 7878c8fc1b tests: Remove mistakenly added binaries 2017-04-19 18:27:32 +07:00
Ilya Matveev 859618b546 stdlib: Add some Map extensions
This patch copies some Map extensions from Kotlin JVM stdlib:
 - none
 - onEach
 - getValue
 - min/maxBy and min/maxWith
 - asIterable and asSequence
2017-04-19 18:27:32 +07:00
Ilya Matveev fd7f379ff5 stdlib: Add binary search for lists 2017-04-19 18:27:32 +07:00
Ilya Matveev 1c081d351b stdlib: Add Grouping.eachCount extension 2017-04-19 18:27:32 +07:00
Alexander Gorshenev c7963a86c1 Start a new serializer for each class.
The consequence of that would be the type tables started anew for each class.
Without that the ever growing common global type table is written to each class.
Making the class protobufs bigger and bigger.
2017-04-19 14:12:53 +03:00
Alexander Gorshenev e2bf81d7d8 Captured type constructor support in serializer. 2017-04-19 14:06:50 +03:00
Vasily Levchenko 1544045643 CODEGEN: Initial support for emiting debug information.
- avoiding generating debug info using function scope (prolog/epilog problem).
- bit logging.
- extracted function for debug location.
- attempted to reset debug location at the start of the function (not working but looks like it's right way).
- private modifier added to non public functions
- removied IrFunction::line copy of IrElement::line() extention function.
- added FileScope used in  IrToBitcode::visitFile()
- local variable support
- mechanism of central managment of debug info emitting
2017-04-19 09:52:05 +03:00
Vasily Levchenko 747ad0efda VERSIONING: 1st aproach 2017-04-19 09:52:05 +03:00
Vasily Levchenko 84d62eb471 DEBUGINFO: makes debug info stab usable from konan compiler 2017-04-19 09:52:05 +03:00
Vasily Levchenko 05c25e4e0a LINK: makes macosx based target awared about dsymuil on link stage
- added verbosing symbol information (perhaps it's require special flag).
2017-04-19 09:52:05 +03:00
Vasily Levchenko 7e9a01b6ba DRIVER: added '-g' key to enable emitting debug information 2017-04-19 09:52:05 +03:00
Alexander Udalov a4eceb3e3a kotlin-compiler:1.1-20170417.154352-466
- Fix usage of new Kotlin command line arguments API
(cherry picked from commit fb8534d05d2f69902fd1add631754f7cdfb75c89)
2017-04-18 19:36:00 +03:00
Alexander Gorshenev e60754474a Preserve origin LAMBDA. The inliner seems to be looking at it. 2017-04-18 13:54:37 +03:00
Alexander Gorshenev d79875ac7c A couple of functions in stdlib are marked with @InlineExposed. 2017-04-18 13:54:37 +03:00
Alexander Gorshenev f959c4e43c a little warning cleanup 2017-04-18 13:54:37 +03:00
Alexander Gorshenev ce85975fac Slightly lighter weight when constructs. 2017-04-18 13:54:37 +03:00
Alexander Gorshenev 2ad0be6182 Substitute real rootFunction type parametrs instead of deserialized ones.
More direct acquisition of type serializer from the descriptor serializer.
2017-04-18 13:54:37 +03:00
Alexander Gorshenev 3139ae279c Don't share descriptor table between runs. 2017-04-18 13:54:37 +03:00
Alexander Gorshenev 2403f874a6 Somewaht better diagnostics. 2017-04-18 13:54:37 +03:00
Alexander Gorshenev 5654f78cae Enable deserializer phase. 2017-04-18 13:54:37 +03:00
Alexander Gorshenev 6a23af0f04 Update extension receivers on deep IR copy. 2017-04-18 13:54:37 +03:00
Alexander Gorshenev 8d2c6e4878 Separated native and jvm staticCFunction() because for native it needs not be inline now. 2017-04-18 13:54:37 +03:00
Alexander Gorshenev a434e039b2 Don't lose KonanLinkData extensions to ProtoBuf even when parsing KonanIr. 2017-04-18 13:54:37 +03:00
Alexander Gorshenev e3a253f508 Treat internal names with @PublishedApi annotation as exported. 2017-04-18 13:54:37 +03:00
Alexander Gorshenev f14716dfc0 Moved from int32 indices to message UniqId { int64 index; }. 2017-04-18 13:54:37 +03:00
Alexander Gorshenev a703647b79 Type parameters for accessors should be taken from their property. 2017-04-18 13:54:37 +03:00
Alexander Gorshenev c944ea78c1 account for the receiver in property mangling 2017-04-18 13:54:37 +03:00
Alexander Gorshenev ff27066502 Use a hash of public name as descriptor deserialization id. 2017-04-18 13:54:37 +03:00
Alexander Gorshenev 9b4a1f1569 Assume deserialization failure if we could not deserialize a KotlinType.
Various exceptions for IR deserialization.
2017-04-18 13:54:37 +03:00
Alexander Gorshenev a7b6d1e8ea invoke() with extension receiver is not present in the member scope,
so it needs to be resynthsized.
2017-04-18 13:54:37 +03:00