Commit Graph

22339 Commits

Author SHA1 Message Date
Dmitry Petrov 7ff72e9d90 Fix inline class recursion through type parameters
Note that inline class such as
  inline class Id<T>(val x: T)
is prohibited in 1.3.0.
2018-09-19 14:51:50 +03:00
Mikhael Bogdanov 1face1c334 Don't generate annotations on synthetic accessor parameters 2018-09-19 12:14:09 +02:00
Mikhael Bogdanov 38652372ce Generate private constructors for Enums
#KT-2680 Fixed
  #KT-16867 Fixed
2018-09-19 12:14:08 +02:00
Mikhael Bogdanov c753a98d02 Use section constants to generate smap data 2018-09-19 12:14:07 +02:00
Mikhael Bogdanov a789fd92fe Properly parse smap information
#KT-23369 Fixed
2018-09-19 12:14:07 +02:00
Alexander Udalov 8c01cd48a5 Report warning instead of error on usages of Experimental/UseExperimental
#KT-26936 Fixed
2018-09-18 22:50:26 +03:00
Ilmir Usmanov 5dea245a37 Fix linenumbers written to debug metadata
#KT-26848 Fixed
2018-09-18 20:06:25 +03:00
Mikhail Zarechenskiy bc6e091004 Migration change: temporarily specify type explicitly
Because of introduction of `BuilderInference` annotation.
 Change it back after bootstrap
2018-09-18 18:55:26 +03:00
Mikhail Zarechenskiy a293aded5d Introduce builder-like inference with an explicit opt-in for it
- Add marker for the experimental type inference features
 - Add annotation that will control builder-like inference
 - Require that annotation on corresponding parameters and extensions
 - Allow to use builder inference without suspendability

 Changes in tests and refactorings (rename mainly) are going to be
 introduced in further commits
2018-09-18 18:55:25 +03:00
Mikhail Zarechenskiy 5e9b31ca2c Minor: invert logic of function 2018-09-18 18:55:25 +03:00
Denis Zharkov ed7dd6fccb Minor. Move serialization annotation fq-names to IDE light-classes
They are a kind of a hack applied in light-classes and it'd be nice
to prevent them being used in irrelevant contexts

kotlin-serialization-compiler module should not depend on idea,
thus we can't use annotations directly there.

So, we copy-paste them and add a test on names consistency
2018-09-18 18:37:11 +03:00
Simon Ogorodnik a2cdb14610 Add function to get typed capability from ModuleInfo 2018-09-18 17:33:10 +03:00
Anton Bannykh 7d5a304cf6 [JS IR BE] support Char.rangeTo() 2018-09-18 15:43:55 +03:00
Roman Artemev 89bec8ec59 Update tests 2018-09-18 15:30:17 +03:00
Roman Artemev 084071e2e5 [JS IR BE] Fix callable reference lowering
* more precisely handle implicit receiver arguments
2018-09-18 14:59:21 +03:00
Ilmir Usmanov 14818a4fc1 Minor. Remove tests with suspend delegates 2018-09-18 14:56:11 +03:00
Ilmir Usmanov c4038729ea Minor. Split tests with buildSequence into LV 1.2 and LV 1.3 versions 2018-09-18 14:56:08 +03:00
Anton Bannykh 0660e4d616 [JS IR BE] support multimodule tests 2018-09-18 14:36:20 +03:00
Anton Bannykh 2e709a81fa [JS IR BE] Arrays, varargs 2018-09-18 14:36:20 +03:00
Ilmir Usmanov 3bb405bee4 Minor. Move SUSPENSION_POINT_INSIDE_MONITOR to ErrorsJvm 2018-09-17 20:22:49 +03:00
Yan Zhulanow 8db5fd4b9b Add missing empty bunches for AS 3.3 2018-09-17 20:08:27 +03:00
Yan Zhulanow b38e9b6b05 Make all intellij-core dependencies non-transitive 2018-09-17 20:08:27 +03:00
Ilmir Usmanov 35056543a2 Fix LVT entries of 'this' and parameters in coroutine code
#KT-24510 Fixed
2018-09-17 20:03:51 +03:00
Ilmir Usmanov 2dd5b8fa70 Forbid suspension points in critical sections
#KT-26480: Fixed
2018-09-17 19:29:51 +03:00
Denis Zharkov a4b2e5964a Do not build dummy light classes for serialization-related classes
Otherwise, whether LazyLightClassMemberMatchingError happens
or other type of errors because serialization plugin expects
full resolution in the correct module

