Mikhail Glukhikh
00504a3f6d
Private setter for open property: take containing class modality into account #KT-10325 Fixed
2015-12-11 18:54:28 +03:00
Dmitry Jemerov
470dfc9bec
remove "Jet" from names of classes related to resolve/scopes
2015-12-11 16:07:13 +01:00
Stanislav Erokhin
39b6637c7c
Fix exception from InvokeProcessor when we get invoke from extension function type.
2015-12-11 17:01:04 +03:00
Stanislav Erokhin
616bb444ec
Minor. strip explicit receiver for variable call if needed.
2015-12-11 17:01:03 +03:00
Stanislav Erokhin
dd24fd47f7
Update control flow test data for tower resolution algorithm
...
- locals win
- drop old invokeExtension convention
2015-12-11 17:01:02 +03:00
Alexander Udalov
239502368a
Update test data for tower resolution algorithm
...
- locals win
- unary calls to plus/minus are not supported in favor of unaryPlus/unaryMinus
- unqualified nested classes are temporarily reported as unresolved
- function without receiver win against extension function
- explicit import win against star import
2015-12-11 17:01:02 +03:00
Stanislav Erokhin
66a031f7a0
Do not enter in recursion for implicit invoke on variable with un inferred type
2015-12-11 17:01:01 +03:00
Stanislav Erokhin
cbe1ffed55
Use new tower resolution algorithm by default
2015-12-11 17:01:00 +03:00
Michael Bogdanov
b950bf0e6e
Fix for KT-10259: Proguard can't find generated lambda class of lambda nested inside object?.let lambda
...
#Fixed KT-10259
2015-12-11 16:14:59 +03:00
Michael Bogdanov
9452c200a0
Keep typeRemapper in inlining context instead of hashMap for transformed types
2015-12-11 16:14:58 +03:00
Mikhail Glukhikh
6fb871a088
A set of additional tests for complex expressions DFA
2015-12-11 15:17:37 +03:00
Mikhail Glukhikh
d024045638
Data flow values for Elvis / parenthesized expressions, smart casts on them
2015-12-11 15:17:29 +03:00
Mikhail Glukhikh
745a3aeeac
Accurate representation of smart casts on complex expressions
2015-12-11 15:17:25 +03:00
Mikhail Glukhikh
7cd867b936
DFA: take into account if / else and when expression assignments #KT-10002 Fixed
...
Also #KT-7479 Fixed
2015-12-11 15:17:22 +03:00
Mikhail Glukhikh
c8b50eec1e
Enum.values: deprecation (warning) --> deprecation (error)
2015-12-11 11:11:42 +03:00
Mikhail Glukhikh
521b216602
Migration: Enum.values to Enum.values()
2015-12-11 11:11:38 +03:00
Mikhail Glukhikh
3254641c5a
Local sealed classes: warning --> error
2015-12-11 11:11:34 +03:00
Dmitry Petrov
0fe74a8b43
COMMA_IN_WHEN_CONDITION_WITHOUT_ARGUMENT is an ERROR now.
...
Migrated code.
Updated test data in IDE tests.
Dropped whenWithRangeTestsAndMultiConditions.kt:
"Introduce subject" is not applicable to 'when' with ||-ed conditions.
2015-12-11 10:43:16 +03:00
Alexey Tsvetkov
199827635f
Reserve 'typeof' as a keyword
2015-12-10 21:26:41 +03:00
Dmitry Jemerov
009e3f9cd7
rename PSI classes according to current terminology:
...
KtMultiDeclaration(Entry) -> KtDestructuringDeclaration(Entry)
KtFunctionLiteralExpression -> KtLambdaExpression
KtFunctionLiteralArgument -> KtLambdaArgument
KtDelegationSpecifierList -> KtSuperTypeList
KtDelegationSpecifier -> KtSuperTypeListEntry
KtDelegatorToSuperClass -> KtSuperTypeEntry
KtDelegatorToSuperCall -> KtSuperTypeCallEntry
KtDelegationByExpressionSpecifier ->KtDelegatedSuperTypeEntry
2015-12-10 16:15:13 +01:00
Natalia Ukhorskaya
49e484d796
Do not throw exception analyzing imports in KtCodeFragments
2015-12-10 14:41:47 +03:00
Pavel V. Talanov
280e00981f
Load java: load annotations on enum entries
2015-12-10 11:12:23 +03:00
Pavel V. Talanov
fb19552920
Mark enum entries that are deprecated in Kotlin as deprecated in bytecode
2015-12-10 11:12:22 +03:00
Zalim Bashorov
5bf8b4d946
Allow to use "static" part of class in own constructors by short name, including in primary constructor
2015-12-09 21:42:32 +03:00
Mikhail Glukhikh
9a4eb2a368
Refactoring: ClassDescriptor.isFinal, no more Modality.isOverridable
2015-12-09 19:27:47 +03:00
Mikhail Glukhikh
fb406bfc24
Refactoring: CallableMemberDescriptor.isOverridable
2015-12-09 19:27:04 +03:00
Mikhail Glukhikh
c73f01927a
'sealed' is now not 'final' by default + related code changes #KT-10266 Fixed
2015-12-09 19:19:04 +03:00
Pavel V. Talanov
da02ed9057
GroupingMessageCollector: ensure that messages without location are reported first
...
Should fix CompileKotlinAgainstCustomBinariesTest.testIncompleteHierarchyInJava(Kotlin) tests
2015-12-09 18:54:15 +03:00
Pavel V. Talanov
6164566cad
Extract duplicate logic between javascript and builtins serialization/deserialization
2015-12-09 18:51:27 +03:00
Pavel V. Talanov
e458534c93
Write package_fq_name to for Package message when serializing builtins
2015-12-09 18:51:24 +03:00
Pavel V. Talanov
f05de6d6eb
Add package_fq_name field extension to builtins.proto
2015-12-09 18:51:24 +03:00
Dmitry Petrov
70c200d265
Fix diagnostic messages for properties.
...
Fix IDE tests.
Update quick fixes in IDE
(TODO: review new inheritance-related diagnostics with regards to quick fixes)
2015-12-09 17:43:48 +03:00
Dmitry Petrov
94bea54db3
Change "most specific return type" definition for fake overrides.
...
Given overridden descriptors D = d[i].
1. Find D*, subset of D:
returnType(d* from D*) <: returnType(d) for each d from D.
Always prefer var to val.
2. Prefer non-flexible return type to flexible.
Check for var/val overrides properly
(NB: this will report PROPERTY_TYPE_MISMATCH_ON_OVERRIDE
for all properties, not just overrides involving vars as it was before).
2015-12-09 17:43:48 +03:00
Dmitry Petrov
594039ac42
Delegation and overrides:
...
- Tests.
- No need for a separate diagnostic message regarding
return/property type conflict on override by delegation:
it is always a conflict of inherited signatures.
2015-12-09 17:43:48 +03:00
Dmitry Petrov
84824b1024
Fix KT-10194: skip incorrect delegates.
2015-12-09 17:43:48 +03:00
Dmitry Petrov
ef72c594c4
KT-1934 & KT-10197:
...
Naive approximation for fake overriding signature:
use upper bound for flexible types.
Check delegation errors.
2015-12-09 17:43:47 +03:00
Dmitry Petrov
6e2d42daf9
J2K: DelegationResolver.kt: convert to Kotlin
2015-12-09 17:43:47 +03:00
Dmitry Petrov
8f5df45edc
J2K: DelegationResolver.kt
2015-12-09 17:43:47 +03:00
Dmitry Petrov
2fcb7e532b
KT-1934: Fixing synthetic accessors hierarchy
2015-12-09 17:43:47 +03:00
Dmitry Petrov
135c30323b
KT-1934 Check inherited signatures for compatibility
...
Overridden signatures should have compatible return types
(equal types for 'var').
Only relevant overrides should be taken into account.
Refactor inherited signatures check,
introduce a strategy interface for problem reporting.
2015-12-09 17:43:47 +03:00
Dmitry Jemerov
18e343d405
Merge pull request #795 from mcgee/KT-10124
...
#KT-10124 Fixed
2015-12-09 15:28:31 +01:00
Dmitry Jemerov
863e32c5cd
Merge pull request #791 from mcgee/KT-9938
...
#KT-9938 Fixed
2015-12-09 15:17:31 +01:00
Andrey Breslav
3eeab68261
Signature checks fixed for plus() and minus()
2015-12-09 17:10:30 +03:00
Andrey Breslav
421f84e05a
Error messages fixed for deprecations that have been made errors
2015-12-09 17:10:30 +03:00
Andrey Breslav
434082cadb
'yield' reserved as a keyword
2015-12-09 17:10:30 +03:00
Nikolay Krasko
3374ac7606
Minor: More tests for warnings suppression
2015-12-09 16:01:52 +03:00
Dmitry Jemerov
e97e82d119
use terms "lambda expression" and "anonymous function" instead of "function literal" and "function expression"
2015-12-09 13:55:40 +01:00
Alexander Udalov
9a01c0d9cb
Test that no delegated properties are used in critical classes in reflection
2015-12-08 22:59:00 +03:00
Stanislav Erokhin
cfed28c2ff
Use CastImplicitClassReceiver for implicit this with smart cast
2015-12-08 20:42:55 +03:00
Stanislav Erokhin
b7e4fdf4d5
Add extensionReceiver to ScopeTowerLevel & use it in ImportingScopeBasedTowerLevel
2015-12-08 20:42:55 +03:00