Stanislav Erokhin
450ea78b1d
Refactoring. Convert KotlinType to kotlin.
2016-05-20 09:32:54 +03:00
Stanislav Erokhin
8c2d68fff0
Refactoring. Move specificity relations into TypeSpecificityComparator component.
2016-05-20 09:32:53 +03:00
Stanislav Erokhin
921eb8402c
Transform OverloadUtil into OverloadChecker component.
2016-05-20 09:32:53 +03:00
Stanislav Erokhin
c4778bfe5a
Fixed type checking recursive problem.
...
#KT-11995 Fixed
2016-05-20 09:26:56 +03:00
Alexander Udalov
1c8272d3f1
Simplify data class function generation and signature lookup code
...
- change prerequisites for generating equals/hashCode/toString in a data class:
previously they were generated if the corresponding method is trivial (i.e.
it comes from kotlin.Any), now we're generating it always unless it'll cause
a JVM signature clash error (see KT-6206)
- use static KotlinBuiltIns.isXxx methods to compare types instead of checking
against descriptors loaded from certain built-ins instance, this is quicker
and more correct in environments where several built-ins are possible
- don't use isOrOverridesSynthesized, it's not relevant for
equals/hashCode/toString because functions with these names are never
synthesized
#KT-6206 Fixed
2016-05-20 00:54:19 +03:00
Alexander Udalov
2200bfcc85
Simplify ImplementationBodyCodegen#generateToArray
...
- don't do anything for interfaces because there's no point in generating
abstract methods which are already abstract in supertypes
- don't use getDeclaredFunctionByRawSignature, check function signature
manually instead
- don't use isOrOverridesSynthesized because 'toArray' is never synthesized
2016-05-20 00:54:18 +03:00
Alexander Udalov
b208995d73
Render different class kinds differently in bytecode listing test
2016-05-20 00:36:56 +03:00
Alexander Udalov
c1c2651988
J2K backend-common classes: convert
...
Also merge CodegenUtilKt into CodegenUtil
2016-05-20 00:36:56 +03:00
Alexander Udalov
27ed0dd25f
J2K backend-common classes: rename .java -> .kt
2016-05-20 00:36:56 +03:00
Dmitry Petrov
a25ba5baf1
KT-12156: for the purposes of inline-related diagnostics
...
treat function declaration as final if it is a member of a final class
2016-05-19 17:43:29 +03:00
Stanislav Erokhin
7332032bb6
Support sealed class inheritors in the same file
...
#KT-11573 Fixed
2016-05-19 16:22:40 +03:00
Alexey Sedunov
26be254fbe
Spring Support: Show autowiring candidates line markers for @Autowired-annotated constructors and constructor parameters
...
#KT-12120 Fixed
2016-05-19 13:56:12 +03:00
Alexey Sedunov
85d07e5f6d
Spring Support: Implement Spring @Autowired inspection
...
#KT-12278 Fixed
#KT-12147 Fixed
#KT-12366 Fixed
#KT-12122 Fixed
2016-05-19 13:56:06 +03:00
Denis Zharkov
46ac26147b
Annotate with @UnsafeVariance relevant types in built-ins
2016-05-18 19:21:38 +03:00
Denis Zharkov
279ff0b561
Extract variance check algorithm into 'core' module
2016-05-18 19:21:38 +03:00
Mikhail Glukhikh
0cf61b1b5b
Cleanup: simplify for
2016-05-18 17:46:13 +03:00
Mikhail Glukhikh
a4ad995f31
Overridden functions using default arguments in recursive call are no more considered tail recursive #KT-4285 Fixed
2016-05-17 14:29:01 +03:00
Mikhail Glukhikh
f35fd32a25
Exhaustive when with 'Unit' result now also generates an exception in else branch #KT-12192 Fixed
2016-05-17 14:28:57 +03:00
Stanislav Erokhin
f376c418dc
Fix SOE related exact annotation and completion
2016-05-16 18:32:16 +03:00
Denis Zharkov
9dc47d9a11
Move java/util/List.sort to MutableList
2016-05-16 15:38:13 +03:00
Denis Zharkov
d0acb3674a
Fix rendered testData
...
New members in enum member scope
2016-05-16 15:38:13 +03:00
Denis Zharkov
e90c92f8d3
Separate additional built-in members from JDK into three groups
...
- White list: can be used as common built-in declaration
- Black list: can be used only for overrides and super-calls-
- Not considered members: ones that is not in black or white list.
Such members can be used in any context, but they usages marked as deprecated
Third kind is needed to make possible use declarations added in future JDK versions.
Deprecation is necessary because they may get into black list in next Kotlin compiler version
2016-05-16 15:38:13 +03:00
Denis Zharkov
ef940ab0df
Add new 'HiddenInResolution' kind
...
It's used to hide additional built-ins members loaded from JDK
Such methods can be overridden and called only with 'super'-receiver
2016-05-16 15:38:13 +03:00
Denis Zharkov
1501a042e9
Add possibility to add annotations when building FunctionDescriptor copy
...
It's being used in next commits to add Deprecated annotation
to unknown additional built-ins members
2016-05-16 15:38:13 +03:00
Alexey Sedunov
edb3fd8f00
Spring Support: Replace light elements bound to line markers with their originals
...
#KT-12091 Fixed
2016-05-16 02:52:22 +03:00
Valentin Kipyatkov
f6c8ac70fc
Moved method getSmartCastVariantsWithLessSpecificExcluded() into IDE
2016-05-14 12:19:41 +03:00
Valentin Kipyatkov
b6c54ac314
Minor code improvements after conversion
2016-05-14 12:19:41 +03:00
Valentin Kipyatkov
83714ae9c9
Conversion to Kotlin (step 2)
2016-05-14 12:19:41 +03:00
Valentin Kipyatkov
ccd7ae901c
Conversion to Kotlin (step 1)
2016-05-14 12:19:40 +03:00
Mikhail Glukhikh
182ade19e9
'Long' type is now stored for 'Long' literal #KT-12267 Fixed
2016-05-13 19:51:30 +03:00
Mikhael Bogdanov
48c8678281
Extracted logic of obtaining delegated local variable metadata
2016-05-13 19:11:24 +03:00
Mikhael Bogdanov
c06b51c1d1
Allow top-level local delegated properties in scripts
2016-05-13 19:11:23 +03:00
Mikhael Bogdanov
6ece2b41d6
Box inline test for local delegated property
2016-05-13 19:11:23 +03:00
Mikhael Bogdanov
5e933b7acd
localVariableReferences.kt moved from reflection.jvm to runtime.jvm
2016-05-13 19:11:22 +03:00
Mikhael Bogdanov
ec632c37ab
Support increment and '+=' on local delegated properties
2016-05-13 19:11:21 +03:00
Mikhael Bogdanov
6ae511b253
LocalVariableDescriptor.withAccessors renamed to isDelegated, added getter
2016-05-13 19:11:20 +03:00
Dotlin
4c223845b6
Delegated Properties: Code generation for local properties (JVM)
2016-05-13 19:11:19 +03:00
Dotlin
fa523b9af4
Delegated Properties: Analysis adjustments for local delegated properties support
2016-05-13 19:11:18 +03:00
Mikhail Glukhikh
e31806e2b5
Code cleanup: redundant modality (minor)
2016-05-13 17:57:12 +03:00
Mikhail Glukhikh
1301d9047d
Code cleanup: redundant visibility (minor)
2016-05-13 17:57:08 +03:00
Mikhail Glukhikh
733f3e8025
Code cleanup: type parameters can have in / out variance
2016-05-13 17:57:02 +03:00
phx402@gmail.com
75e9e35669
Fixed incorrect "No cast needed" warning when casting from extension function to regular one and vise versa
...
#KT-11780 Fixed
2016-05-13 13:40:14 +03:00
Nikolay Krasko
52cd7109c7
Use left bound element types to tight empty delegation contructor call to declaration
...
CONSTRUCTOR_DELEGATION_CALL and CONSTRUCTOR_DELEGATION_REFERENCE types were modified.
2016-05-12 17:25:19 +03:00
Nikolay Krasko
1a1c10251a
Make code fragments files non-physical with event system disabled (KT-12232)
...
Fix "File copy should be non-physical and non-event-system-enabled! Language=Language:
kotlin; file=JetFile: fragment.kt of class org.jetbrains.kotlin.psi.KtExpressionCodeFragment" assert.
Inspired by Java fragment files
#KT-12232 Fixed
2016-05-12 17:24:54 +03:00
Nikolay Krasko
9c2ceca4b8
Revert "Additional simple test for variable initialize in secondary constructor"
...
This reverts commit 147f170f80 .
2016-05-12 17:22:16 +03:00
Nikolay Krasko
f015a27fd0
Revert "Make code fragments files non-physical with event system disabled"
...
This reverts commit d02b89a7a0 .
2016-05-12 17:21:21 +03:00
Nikolay Krasko
147f170f80
Additional simple test for variable initialize in secondary constructor
2016-05-12 17:13:24 +03:00
Nikolay Krasko
d02b89a7a0
Make code fragments files non-physical with event system disabled
...
As a side effect it will disable write checks for fragments files
This allows completion work without write action.
Inspired by Java fragment files
2016-05-12 17:13:24 +03:00
Alexey Sedunov
df46a8c67a
Spring Support: Implement bean references in @Qualifier annotations
...
#KT-12092 Fixed
2016-05-12 13:03:04 +03:00
Alexey Tsvetkov
6f3ea01084
Refactoring: rename ClassBuilderMode entry LIGHT_CLASSES_WITH_METADATA->KAPT
2016-05-11 20:41:48 +03:00