Commit Graph

16185 Commits

Author SHA1 Message Date
Alexey Andreev c814a9d1d2 KT-2752: fix support of typealiases 2016-10-08 19:25:52 +03:00
Alexey Andreev 9c7c82b151 KT-2752: refactor NameSuggestion, change rules for determining name stability and applying mangling 2016-10-08 19:25:50 +03:00
Alexey Andreev 6f7e7d8504 KT-2752: fixes after code review 2016-10-08 19:25:49 +03:00
Alexey Andreev aa5d15cff7 KT-2752: minor fixes after code review 2016-10-08 19:25:43 +03:00
Alexey Andreev 4e2b1d68cf KT-2752: deprecate parameter of @native annotation, prohibit simultaneous usage of parameterized @native and @JsName 2016-10-08 19:25:42 +03:00
Alexey Andreev 49022fd5bc KT-2752: move some diagnostics from entire declarations to their headers 2016-10-08 19:25:41 +03:00
Alexey Andreev 681a428473 KT-2752: prohibit JSName on extension properties 2016-10-08 19:25:36 +03:00
Alexey Andreev 1dcb037aee KT-2752: remove diagnostic that reports about overridden method having several names from different sources. Generate proxies instead. Fix reporting name clash when two distinct fake overrides require same name. 2016-10-08 19:25:35 +03:00
Alexey Andreev c5087779e4 KT-2752: add diagnostics that reports about conflicting overridden declarations 2016-10-08 19:25:34 +03:00
Alexey Andreev 16c172f053 KT-2752: add diagnostic that reports about applying JsName on overridden declarations 2016-10-08 19:25:33 +03:00
Alexey Andreev 725d13b72e KT-2752: fix JsName with explicit use target. Add some tests for JsName with use targets 2016-10-08 19:25:33 +03:00
Alexey Andreev be0013d9f2 KT-2752: declare properties as a pair of functions when accessors are marked with @JsName 2016-10-08 19:25:32 +03:00
Alexey Andreev 6e1a0901ac KT-2752: add checkers for inconsistent usage of JsName 2016-10-08 19:25:31 +03:00
Alexey Andreev 7a7a6914a6 KT-2752: fix old tests, add test for clashing between class and its companion object 2016-10-08 19:25:30 +03:00
Alexey Andreev 50dd1e31c3 KT-2752: move tests, that check whether there's no name clash, to JS backend tests 2016-10-08 19:25:29 +03:00
Alexey Andreev 5ce158f297 KT-2752: add basic tests for JsName 2016-10-08 19:25:28 +03:00
Alexey Andreev 8738458c34 KT-2752: fix name clash diagnostic for case of extension property. Add more tests for the diagnostic 2016-10-08 19:25:27 +03:00
Alexey Andreev 8f829557c8 KT-2752: add diagnostic that checks whether Kotlin declarations produce conflicting names in generated JS 2016-10-08 19:25:26 +03:00
Alexey Sedunov d3c14ce7d6 Extract Function: Support implicit abnormal exits via Nothing-typed expressions 2016-10-07 20:20:39 +03:00
Alexey Sedunov fe711da594 Rename: Rename do-while loop variables in the loop condition
#KT-14157 Fixed
2016-10-07 20:20:33 +03:00
Alexander Udalov 9004367f3c Minor refactoring in DeprecatedCallChecker 2016-10-07 20:14:54 +03:00
Alexander Udalov 8949ffbef1 Do not report deprecation on members of deprecated companion
This deprecation is reported on the companion itself anyway
2016-10-07 20:14:53 +03:00
Alexander Udalov b08ed14f66 Rename PlatformTypesMappedToKotlinChecker -> PlatformClassesMappedToKotlinChecker
To prevent confusion with the term "platform type" which has gained a new
meaning since this class was introduced
2016-10-07 20:14:05 +03:00
Alexander Udalov 6ec868d84e Pass LanguageVersionSettings to ClassifierUsageChecker
To be used in future classifier usage checkers
2016-10-07 20:13:24 +03:00
Sergey Mashkov dafe7e3539 KT-14003 kotlinc shebang should use env 2016-10-07 17:52:34 +03:00
Mikhail Glukhikh 375a2cc6ab Build fix (AdditionalResolveDescriptorRendererTestGenerated) 2016-10-07 17:04:29 +03:00
Yan Zhulanow 34efaea6ea Increment PsiModificationTracker counter in a write action
(cherry picked from commit 73307a2)
2016-10-07 16:28:34 +03:00
Yan Zhulanow 0ae9a7a9d1 Add TransactionGuard application service to KotlinCoreEnvironment
(cherry picked from commit 3e0b79e)
2016-10-07 16:28:30 +03:00
Yan Zhulanow 16a9941549 Kapt: Allow to make CompilerConfiguration mutable again
(cherry picked from commit 0780de8)

