Commit Graph

2090 Commits

Author SHA1 Message Date
Nikolay Igotti 322d634e4c Remove system locale dependencies (#464) 2017-04-10 15:22:54 +03:00
Igor Chevdar f389afee16 Added compiler arg --print_ir_with_descriptors
Sometimes it would be useful to see IR with all corresponding
descriptors - now it is possible.
2017-04-10 14:45:55 +03:00
Konstantin Anisimov 8fc1577fe5 Reduce obsolete code
Wrote comments
2017-04-10 18:45:28 +07:00
Konstantin Anisimov 6568efbac8 Move TypeSybstitutor creation in InlineFunction
Property "currentFile" expected to return IrFile
Print warning if deserializer failed to bring function declaration
2017-04-10 18:45:28 +07:00
Konstantin Anisimov 8235c8b2be New scheme for copy descriptors names 2017-04-10 18:45:28 +07:00
Konstantin Anisimov 34e49ffb82 Unify inlining procedure for "function" and "lambda" 2017-04-10 18:45:28 +07:00
Konstantin Anisimov 9f4e1a92d8 Unify inlining procedure for "function" and "lambda" 2017-04-10 18:45:28 +07:00
Vasily Levchenko e83c41a6c6 compiler: 1.1-20170409.165958-449. 2017-04-10 11:47:22 +03:00
Vasily Levchenko a3bf6641f5 compiler: 1.1-20170405.204642-445 2017-04-10 11:35:54 +03:00
Nikolay Igotti 100e4df05d Concurrency prototype (#453)
* Concurrent executors

* Review feedback
2017-04-07 15:16:04 +03:00
Alexander Gorshenev 3efbf3ae27 Removed a fixme leftover.
We have a proper version in stdlib now.
2017-04-07 13:47:52 +03:00
Alexander Gorshenev 49674d2b1b Some mangling disambiguation tests. 2017-04-07 13:47:52 +03:00
Alexander Gorshenev f91bc457db Disambiguate upper bounds in the mangling. 2017-04-07 13:47:52 +03:00
Ilya Matveev a69def4254 tests: Generate test tasks for stdlib tests
This patch updates the test execution harness to work with the
new stdlib tests. It allows one to execute stdlib tests as
a part of external testing (./gradlew run_external) or separately
(./gradlew run_external -Pprefix=external_stdlib).
2017-04-07 17:21:11 +07:00
Ilya Matveev 85827b4880 tests: Copy stdlib tests from Kotlin/JVM
This patch copies Kotlin/JVM stdlib tests (libraries/stdlib/test)
excepting ones with explicit java dependencies. It also transforms
the tests to use them as box-tests.
2017-04-07 17:21:11 +07:00
Ilya Matveev 5d50943ebd build: Use *-all gradle package in wrapper
This patch gives us an access to gradle javadoc in IDEA by using
*-all gradle package instead of *-bin one.
2017-04-07 17:21:11 +07:00
Igor Chevdar 8690b00790 Refactoring 2017-04-07 08:01:16 +07:00
Igor Chevdar db50381bc9 Inline: set correct containing declaration + some fixes
1. Containing declaration can be computed as parent from the IR.

2. Sometimes we need to substitute FunctionDescriptor which is defined
inside an inline function call but nevertheless leaks to the outside:

public inline fun <T, R> T.myLet(f: (T) -> R): R = f(this)

interface foo {
    fun bar(): String
}

fun box(): String {
    val baz = "OK".myLet {
        object : foo {
            override fun bar() = it
        }
    }
    return baz.bar()
}
2017-04-07 08:01:16 +07:00
Konstantin Anisimov 3c2b5a9762 Fixed "interop0" failure 2017-04-06 16:25:11 +03:00
Konstantin Anisimov 53bc4b1872 Eliminated special treatment for lambda parameter -> argument map building
Fix for ClassDescriptors substitution
2017-04-06 16:25:11 +03:00
Konstantin Anisimov 82917eafbd Move copying descriptors and types in InlineCopyIr 2017-04-06 16:25:11 +03:00
Konstantin Anisimov 7ec89caf27 Avoid evaluation ANONIMOUS_FUNCTION as argument 2017-04-06 16:25:11 +03:00
SvyatoslavScherbina 2f90e3f055 Update INTEROP.md 2017-04-06 11:09:57 +03:00
SvyatoslavScherbina 058bb728df kotlin-compiler: 1.1-20170403.193854-443 (#452) 2017-04-05 20:48:58 +03:00
Igor Chevdar f5e3519d3a Inline: implemented properties copying 2017-04-05 14:30:03 +03:00
Igor Chevdar e9b207595a Inline: correct set of super class for ClassDescriptor 2017-04-05 14:30:03 +03:00
Vasily Levchenko 962b7905c6 .gitignore: makes teamcity-test.property commitable only if it really required 2017-04-05 14:27:16 +03:00
Vasily Levchenko 461b977cae TEST: build slack teamcity properties for testing:
- NEVER commit if konan-reporter-token contains real token.
2017-04-05 14:27:16 +03:00
Vasily Levchenko 8aaf784f0e BUILD: even more improvements of slack integration:
- refactoring (extract variables to avoid access duplication).
- typo konan-reporter-token, epilogue and buildProperties.
- unused variables declaration removed.
- acting only if teamcity config passed throw environment.
2017-04-05 14:27:16 +03:00
Alexander Gorshenev 3f625ce1b2 More primitive types for constants. 2017-04-05 12:09:43 +03:00
Alexander Gorshenev b3bbd96bce Eliminated an "external inline" function from stdlib. 2017-04-05 12:09:43 +03:00
Alexander Gorshenev 429bc31b82 No serialization for "external public inline" functions. 2017-04-05 12:09:43 +03:00
Giuseppe Barbieri 9195291976 Update README.md (#450) 2017-04-05 10:49:54 +03:00
Vasily Levchenko 77fb3c6985 BUILD: use slack parameters from teamcity parameters 2017-04-04 23:10:37 +03:00
Dmitry Jemerov 8505f03d8e Fix path to SDL defs in README (#446) 2017-04-04 22:36:48 +03:00
Dmitry Jemerov 305dbd30a6 Fix Markdown syntax 2017-04-04 17:32:12 +02:00
Konstantin Anisimov a70d5293b3 Typo fixed 2017-04-04 18:02:01 +07:00
Konstantin Anisimov 5f9f0e55d0 Optimize import 2017-04-04 18:02:01 +07:00
Konstantin Anisimov c7de1d452f Move type operations in DeepCopyIrTreeWithDescriptors 2017-04-04 18:02:01 +07:00
Konstantin Anisimov 276c14a896 Minor refactoring 2017-04-04 18:02:01 +07:00
Konstantin Anisimov 90b910fd53 Igor's fixes 2017-04-04 18:02:01 +07:00
Konstantin Anisimov 526a496d59 Assert prevents compiling stdlib - should be suspended 2017-04-04 18:02:01 +07:00
Konstantin Anisimov 36ddaa46e4 Assert if deserializer failed to fetch FunctionDeclaration 2017-04-04 18:02:01 +07:00
Konstantin Anisimov 2381e453d8 Type substitution relocated in DeepCopyIrWithDescriptors 2017-04-04 18:02:01 +07:00
Igor Chevdar ee3e408dcb Added recursive inlining 2017-04-04 11:58:52 +03:00
Igor Chevdar b9507d9036 Do not inline arguments that are IrBlock or IrCallableReference 2017-04-04 11:58:52 +03:00
Igor Chevdar d9e400f39e * Enabled inlining of stdlib
* Fixed two bugs in inlining
2017-04-04 11:58:52 +03:00
Igor Chevdar fffbff1365 Inline: need to clone all arguments for inline function call 2017-04-04 11:58:52 +03:00
Igor Chevdar 791712a22a Fixed bug with inline function call: run substituter on descriptors 2017-04-04 11:58:52 +03:00
Igor Chevdar 8d5ec79192 Supported empty vararg parameter in inline function call 2017-04-04 11:58:52 +03:00