Commit Graph

6377 Commits

Author SHA1 Message Date
Nikolay Krasko e10f7fb464 Don't report missing getValue/setValue method error when it's was impossible to finish resolve
#KT-9803 Fixed
2015-11-04 02:31:15 +03:00
Anton Sukhonosenko 141ffa27dc val / var are now forbidden on a loop multi declaration parameter #KT-6274 Fixed
VAL_OR_VAR_ON_LOOP_MULTI_PARAMETER error added
KtValVarKeywordOwner interface added for PSIs that have getValOrVarKeyword method
2015-11-03 15:30:50 +03:00
Mikhail Glukhikh 41ebfd025e More precise diagnostics of smart cast impossible #KT-7240 Fixed 2015-11-03 13:38:51 +03:00
Mikhail Glukhikh 03aaddd379 More correct handling of possible type set during assignment #KT-8229 Fixed 2015-11-03 12:49:21 +03:00
Mikhail Glukhikh 0a5a5a2e36 More precise diagnostics is added for smart cast impossible #KT-8810 Fixed 2015-11-03 11:15:58 +03:00
Pavel V. Talanov fff404780c Add capabilities to moduleDescriptor as a way to put user data into module
Add OriginCapability to ide modules
2015-11-02 20:38:10 +03:00
Dmitry Jemerov 736b496f6a drop deprecated @platformName and @platformStatic annotations 2015-11-02 17:00:44 +01:00
Pavel V. Talanov bca516bac3 KtClassBody: get parent by stub is possible 2015-11-02 18:38:43 +03:00
Pavel V. Talanov dc1fbe89ec J2K ValueParameterDescriptor inteface in one go 2015-11-02 18:38:30 +03:00
Zalim Bashorov 16d585e204 Don't track lookups:
* when find local variables
  we don't need them for incremental compilation;
* when check overrides
  we going to track inheritance separatly;
* when get companion object descriptor;
* when find Descriptor by fqname
  isn't interesting now because used from light-classes and and java-loder;
* when create qualifier
  we already looked up names in this context before.
2015-11-02 18:18:35 +03:00
Zalim Bashorov d78d96a856 Don't track lookups to EnumEntryScope and when check names in constraints 2015-11-02 18:18:34 +03:00
Zalim Bashorov a5d8b47083 Refactoring: introduced val location: LocationInfo? in LookupLocation and use it in LookupTracker::record 2015-11-02 18:18:29 +03:00
Alexey Sedunov 520e90acf1 Minor: Use kotlin.lazy instead of kotlin.Delegates.lazy in KtPsiFactory.CallableBuilder 2015-11-02 15:15:44 +03:00
Alexey Sedunov 6dd58ad197 Inline: Fix inlining of if-expressions into qualified expressions
#KT-8008 Fixed
2015-11-02 15:15:29 +03:00
Alexey Sedunov 22393d4cd2 Formatter: Use formatter to automatically insert semicolons after the last enum entry when needed 2015-11-02 15:15:26 +03:00
Dmitry Petrov e1cb13bd90 Qualifier no longer defers "(nested) class vs package" resolution.
Consider FQN 'a.b.c'.
If 'a' is a classifier in the current scope,
    resolve rest in the corresponding class scope.
Otherwise (if 'a' is a package),
    find the maximum possible prefix 'a.b' resolving to a package,
    resolve rest in the corresponding package scope.
