Commit Graph

31888 Commits

Author SHA1 Message Date
Alexey Sedunov ff4c16d342 Rename: Allow renaming class by constructor delegation call referencing primary constructor
#KT-8860 Fixed
2016-06-02 15:28:22 +03:00
Alexey Sedunov e89e809dc7 Rename: Respect naming conventions in automatic variable rename
#KT-7851 Fixed
2016-06-02 15:28:19 +03:00
Alexey Sedunov 400d6b5aa0 Rename: Skip read-only declarations when renaming parameters
#KT-10713 Fixed
2016-06-02 15:28:16 +03:00
Alexey Sedunov 566ed0112f Rename: Fixed in-place rename of Kotlin expression referring Java declaration
#KT-9157 Fixed
2016-06-02 15:28:14 +03:00
Alexey Sedunov 691de677b3 Rename: Quote non-identifier names in Kotlin references
#KT-9156 Fixed
2016-06-02 15:28:11 +03:00
Alexey Sedunov a743098aba Refactoring: Move quoteIfNeeded function to idea-core 2016-06-02 15:28:09 +03:00
Nikolay Krasko 3f4cde3d25 NoSuchFieldError in Evaluate Expression on a property of a derived class (KT-12206)
#KT-12206 Fixed
2016-06-02 14:39:51 +03:00
Nikolay Krasko 2c6d28c65f Refactoring: use drop instead subList 2016-06-02 14:38:47 +03:00
Nikolay Krasko 9ef0bf422c Minor: reveal nullability problem in generateSyntheticParts() 2016-06-02 14:38:46 +03:00
Nikolay Krasko a6b16f6d00 Move uast dependency modules before idea module that now contains uast too. 2016-06-02 14:38:44 +03:00
Kirill Rakhman c24960f8d9 Formatter: handle spaces between class name and type parameters (#875)
Fixes #KT-12446
2016-06-01 21:20:56 +03:00
Mikhail Glukhikh 33b6780ce2 Quick fix "add !!" for SMARTCAST_IMPOSSIBLE in certain situations 2016-06-01 19:48:26 +03:00
Alexander Udalov 7eafae1936 Drop isAbsoluteInRootPackage from stubs 2016-06-01 19:30:04 +03:00
Alexander Udalov 1339286261 Drop undocumented absolute name specification feature with 'package.' 2016-06-01 19:30:03 +03:00
Mikhail Glukhikh 9f819b1c03 Convert to expression body: take nested whens into account 2016-06-01 16:19:55 +03:00
Mikhail Glukhikh 2350caf177 Convert to expression body is forbidden on single non-exhaustive when statement with Unit result #KT-12502 Fixed 2016-06-01 16:02:15 +03:00
Mikhail Glukhikh 91ce8cc612 "Make abstract" is no longer applicable to object / enum entry members #KT-3797 Fixed 2016-06-01 16:02:11 +03:00
Dmitry Petrov bce96baf20 KT-11588 Type aliases
- Fix ISE in LazyDeclarationResolver
2016-06-01 14:32:46 +03:00
Dmitry Petrov 0319d5a5aa KT-11588 Type aliases
- Nested type aliases
- UNSUPPORTED_TYPEALIAS error (language level < 1.1)
- tests for is/as/as? with type alias
2016-06-01 14:32:46 +03:00
Dmitry Petrov e979300579 KT-11588 Type aliases
Diagnostics for type arguments substitution in type alias expansion
(initial implementation; TODO: refactor).
2016-06-01 14:32:46 +03:00
Dmitry Petrov 9cf8ef287e KT-11588 Type aliases
Additional tests for generic type alias arguments.
Small refactoring in TowerLevels.
2016-06-01 14:32:45 +03:00
Dmitry Petrov 62f8d00f89 KT-11588 Type aliases
Create substituted constructor descriptors for generic type aliases.
2016-06-01 14:32:45 +03:00
Dmitry Petrov c63166047c KT-11588 Type aliases
Additional tests for type alias constructor & companion object:
- codegen
- error diagnostics
2016-06-01 14:32:45 +03:00
Dmitry Petrov 1329a43d89 KT-11588 Type aliases
Type alias constructor
2016-06-01 14:32:44 +03:00
Dmitry Petrov 4a9507b3ab KT-11588 Type aliases
Type alias companion object
2016-06-01 14:32:44 +03:00
Dmitry Petrov 8c2e80f9eb KT-11588 Type aliases
Fix protoDifferenceUtils.
2016-06-01 14:32:44 +03:00
Mikhael Bogdanov 0f1589fd50 Fix for KT-12200: initial property assignment ignored
#KT-12200 Fixed
2016-05-31 15:27:55 +03:00
Mikhael Bogdanov bdc0b6b308 Local delegated properties moved to language feature option 2016-05-31 15:27:55 +03:00
Alexey Andreev 2bd807bb4e KT-11960: add test for case of instantiating inner class of a local class 2016-05-31 15:24:30 +03:00
Alexey Andreev acc5303731 KT-11960 Fix case of instantiation of local class via its inner class or via nested lambda. Move tests to more appropriate location. Fix bug in blackbox codegen generator for JVM, which does not allow to suppress tests. 2016-05-31 15:24:29 +03:00
Alexey Andreev bb8a3aa262 KT-11960 Minor code style fixes 2016-05-31 15:24:29 +03:00
Alexey Andreev 6f363a71be KT-11960 Fix for data classes 2016-05-31 15:24:29 +03:00
Alexey Andreev 170a671a1b KT-11960 Fix for case when class instantiates itself 2016-05-31 15:24:28 +03:00
Alexander Udalov a300dee61f Keep Native2AsciiCharsetProvider from being stripped by proguard
#KT-12549 Fixed
2016-05-31 14:28:25 +03:00
Kirill Rakhman 93ebb3da65 Formatter: handle spaces around 'is' keyword (#874)
Fixes #KT-12548
2016-05-30 20:35:33 +03:00
Alexander Udalov fbd671c158 Minor, update ChangeLog with '-language-version' 2016-05-30 13:52:04 +03:00
Mikhail Glukhikh 7a24429b53 Simplify for intention: apply name validator to prevent conflicts 2016-05-30 12:15:13 +03:00
Mikhail Glukhikh 792b37bce4 Simplify for intention: applicable of any numbers of properties used #KT-10779 Fixed 2016-05-30 12:15:09 +03:00
Alexander Udalov 68c5e8e190 Minor, add comments on declarations used in Eclipse plugin 2016-05-27 19:40:50 +03:00
Alexander Udalov a95568eedf Minor, make Services#get return type nullable 2016-05-27 19:40:50 +03:00
Alexander Udalov 57849c9dfd Fix project compilation after introduction of bound references
`java` in the package name inside an extension to KClass is now resolved to the
extension property `KClass#java`. So `java.X::class` is now equivalent to
`this.java.X::class`
2016-05-27 19:38:39 +03:00
Mikhail Glukhikh c26d7e0eba Attach "add remaining branches" and "add else branch" fixes to NON_EXHAUSTIVE_WHEN warning #KT-12503 Fixed 2016-05-27 18:08:20 +03:00
Mikhail Glukhikh 8713190e33 Back-end JVM: more accurate handling of when expressions with Unit result #KT-12192 Fixed 2016-05-27 18:08:15 +03:00
Pavel V. Talanov 3a3e145de2 KtLightMethod: Wrap return type so it resolves to light method's type parameter as opposed to delegate's
Affects java type inference in IDEA

  #KT-12090 Fixed
  #KT-11095 Fixed
2016-05-27 13:13:01 +03:00
Alexander Udalov e1a21abd72 Report error on bare types in LHS of callable reference expressions 2016-05-26 22:22:41 +03:00
Alexander Udalov 76efeb4e14 Remove obsolete assertion about expressions on LHS of '::' 2016-05-26 22:22:41 +03:00
Alexander Udalov da42023dd9 Support new callable reference expressions in UAST
Manually mute the class literal test in apiCheck.kt; support for new class
literal expressions is postponed because it's not straightforward to combine
both unbound (Type::class) and bound (instance::class) class literals in one
UClassLiteralExpression: in Java they're two very different expressions
(Type.class and instance.getClass())
2016-05-26 22:22:41 +03:00
Alexander Udalov ca76e4d426 Support new double colon expressions in IDE code 2016-05-26 22:22:41 +03:00
Alexander Udalov a3b38cf6ed Extract method to fully or partially resolve callable reference
Reuse it in the main type-checking path in DoubleColonExpressionResolver, as
well as in ArgumentTypeResolver which handles the case when a callable
reference appears as an argument to another call
2016-05-26 22:22:41 +03:00
Alexander Udalov 693c753988 Support for new double colon expressions in type checker
Despite the fact that the LHS of a double colon expression is now KtExpression
instead of KtUserType, we must still consider it a type for callable references
to work. Extract and reuse relevant parts of QualifiedExpressionResolver and
TypeResolver to support this behavior
2016-05-26 22:22:41 +03:00