Michael Bogdanov
ebbc68dfae
isInlineFunction renamed to isInlineMethodContext
2015-12-17 09:52:27 +03:00
Michael Bogdanov
9cad1a912a
Choose proper context for accessor generation: skip inline ones; Fix for KT-6102: Bypass synthetic accessor when inlining lambda which calls private member
...
#KT-6102 Fixed
2015-12-17 09:51:41 +03:00
Michael Bogdanov
033698c51d
Added crossinline field to MethodContext
2015-12-17 09:50:54 +03:00
Michael Bogdanov
b0a7706812
Test for obsolete KT-5445: Bad access to protected data in getfield
...
#KT-5445 Obsolete
2015-12-17 09:50:39 +03:00
Dmitry Jemerov
179498d971
UI for enabling EAP channel for plugin updates
2015-12-16 19:59:56 +01:00
Alexey Tsvetkov
5330248f6e
Add checkbox for experimental incremental compilation; Make simple incremental compilation on by default
2015-12-16 21:52:39 +03:00
Alexander Udalov
0ba0ea5e1f
Report 'unsupported' on synthetic Java property references
...
#KT-8575 Open
2015-12-16 19:50:15 +03:00
Alexander Udalov
dc84445e2e
Inherit KProperty interfaces from function types
...
To be able to write the following: listOfStrings.map(String::length)
2015-12-16 19:48:28 +03:00
Mikhail Glukhikh
f25f0db10e
Fixed long / double / float value merge in OptimizationBasicInterpreter #KT-7401 Fixed
2015-12-16 17:45:38 +03:00
Stanislav Erokhin
75089a3af8
Revert "Project configuration: Add sources to kotlin-runtime library"
...
This is workaround for KT-10413.
This reverts commit 623ecd2503 .
2015-12-16 12:53:56 +03:00
Stanislav Erokhin
c725ed47f5
Replaced ReceiverValue.NO_RECEIVER to null.
2015-12-15 23:09:20 +03:00
Stanislav Erokhin
3692318c38
Minor. Removed ReceiverValue.IRRELEVANT_RECEIVER.
2015-12-15 23:08:41 +03:00
Pavel V. Talanov
56cd29dff2
Increase file size limit of compiler to 20 (was 2.5) megabytes (compiler will not read files larger than that)
...
Current IDEA api makes it possible to increase that to a higher value only by passing system property on compiler startup
2015-12-15 20:24:11 +03:00
Pavel V. Talanov
8d5d1b7dcc
LightClassUtil: files can no longer "belong to builtIns"
2015-12-15 20:22:14 +03:00
Pavel V. Talanov
bd9221beaa
Minor, fix test data for KotlinGoToTest
2015-12-15 20:22:13 +03:00
Pavel V. Talanov
623ecd2503
Project configuration: Add sources to kotlin-runtime library
2015-12-15 20:22:12 +03:00
Pavel V. Talanov
ca38a50e1a
Test data: fix test data for LineMarkerTest
2015-12-15 20:22:12 +03:00
Pavel V. Talanov
4fdc77f86f
Minor, mark component functions as operator in test data for ReferenceResolveWithLibTest
2015-12-15 20:22:11 +03:00
Pavel V. Talanov
6a780f01bd
Replace calls to QuickFixUtil.canModify by calls to canRefactor
...
Fix ChangeFunctionSignatureFix#isAvailable
2015-12-15 20:22:10 +03:00
Pavel V. Talanov
a667aa2f71
Tests: add runtime (and runtime sources) to some tests that rely on being able to resolve references to built ins
2015-12-15 20:22:09 +03:00
Pavel V. Talanov
539b84b561
Minor, stricter check for when deciding whether to build light class for decompiled declaration
2015-12-15 20:22:09 +03:00
Pavel V. Talanov
ddde372fad
Upgrade BuiltInsReferenceResolverTest
2015-12-15 20:22:08 +03:00
Pavel V. Talanov
ef134ffb1b
ProjectDescriptorWithStdlibSources includes source files for builtIns
2015-12-15 20:22:07 +03:00
Pavel V. Talanov
0099c10e4e
Drop BuiltInsReferenceResolver
2015-12-15 20:22:07 +03:00
Pavel V. Talanov
3f0d71411e
KtDecompiledFile: hack to be able to navigate to builtIns on jvm
...
Which sometimes are loaded differently than they are rendered (see BuiltInClassesAreSerializableOnJvm)
2015-12-15 20:22:06 +03:00
Pavel V. Talanov
b5568f9ace
findDecompiledDeclaration: rewrite using stub indices
2015-12-15 20:22:05 +03:00
Pavel V. Talanov
7ccdbfd596
Minor, rename file
2015-12-15 20:22:04 +03:00
Pavel V. Talanov
01b79f640f
DecompiledNavigationUtils -> findDecompiledDeclaration()
2015-12-15 20:22:04 +03:00
Pavel V. Talanov
d89b609960
J2K DecompiledNavigationUtils: rename file
2015-12-15 20:22:03 +03:00
Pavel V. Talanov
9ad6685310
J2K DecompiledNavigationUtils: autoconvert
2015-12-15 20:22:02 +03:00
Zalim Bashorov
976fbf32ba
Minor: use List instead of Array as container in chained scopes
2015-12-15 20:07:37 +03:00
Zalim Bashorov
5008a66a5b
ChainedScope -> ChainedMemberScope
2015-12-15 20:07:36 +03:00
Zalim Bashorov
674a15daa1
Disable test until KT-10405 not fixed
2015-12-15 20:07:35 +03:00
Zalim Bashorov
8fa2e28729
Add usages of inherited static members from nested object
2015-12-15 20:07:33 +03:00
Zalim Bashorov
e201268f46
Remove unnecessary scopes
2015-12-15 19:41:18 +03:00
Zalim Bashorov
8c4deb80e5
Extract to property path to js.stdlib output dir and fix statistics for generated js files
2015-12-15 19:41:17 +03:00
Zalim Bashorov
0b6e100aff
Fix compilation
2015-12-15 19:41:16 +03:00
Zalim Bashorov
51a8d5b9f0
Allow to use static members from companion object's parents
2015-12-15 19:41:15 +03:00
Zalim Bashorov
69c2668530
Don't allow to use own members when resolve super constructor call in (companion) object
2015-12-15 19:41:14 +03:00
Zalim Bashorov
e9ea4cc953
Don't allow to use own nested classes when resolve header of (companion) object
2015-12-15 19:41:13 +03:00
Zalim Bashorov
38522f60ea
Minor: add helper function createLazyValue with onRecursion
2015-12-15 19:41:12 +03:00
Denis Zharkov
7756644eb1
Introduce KClass<T>.javaPrimitiveType and KClass<T>.javaObjectType
...
#KT-6319 Fixed
2015-12-15 16:18:31 +03:00
Denis Zharkov
154657a374
Fix wildcards for invariant arguments
...
See test with Java, we want preserve the invariant that if return type and
value parameter types are same in Kotlin, than we can use such return-value
as argument for that parameter
2015-12-15 16:18:31 +03:00
Denis Zharkov
5df2a58003
Minor. Adjust generic parameter naming
2015-12-15 16:18:31 +03:00
Denis Zharkov
b4bb92d136
Fix overload resolution ambiguity for types intersection
...
There are two different forms of types intestion:
1. Type parameters with multiple bounds
2. Smart casts
The problem was that when member scope of type intersection contained
effective duplicates and that lead to overload resolution ambiguity in
strange cases like `x.hashCode()`
For first type we do effectively the same thing as when building member
scope for class extending several interfaces: group all descriptors by
both-way-overridability relation and then choose most-specific in each
group.
For smart casts we do basically the same thing but with special
treatments:
1. From all descriptors that _equal_ to most specific we choose
the one that works without smartcast if possible (i.e. we choose first from candidates list)
2. If smart-cast value seems to be unstable we use only member scope
of receiver type + all descriptors from smart cast possible types
that has incompatible signature. If we'd include all of them and
choose one as more specific, and it would lead to false
SMART_CAST_IMPOSIBLE (see test unstableSmartCast.kt)
#KT-3996 Fixed
#KT-10315 Fixed
2015-12-15 16:18:31 +03:00
Denis Zharkov
8d0c3281cd
Choose first non-flexible when selecting most specific
2015-12-15 16:18:31 +03:00
Dmitry Petrov
02311538d6
Refactor createAntBindFakeOverride.
...
Drop unneeded helper functions from overridingUtils.kt
2015-12-15 16:18:30 +03:00
Ilya Gorbunov
19a6cc74de
Build Markdown from sources tagged with forKotlin tag
2015-12-15 16:08:55 +03:00
Dmitry Jemerov
c83b6ed3a5
Inspection for migrating Kotlin stdlib API usages in Java code
2015-12-15 12:45:40 +01:00
Alexey Sedunov
3dfb9d2e5e
Inline Variable: Move string template processing to InlineValHandler as it violates contract of the PsiElement.replace()
2015-12-15 13:31:35 +03:00