Dmitry Petrov
ba2c3136bb
Prohibit non-inner classes in enum entries since 1.3
2017-09-11 09:42:18 +03:00
Dmitry Petrov
ea91a0794d
Allow modifier 'inner' on a class nested in enum entry class
2017-09-11 09:42:18 +03:00
Dmitry Petrov
488a825349
Specialize diagnostic message for nested classes not allowed
2017-09-11 09:42:18 +03:00
Alexey Andreev
c65a79bca4
Fix tests for inline cycle diagnostics in JS
2017-09-08 18:27:42 +03:00
Alexey Andreev
c66bc0b0e9
Remap source maps in JS DCE. Improve JS DCE error logging
...
See KT-19821
2017-09-08 18:27:41 +03:00
Alexander Udalov
6c3620f481
Suppress logging from jline
...
#KT-19243 Fixed
2017-09-08 15:33:30 +03:00
Alexander Udalov
2877314313
Support "::foo" as a short-hand for "this::foo"
...
#KT-15667 Fixed
2017-09-08 10:59:44 +03:00
Toshiaki Kameyama
5a5a27b983
Intentions to generate accessors for a property #KT-17322 Fixed
2017-09-07 17:33:39 +03:00
Mikhael Bogdanov
2fa4c28e0f
Properly reorder arguments in anonymous object super class constructor
...
#KT-18356 Fixed
2017-09-07 15:18:05 +02:00
Mikhael Bogdanov
44fd8103d4
Convert ObjectSuperCallArgumentGenerator to Kotlin
2017-09-07 15:18:04 +02:00
Mikhael Bogdanov
ddb6e3307e
Rename ObjectSuperCallArgumentGenerator.java to ObjectSuperCallArgumentGenerator.kt
2017-09-07 15:18:04 +02:00
Mikhael Bogdanov
529036eb78
Move ObjectSuperCallArgumentGenerator to separate file
2017-09-07 15:18:03 +02:00
Mikhail Zarechenskiy
088800d82f
Report error about val reassignment via backing field since Kotlin 1.3
...
Also improve message for current warning
#KT-16681 Fixed
2017-09-07 12:54:31 +03:00
Mikhail Zarechenskiy
03440210ee
Introduce language version 1.3
2017-09-07 12:52:32 +03:00
Alexander Udalov
27b8b209e3
Refactor accessors for backing fields in JVM back-end
2017-09-07 12:24:54 +03:00
Alexander Udalov
326111aece
Render .kotlin_module files nicely for tests
2017-09-07 12:24:53 +03:00
Mikhael Bogdanov
1cf8ee9433
Don't remove nullability assertions of anonymous object transformation
...
#KT-19910 Fixed
2017-09-06 17:48:13 +02:00
Alexey Andreev
361d6dfca0
JS: rewrite source map generator to use specialized JSON writer
...
Fixes problems with string escaping. See KT-20005
2017-09-06 17:55:06 +03:00
Dmitry Petrov
8c5d18c1f2
Tests for boxing optimization on KClass are JVM-specific
2017-09-06 14:20:05 +03:00
Dmitry Petrov
61faa068d4
Do not optimize == for KClasses in redundant boxing elimination
...
For primitive wrappers such as java.lang.Integer,
jlc = java.lang.Integer.class
jlt = java.lang.Integer.TYPE
!(ljc.equals(ljt))
However, in Kotlin corresponding KClass instances are equal.
#KT-17748 Fixed Target versions 1.1.50
#KT-17879 Fixed Target versions 1.1.50
2017-09-06 09:54:36 +03:00
Dmitry Petrov
2b27e64fc8
Improve diagnostics for "not yet supported in inline"
...
- Tell user what exactly is not supported (e.g., local inline function)
- Reduce diagnostics range to a keyword or an identifier
where appropriate
#KT-16223 Fixed Target versions 1.1.50
2017-09-06 09:46:33 +03:00
Mikhael Bogdanov
160ba0c7c0
Destroy state and environment in android test
2017-09-06 08:20:33 +02:00
Mikhael Bogdanov
71663afbfe
Update android test configuration
2017-09-06 08:20:33 +02:00
Mikhael Bogdanov
81a1bf3319
Recalculate max stack on method emitting: optimizations could change it
2017-09-06 08:20:32 +02:00
Nikolay Krasko
80ffc5cd41
Make local file indent feature work for Kotlin files
...
Revert "Add language to formatting blocks to fetch indent settings propertly"
This reverts commit d717da5
2017-09-05 19:49:01 +03:00
Mikhail Zarechenskiy
a3060f1073
Add test on obsolete issue
...
#KT-9203 Obsolete
2017-09-05 16:15:18 +03:00
Dmitry Petrov
21cdf9dd5b
Add cast to expected type in call-based in-expression generation
...
#KT-20106 Fixed
2017-09-05 15:32:53 +03:00
Mikhail Zarechenskiy
081b732070
Improve diagnostics for lateinit properties with generic type
...
#KT-11834 Fixed
2017-09-05 14:44:55 +03:00
Mikhail Zarechenskiy
356f903645
Make classes for CLI public to reuse them in other tools
...
To configure Kotlin environment and use them in plugins for Eclipse or NetBeans
2017-09-05 14:42:48 +03:00
Mikhail Zarechenskiy
0dc29d6d7e
Get rid of passing typeChecker from the call hierarchy
2017-09-05 14:41:46 +03:00
Mikhail Zarechenskiy
e7449a3584
Fix referencing inner class constructor on an outer class instance
...
#KT-12796 Fixed
2017-09-05 14:41:44 +03:00
Mikhail Zarechenskiy
4a6f35b9c2
Fix exception on invalid code, don't resolve uninitialized type
...
#KT-11963 Fixed
2017-09-05 14:41:42 +03:00
Mikhail Zarechenskiy
6d4bb229ac
Fix compilation exception where overload ambiguity should be
...
#KT-16246 Fixed
2017-09-05 14:41:40 +03:00
Mikhail Zarechenskiy
ec512d1c8a
Add tests on obsolete issues
...
#KT-11236 Obsolete
#KT-12399 Obsolete
2017-09-05 14:41:34 +03:00
Dmitry Jemerov
7ca1fe0f55
Fix compilation
2017-09-04 14:39:25 +02:00
Alexey Andreev
28c9d274ec
JS: prohibit illegal chars on dynamic call site
...
See KT-19540
2017-09-04 15:35:00 +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
834cd1d93d
Fix testdata for new JS inliner
2017-09-04 15:33:07 +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
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
Dmitry Petrov
76acd23bd7
Revert "Fix synthetic accessor generation for properties"
...
This reverts commit 2427b2c
2017-09-01 16:09:29 +03: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
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
Dmitry Petrov
5d44e095c8
Nullability assertions for extension receiver
...
In Kotlin 1.1 and before, there were no nullability assertions on
extension receivers, because receiver is resolved with NO_EXPECTED_TYPE.
So, if an expression of platform type is passed as an extension receiver
to a non-private function, it would fail with IllegalArgumentException.
However, if the function is private, then we generated no parameter
assertions under assumption that such function can be called from Kotlin
only, and all arguments are checked on the call site. Thus 'null' could
propagate indefinitely.
In Kotlin 1.2, we do the following:
- Generate nullability assertions for expression receivers.
NB nullability assertions are stored for ReceiverValue instances, not
for expressions: given expression can act as receiver in different
calls, each with an expected receiver type of its own.
- Generate nullability assertions for extension receivers of private
operator functions.
NB it still can throw NPE for some particular "optimized" cases, but at
least those nulls would not propagate indefinitely.
This behavior is disabled by an "advanced" command-line option
'-Xno-receiver-assertions'.
2017-09-01 09:49:21 +03:00
Dmitry Petrov
2427b2cc6c
Fix synthetic accessor generation for properties
...
Generate synthetic accessors for property accessors only if the
corresponding methods are accessible in the current context.
#KT-19306 Fixed Target versions 1.1.5
2017-09-01 09:48:26 +03:00
Mikhail Zarechenskiy
dde0efd8ab
Refactoring: extract anonymous objects to classes, rename variable
2017-09-01 02:24:35 +03:00
Mikhail Zarechenskiy
f5222600d8
Improve diagnostics for fake calls when type inference failed
...
#KT-13665 Fixed
2017-09-01 02:05:58 +03:00
Mikhail Zarechenskiy
17b4874c37
Refactor FakeCallResolver, make error reporting simpler
2017-09-01 02:05:50 +03:00