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
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
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
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
Denis Zharkov
0d7c0d4e5e
Add auto-generated tests after d6fbb084b1
2017-08-30 15:07:31 +03: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
68522b9f1e
Use lazy logging in lowers
2017-08-30 10:41:55 +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
108a40261b
KtLightAnnotationForSourceEntry fix for reading unnamed java-annotation parameter
2017-08-29 17:32:07 +03:00
Alexey Tsvetkov
ac3beabf43
Update 'idea.plugins.compatible.build' in KotlinCoreEnvironment
...
When compiler test was run before Intellij tests,
KotlinCoreEnvironment set the 'idea.plugins.compatible.build'
system property to '171.9999', which then prevented
Kotlin plugin from loading in Intellij tests (so all these tests failed),
because Kotlin plugin has 'sinceBuild' set to '172.1'.
2017-08-29 04:28:10 +03:00
Alexey Tsvetkov
cb1ffdccd7
Add test where unused file is removed
2017-08-29 04:28:10 +03:00
Alexey Tsvetkov
66a77c7ec2
Fix Gradle IC cache version checking
2017-08-29 04:28:09 +03:00
Alexey Tsvetkov
cf72b14b34
Fix typo in test name
2017-08-29 04:28:08 +03:00
Alexey Tsvetkov
141c889a84
Make test case more useful
2017-08-29 04:28:08 +03:00
Alexey Tsvetkov
5f9bad5905
Add JS specific build logs to inline properties IC tests
...
Unlike the JVM target platform, the JS back-end does
not track getters' and setters' usages separately,
so when either accessor of some property is changed,
all usages of that property will be rebuilt.
2017-08-29 04:28:07 +03:00
Alexey Tsvetkov
73b63bb343
Refactor inline properties tests
2017-08-29 04:28:07 +03:00
Alexey Tsvetkov
44e8ae3571
JS IC: detect inline function changes
2017-08-29 04:28:07 +03:00
Alexey Tsvetkov
b73d5cbe1f
Mock constant search in JPS tests
2017-08-29 04:28:06 +03:00
Alexey Tsvetkov
2312013c41
Move JVM specific IC tests to separate dir
2017-08-29 04:28:06 +03:00
Alexey Tsvetkov
66cb45c202
Minor: replace forEach with filterTo
2017-08-29 04:28:05 +03:00
Alexey Tsvetkov
dbe3baf740
Minor: mark calculateSourcesToCompile abstract
2017-08-29 04:28:04 +03:00
Alexey Tsvetkov
919daefb0e
Rename IncrementalCacheImpl->IncrementalJvmCache
2017-08-29 04:28:04 +03:00
Alexey Tsvetkov
093bbc069a
Fix typo destonationDir->destinationDir
2017-08-29 04:28:04 +03:00
Alexey Tsvetkov
1c4ada2008
Fix searching serialized classes package contains multiple fragments
2017-08-29 04:28:03 +03:00
Alexey Tsvetkov
b54414d628
Implement Gradle JS IC support
...
#KT-19956 fixed
To try the experimental JS IC add
'kotlin.incremental.js = true' to a 'local.properties'
or 'gradle.properties' file in Gradle project's root.
2017-08-29 04:23:02 +03:00
Alexey Tsvetkov
7ecf5abdc7
Add class hierarchy tests to JS and JVM IC tests
2017-08-29 02:24:38 +03:00
Alexey Tsvetkov
0a5fe3ef7c
Move JVM specific IC tests with class hierarchy changes
2017-08-29 02:24:38 +03:00
Alexey Tsvetkov
166883d847
Move JVM specific IC test data to separate dir
2017-08-29 02:24:37 +03:00
Alexey Tsvetkov
7810da7018
Add IC compiler tests with Java
2017-08-29 02:24:37 +03:00
Alexey Tsvetkov
71e8f16906
Generate IC compiler tests instead of using parametrized runner
...
# Conflicts:
# compiler/incremental-compilation-impl/incremental-compilation-impl.iml
2017-08-29 02:24:37 +03:00
Alexey Tsvetkov
52b638ddb3
Throw exception if initial build has failed in IC tests
2017-08-29 02:24:37 +03:00
Alexey Tsvetkov
c7775b8d11
Write build info only on successful build
2017-08-29 02:24:37 +03:00
Alexey Tsvetkov
20551f6c99
Do not report error when JS IC is enabled and no source files is specified
2017-08-29 02:24:37 +03:00
Alexey Tsvetkov
bb1cba67b7
Implement JS IC
2017-08-29 02:24:37 +03:00
Alexey Tsvetkov
4aea9b349c
Refactor incremental services
2017-08-29 02:24:37 +03:00
Alexey Tsvetkov
356536d32b
Update inputs cache on rebuild
2017-08-29 02:24:37 +03:00
Alexey Tsvetkov
20b14d4121
Extract IncrementalJvmCompilerRunnerTest
2017-08-29 02:24:37 +03:00
Alexey Tsvetkov
6fedf07f56
Introduce ChangesCollector
2017-08-29 02:24:37 +03:00
Alexey Tsvetkov
d4d684a7f0
Introduce IncrementalCompilerRunner#makeServices
2017-08-29 02:24:37 +03:00
Alexey Tsvetkov
65529fa866
Introduce IncrementalCompilerRunner#markDirty
2017-08-29 02:24:37 +03:00
Alexey Tsvetkov
53d911ab99
Move IncrementalCompilerRunner to separate file
2017-08-29 02:24:37 +03:00
Alexey Tsvetkov
5ddc8d83bb
Move compileIncrementally to common IC
2017-08-29 02:24:37 +03:00
Alexey Tsvetkov
60f68266dd
Continue extracting common IC code
2017-08-29 02:24:36 +03:00