Commit Graph

7011 Commits

Author SHA1 Message Date
Pavel V. Talanov 1affb05b7b Fix typechecker in case of "for ((a, b) in) { }"
Fixes NDFDE
2016-03-04 16:52:34 +03:00
Pavel V. Talanov 363d545bd5 Parameters of function types are always considered local 2016-03-04 16:52:33 +03:00
Pavel V. Talanov 37500e2cd5 Throw ISE earlier on passing certain types of declaration to ResolveSession#resolveToDescriptor() 2016-03-04 16:52:31 +03:00
Dmitry Petrov 8660800af7 Constraint system builder shouldn't drop nullability when comparing signatures for specificity. 2016-03-03 19:23:43 +03:00
Dmitry Petrov 8a2b80fe3f Generalize signature comparison: checking for conflicting overloads.
Also, vararg parameter no longer conflicts with Array<out T>
(CONFLICTING_JVM_DECLARATIONS is reported, can be avoided using @JvmName).
2016-03-03 18:26:10 +03:00
Dmitry Petrov 4ac05f1cd8 Generalize signature comparison: callable references overloading conflict resolution. 2016-03-03 18:26:10 +03:00
Dmitry Petrov c5f3cbc645 Generalize signature comparison: make it work for regular call overloading conflict resolution. 2016-03-03 18:26:10 +03:00
Dmitry Petrov 022162322d Introduce "flat signature" - a generalized abstraction for a (call) signatures that can be compared for specificity. 2016-03-03 18:26:10 +03:00
Dmitry Petrov 77b7128689 Check conflicting overloads for generic signatures. 2016-03-03 18:26:09 +03:00
Alexander Udalov 4553afbd0c Make PropertyAccessorDescriptor#hasBody a front-end utility 2016-03-03 16:08:18 +03:00
Dmitry Jemerov 661c87e464 minor: rename "jet" to "kotlin" in a couple of variable names 2016-03-02 16:47:43 +01:00
Dmitry Petrov 3ca4097bcc KT-11203: report errors on read-write operations for elements of collections with inconsistent get&set signatures 2016-03-02 14:28:06 +03:00
Denis Zharkov 5690d58fd0 Memoize package views in module 2016-03-02 13:38:46 +03:00
Mikhail Glukhikh 96a7febd09 Smart cast is performed now inside 'x as? Type ?: return' safe as / elvis combination #KT-10992 Fixed 2016-03-02 10:07:33 +03:00
Mikhail Glukhikh c7f3a31517 Create subclass intention implemented #KT-8473 Fixed
Can be used for implementing interfaces / abstract classes / sealed classes or extending open classes
2016-03-02 10:05:27 +03:00
Pavel V. Talanov 5304ddfca3 DelegatedPropertyResolver: Use SHORT_NAMES_IN_TYPES for ad-hoc diagnostics parameter rendering 2016-02-26 14:45:11 +03:00
Pavel V. Talanov 48094db9dc DefaultErrorMessages: remove hardcoced fq names for built-in types 2016-02-26 14:45:10 +03:00
Pavel V. Talanov e4cf090720 Adjust diagnostics rendering so that short classifier names are rendered unless the name is ambiguous in corresponding RenderingContext 2016-02-26 14:45:05 +03:00
Pavel V. Talanov ced5a6c917 Introduce RenderingContext and add as parameter to DiagnosticParameterRenderer#render
RenderingContext holds data about the whole diagnostics allowing to adjust rendering of its parameters
2016-02-26 14:45:04 +03:00
Pavel V. Talanov 4f18b3da53 Rename: Renderer -> DiagnosticParameterRenderer and move it out of descriptors module
DescriptorRenderer is no longer a renderer
DescriptorRenderers should not be used to render diagnostic parameters explicitly
2016-02-26 14:45:02 +03:00
Pavel V. Talanov a3bab638eb Move MultiRenderer to a more suitable package 2016-02-26 14:45:00 +03:00
Stanislav Erokhin 7a43d62408 Move sources to resolution module 2016-02-26 00:39:37 +03:00
Stanislav Erokhin 5bb1f3b2ea Create resolution module. 2016-02-26 00:39:37 +03:00
Stanislav Erokhin 310c68f633 Removed lock level WRITING from LexicalWritableScope. 2016-02-26 00:39:36 +03:00
Stanislav Erokhin f85abed6e6 Replace RedeclarationHandler by LocalRedeclarationChecker 2016-02-26 00:39:35 +03:00
Stanislav Erokhin 226e690a86 Minor. refactoring in Qualifier. 2016-02-24 19:33:10 +03:00
Stanislav Erokhin f130de2468 Remove scope from Qualifier 2016-02-24 19:33:10 +03:00
Stanislav Erokhin 4b3c6d52ef Remake QualifierReceiver 2016-02-24 19:33:09 +03:00
Stanislav Erokhin 8c5339cccf Minor. Remove class ClassifierQualifier and create special ClassValueReceiver 2016-02-24 19:33:09 +03:00
Stanislav Erokhin 2f0ae6f176 Minor. Remove name from Qualifier. 2016-02-24 19:33:08 +03:00
Stanislav Erokhin 5240233eda Minor. Remove HIDDEN_ANNOTATION_FQ_NAME. 2016-02-24 19:33:08 +03:00
Stanislav Erokhin 6a1664c1b3 Minor. removed explicitExtensionReceiverForInvoke from CallCandidateResolutionContext. 2016-02-24 19:33:07 +03:00
Stanislav Erokhin 1ef4a958fd Minor. removed call checked from ResolutionContext. 2016-02-24 19:33:07 +03:00
Stanislav Erokhin 6591f8a2ab Minor. removed unused method from AdditionalTypeChecker. 2016-02-24 19:33:06 +03:00
Alexander Udalov 1a5a077bd6 Replace map + filterNotNull -> mapNotNull in project 2016-02-20 19:05:30 +03:00
Stanislav Erokhin ae7b048fdb Minor. rename 2016-02-20 14:55:18 +03:00
Stanislav Erokhin 3e366f6b2d Minor. cleanup 2016-02-20 14:55:18 +03:00
Stanislav Erokhin 45de06ac0c Minor. Removed generics. 2016-02-20 14:55:17 +03:00
Stanislav Erokhin 63b3cbafa4 Remove old resolution algorithm. 2016-02-20 14:55:17 +03:00
Stanislav Erokhin acdd807e91 Support "given candidates" mode in new resolution algorithm. 2016-02-20 14:55:16 +03:00
Stanislav Erokhin daee95f2c4 Refactoring: create separate util function for create constructors resolution candidates 2016-02-20 14:55:16 +03:00
Stanislav Erokhin 7de2013a3e KT-3856 Wrong inner class inaccessible diagnostic for extension to outer class
#KT-3856 Fixed
2016-02-20 14:55:15 +03:00
Alexander Udalov 1eeb72e073 Do not create empty static scope instances for non-enum classes 2016-02-19 22:28:44 +03:00
Alexander Udalov 60fe64dcaa Remove obsolete lazy code in LazyClassDescriptor
This was added in a072550931 when we thought
making 'annotation' an annotation instead of a modifier would be a good idea;
we weren't be able to resolve the class kind immediately then. This is no
longer the case
2016-02-19 22:28:44 +03:00
Dmitry Petrov 90be4f8ea5 KT-6745: change message to reflect that a super qualifier should be an immediate supertype,
not just a supertype.
2016-02-19 16:49:59 +03:00
Michael Bogdanov 6f1def9366 isInlineOnly renamed to isInlineOnlyOrReified 2016-02-19 16:08:02 +03:00
Dmitry Petrov 30c2abba3c KT-9550: distinguish signature conflict on override from signature conflict of inherited members.
Add a common OverridingStrategy class for cases where we don't care (yet) about precise diagnostics.
2016-02-19 15:59:08 +03:00
Mikhail Glukhikh 883e2e4d2b KT-9498 extension: now type can be inferred for getter with expression body 2016-02-19 14:49:25 +03:00
Michael Bogdanov 7c2920febe Don't allow use standalone constants in complexExpressions, fix for KT-11043: Inconsisten result for class literal and string concatenation
#KT-11043 Fixed
2016-02-17 16:53:18 +03:00
Mikhail Glukhikh 657459ef22 Source of KNPE removed #EA-79002 Fixed 2016-02-17 11:52:49 +03:00