Vladimir Dolzhenko
30b98aaeb7
Keep attachments of cause exception in KotlinExceptionWithAttachments and provide elements in attachments in case of errors during kotlin idea resolution
...
Relates to EA-210942, EA-209622 etc
2019-10-17 10:22:32 +02:00
Stanislav Erokhin
84aff5f630
Add some changes to introduced extension points
2019-10-17 04:41:29 +03:00
Jim
267287118b
Frontend plugins to upstream
...
Change-Id: Id9203c92d0a711e4f21565bd225a465bd41db476
2019-10-17 04:41:27 +03:00
Steven Schäfer
4878c7967a
JVM: Handle inline class equality in when statement with declaration
...
#KT-34268 Fixed
2019-10-16 19:23:49 +02:00
Alexander Udalov
65c09a5e57
Minor, use experimental unsigned types in CityHash
...
This fixes 233 experimental usage API warnings
2019-10-16 15:00:31 +02:00
Alexander Udalov
d0b241b681
Minor, fix typo in -include-runtime argument help
...
#KT-34240 Fixed
2019-10-16 15:00:03 +02:00
Mikhael Bogdanov
adae629258
Report diagnostic on virtual tailrec function
...
#KT-18541 Fixed
2019-10-16 13:02:31 +02:00
Mads Ager
8305baa5fe
[JVM_IR] Avoid unbounded recursion for recursive suspend functions.
...
Additionally, deal with primitive types in AddContinuationLowering.
2019-10-16 13:50:52 +03:00
Georgy Bronnikov
ed6ca7d67e
JVM_IR: fix for SingletonReferencesLowering
...
When replacing an enum entry reference with `this`, you need to take
`this` from the function's `dispatchReceiverParameter`, not the class's
`thisReceiver`. Otherwise the code generator fails to find the reference
among accessible variables.
2019-10-16 13:19:40 +03:00
Ilya Gorbunov
941980c154
Cleanup FE analysis flag allowKotlinPackage
...
It was used to allow custom contracts when compiling stdlib
with the Kotlin 1.2 compiler. Since 1.3 compiler is used now, this
flag is no longer necessary.
2019-10-15 19:08:57 +03:00
Georgy Bronnikov
f3cae210f8
JVM_IR: handle type parameters in constructors for @JvmOverloads stubs
2019-10-15 14:55:18 +03:00
Ilya Goncharov
7ceb2c79b8
[Gradle, JS] Exclude output directory from conformance test
2019-10-15 14:09:28 +03:00
Ilya Goncharov
8ae43c6c36
[Gradle, JS] Add kotlin-source-map-loader' ignores to exclude in tests
...
- node_modules
- .gradle
2019-10-15 11:38:11 +03:00
Dmitry Gridin
1a8796c79a
LightClassDataHolder: shouldn't catch ControlFlowException
2019-10-14 21:45:10 +07:00
Dmitry Gridin
7c1f2e8735
LightClassDataHolder: cleanup code
2019-10-14 21:45:10 +07:00
Nikolay Krasko
79cb10a755
Patch initializing EmptySubstitutor service and fix null references
...
There's a cycle in service initialization and PsiSubstitutor 'clinit'
2019-10-14 16:55:25 +03:00
pyos
d3992826e4
JVM_IR: discard parameter annotations in anonymous object constructors
2019-10-14 14:54:44 +02:00
Mikhail Glukhikh
88bc6b992f
Move .gitattributes for generated files from fir:resolve to fir:tree
2019-10-14 11:12:19 +03:00
Nikolay Krasko
4f488ddd16
Remove lazy values with dummy post compute lambdas
2019-10-13 18:21:38 +03:00
Mikhail Zarechenskiy
83bb07e5ac
Revert "Fix performance issue for case when there are a lot of warnings in file"
...
This reverts commit 3d8e5c4f8e .
Temporarily reverting this commit due to new flaky tests
2019-10-12 00:44:00 +03:00
Mikhail Zarechenskiy
3d8e5c4f8e
Fix performance issue for case when there are a lot of warnings in file
...
There was a problem with `reportDiagnosticOnce` method which was
called, for example, to report diagnostics about experimentalities. It
was crucial for code as in the issue (KT-34204).
The whole complexity was "count of experimental diagnostics" multiply
"count of all diagnostics" multiply very large constant. Almost on
each `reportDiagnosticOnce` method `readonlyView()` was called which
in turn called computation of cache. During cache computation we were
iterating through the all diagnostics and also were using
KotlinSuppressCache, which is not very fast.
#KT-34204 Fixed
2019-10-11 18:47:54 +03:00
Mikhail Zarechenskiy
71cb5e07db
Minor, don't recreate Set with the same values
2019-10-11 18:47:54 +03:00
Ilya Chernikov
2568804eaa
Instruct platform code to use NIO2 always
...
since we're not always use jna (means that we can get warnings about missing jna libs)
and according to the IDEA team, NIO2 works well enough to rely on it
2019-10-11 17:43:49 +02:00
Alexander Gorshenev
f18a3f7fa9
Several more librry resolver tweaks.
...
Made library builder a member function.
Moved resolverByName() back to Native for now
2019-10-11 17:02:06 +03:00
Alexander Gorshenev
55805ddeb8
JS search path resolver with attributes.
...
Warn on inclusion of klibs with the same name in manifest
2019-10-11 17:02:06 +03:00
pyos
bc4be53569
JVM: generate $assertionsDisabled before inlining the node
...
This fixes the problem where compiling a class initializer that contains
a call to an `assert`ing function in a separate module causes the
assertion to always be enabled (i.e. the attached test used to fail in
CompileKotlinAgainstInlineKotlin mode).
2019-10-11 14:54:52 +03:00
Leonid Startsev
1ed4930a2e
Fix failing tests after 395d595b
2019-10-11 14:24:51 +03:00
Anton Bannykh
82e8bcfca9
Proto: update the workaround which reduces memory allocations
2019-10-11 13:58:22 +03:00
Georgy Bronnikov
1abdcf3f57
JVM_IR: support function references with default parameters
2019-10-11 13:30:30 +03:00
Dmitriy Novozhilov
29cda7cb24
[FIR] Always use LF line endings in generated fir tree
2019-10-11 10:27:23 +03:00
Dmitriy Novozhilov
8e4e7c4a11
[FIR] Configure IC for fir tree generation task
2019-10-11 10:27:23 +03:00
Dmitriy Novozhilov
dc1874af3c
[FIR] Add empty line at the end of generated fir tree files
2019-10-10 20:45:21 +03:00
Ilya Chernikov
2219b950f1
Implement resolve top-level functions and props from classloader
...
#KT-33892 fixed
2019-10-10 17:43:29 +02:00
Dmitriy Novozhilov
0c27b863b0
[FIR] Add Readme for tree generator
2019-10-10 17:53:31 +03:00
Dmitriy Novozhilov
b8a8a5575b
[FIR] Move default visitors from separate sourceset
2019-10-10 17:53:30 +03:00
Dmitriy Novozhilov
a8192dba90
[FIR] Remove old visitor generator and configure gradle task for tree generator
2019-10-10 17:53:30 +03:00
Dmitriy Novozhilov
cb981919f9
[FIR] Replace FIR tree with generated implementation
2019-10-10 17:53:30 +03:00
Dmitriy Novozhilov
d6d4b3329b
[FIR] Add FIR tree generator
2019-10-10 17:53:29 +03:00
pyos
807050b159
JVM_IR: generate SMAPs for classes local to inline lambdas...
...
...if they are declared inside inline functions.
2019-10-10 14:54:13 +02:00
pyos
301e3d27fd
JVM_IR: "fix" reified type parameter scope check
...
where "fix" means "work around a bug that is much harder to fix". When
lambdas are extracted into the nearest class, captured type parameters
are not transformed into type parameters of the new method; because of
this, to check whether a reified type parameter is captured by a method
we need to check the outermost named function, not the current function.
2019-10-10 14:54:13 +02:00
Georgy Bronnikov
c70b2e3e4b
JVM_IR: specify correct type for defaultConstructorMarker arguments
2019-10-10 14:07:43 +03:00
Roman Artemev
6f2768e774
[JS SCRIPT] Use new dependency resolver in script/js subsytem
2019-10-10 12:52:06 +03:00
Roman Artemev
c0f279811e
[JS SCRIPT] refactor js script infrastructure
...
- Implement proper script compiler proxy to correctly handle script and its closed-world dependencies
- Clean up zoo of JsScriptCompilers
2019-10-10 12:52:06 +03:00
Vitaliy.Tikhonov
f59e393e37
[CLI] add support running scripts in js compiler, extract common code with jvm part
2019-10-10 12:52:06 +03:00
Vitaliy.Tikhonov
62885ba497
[JS SCRIPTING] create compilers for scripting
2019-10-10 12:52:06 +03:00
Vitaliy.Tikhonov
24cfd0e88c
[IR JS BE] update NameTables for working with repl
2019-10-10 12:52:05 +03:00
Vitaliy.Tikhonov
184ae2fa43
[IR JS BE] create lowering for scripts
2019-10-10 12:52:05 +03:00
Vitaliy.Tikhonov
240abdb750
[JS IR BE] update current lowerings for IrScript
2019-10-10 12:52:05 +03:00
Vitaliy.Tikhonov
d79279d8a5
[JS SCRIPTING] create CoreCompiler for scripting
2019-10-10 12:52:05 +03:00
Vitaliy.Tikhonov
cf5a1615ea
[IR] add JsTextTest for IrScript
2019-10-10 12:52:05 +03:00