Denis Zharkov
4e4bf31016
Fix loading JSR-305 nicknames for @CheckForNull annotation
...
For sake of working without jsr305.jar in the classpath `resolveTypeQualifierAnnotation`
may return javax.annotation.CheckForNull (although the latter is nickname itself)
#KT-19985 Fixed
2017-08-31 15:13:26 +03:00
Denis Zharkov
ed79891ee6
Fix type mapping for parameter of Collection<Int>::remove override
...
In the case the single parameter of override has `Integer` type instead
of `int` type (while in common case it would be just `int`)
See the comment inside forceSingleValueParameterBoxing for clarification
#KT-19892 Fixed
2017-08-31 12:38:08 +03:00
Denis Zharkov
73c139d250
Minor. Drop unused ExpressionCodegen::expressionJetType
2017-08-31 12:35:41 +03:00
Denis Zharkov
6af91b8c97
Drop redundant tests erroneously added in c8d25c587a
2017-08-31 12:35:05 +03:00
Denis Zharkov
80a90572d6
Fix target for annotations/metadata on open suspend functions
...
Get rid of rewriting of vars in FunctionCodegen::generateMethod,
just extracted generateMethodBody instead
#KT-19814 Fixed
2017-08-31 12:27:28 +03:00
Dmitry Petrov
742fecf69c
Minor: readability improvements after code review
2017-08-31 11:28:08 +03:00
Dmitry Petrov
21e3051a78
Use Name instead of String for lateinit-related StackValues
...
to emphasize that this is a descriptor name, not a JVM name
2017-08-31 11:28:08 +03:00
Dmitry Petrov
c8d25c587a
Do not use reflection it local/top-level lateinit tests
2017-08-31 11:28:08 +03:00
Dmitry Petrov
638eb28692
Unify code for lateinit properties and local variables checking
2017-08-31 11:28:08 +03:00
Dmitry Petrov
b12e20b2a3
Minor: move local lateinit tests to lateinit/local
2017-08-31 11:28:08 +03:00
Dmitry Petrov
bbf9bf91fc
Check language feature support for local and top-level lateinit vars
2017-08-31 11:28:08 +03:00
Dmitry Petrov
01cce59c35
Make sure lateinit top-level properties work in JVM BE
2017-08-31 11:28:08 +03:00
Dmitry Petrov
d951e957ea
Support lateinit modifier on top-level properties
...
Allow lateinit modifier on top-level properties.
Modifiers 'lateinit' and 'header' are incompatible.
2017-08-31 11:28:08 +03:00
Dmitry Petrov
78b69cad77
Support lateinit local vars in redundant null check elimination
...
Lateinit local vars are guaranteed to be non-null after store.
So we mark such stores as storing non-null value
(could be useful for some other constructs, too),
and optimize null checks accordingly.
2017-08-31 11:28:08 +03:00
Dmitry Petrov
d0b0fdd732
Ignore lateinit local vars tests in JS and Native
2017-08-31 11:28:08 +03:00
Dmitry Petrov
c5b9d500bc
Support lateinit local vars in JVM BE
2017-08-31 11:28:08 +03:00
Dmitry Petrov
53961e8df0
Check lateinit applicability for local variables
...
TODO probably should be refactored together with DeclarationsChecker
2017-08-31 11:28:08 +03:00
Dmitry Petrov
3bae430d49
Resolve lateinit variables
...
Do not report UNINITIALIZED_VARIABLE on lateinit variables
Provide delegating constructors for descriptors for compatibility.
2017-08-31 11:28:08 +03:00
Dmitry Petrov
f88cd5ed3d
Allow 'lateinit' modifier on local variables
2017-08-31 11:28:08 +03:00
Pavel V. Talanov
352071dc4a
Avoid creating ModuleSourceInfo instances with empty content
...
This is overall desirable because it means less ModuleDescriptor
instances which is good for IDE analysis performance
2017-08-30 19:22:30 +03:00
Dmitry Jemerov
a623fb5312
Cleanup
2017-08-30 15:37:03 +02:00
Toshiaki Kameyama
29d2482b62
J2K RemovePartsFromPropertyFix
2017-08-30 15:36:58 +02:00
Toshiaki Kameyama
350cea7afd
move RemovePartsFromPropertyFix.java to RemovePartsFromPropertyFix.kt
2017-08-30 15:36:26 +02:00
Toshiaki Kameyama
be64a6feeb
INAPPLICABLE_LATEINIT_MODIFIER should have a quickfix to remove initializer #KT-18826 Fixed
2017-08-30 15:36:25 +02:00
Dmitry Jemerov
a68312379e
Update ReadMe.md ( #1274 )
2017-08-30 15:25:48 +02:00
Denis Zharkov
aef5911c7e
Obtain original suspend function view for inline codegen
...
It's necessary for generic inline suspend as a codegen
for it uses binding slice SUSPEND_FUNCTION_TO_JVM_VIEW
to generate fake continuation parameter, so all the
descriptors that are used for body generation must be
obtained from the SUSPEND_FUNCTION_TO_JVM_VIEW
#KT-19528 Fixed
2017-08-30 16:19:43 +03:00
Alexander Udalov
abb07ced6d
Minor, improve kdoc on JvmStatic
2017-08-30 15:51:30 +03:00
Alexander Udalov
fb4bf4e5b8
Report error if Java 9 module "kotlin.stdlib" is not found in the graph
...
Use "-Xallow-kotlin-package" to suppress this error
#KT-19176 Fixed
2017-08-30 15:47:54 +03:00
Alexander Udalov
f47093dc45
Allow to access unexported package of named module in unnamed module in IDE
...
#KT-19492 Fixed
2017-08-30 15:45:45 +03:00
Alexander Udalov
290deb6ba4
Minor, improve test on Java 9 modules
...
Test that unnamed module does not read unexported package of a named
module
2017-08-30 15:45:45 +03:00
Alexander Udalov
09c1115ff9
Report errors on usages of unnamed module from named modules in IDE
...
#KT-19493 Fixed
2017-08-30 15:45:45 +03:00
Denis Zharkov
0d7c0d4e5e
Add auto-generated tests after d6fbb084b1
2017-08-30 15:07:31 +03:00
Mikhael Bogdanov
b231bf0207
Switch custom jre path for run configuration from 9-ea to 9 jdk
2017-08-30 13:18:43 +02:00
Mikhael Bogdanov
ce0fb60ff4
Switch custom jre path for run configuration from 9-ea to 9 jdk
2017-08-30 12:52:44 +02:00
Denis Zharkov
d6fbb084b1
Use the same temporary trace for analyzing all candidate calls
...
Otherwise, when completing all the unsuccessfull candiates,
resolution of each lambda-arguments starts repeatedly for each candidate
that leads to exponential time
NB: Changes in `completeArguments` are necessary because otherwise
nested lambdas will be analyzed twice:
once for the main resolved call, and then for all candidates
that again leads to exponential complexity
#KT-16672 Fixed
#KT-19457 Fixed
2017-08-30 12:51:29 +03:00
Mikhael Bogdanov
84c2e01161
Update changelog for 1.1.4-3
2017-08-30 10:43:11 +02:00
Mikhael Bogdanov
68522b9f1e
Use lazy logging in lowers
2017-08-30 10:41:55 +02:00
Dmitry Jemerov
dce6cb0cfc
Highlight Kotlin files in build output
...
#KT-12246 Fixed
2017-08-30 10:18:00 +02:00
Pavel V. Talanov
4ada692421
Provide correct resolve scope to binaries in script dependencies
...
#KT-16760 Fixed
2017-08-29 20:55:20 +03:00
Pavel V. Talanov
a120130069
Workaround NonClasspathClassFinder not supporting inner classes
...
Explicitly split qualified names, can be removed once platform is fixed
#KT-19310 Fixed
2017-08-29 20:54:25 +03:00
Toshiaki Kameyama
a6c2135851
Counter loop in Java is transformed to less effective loop in Kotlin #KT-19337 Fixed
2017-08-29 17:37:58 +02:00
Dmitry Jemerov
eefc6ebcc9
Add missing read action in KotlinBuildScriptManipulator
2017-08-29 17:33:42 +02:00
baratynskiy
67fdd9f76e
javac-wrapper: fixes after rebase and review
2017-08-29 18:01:36 +03:00
baratynskiy
2dc0c55e76
javac-wrapper: get rid of TreePath because it is slow
2017-08-29 18:01:36 +03:00
baratynskiy
1b0d7ff5be
javac-wrapper: constant evaluator
2017-08-29 18:01:36 +03:00
baratynskiy
4f180e1292
javac-wrapper: identifier resolver
2017-08-29 18:01:36 +03:00
baratynskiy
01883a41cb
javac-wrapper: refactoring, fixes and tests
2017-08-29 18:01:36 +03:00
baratynskiy
8494e54608
javac-wrapper: -Xuse-javac -> -Xuse-javac and -Xcompile-java
2017-08-29 18:01:36 +03:00
Nicolay Mitropolsky
2224720a90
findClass is nullable in IDEA 171, so !! added
2017-08-29 17:40:53 +03:00
Nicolay Mitropolsky
108a40261b
KtLightAnnotationForSourceEntry fix for reading unnamed java-annotation parameter
2017-08-29 17:32:07 +03:00