2015-11-02 10:22:50 +03:00
Stanislav Erokhin 77411b2181 Allowed call value with extension function type as simple function type. 2015-10-31 10:01:07 +03:00
Denis Zharkov b6f724cf58 Disconnect loops between upper bounds of type parameters
#KT-9759 Fixed
2015-10-31 09:33:46 +03:00
Denis Zharkov 9b4ad1466a Minor. Extract 'getAllUpperBounds' 2015-10-31 09:33:46 +03:00
Denis Zharkov 18097c0ab7 Introduce 'SupertypeLoopsResolver' and inject it's impls 2015-10-31 09:33:46 +03:00
Denis Zharkov 0bc5043c75 Extract and convert 'findLoopsInSupertypesAndDisconnect' 2015-10-31 09:33:45 +03:00
Denis Zharkov 8ba2dc5530 Simplify detecting loops in classes supertypes 2015-10-31 09:33:45 +03:00
Alexander Udalov b5f89100f6 Remove obsolete SCRIPT markers 2015-10-30 23:41:32 +03:00
Valentin Kipyatkov 752cdd5f83 KT-9815 Import insertion (on Alt-Enter) does not work in Evaluate Expression
#KT-9815 Fixed
2015-10-30 17:43:25 +03:00
Michael Nedzelsky 9a8b73c5a5 fix texts in error messages for Fintite Bound Restriction & Non-Expansive Inheritance Restriction 2015-10-30 16:39:19 +03:00
Mikhail Glukhikh 182cde1e02 Standard data flow analysis results are taken into account during condition analysis #KT-7933 Fixed 2015-10-30 16:14:34 +03:00
Mikhail Glukhikh dd1196ae6b Condition analysis: left part of and (true condition) / or (false condition) is used for right part analysis #KT-8780 Fixed 2015-10-30 16:14:33 +03:00
Mikhail Glukhikh 12103d19d2 Smart casts inside property chains like a?.b?.c.foo(a, b) are now handled correctly #KT-7290 Fixed 2015-10-30 16:14:32 +03:00
Michael Nedzelsky 6ebe0c30ec fix KT-9299 In a project with circular dependencies between modules, IDE reports error on use of internal class from another module, but the corresponding code still compiles and runs.
#KT-9299 Fixed
2015-10-30 14:40:46 +03:00
Mikhail Glukhikh 17b275af23 Preliminary declaration visitor: create for top-most declaration which is not class 2015-10-30 13:44:33 +03:00
Mikhail Glukhikh 932985f0c1 Preliminary declaration visitor: do not create if already exists 2015-10-30 13:34:01 +03:00
Alexander Udalov 7046f63511 Move/inline stuff from TypeUtils to other modules 2015-10-29 21:16:07 +03:00
Alexander Udalov 5677ff60e7 Move/inline stuff from DescriptorUtils to other modules 2015-10-29 21:16:06 +03:00
Alexander Udalov 4d909d9012 Move LexicalScope to frontend 2015-10-29 21:16:05 +03:00
Alexander Udalov 09a36acee4 Minor, remove HTML from kdoc 2015-10-29 21:16:04 +03:00
Stanislav Erokhin 69038063a6 Mark callable reference candidate as error when there is error type. 2015-10-29 15:30:32 +03:00
Stanislav Erokhin d019445493 Minor. Add tracing strategy to MutableResolvedCall 2015-10-29 15:30:32 +03:00
Stanislav Erokhin 97f6213873 Minor. Introduce public constructor ResolvedCallImpl for future use 2015-10-29 15:30:32 +03:00
Stanislav Erokhin 5e6a86fa70 Minor. Make public util function stripCallArguments in CallTransformer 2015-10-29 15:30:31 +03:00
Stanislav Erokhin cccc4fccd1 Minor. change several signatures 2015-10-29 15:30:31 +03:00
Stanislav Erokhin 1737c7251a Minor. Extract createLookupLocation for call 2015-10-29 15:30:30 +03:00
Alexander Udalov c5ec3b0f6f Minor, drop HTML and improve language in ConstraintSystem kdoc 2015-10-28 21:45:51 +03:00
Alexander Udalov 5fc14e0224 Move constraint system, type intersection, common supertypes to compiler 2015-10-28 19:17:58 +03:00
Alexander Udalov 86bc21da30 Make getUpperBoundsAsType an utility, remove from TypeParameterDescriptor 2015-10-28 19:17:53 +03:00
Alexander Udalov bed75e8af2 Remove some unjustified usages of TypeParameterDescriptor#getUpperBoundsAsType 2015-10-28 19:12:24 +03:00
Alexander Udalov 426bddb54e Move OverridingUtil#getUpperBound to OverloadUtil, add tests on overloads 2015-10-28 19:12:05 +03:00
Alexander Udalov d29757d927 Make upper bounds of type parameter a list instead of a set
The same for lower bounds, also refactor type parameter implementations
2015-10-28 19:11:56 +03:00
Mikhail Glukhikh 6e3eef2d6f JetTypeInfo renamed to KotlinTypeInfo 2015-10-28 17:36:34 +03:00
Michael Nedzelsky c123af75fd issue warning instead of error in case of finite bound or non-expansive inheritance violation in java code 2015-10-28 17:02:02 +03:00
Mikhail Glukhikh d2c65a5336 Iterative call chain handling to get rid of JetTypeInfoInsideCallChain and other nasty things #KT-9754 Fixed 2015-10-28 16:00:30 +03:00