Commit Graph

1242 Commits

Author SHA1 Message Date
alexander-gorshenev 74df14d458 Fixed golden value for tostring3 test. (#123) 2016-12-06 19:25:31 +03:00
Nikolay Igotti e1b91945d0 Restore proper compiler. 2016-11-28 12:05:40 +03:00
Konstantin Anisimov b71ee37669 TEST: array_list1 test enabled 2016-12-06 16:44:44 +03:00
Konstantin Anisimov 3cb1dd2eb1 CODEGEN: support for instanceof for null implemented 2016-12-06 16:41:27 +03:00
Konstantin Anisimov 3eec3da511 TEST: tests for instanceof are modified to take in account null and nullable 2016-12-06 16:41:27 +03:00
Alexander Gorshenev 6331323ef1 Minor changes after code review. 2016-12-06 17:36:45 +04:00
Alexander Gorshenev 28f683bf09 Minor changes after code review. 2016-12-06 17:22:34 +04:00
Alexander Gorshenev c84fe7fd85 Collected or scattered means of running the compiler in a shell script.
So one can now

$ ./gradlew dist

$ ./dist/bin/konanc backend.native/tests/runtime/basic/hello0.kt -o hello

$ ./hello

or one can

$ ./gradlew demo

and have a complete dist build,
with a test program compiled and executed automatically after that
2016-12-06 17:22:34 +04:00
Nikolay Igotti 527efa661b Boundary values and their toString() test. (#90) 2016-12-06 16:03:23 +03:00
Konstantin Anisimov de493313f8 RUNTIME: fix of InitInstance constructor parameter 2016-12-06 13:53:07 +03:00
Konstantin Anisimov bab2b8bc3f CODEGEN: get_object implementation 2016-12-06 13:53:07 +03:00
Konstantin Anisimov efdb896d2c CODEGEN: 64-bit one 2016-12-06 13:53:07 +03:00
Vasily Levchenko 8892986be3 TEST:objects and companion objects. 2016-12-06 13:53:07 +03:00
Nikolay Igotti 618bf4cb80 Hash map by @elizarov, more stdlib code (#112) 2016-12-06 13:31:43 +03:00
Nikolay Igotti 1fc4ce32d3 Mostly avoid using ArrayHeader* in generated code. (#116) 2016-12-05 15:04:34 +03:00
Nikolay Igotti 1197b8453f Create C++ static initializer for use in global objects. (#115) 2016-12-05 14:01:24 +03:00
Svyatoslav Scherbina 737a132b5d Review feedback 2016-12-05 15:17:40 +07:00
Svyatoslav Scherbina 415f2f1d35 backend: implement compile-time eval of varargs and listOf;
also perform some refactoring around.
2016-12-05 15:17:40 +07:00
Svyatoslav Scherbina e28a9c71a8 backend: refactor ConstValue
also improve other code
2016-12-05 15:17:40 +07:00
Svyatoslav Scherbina e0dfd312e4 Review feedback 2016-12-05 14:27:14 +07:00
Svyatoslav Scherbina 2531c34b64 backend: add two more tests for finally 2016-12-05 14:27:14 +07:00
Svyatoslav Scherbina 4a1b3f2824 backend: support break and continue from try with finally 2016-12-05 14:27:14 +07:00
Svyatoslav Scherbina b55b67ebe6 backend: improve absent finally handling 2016-12-05 14:27:14 +07:00
Svyatoslav Scherbina 96b30f574f backend: add failing test for break 2016-12-05 12:55:23 +07:00
Konstantin Anisimov b193ade131 CODEGEN: support for labeled break-continue implemented 2016-12-02 16:28:19 +03:00
Konstantin Anisimov 9afdfc316b TEST: test includes labeled continue-break 2016-12-02 16:28:19 +03:00
Konstantin Anisimov bafa7e7c3c CODEGEN: Support for "break" and "continue" implemented 2016-12-02 16:28:19 +03:00
Konstantin Anisimov 03e94c6877 TEST: tests for "break" and "continue" added 2016-12-02 16:28:19 +03:00
Nikolay Igotti 3cee19d28e Fix couple compiler warnings. 2016-12-02 16:06:04 +03:00
Nikolay Igotti 83dcb0fc3a Fix array init and add listOf(). (#109) 2016-12-02 13:18:57 +03:00
Svyatoslav Scherbina 35dfb35246 Review feedback 2016-12-02 16:48:20 +07:00
Svyatoslav Scherbina aecbe0e5f6 backend/tests: do not check output in main_exception 2016-12-02 16:48:20 +07:00
Svyatoslav Scherbina f4014b0f29 runtime: add trivial stack traces to exceptions 2016-12-02 16:48:20 +07:00
Svyatoslav Scherbina b7b99d5684 backend/tests: allow tests to be marked as disabled
disabled tests can be run manually
2016-12-02 16:47:40 +07:00
Svyatoslav Scherbina e65b22569c backend/tests: add disabled test 'array_to_any' 2016-12-02 16:47:40 +07:00
Alexander Gorshenev 80c50c24e6 Renamed Kotlin_start to Konan_start. 2016-12-01 19:20:12 +04:00
Alexander Gorshenev 80e39cb7c9 Eliminated mangled name resolution for Kotlin_start.
Made Kotlin_start private in order to not pollute
the namespace of the default package.
2016-12-01 19:20:12 +04:00
Alexander Gorshenev 0e7b13027e Changed AllocStringInstance to accept data and length. 2016-12-01 19:20:12 +04:00
Alexander Gorshenev d0cd28fe5a Underscore is not needed on Linux for resolution of 'kfun:_start()'. 2016-12-01 19:20:12 +04:00
Alexander Gorshenev 2c89fee837 Simplified launcher to utilize some ready made functionality. 2016-12-01 19:20:12 +04:00
Alexander Gorshenev 62be62e5d6 Added a test for exception handling in 'start'. 2016-12-01 19:20:12 +04:00
Alexander Gorshenev 22d748001d Added "start" function between the C launcher and Kotlin "main" 2016-12-01 19:20:12 +04:00
Alexander Gorshenev 1aa7b23853 For better incrementality, specified :stdlib output file, as it is
non-standard for that kind of gradle task.
2016-12-01 19:20:12 +04:00
Alexander Gorshenev 3f480eb846 Transfer C argv to Kotlin's args. 2016-12-01 19:20:12 +04:00
SvyatoslavScherbina e38ac775ad Calling Kotlin from C++ runtime (#107)
* backend: support exporting Kotlin functions for C++ runtime

* runtime: implement several functions in Kotlin

* Throw{NullPointer,ArrayIndexOutOfBounds,ClassCast}Exception

* runtime: add literal declared in Kotlin as empty string

Also
* add corresponding test
* use empty string literal in strdedup2
  (however keep it disabled)

* fixup! runtime: add literal declared in Kotlin as empty string

* Review feedback: add more TheEmptyString() usages

Also improve string index checks in runtime
2016-12-01 16:10:03 +03:00
Nikolay Igotti f9167ea91e Attempt of listOf() support. (#92) 2016-12-01 16:09:26 +03:00
Nikolay Igotti 85aca55ee5 Add hashCode() for primitives. (#104) 2016-12-01 16:07:06 +03:00
Vasily Levchenko 28918f92f7 kotlin-compiler: 1.1-20161201.112229-281 2016-12-01 15:26:10 +03:00
Nikolay Igotti fbf4db6428 Fix RTTI bugs. (#105) 2016-12-01 15:08:08 +03:00
Svyatoslav Scherbina 71a8886856 backend: add minor code improvements
Including:

* Introduce parameter scope.
* Use more appropriate descriptor types.
* Use words 'parameter' and 'arguments' more correctly.
2016-12-01 13:20:05 +07:00