Commit Graph

29263 Commits

Author SHA1 Message Date
Georgy Bronnikov 2c4fcebfec IR: handle adapted bound references 2020-04-18 20:31:57 +03:00
Vladimir Dolzhenko 86a02c07f6 Fix KotlinNativeABICompatibilityChecker.getLibrariesToNotifyAbout freeze
Get rid of O(n^2) in copyProperties
make ModuleProductionSourceInfo.stableName lazy
add checkCanceled in loops in IdeaModelInfosCache

#KT-38318 Fixed
2020-04-18 11:36:21 +02:00
Alexey Tsvetkov 4ccec5218f Remove dirty output files when expanding IC scope early
Previously IC could go to the next iteration without removing
outputs for the files compiled during the last iteration.
For example, it could happen, when a multifile part is changed
(we add sources for other parts and recompile everything together).

In case of MPP it could lead to compile error, because
the compiler would see the same actual declarations from dirty sources
and dirty outputs from previous iteration (which should have been removed).
That behaviour did not raise an error before dc8240c24e
because actual declarations from binaries (e.g. compile classpath) were ignored.

    #KT-35957 Fixed
2020-04-18 06:05:44 +03:00
Alexey Tsvetkov 2442abadc3 Add test for KT-35957 2020-04-18 06:05:44 +03:00
Alexey Tsvetkov 876d6d209f Minor: move non-JPS MPP IC tests under incremental/mpp dir 2020-04-18 06:05:44 +03:00
Dmitriy Novozhilov f489e4044f [FIR-TEST] Update testdata after removal bodies of synthetic data class funs 2020-04-17 13:22:19 +03:00
Jinseong Jeon 9f1ecadd65 IR: more consolidation of synthetic member generation for data class. 2020-04-17 12:38:38 +03:00
Dmitriy Novozhilov 7f02d57d88 [FIR] Correctly detect super type in delegated constructor call 2020-04-17 12:37:29 +03:00
Dmitriy Novozhilov adfd478361 [FIR] Hold all containers in body resolve context, not only last one 2020-04-17 12:37:29 +03:00
Dmitriy Novozhilov a446aa2266 [FIR] Set implicit type for delegated constructor calls in fir builder 2020-04-17 12:37:28 +03:00
Dmitriy Novozhilov 276754260a [FIR] Add replaceCalleeReference to all FirResolvable
Also improve tree generator: now it generates abstract overrides
  for `replace` functions and correctly generates replace for fields
  with overriden type
2020-04-17 12:37:28 +03:00
Dmitriy Novozhilov fa1e5f9593 [FIR] Add transformations for delegated constructor call 2020-04-17 12:37:28 +03:00
Ilya Muradyan d2fec96f38 Add new REPL API JVM implementation 2020-04-16 21:16:08 +02:00
Ilya Muradyan af251cafa4 Add info about the end of range in scripting REPL compiler messages 2020-04-16 21:16:08 +02:00
Ilmir Usmanov 5ab55fbb57 Support -J<jvm-param> and "-Dname=value" in windows runner script
Otherwise, -J-ea has no effect on windows, which breaks assert tests.
Wrap parameters with delimeters in quotes.
 #KT-30211 Fixed
2020-04-16 21:11:50 +02:00
Dmitry Petrov ac5411c32e Command-line option disabling KotlinNothingValueException generation 2020-04-16 19:38:30 +03:00
simon.ogorodnik 3c4e691e62 [FIR] Fix getClassDeclaredCallableSymbols for constructors 2020-04-16 18:38:18 +03:00
Ilya Kirillov 1535873c07 Do not try to lazy parse a block without opening bracket
It can consume the whole file in such case
which will result PsiBuilder going crazy