Currently, only @Serializable annotation leads to exceptions,
but just in case we consider both of them as potentially problematic

 #KT-26895 Fixed
2018-09-17 19:09:40 +03:00
Mikhail Zarechenskiy ea69d26bac Don't throw exception on error types in light classes mode
#KT-26829 Fixed
 #KT-26827 Fixed
2018-09-17 16:21:07 +03:00
Mikhail Zarechenskiy fa9a3868b7 Make generation of assertions for platform types aware of kotlin types
#KT-26859 Fixed
2018-09-17 16:21:06 +03:00
Mikhail Zarechenskiy 8e66dadb47 Add regression test for KT-26806
#KT-26806
2018-09-17 16:21:01 +03:00
Roman Artemev e242a8b08b Unmute tests 2018-09-17 15:29:19 +03:00
Roman Artemev affc827998 [JS IR BE] Support 1.3 coroutines in backend 2018-09-17 15:29:18 +03:00
Roman Artemev 323602eb5f Skip expect declaration 2018-09-17 14:52:44 +03:00
Roman Artemev a8b44c9e18 [JS IR BE] Fix Ir Copier
* use symbol table to allocate classifier for IrType
2018-09-17 14:52:44 +03:00
Roman Artemev 6bb77ba51d [JS IR BE] Get rid of parameters in doResume method. Make its signature similar for both 1.2 and 1.3 coroutines 2018-09-17 14:52:44 +03:00
Denis Zharkov 956f8ad5e9 Support deserialized contracts in common code
#KT-26687 Fixed
2018-09-17 12:48:42 +03:00
Ilya Gorbunov 1b889c976a Use new sequence builders in tests
Coroutine tests will fail when LV=1.2 because there're no such builders
in kotlin.coroutines.experimental.

#KT-26678
2018-09-16 23:30:36 +03:00
Anton Bannykh 082c44cb5c JS: add a flag for more convenient investigation of failing IR tests 2018-09-14 20:34:34 +03:00
Mikhael Bogdanov 9e6637dced Don't generate additional annotations on synthetic accessors 2018-09-14 16:23:57 +02:00
Mikhael Bogdanov b7afb4a58e Generate enum entries classes with package private visibility
#KT-6574 Fixed
2018-09-14 16:23:57 +02:00
Raluca Sauciuc de989c4050 Expand the fix from commit 6c274cecff to cover AndroidX
Android Studio users who migrated to AndroidX are running into the
databinding deadlock again: https://issuetracker.google.com/111788726
2018-09-14 17:09:16 +03:00
Dmitry Petrov 88fb76bffc Fix annotations loading for inline class constructors 2018-09-14 16:09:41 +03:00
Alexander Udalov 863c0051ce Do not report deprecation on readBytes with API version < 1.3
#KT-26667 Fixed
2018-09-14 14:43:24 +03:00
Alexander Udalov 044419eda5 Minor, refactor DeprecationResolver.getOwnDeprecations
Make local function a member, inline another utility function
2018-09-14 14:43:23 +03:00
Alexander Udalov 5dc563a9af Split deprecationUtil.kt to several files, move to subpackage
Also move interface Deprecation to subpackage "deprecation"
2018-09-14 14:43:23 +03:00
Georgy Bronnikov e712007904 Restore a test 2018-09-14 09:41:39 +03:00
Georgy Bronnikov 433afcd669 JVM_IR. Mute failing tests 2018-09-14 03:12:23 +03:00
Ilya Chernikov a03bfb3561 Implement support for non-kts scripts in gradle
#KT-26784 fixed
2018-09-13 20:47:21 +02:00
Sergey Rostov 1b93f07a76 JPS tests: support custom mpp multi module tests, rearrange test data files for more consistency, configure js modules with facet (not with stdlib dependency which should be deprecated), temporary mute some complex mpp tests 2018-09-13 20:30:33 +03:00
Georgy Bronnikov f04733ef33 JVM_IR. support big arity 2018-09-13 18:44:47 +03:00
Mikhael Bogdanov 03f092fd39 Revert "Generate private constructors for Enums" cause of bootstrap problem
This reverts commit 81435c9
2018-09-13 17:07:56 +02:00
Alexander Udalov 3a5de13dd4 Support inline classes in function signatures in call/callBy
#KT-25664 Fixed
 #KT-26748 Open
 #KT-26765 Open
2018-09-13 16:04:20 +03:00