Commit Graph

29539 Commits

Author SHA1 Message Date
Alexander Udalov 714df7b433 Add temporary compiler option to suppress incompatibility errors
To compile Kotlin against current IDEA libraries until they are migrated to 1.1
2016-01-22 23:53:47 +03:00
Stanislav Erokhin f688b1b786 Relax rules for type parameters in property receivers 2016-01-22 22:18:57 +03:00
Stanislav Erokhin 30bb8d4828 Minor. Optimized enhanceSignature method 2016-01-22 22:09:33 +03:00
Stanislav Erokhin f710ba88f8 Minor. Removed TypeParameterDescriptor#getLowerBounds 2016-01-22 22:09:33 +03:00
Ilya Gorbunov 9a41e07ac0 Use IDEA 143.1960 built with master kotlin branch.
Remove tweaks required to bootstrap packages.
Restore non-star imports of kotlin.text.Charsets.
2016-01-22 22:06:22 +03:00
Alexey Tsvetkov cfc410261b Minor: fix test data 2016-01-22 21:04:46 +03:00
Mikhail Glukhikh 0ff07af3ef DelegatingDataFlowInfo: potential concurrent modification in multi map fixed 2016-01-22 20:44:58 +03:00
Denis Zharkov 982dfa9183 Minor. Specify variables type explicitly
It's needed because 'assertEquals' has 'OnlyInputType' annotation
on type parameter, and type of 're.exec(string)!!' is 'Array<String?>',
while 'arrayOf("A5D5", "A5", "D5")' is 'Array<String>'
2016-01-22 19:17:22 +03:00
Denis Zharkov 6c0cd70a22 Introduce PureReifiable annotation
It prevents reporting unsafe substitution warning on expressions
like 'arrayOf(arrayOf(""))'
2016-01-22 19:17:22 +03:00
Denis Zharkov 32755a269c Support annotations on type parameters in stub builder 2016-01-22 19:17:22 +03:00
Denis Zharkov d7e035fd9b Serialize annotations on type parameters in builtins 2016-01-22 19:17:22 +03:00
Denis Zharkov 4cf1393e81 Minor. Render annotations on type parameters 2016-01-22 19:17:22 +03:00
Denis Zharkov 70dc5b5403 Prohibit use of captured type as argument for reified parameter
#KT-8093 Fixed
2016-01-22 19:17:22 +03:00
Denis Zharkov 751f66c656 Report warning on generic type as argument for reified parameter
#KT-6484 Fixed
2016-01-22 19:17:22 +03:00
Denis Zharkov ae6c62ddff Minor. Report reified-related diagnostics on arguments if possible 2016-01-22 19:17:22 +03:00
Denis Zharkov 5baa0ed4bb Minor. Rename TypeUtils.containsSpecialType -> contains 2016-01-22 19:17:22 +03:00
Denis Zharkov a5c13ce8cf Approximate projections in SAM type when creating SAM adapter
Use the same approach as Java 8 applies to function types
(see non-wildcard parametrization in §9.9 of JLS)

 #KT-6918 Fixed