(cherry picked from commit 95dde72)
2016-10-07 16:28:18 +03:00
Nikolay Krasko 4fd0424b38 Auto-remove local debugger caches on test data modification
(cherry picked from commit 59c28e4)
2016-10-07 13:06:02 +03:00
Denis Zharkov dfb9b323ff Avoid generation of redundant abstract special stubs
#KT-13698 Fixed
2016-10-07 11:59:15 +03:00
Denis Zharkov 6e838f0adc Avoid generation of redundant toArray stubs
#KT-13698 In Progress
2016-10-07 11:59:15 +03:00
Denis Zharkov e05e0ec921 Optimize method count for collection stubs
Do not generate stubs if they're already present in superclasses

 #KT-13698 In Progress
2016-10-07 11:59:15 +03:00
Denis Zharkov 900c442efd Write generic signature for autogenerated toArray
#KT-14195 Fixed
2016-10-07 11:59:15 +03:00
Denis Zharkov 3a100d4139 Improve exception message in collection stubs 2016-10-07 11:59:15 +03:00
Denis Zharkov 8ee568105c Do not generate collection stubs for Kotlin-specific signatures
#KT-14188 Fixed
2016-10-07 11:59:15 +03:00
Denis Zharkov d2de4579de Minor. Extract computation of collection mutable stub list
It's necessary in the next commits to obtain these signatures
without actually emitting any code
2016-10-07 11:59:15 +03:00
Mikhail Glukhikh 70949d10da Refactoring + minor fixes: destructure intention 2016-10-06 21:16:46 +03:00
Mikhail Glukhikh de865c6d46 getUseScope() fixed for destructuring declarations #KT-14181 Fixed 2016-10-06 21:03:24 +03:00
Mikhail Glukhikh e7d290f726 Refactor PSI for destructuring declarations in for: they are now children of KtParameter and not instead of it 2016-10-06 21:03:19 +03:00
Mikhail Glukhikh df0cf3da84 "Simplify using destructuring declaration" is now applicable for function literals #KT-13941 Fixed 2016-10-06 21:03:08 +03:00
Alexander Udalov 8ffe379c92 Use separate module analysis in CliReplAnalyzerEngine 2016-10-06 14:40:21 +03:00
Alexander Udalov 1e51ba7d00 Run classifier usage checkers for ambiguous references when possible
See comment in getReferencedClassifier and importJavaSamInterface.kt for
explanation
2016-10-06 14:40:21 +03:00
Alexander Udalov ec53efd869 Run classifier usage checkers after all imports are resolved
Otherwise the diagnostic was not reported on an unused import of a deprecated
class in diagnostic tests, see the test case
2016-10-06 14:40:20 +03:00
Alexander Udalov f7b4d7d35b Move ClassifierUsageChecker and DeclarationChecker to checkers/ 2016-10-06 14:40:20 +03:00
Alexander Udalov 0905b361d0 Drop LazyTopDownAnalyzerForTopLevel
Replace it everywhere with LazyTopDownAnalyzer
2016-10-06 14:40:20 +03:00
Alexander Udalov 9c70094ceb Move resolveImportsInAllFiles to LazyTDA#analyzeDeclarations
This does not change the behavior: in the other usage of analyzeDeclarations,
a local class is being resolved and therefore TopDownAnalysisContext there does
not contain any files where imports would be resolved
2016-10-06 14:40:20 +03:00
Alexander Udalov 7070b88ea4 Move PlatformToKotlinClassMap out from ModuleParameters
Configure it in the same way as other platform-specific components instead,
simplify some code
2016-10-06 14:40:20 +03:00
Alexander Udalov b77388bd48 Pass PlatformToKotlinClassMap instance to PlatformTypesMappedToKotlinChecker
The purpose of this change is to allow PlatformToKotlinClassMap to be removed
from ModuleDescriptor
2016-10-06 14:40:19 +03:00
Alexey Tsvetkov 0944e9076d Add 1.1 language version to kotlin options for Gradle 2016-10-05 22:50:46 +03:00