Commit Graph

58382 Commits

Author SHA1 Message Date
Mikhail Glukhikh c9f6482f25 Throw exception from FIR smoke test if failure file does not exist
It's more convenient to see exception from the beginning and
not a strange message about generated .fir.fail file
2019-10-18 20:40:21 +03:00
Steven Schäfer eb744cc9e1 JVM IR: Fix constant folding for unsigned toString 2019-10-18 17:24:53 +02:00
Steven Schäfer c905209504 JVM IR: Lower IrStringConcatenation 2019-10-18 17:24:53 +02:00
Steven Schäfer 78b4024ccb JVM IR: Unify the handling of IrStringConcatenation and toString 2019-10-18 17:24:12 +02:00
Steven Schäfer c2de89cb8c Minor: Make String.valueOf bytecode tests more precise 2019-10-18 17:24:12 +02:00
Steven Schäfer 64aa50a921 Add more tests for SAM wrappers 2019-10-18 17:22:58 +02:00
Steven Schäfer c3d0a7582c JVM IR: Fix names, caching, and visibilities for SAM wrappers used in inline functions. 2019-10-18 17:22:58 +02:00
Steven Schäfer f2e0c1a930 JVM IR: Minor fix for nullable SAM wrappers 2019-10-18 17:22:58 +02:00
Dmitriy Novozhilov 4d43c13fb1 [FIR] Add logging to artifact in ModularizedTest for old frontend 2019-10-18 18:21:36 +03:00
Steven Schäfer f2d01aeabd Update serialization IR bytecode listing test 2019-10-18 17:20:22 +02:00
Steven Schäfer 18940ab0cb JVM IR: Refactor SyntheticAccessorLowering to use a single traversal 2019-10-18 17:20:22 +02:00
Steven Schäfer 3098723406 Minor: Fix outdated test 2019-10-18 17:20:22 +02:00
Steven Schäfer 3db3f5bf7f JVM IR: Don't compute signatures in CallableReferenceLowering 2019-10-18 17:20:22 +02:00
Steven Schäfer 417c570243 IR: Fix InnerClassConstructorCallsLowering
Prevent repeated passes over nested functions.
2019-10-18 17:20:22 +02:00
Steven Schäfer a8730eae62 Minor: Fix error message in reflection.jvm 2019-10-18 17:20:22 +02:00
Steven Schäfer 21af7dfbe1 Add tests for constructors taking inline class arguments 2019-10-18 17:20:22 +02:00
Steven Schäfer 9389d88232 JVM IR: Hide constructors with inline class parameters 2019-10-18 17:20:22 +02:00
Steven Schäfer bdd5705a30 JVM IR: Fix test for anonymous object constructors in FunctionCodegen 2019-10-18 17:20:22 +02:00
Roman Golyshev 6560ecc82b KT-15286: Provide object member extensions in the completion
- Add extensions only when completion of static members is enabled (double ctrl + space and nonempty prefix)
- Add full import for callables with receiver in `LookupElement.decorateAsStaticMember`
2019-10-18 17:17:28 +03:00
Toshiaki Kameyama 15613afa20 Control flow with empty body: do not report 'if' with comments
#KT-34325 Fixed
2019-10-18 21:07:52 +07:00
Dmitriy Novozhilov 615d3aafef [FIR] Automatically generated abstract classes instead of interfaces if possible 2019-10-18 16:45:14 +03:00
pyos 6b48112a2b IR: deserialize backing field annotations
Probably going to be necessary for handling imported @JvmField
annotated declarations.
2019-10-18 16:43:53 +03:00
Dmitriy Novozhilov ecf98d3141 Regenerate tests forgotten in f19a8789 2019-10-18 16:03:41 +03:00
Toshiaki Kameyama 74970ddfeb Introduce "Unused unary operator" inspection
#KT-12073 Fixed
2019-10-18 18:50:53 +07:00
Jordan Demeulenaere 158f7f1cd7 Avoid PsiFile searching when resolving imported scripts descriptors. 2019-10-18 13:17:28 +03:00
Mikhail Glukhikh 91a58fffb8 Add CLI test for K/javac project with non-transitive dependency, KT-33932 2019-10-18 12:29:05 +03:00
Mikhail Glukhikh 87e2f9d96b Add CLI test for K/javac project with K/J interdependency
Yet this test fails if JavacWrapper does not add Kotlin output dir to classpath
2019-10-18 12:02:04 +03:00
Mikhail Glukhikh 9f3d834b2a JavacWrapper: optimize building of tree-based stuff 2019-10-18 11:56:18 +03:00
Mikhail Glukhikh 39ff04e043 JavacWrapper: optimize toJavacList away 2019-10-18 11:55:59 +03:00
Georgy Bronnikov 7f32f43a48 Pass isIR flag from KotlinToJVMBytecodeCompiler to GenerationState 2019-10-17 16:44:20 +03:00
pyos d1f25d1c26 JVM_IR: discard results of nonexhaustive whens' branches 2019-10-17 15:41:42 +02:00
Dmitriy Novozhilov cfa9950c22 [FIR] Fix building CFG and resolving when expression without branches 2019-10-17 16:20:59 +03:00
Dmitriy Novozhilov f8f2d8b9a1 [FIR] Add FirAbstractElement as base type for all fir node implementations 2019-10-17 16:20:59 +03:00
Dmitriy Novozhilov f19a878948 [FIR] Add exhaustive checker for when expressions
Also remove generating default else branch introduced in 38fa0122 and 54eb4cf9
2019-10-17 16:20:59 +03:00
Dmitriy Novozhilov 25e853606e [FIR] Add deserialization of inheritors of sealed classes 2019-10-17 16:20:59 +03:00
Dmitriy Novozhilov 3dc49ab1d4 [FIR] Add resolve phase for resolving inheritors of sealed classes 2019-10-17 16:20:59 +03:00
Dmitriy Novozhilov 59fd47bfd0 [FIR] Add special node for sealed classes 2019-10-17 16:20:59 +03:00
Dmitriy Novozhilov d0089c6747 [FIR] Add flag that enables fir dump in modularized test 2019-10-17 16:20:58 +03:00
Dmitriy Novozhilov 2ec305b34e [FIR] Don't generate replace and transform in implementations with kind = Interface 2019-10-17 16:20:58 +03:00
Dmitriy Novozhilov f86f582922 [FIR] Automatically make field mutable if it has replace function 2019-10-17 16:20:58 +03:00
Dmitriy Novozhilov 89fc17da41 [FIR] Allow generate boolean fields with replace 2019-10-17 16:20:58 +03:00
Dmitriy Novozhilov 2c2a1cdfe8 [FIR] Fix smartcasts in when expressions with this subject
Also get rid of excess `getOrCreateRealVariable` function.
2019-10-17 16:20:58 +03:00
Kirill Shmakov 739340a57d Rename cidr-native -> common-cidr-native
Modules in :kotlin-ultimate:ide
2019-10-17 14:15:43 +03:00
Mikhael Bogdanov c78dbaf6b3 Initializer default values in 'tailrec' method in proper order
#KT-31540 Fixed
2019-10-17 13:06:36 +02:00
Mikhael Bogdanov 077092d619 Convert TailRecursionCodegen.java to Kotlin 2019-10-17 13:06:35 +02:00
Mikhael Bogdanov 2eda7cb4b0 Rename .java to .kt 2019-10-17 13:06:34 +02:00
Mikhail Glukhikh b3d8f2d677 Introduce AbstractFirUseSiteScope and store common J/K code there 2019-10-17 13:39:33 +03:00
Mikhail Glukhikh fb22a31976 JavaClassUseSiteScope is made not-provider based
Before this commit, Java use-site scope was provider based for some reason.
In fact, provider was not used in this scope anyway,
so this can be safely removed
2019-10-17 13:39:33 +03:00
Mikhail Glukhikh 79c0a69219 Add new FIR tests related to KT-31508 problems, replace failing MM testJava...Signature 2019-10-17 13:39:32 +03:00
pyos 27094d0371 JVM_IR: fix synthetic accessor generation (again)
Turns out private inline functions *can* be called from other classes.
2019-10-17 12:38:19 +02:00