#KT-36191 fixed
2020-04-16 15:40:21 +03:00
LepilkinaElena 4f9364f997 Native specific frontend checker for @ThreadLocal (#3293) 2020-04-16 15:23:06 +03:00
Georgy Bronnikov 41a28bde5c JVM_IR: repair synthetic accessors to fields 2020-04-16 15:08:11 +03:00
Mikhail Bogdanov 461c368ee0 Minor. Unmute test 2020-04-16 13:49:48 +02:00
Igor Chevdar 6d86d6ccdc [box-tests] Turned on some tests on fun interfaces for JS & Native 2020-04-16 16:01:17 +05:00
Mikhail Zarechenskiy 4ffcbc0c2f [NI] Properly support UnsafeVariance annotation
#KT-38134 Fixed
 #KT-34433 Fixed
 #KT-31823 Fixed
2020-04-16 13:55:47 +03:00
Georgy Bronnikov 611c4fe052 JVM_IR: repair super calls to methods of Any 2020-04-16 10:53:48 +03:00
Dmitry Petrov e2ee3d1d18 Unmute passing tests 2020-04-16 09:07:35 +03:00
Steven Schäfer 74791495d7 JVM IR: Box inline classes in covariant overrides (KT-30419) 2020-04-16 09:07:35 +03:00
Mikhail Glukhikh d906c814cf [FIR] Fix lookup tag creation for values() & valueOf() 2020-04-15 19:32:53 +03:00
Anton Bannykh 81798282b9 JS: support explicit SAM constructor invocation 2020-04-15 17:13:21 +03:00
Georgy Bronnikov 7ea4ac9e9a [FIR] Regenerate FIR tree 2020-04-15 16:26:44 +03:00
Mikhail Bogdanov 1de0fbfc3a Add delegation tests for new default modes 2020-04-15 15:25:03 +02:00
Mikhail Bogdanov 4822d1e2ae Enable d8 by default 2020-04-15 15:25:03 +02:00
Mikhail Bogdanov dda2f53993 Support JVM 8 target on Android 2020-04-15 15:25:02 +02:00
Georgy Bronnikov 284533f72b IR: put resolution of unbound type parameter symbols behind a language version flag 2020-04-15 16:08:35 +03:00
Georgy Bronnikov a1a2da3c0f Revert "IR: put resolution of unbound type parameter symbols behind a language version flag"
This reverts commit 9634e6fba3.
2020-04-15 15:58:44 +03:00
Georgy Bronnikov 9634e6fba3 IR: put resolution of unbound type parameter symbols behind a language version flag 2020-04-15 15:51:20 +03:00
Kristoffer Andersen 7ec4c9990a [JVM] Improve debug step behavior around lambdas.
- Add tests to clarify problematic behavior
- Avoid line numbers on return instructions of lambdas without explicit returns
2020-04-15 14:33:49 +02:00
Steven Schäfer fc7d667282 Psi2Ir: Bind unbound type parameters 2020-04-15 15:32:53 +03:00
Mikhail Bogdanov 10b9ff1066 Minor. Rollback test data change
There is inconsistent behaviour between JS and JVM in case of package presence
2020-04-15 11:04:01 +02:00
Juan Chen a1e0e8b0e7 [FIR] Handle receiver types of extension methods when computing maximally specific types.
Test case (from testPrimitiveReceiver):

fun Short.foo() = 3
fun Int.foo() = 4

1::foo
2020-04-15 11:16:33 +03:00
Dmitriy Novozhilov f7dc06a772 [FIR] Approximate integer constants in lhs of callable reference 2020-04-15 11:13:01 +03:00
Dmitriy Novozhilov c71f9d9640 [FIR] Use argument mapping from resolved call for contract argument mapping 2020-04-15 11:13:01 +03:00
Dmitriy Novozhilov 5b660d2457 [FIR] Ignore FirStubStatement in visit/transform consistency test 2020-04-15 11:13:01 +03:00
Dmitriy Novozhilov 2e4183db7d [FIR-TEST] Update testdata of old FE contracts tests 2020-04-15 11:13:01 +03:00
Dmitriy Novozhilov fea7872359 [FIR] Add contracts resolve for local classes 2020-04-15 11:13:01 +03:00
Dmitriy Novozhilov cecbf53ee8 [FIR] Add processing of FirStubStatement to Fir2IrVisitor 2020-04-15 11:13:00 +03:00
Dmitriy Novozhilov 67c8030706 [FIR] Update resolve phase for all declaration in contracts stage 2020-04-15 11:13:00 +03:00
Dmitriy Novozhilov d718b596bc [FIR] Add transform declaration and companion to regular class 2020-04-15 11:13:00 +03:00
Dmitriy Novozhilov a01bbbb0a0 [FIR] Add processing conditional contracts on property accessors 2020-04-15 11:13:00 +03:00
Dmitriy Novozhilov 1074e4bf29 [FIR] Add contracts resolve for property accessors 2020-04-15 11:13:00 +03:00
Dmitriy Novozhilov d808f3e4fb [FIR-TEST] Add tests for contracts resolve 2020-04-15 11:12:59 +03:00