2016-01-22 19:17:22 +03:00
Denis Zharkov d87b13931d Create special type for missing dependencies when resolving annotations
#KT-10748 Fixed
2016-01-22 19:17:22 +03:00
Nikolay Krasko 76f60294a8 Temporary revert old system of source roots for idea-full and intellij-core 2016-01-22 19:01:39 +03:00
Dmitry Jemerov 4846776242 don't show "Kotlin not configured" notification for files outside a source root 2016-01-22 16:42:58 +01:00
Mikhail Glukhikh e9af4d25d0 Handling of try / catch / finally with 'Nothing' in all catch blocks #KT-10735 Fixed 2016-01-22 16:37:22 +03:00
Mikhail Glukhikh 60f5d9ef8b DelegatingDataFlowInfo: do not create redundant instances 2016-01-22 16:37:19 +03:00
Mikhail Glukhikh 2ee9f22242 DelegatingDataFlowInfo: never store original type or its supertypes #KT-10666 Fixed 2016-01-22 16:37:16 +03:00
Mikhail Glukhikh e04338f4fa Minor refactoring: DelegatingDataFlowInfo.create() 2016-01-22 16:37:13 +03:00
Mikhail Glukhikh 366ab508e1 Data flow analysis: assignment of null makes variable effectively of type 'Nothing?' 2016-01-22 16:37:10 +03:00
Mikhail Glukhikh 859059d714 Bug fix: jump out of a loop inside if condition 2016-01-22 16:37:07 +03:00
Mikhail Glukhikh b3c5760eb5 Type intersection fix: T & (final A) is no more calculated as just A #KT-7801 Fixed 2016-01-22 16:37:04 +03:00
Mikhail Glukhikh 3106a8508a Front-end and back-end test for KT-7801 2016-01-22 16:37:00 +03:00
Mikhail Glukhikh 7ac55cefcb Extra test with smart cast to 'T' 2016-01-22 16:36:57 +03:00
Mikhail Glukhikh d5ffa0bbca DelegatingDataFlowInfo: default constructor 2016-01-22 16:36:54 +03:00
Mikhail Glukhikh 7870ad2445 DataFlowInfo converted to Kotlin, DataFlowInfoFactory introduced 2016-01-22 16:36:51 +03:00
Mikhail Glukhikh 9e1c2f396e DataFlowInfo.java --> DataFlowInfo.kt 2016-01-22 16:36:48 +03:00
Alexey Tsvetkov f63a9ee556 Optimize adding lookups to lookup storage 2016-01-22 16:01:36 +03:00
Alexey Tsvetkov f32ff42ba3 Recompile implicit type usages when class signature is changed 2016-01-22 16:01:36 +03:00
Alexey Tsvetkov 310a995bb1 Add lookup for every expression's type 2016-01-22 16:01:36 +03:00
Alexey Tsvetkov 1ef615e020 Add incremental compilation test with change of annotation class 2016-01-22 16:01:36 +03:00
Alexey Tsvetkov 5ce692a75c Improve proto comparison test with changes of annotation list 2016-01-22 16:01:35 +03:00
Alexey Tsvetkov 58a91b3d20 Add proto comparison tests with changes of class/member flags 2016-01-22 16:01:35 +03:00
Alexey Tsvetkov a7c432ebe8 Add incremental compilation tests with changes of companion object 2016-01-22 16:01:35 +03:00
Alexey Sedunov 618f9f62f6 Code Insight: "Generate toString" action
#KT-10309 Fixed
2016-01-22 15:50:19 +03:00
Alexey Sedunov 77b637e238 Change Signature: Skip Java methods which can't be resolved from Kotlin (such as methods of local classes)
#KT-10432 Fixed
2016-01-22 15:50:17 +03:00
Alexey Sedunov 0104bfec86 Add val/var to Constructor Parameter: Fix caret position before starting template 2016-01-22 15:50:16 +03:00
Alexey Sedunov 8da986ff24 Add Initializer Quick-Fix: Place caret at the end of generated initializer
#KT-10704 Fixed
2016-01-22 15:50:15 +03:00
Alexey Sedunov 9081f5df52 Introduce Variable: Move caret to the end of declaration when replacing "statement" expression
#KT-10663 Fixed
2016-01-22 15:50:14 +03:00
Pavel V. Talanov 16ab4bec34 Try to diagnose NoDescriptorForDeclarationException in completion 2016-01-22 15:32:37 +03:00
Dmitry Petrov 55b7e4bbf0 Ignore special resolved calls for 'when' in PSI unifier. 2016-01-22 10:41:56 +03:00
Dmitry Petrov a33c840939 Fix Kotlin build after fixing when-related type checking issues.
Filed: KT-10752, KT-10755.
2016-01-22 10:41:55 +03:00
Dmitry Petrov f371e67ce8 PatternMatchingTypingVisitor:
rewrite type inference for 'when' using special constructs.
This fixes several type inference issues for 'when':
KT-9929, KT-9972, KT-10439, KT-10463
along with some other diagnostics-related issues.
2016-01-22 10:41:55 +03:00
Dmitry Petrov b49e08fe04 PatternMatchingTypingVisitor:
separate condition data flow info analysis and exhaustiveness check
from type inference for "incomplete" (statement-like) 'when'.
2016-01-22 10:41:55 +03:00
Michael Bogdanov a76d16931c Temporary generate old default method 2016-01-22 10:10:32 +03:00