Commit Graph

59782 Commits

Author SHA1 Message Date
pyos 13a2879b78 JVM_IR: generate more correct parameter metadata 2019-12-11 08:19:55 +01:00
Tillmann Berg cf86dc9a89 KT-20357: Add sample for Collections distinct and distinctBy methods 2019-12-11 07:42:05 +03:00
Ilya Gorbunov f0e67f8397 Fix coreLibsInstall composite task
It was broken after the commit bbdbc2896b,
which included kotlin-stdlib-js-ir project into coreLibs list,
but that project didn't have 'install' task, on which 'coreLibsInstall' depends
2019-12-11 06:36:40 +03:00
Igor Yakovlev 6792d22c31 Fix minor bugs for UL methods and parameters representation
Remove INSTANCE field for local object declarations
Remove private suspend functions create from UL
Add correct extension function parameter name
Add support for setparam annotation modifier
2019-12-10 18:26:08 +03:00
Georgy Bronnikov 094de9fb5e IR: Do not capture variables from method calls in ClosureAnnotator
To call a method of a class, you never need to supply any values of
local variables (they would always be provided to the constructor).
2019-12-10 17:31:12 +03:00
Mikhail Glukhikh 344bc33096 [FIR TEST]: add problematic test with WeakHashMap.get ambiguity 2019-12-10 16:25:01 +03:00
Toshiaki Kameyama 12f17a6724 "Add constructor parameters" quick fix should add default parameters from super class (#2869)
#KT-33109 Fixed
2019-12-10 13:09:31 +01:00
Denis Zharkov f0298aad77 FIR: Refine SAM support for methods with names from j.l.Object 2019-12-10 14:21:21 +03:00
Denis Zharkov e89c777fc6 FIR: Create DefinitelyNotNull only for annotated types 2019-12-10 14:21:21 +03:00
Abduqodiri Qurbonzoda 56cae75404 Fix StringBuilder reverse test 2019-12-10 13:07:27 +03:00
Mikhail Glukhikh edf5675415 [FIR TEST]: add problematic test with covariant array as receiver 2019-12-10 12:58:40 +03:00
Mikhail Glukhikh 7d62e3ce56 FIR: fix hasTopLevelClassOf optimization in deserialized provider
Before this commit, we answered 'no top level class' if Java class finder
could not calculate known class names. However, it's incorrect,
because this situation means 'don't actually know'.

To precise semantics, function name was also inverted
2019-12-10 12:58:39 +03:00
Mikhail Glukhikh fa89aa0b49 Do not use member scope provider from FIR resolution API
In this commit we build self importing scope from scratch.
Using member scope provider is probably incorrect because of possible changes.
At any invalidation we should rebuild it.
2019-12-10 12:58:39 +03:00
Mikhail Glukhikh 718a679b72 FIR IDE API: add preliminary control of file in-block modifications
In this commit, we build FirFile from the beginning if in-block modifications are detected.
However, better way would be to rebuild only part of FirFile in this case
2019-12-10 12:58:39 +03:00
Mikhail Glukhikh 83ccd7dd1c FIR: implement separate diagnostic collector/reporter for IDE 2019-12-10 12:58:38 +03:00
Mikhail Glukhikh fbf1dbf2da FIR: introduce error message renderer 2019-12-10 12:58:38 +03:00
Mikhail Glukhikh e07b85ff34 FIR Java providers: insert some protection against ProcessCanceledException 2019-12-10 12:57:57 +03:00
Mikhail Glukhikh cd089658bd IdeFirProvider: insert protection against ProcessCanceledException 2019-12-10 12:57:56 +03:00
Mikhail Glukhikh fc117466a8 AbstractFirPsiCheckerTest: do partial error diagnostic comparison for some cases 2019-12-10 12:57:15 +03:00
Mikhail Glukhikh 4b251eb986 FIR IDE: lock FIR files before calling runResolve on them
This also fixes various synchronization problems
2019-12-10 12:57:13 +03:00
Mikhail Glukhikh 63121df6ba Synchronized IdeFirProvider.getOrBuild file, don't share RawFirBuilder
Before this commit RawFirBuilder was reused,
that provoked a lot of synchronization problems
2019-12-10 12:57:13 +03:00
Mikhail Glukhikh ccb343e26b FIR: preliminary implementation of diagnostics highlighter (~30% supported) 2019-12-10 12:57:13 +03:00
Mikhail Glukhikh 34202faaa5 Code cleanup: KotlinPsiChecker 2019-12-10 12:57:12 +03:00
Mikhail Glukhikh 1d6d88b50c FIR reference resolve test: observe mute tests which are actually passing 2019-12-10 12:57:12 +03:00
Mikhail Glukhikh f8c86d2f9f FIR reference resolve test: mute 37/107 cases which aren't yet supported 2019-12-10 12:57:11 +03:00
Mikhail Glukhikh 900227fdfa KtReferenceResolver: implement resolveToPsiElements() via FE IR (~60% supported) 2019-12-10 12:57:11 +03:00
Mikhail Glukhikh 809b7d8381 FirResolution: store enabled value in field with initial reading from component
Before this commit, we read/wrote 'enabled' directly from PropertiesComponent.
Now we do only initial reading and then store modified value in field.
This should make 'enabled' reading faster.
2019-12-10 12:57:11 +03:00
Mikhail Glukhikh 0d2d76696c Add FirResolution.enabled wrapper 2019-12-10 12:57:10 +03:00
Dmitriy Novozhilov 00112d4227 [FIR] Copy receiver of delegateProvider in fir building
There was a problem that receiver of `delegateProvider` and `expression` field
  of `FirWrappedDelegateExpression` was the same object, so after some changes in
  FirCallCompletionResultsWriterTransformer (where call was partially completed and then
  copied) there was a problem with resolve of `delegateProvider`, because reference of it's
  receiver had resolved reference, but type arguments were unsubstituted (see
  `testCommonCaseForInference`).

Maybe there is a better solution. E.g. we can transform type arguments in completion, so we don't need coping of function call at all
2019-12-10 12:25:42 +03:00
Dmitriy Novozhilov 51560f2f17 [FIR] Fix order of resolving children of FirProperty 2019-12-10 12:25:42 +03:00
Dmitriy Novozhilov e281d224a3 [FIR] Fix testdata broken in b76c984b 2019-12-10 12:25:42 +03:00
Dmitriy Novozhilov a89e9966e6 [FIR] Fix call completion of complex constant expressions with integer contants 2019-12-10 12:25:42 +03:00
Ilya Goncharov f8b1e95830 [Gradle, JS] Inline single used method for prefix matching 2019-12-10 11:41:03 +03:00
Ilya Goncharov 8c6941dc5b [Gradle, JS] Java and JS difference in fqn should affect exclude patterns too 2019-12-10 11:37:13 +03:00
Ilya Goncharov 770e5147d0 [Gradle, JS] Java and JS difference in fqn should affect exclude patterns too 2019-12-10 11:37:13 +03:00
Ilya Goncharov da16d48068 [Gradle, JS] Remove debug console 2019-12-10 11:26:48 +03:00
Ilya Goncharov 096a6c9551 [Gradle, JS] Fix failing Karma tests for empty tests
#KT-35318 fixed
2019-12-10 11:25:35 +03:00
Natalia Selezneva 36d87c9905 Mute GradleMultiplatformWizardTest
^KT-35368
2019-12-10 09:16:27 +03:00
Natalia Selezneva b66fdad80c Set since build to IDEA 192.7142.36 for 192 bunch
Fix compilation in idea-gradle module
Android Studio 3.6 doesn't still contain some of those changes
2019-12-10 09:16:27 +03:00
Abduqodiri Qurbonzoda 19e001afad Commonize Float.rangeTo(Float) #KT-35299 2019-12-09 20:24:06 +03:00
Dmitriy Novozhilov b76c984b26 [FIR] Support IntegerLiteralTypes 2019-12-09 17:24:26 +03:00
Dmitriy Novozhilov 5577f0f8cb [TMP] Make context in inference components universal 2019-12-09 15:28:24 +03:00
Dmitriy Novozhilov 4f3ff84d30 [FIR] [TMP] Complete lambdas that are not part of some call 2019-12-09 15:02:41 +03:00
Dmitriy Novozhilov e560a67a89 [FIR] Resolve this reference in delegating constructors 2019-12-09 15:01:54 +03:00
Dmitriy Novozhilov 583e07b3e4 [FIR] Don't analyze properties twice 2019-12-09 13:31:39 +03:00
Ilya Chernikov 99b0435de5 Add possibility for JDKs substitution in the build script...
configure substitutions for 1.6 and 1.7 for non-TeanCity builds
2019-12-06 15:51:52 +01:00
Dmitry Petrov f6b99955f8 Update testData in bytecodeText (argument nullability assertions) 2019-12-06 11:03:07 +03:00
Dmitry Petrov d28743157a Mute testPlatformValueContains in JVM_IR 2019-12-06 11:03:07 +03:00
Dmitry Petrov c83f68151c Support @EnhancedNullability in psi2ir 2019-12-06 11:03:07 +03:00
Dmitry Petrov 429bf78afa Add 'Collection#contains' as a special case to psi2ir tests 2019-12-06 11:03:07 +03:00