Alexey Andreev
5a984a40e6
Fix JS compiler crash when translating external object fun with vararg
...
See KT-19793
2017-09-04 15:34:10 +03:00
Alexey Andreev
989cebe79e
JS: fix bug in temporary variable eliminator
...
The problem was in considering `a` as trivial in following case:
```
var a = b;
```
However, that's wrong assumption, since `b` can be temporary variable
itself which is further substituted by a non-trivial expression.
2017-09-04 15:33:16 +03:00
Alexey Andreev
abb254297a
Properly rename local name aliases when merging JS fragments together
2017-09-04 15:33:16 +03:00
Alexey Andreev
593aa72439
Fix bug in new JS inliner when inlining nested calls
2017-09-04 15:33:15 +03:00
Alexey Andreev
63855af026
Raise JS metadata version due to incompatible changes in inliner
2017-09-04 15:33:14 +03:00
Alexey Andreev
df7d69b5b4
Minor refactoring after improving JS inliner
2017-09-04 15:33:14 +03:00
Alexey Andreev
918ce78c5a
Support inlining internal functions to friend modules in JS BE
...
There's one exception: if an inline internal function calls
private function, this will fail at run time.
2017-09-04 15:33:13 +03:00
Alexey Andreev
41140d00b1
JS: do not copy declarations from inline function wrapper more than once
2017-09-04 15:33:13 +03:00
Alexey Andreev
1260146d25
Use local aliases for char boxing and unboxing in JS BE
2017-09-04 15:33:12 +03:00
Alexey Andreev
7646c2fc72
Use local aliases for Kotlin runtime functions in JS BE
2017-09-04 15:33:11 +03:00
Alexey Andreev
8c256b24dc
Avoid duplication of imports introduced during JS inlining
2017-09-04 15:33:10 +03:00
Alexey Andreev
f2b2e20331
Minor cleanup in JS backend
2017-09-04 15:33:10 +03:00
Alexey Andreev
b90885d1cb
Support new inline function format in JS DCE tool
2017-09-04 15:33:09 +03:00
Alexey Andreev
901346243d
JS: fix inlining of function that calls functions from other modules
2017-09-04 15:33:08 +03:00
Alexey Andreev
6bb5d00700
Fix inlining of default arguments in JS BE
2017-09-04 15:33:07 +03:00
Alexey Andreev
834cd1d93d
Fix testdata for new JS inliner
2017-09-04 15:33:07 +03:00
Alexey Andreev
61ba6e528a
Fix JS line number tests
2017-09-04 15:33:06 +03:00
Alexey Andreev
df782eaadd
Fix incremental compilation to JS with new inliner
2017-09-04 15:33:06 +03:00
Alexey Andreev
eb6186b74d
Fix translation of classes to work with new JS inliner
2017-09-04 15:33:05 +03:00
Alexey Andreev
8e6b1da592
Generate less JS inline function wrappers
2017-09-04 15:33:04 +03:00
Alexey Andreev
aaf3380050
Add optimizer for trivial functions with wrappers in JS BE
2017-09-04 15:33:04 +03:00
Alexey Andreev
445a80c755
Support new JS inline function format in multi-module projects
2017-09-04 15:33:03 +03:00
Alexey Andreev
7c421b0b83
Refactor JS translator to generate code for new inliner
2017-09-04 15:33:03 +03:00
Nicolay Mitropolsky
29857e48c8
KtLightAnnotationTest fix for oddly broken annotations getter
2017-09-04 15:20:20 +03:00
Nicolay Mitropolsky
be4b86e3d9
KtLightAnnotationForSourceEntry fix for smart-pointers creating
...
`LightElementValue` made PsiCompiledElement to make it properly anchorable when creating smartpointers, when still use `kotlinOrigin.containingFile` for it to be able to `registerProblem` on such elements. (refs KT-18054)
2017-09-04 15:20:20 +03:00
Dmitry Jemerov
b0fb3370e3
Correctly get qualified name for properties without backing field
...
#KT-19903
2017-09-04 13:21:03 +02:00
Dmitry Jemerov
cc6bfcfc7c
Attach super line marker to name identifier
...
#KT-19843 Fixed
2017-09-04 13:21:03 +02:00
Dmitry Jemerov
f008736ef7
Fix package name convention pattern
...
#KT-19927 Fixed
2017-09-04 13:21:03 +02:00
Dmitry Jemerov
f709bd869a
Accept invalid patterns in naming convention settings
...
#KT-19926 Fixed
2017-09-04 13:21:03 +02:00
Dmitry Jemerov
f74416a151
Cache the result of hasTopLevelCallables() for a KtFile
...
#KT-19885 Fixed
2017-09-04 13:21:03 +02:00
Dmitry Jemerov
839f197a1e
KtFile: J2K and cleanup
2017-09-04 13:21:03 +02:00
Dmitry Jemerov
ebef2dc0cf
KtFile: rename to .kt
2017-09-04 13:21:03 +02:00
dzieciolowski
80f1a1bde8
Update gradle.xml - remove typo ( #1279 )
2017-09-04 13:11:24 +02:00
Alexander Udalov
840fce520c
Update KotlinVersion.CURRENT to 1.1.50
2017-09-04 13:09:52 +03:00
Dmitry Jemerov
2d10df1541
Fix red code: mark dependency as exported
2017-09-01 16:59:03 +02:00
Dmitry Jemerov
81d0445775
Fix master-171 build: don't use API introduced in newer IDEA
2017-09-01 16:54:24 +02:00
Dmitry Jemerov
ad37626af3
Fix compilation of KotlinBytecodeToolWindow
2017-09-01 16:41:26 +02:00
Dmitry Jemerov
59976baac2
Fix path to generated test
2017-09-01 15:27:44 +02:00
Dmitry Petrov
76acd23bd7
Revert "Fix synthetic accessor generation for properties"
...
This reverts commit 2427b2c
2017-09-01 16:09:29 +03:00
Dmitry Jemerov
db840a73a9
Set scope of all plugin module dependencies to provided
2017-09-01 14:06:39 +02:00
Alexander Udalov
05290c3ed2
Fix AssertionError on incompatible scopes with impl typealias
...
This has been introduced in 9ecd04f628
2017-09-01 14:47:29 +03:00
Pavel V. Talanov
f695ff96e8
IDEKotlinBinaryClassCache: store soft reference in UserData
...
Storing hard reference leads to binary headers being stored indefinitely
2017-09-01 14:30:27 +03:00
Dmitry Jemerov
0fa4e1cbaf
Set scope of plugin dependencies to provided
2017-09-01 13:11:39 +02:00
Vyacheslav Gerasimov
5220dfc0ad
Android: Add inspection & quickfix to convert findViewById to api 26
...
#KT-19940 Fixed Target Version 1.1.5
2017-09-01 13:32:52 +03:00
Vyacheslav Gerasimov
be900a76d8
Android Lint: check for array initializer in SuppressLint
2017-09-01 13:32:08 +03:00
Vyacheslav Gerasimov
f4da6c2cc6
UAST: findAttributeValue returns default value when no declared value found
2017-09-01 13:32:00 +03:00
Vyacheslav Gerasimov
56a075eab6
UAST: Fix annotation arguments processing
...
multiple unnamed arguments represented as value named expression with array initializer
call kind for array in annotation argument should be "array initializer" instead of "method call"
#KT-16600 Fixed Target Versions 1.1.5
2017-09-01 13:31:50 +03:00
Dmitry Jemerov
e0bf438195
Move .xml files back to main idea module
2017-09-01 11:57:37 +02:00
Dmitry Jemerov
895d5fda46
Extract parts of plugin that depend on Java-only plugins to idea-jvn
2017-09-01 11:57:37 +02:00
Dmitry Jemerov
8b0d606ab5
Move Android .xml file to idea-android module
2017-09-01 11:57:37 +02:00