Alexey Andreev
33daf83f14
KT-2752: refactoring:
...
1. Get rid of most of ManglingUtils
2. Use simple mangling for delegated properties instead of stable mangling
3. Use stable mangling for public declarations of open non-public classes
4. When generating a fresh name in a JsScope, check it for clashing against parent scopes
5. JsFunctionScope does not generate fresh name instead of stable names
6. Function scopes inherit directly from global scope
7. Generate simple mangled names for backing fields of 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
638952e96e
KT-2752: JsName renames native declarations
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
5e3aa33b13
KT-2752: add draft implementation of JsName annotation. Fix some tests using the annotation
2016-10-08 19:25:27 +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 Andreev
f70b50b6e2
KT-2752: refactor generation of FQN in JS. Move backend-independent code to generic code in frontend.
2016-10-08 19:25:25 +03:00
Alexey Andreev
ed55923bb0
KT-2752: a new approach to compose fully-qualified names that does not depend on code generation and can be reused in JS front-end
2016-10-08 19:25:25 +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
8e9f32db9e
Search Everywhere: Render function parameter types. Render extension type in prefix position
...
#KT-13976 Fixed
#KT-13977 Fixed
2016-10-07 20:20:38 +03:00
Alexey Sedunov
a6601b27e9
Move: Show error message on applying to enum entries
...
#KT-14182 Fixed
2016-10-07 20:20:37 +03:00
Alexey Sedunov
fad4944eee
Rename: Use qualified class name when looking for occurrences in non-code files
...
#KT-14128 Fixed
#KT-13862 Fixed
#KT-6199 Fixed
2016-10-07 20:20:36 +03:00
Alexey Sedunov
da1178fe0c
Create from Usages: Do not suggest on type-mismatched expressions which are not call arguments
...
#KT-14143 Fixed
2016-10-07 20:20:35 +03:00
Alexey Sedunov
e4dc2ae367
Rename: Implement popup chooser for overriding members
...
#KT-13963 Fixed
2016-10-07 20:20:34 +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
Alexey Sedunov
140d0b61f1
Move: Fix exception on moving Kotlin file without declarations
...
#KT-14114 Fixed
2016-10-07 20:20:32 +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
Alexander Udalov
9fd698db36
Fix NPE in StorageManager on sanitizing stack trace
...
This could happen when running the compiler from the command line, where
MemoryBasedClassLoader is used which does not ever create Package instances.
2016-10-07 20:13:23 +03:00
Sergey Mashkov
17137f1c4f
KT-13478 Error creating Maven project by archetype: The desired archetype does not exist
...
don't filter versions in internal mode or if all were filtered out
2016-10-07 17:56:05 +03:00
Sergey Mashkov
297248dc4f
KT-13638 Update Maven configuration actions in IDE according to changes in https://github.com/JetBrains/kotlin-web-site/pull/458
2016-10-07 17:54:32 +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
2f933cfcf2
Kapt: Handle exceptions during annotation processing gracefully
...
(cherry picked from commit ee26c19)
2016-10-07 16:28:33 +03:00
Yan Zhulanow
82160bc86d
Parse enum arrays correctly
...
(cherry picked from commit 5f2b5cf)
2016-10-07 16:28:32 +03:00
Yan Zhulanow
f15f90a719
Kapt: Support apt options (KT-13984)
...
(cherry picked from commit b566a37)
2016-10-07 16:28:31 +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
46f3eae32c
Kapt: Dispose every JeElement and JeTypeMirror because some annotation processors may store them in static fields. (KT-13917)
...
Hello, Data Binding, why you cache them? :(
(cherry picked from commit d86a30b)
2016-10-07 16:28:29 +03:00
Yan Zhulanow
f83e7509b2
Kapt: typeElement.asType() should preserve type parameters and propagate it to its supertypes (KT-13865)
...
(cherry picked from commit 92c9cea)
2016-10-07 16:28:28 +03:00
Yan Zhulanow
a22721fbd8
Kapt: Add test on Map<Key, Intf> and MutableMap<Key, Intf>
...
(cherry picked from commit 59cdbcb)
2016-10-07 16:28:28 +03:00
Yan Zhulanow
30ed279426
Kapt: Measure Annotation Processing time
...
(cherry picked from commit 2554d40)
2016-10-07 16:28:27 +03:00
Yan Zhulanow
e770b9ff60
Minor: add 'kapt' to dictionary
...
(cherry picked from commit 2f44b0b)
2016-10-07 16:28:26 +03:00
Yan Zhulanow
238340a143
Kapt: Simplify wrapper tests
...
(cherry picked from commit 1677984)
2016-10-07 16:28:25 +03:00
Yan Zhulanow
e04f834a0e
Kapt: Support type parameters in asMemberOf() (KT-13804)
...
(cherry picked from commit 0d97d73)
2016-10-07 16:28:24 +03:00
Yan Zhulanow
415acfbd05
Kapt: asMemberOf() should also check the containing type itself, not only its supertypes (KT-13823)
...
(cherry picked from commit 9f9ffdf)
2016-10-07 16:28:23 +03:00
Yan Zhulanow
cb9dc21649
Dispose IntelliJ platform components after annotation processing complete.
...
Annotation processors may cache ProcessingEnvironment.
(cherry picked from commit bd7a9c6)
2016-10-07 16:28:22 +03:00
Yan Zhulanow
49926fda36
Use LightParameter from Kotlin light classes to add an inner class constructor parameter instead of calling addParameter(name, type). The latter tries to load an icon :( (KT-13798)
...
(cherry picked from commit cc86d79)
(cherry picked from commit de55de2)
2016-10-07 16:28:21 +03:00
Yan Zhulanow
f7f8cff00d
Kapt: Return substituted supertypes in directSupertypes() for immediate class types (KT-13746)
...
(cherry picked from commit 3aae990)
(cherry picked from commit 198115b)
2016-10-07 16:28:20 +03:00
Yan Zhulanow
8d2a4c3f91
asMemberOf() should always substitute type parameters for methods using the relevant substitutor
...
(cherry picked from commit dfadd17)
(cherry picked from commit 49b07a7)
2016-10-07 16:28:19 +03:00