Commit Graph

5900 Commits

Author SHA1 Message Date
Yan Zhulanow e3967b9fa0 Diagnostic on lateinit 2015-09-05 00:54:19 +03:00
Yan Zhulanow add13cae82 lateinit modifier on property 2015-09-05 00:54:18 +03:00
Denis Zharkov 4159c83282 Support decapitilized obsolete annotations in resolve
Annotations like `deprecated`, `jvmStatic`, etc. has been renamed to capitilized themselves.
But we're going to support both versions.
It's hard just to leave both versions of classes as their class-files can clash
when compiled on register-independent file system.

So here is solution (temporary hack):
we just wrap JetScopes for package fragments of `kotlin.*`
to make them search both versions of annotations if their names are contained
in our hardcoded set.
2015-09-04 18:19:32 +03:00
Denis Zharkov 952d45dc8b Deprecate JVM platform annotations in favor of capitilized themselves 2015-09-04 18:19:31 +03:00
Michael Nedzelsky a59f14eede warning for access to private top-level declarations from another file 2015-09-04 15:35:28 +03:00
Mikhail Glukhikh 699f1e0a70 AnnotationTarget.PACKAGE was dropped 2015-09-04 12:49:14 +03:00
Michael Nedzelsky 3a4dfc5241 remove requirements for explicit return type for public members 2015-09-03 18:23:04 +03:00
Valentin Kipyatkov 37ed77467f Fixed ReplaceWith quickfix not working when synthetic extensions are used in the pattern 2015-09-03 15:55:57 +03:00
Nikolay Krasko dd7ef4d89f Fix null exception in setName() method (EA-70396) 2015-09-03 13:40:09 +03:00
Mikhail Glukhikh fa292ec0e0 Enum entries now can have no initializer if default secondary constructor is available. #KT-8484 Fixed 2015-09-02 18:23:07 +03:00
Nikolay Krasko a946db98a1 Update to 142.4245.2: Fix compilation after update 2015-09-02 15:10:39 +03:00
Nikolay Krasko 73eca64769 Minor: too long lines 2015-09-02 13:49:06 +03:00
Mikhail Glukhikh 726cbe3755 Refactoring: VariableInitState --> VariableControlFlowState 2015-09-02 12:07:21 +03:00
Mikhail Glukhikh 285d5d06c7 More precise value reassignment analysis. #KT-7418 Fixed. #KT-6902 Fixed.
Variable can now be "exactly initialized", "may be initialized" and "not initialized".
A set of relevant tests. Some fixed tests.
2015-09-02 12:07:18 +03:00
Denis Zharkov c59b118b09 Implement quckfix adding explicit upper bounds for generic when needed 2015-09-02 12:04:08 +03:00
Denis Zharkov 3b80bf5bda Make call to additional type checker if no error happened 2015-09-02 10:38:43 +03:00
Stanislav Erokhin d015f713cb KT-6244 Overloads with no default parameters should take over ones with defaults
#KT-6244 Fixed
2015-09-01 23:37:43 +03:00
Stanislav Erokhin 5ded315cbb Improved error reporting for candidates with wrong parameter count 2015-09-01 23:37:42 +03:00
Nikolay Krasko 9054151546 Use storage manager to create lazy value 2015-09-01 15:55:47 +03:00
Nikolay Krasko 6c45d81b86 Revert "Use lazy to store split annotations, code simplification"
This reverts commit 0b24e56f5a.
2015-09-01 15:55:46 +03:00
Nikolay Krasko d6b7214a65 More psi-only checks for Kotlin main function 2015-08-31 21:38:44 +03:00
Yan Zhulanow d734e2e665 Increase stub version 2015-08-31 15:33:18 +03:00
Yan Zhulanow 0b24e56f5a Use lazy to store split annotations, code simplification 2015-08-31 15:33:17 +03:00
Yan Zhulanow b6adaab94b Move AnnotationSplitter to descriptors/annotations 2015-08-31 15:33:16 +03:00
Yan Zhulanow 97e4c097ba Split annotations lazily 2015-08-31 15:33:14 +03:00
Yan Zhulanow 4b3999bf6c Serialize annotation target psi element 2015-08-31 15:33:08 +03:00
Yan Zhulanow c488ce4cb3 Check annotation site targets using psi elements 2015-08-31 15:33:08 +03:00
Yan Zhulanow 3624c4e5dc Use target priorities to split annotations to different descriptors 2015-08-31 15:33:05 +03:00
Yan Zhulanow 9838f9c942 Check deprecated annotations with use site targets 2015-08-31 15:33:04 +03:00
Yan Zhulanow f86fe6a8d5 Allow multiple non-repeatable annotations with different targets 2015-08-31 15:33:02 +03:00
Yan Zhulanow 91626cf02e Check receiver type annotations in JetCallableDeclaration 2015-08-31 15:33:00 +03:00
Yan Zhulanow 54f0da300c Force resolve type annotations 2015-08-31 15:32:59 +03:00
Yan Zhulanow a3ba1af421 Generate receiver annotations using extension receiver type parameter 2015-08-31 15:32:59 +03:00
Yan Zhulanow 866552f6ab Redundant annotation target warning 2015-08-31 15:32:58 +03:00
Yan Zhulanow 5cb74a2b12 Do not allow field annotations on properties 2015-08-31 15:32:57 +03:00
Yan Zhulanow 8b47f56eb9 Allow property annotations on primary constructor parameter 2015-08-31 15:32:56 +03:00
Yan Zhulanow 397da8746a Report more detailed message if use site target is available 2015-08-31 15:32:55 +03:00
Yan Zhulanow 8849d7d10a Check @param target applicability 2015-08-31 15:32:52 +03:00
Yan Zhulanow e72ce555e0 Move annotation use-site checks to AnnotationUseSiteTargetChecker 2015-08-31 15:32:51 +03:00
Yan Zhulanow 8741b2d083 Allow targeted annotations in parameter list 2015-08-31 15:32:50 +03:00
Yan Zhulanow 8e65ceefd0 Check use-site targeted annotations with AnnotationTarget in declaration-site 2015-08-31 15:07:16 +03:00
Yan Zhulanow 2f1def6832 Support @param and @sparam annotations 2015-08-31 15:05:05 +03:00
Yan Zhulanow 00cfb3054a Support @receiver annotations 2015-08-31 15:05:05 +03:00
Yan Zhulanow 93579564c8 Support @property annotations 2015-08-31 15:05:04 +03:00
Yan Zhulanow b1a28bcc6a Support @get and @set annotations 2015-08-31 15:05:04 +03:00
Yan Zhulanow 1010658a85 Parse other use-site targeted annotations 2015-08-31 15:05:03 +03:00
Yan Zhulanow 2bacbc9046 Support @field: annotations 2015-08-31 15:05:02 +03:00
Valentin Kipyatkov e8dc9ede31 Implemented HiddenDeclaration annotation (doc-comment to be added!) 2015-08-29 10:54:59 +03:00
Stanislav Erokhin ba4fb3e37c Add hack for Repl 2015-08-29 01:46:00 +03:00
Stanislav Erokhin 2cb3842c39 Take snapshot for LexicalWritableScope when subscopes created 2015-08-29 01:45:59 +03:00