Commit Graph

3621 Commits

Author SHA1 Message Date
Alexander Udalov e7a744b315 Make JetTypeMapper aware of SAM constructor arguments
This obsoletes 'replaceName' workaround that was present in ClosureCodegen but
missing in other crucial call sites of mapSignature, e.g. generation of
EnclosingMethod info

 #KT-6691 Fixed
2015-02-11 18:10:41 +03:00
Alexander Udalov 6ee4c70f2f Minor, extract OuterClassInfo 2015-02-11 18:10:37 +03:00
Alexander Udalov a280599969 Fix wrong checkcast for === on objects
#KT-6747 Fixed
2015-02-11 18:10:35 +03:00
Alexander Udalov cd6d04b3ba Fix incompleteHierarchyInJava test on Windows
Normalize path delimiters to '/' via CliBaseTest
2015-02-10 16:31:58 +03:00
Andrey Breslav fcb6055913 SenselessComparisonChecker used for @NotNull values from Java 2015-02-10 06:55:49 +01:00
Andrey Breslav f36d6ce5b2 Reporting USELESS_ELVIS and UNNECESSARY_NOT_NULL_ASSERTION on Java's @NotNull values 2015-02-10 06:55:48 +01:00
Andrey Breslav 30f5c1b953 Reporting unnecessary safe calls on Java's @NotNull values 2015-02-10 06:55:48 +01:00
Andrey Breslav 1d4109aec1 Retaining annotations on Java array types 2015-02-10 06:55:48 +01:00
Andrey Breslav 5db6bb04e3 Basic Java nullability warnings implemented
#KT-6723 In Progress
2015-02-10 06:55:47 +01:00
Andrey Breslav 0e972acf8c == turned into a safe-call 2015-02-10 06:55:46 +01:00
Alexander Udalov 560b2346a6 Fix ScriptTest, use full JDK instead of mock
Mock JDK has an incomplete hierarchy (OutputStream -> Flushable) and this is
relevant in ScriptTest because it collects all compiler output messages
2015-02-10 00:34:18 +03:00
Alexander Udalov 4128655893 Report incomplete hierarchy error
This is the case when you reference a Java class in Kotlin whose superclass is
not resolved. Previously this fact was swallowed by LazyJavaClassDescriptor
leading to mysterious compilation errors

 #KT-5129 Fixed
2015-02-09 21:14:02 +03:00
Dmitry Jemerov 084470e840 fix NPE in KDocLinkParser 2015-02-09 18:21:50 +01:00
Dmitry Jemerov 70cf3e9c60 KDoc link parsing rewrite.
Support qualified names immediately after tag (@see or @param). Detect whether a tag is followed by a reference immediately while lexing, remove TEXT_OR_LINK token type. Remove duplicate nested KDocLink nodes from the PSI structure.
2015-02-06 16:33:55 +01:00
Dmitry Jemerov 56d85c2033 don't parse links which aren't Kotlin identifiers and have an explicitly specified destination 2015-02-05 16:27:37 +01:00
Dmitry Jemerov 3253754395 code review 2015-02-04 17:26:48 +01:00
Dmitry Jemerov 40f459306a parse qualified names in kdoc 2015-02-04 17:26:46 +01:00
Dmitry Jemerov 223882d292 correctly parse tag in the beginning of doc comment 2015-02-04 17:26:46 +01:00
Alexander Udalov cafc1ea24d Fix resolution of inherited Kotlin properties in Java classes
#KT-6720 Fixed
2015-02-04 14:57:47 +03:00
Alexander Udalov 5c2d0c6173 Generate not-null assertions on extension receiver parameters 2015-02-03 21:40:39 +03:00
Alexander Udalov 39c9216edc Fix shameful assertion message error introduced after extracting method 2015-02-03 21:20:25 +03:00
Michael Nedzelsky df8fed096c add support for compile time constant serialization 2015-02-03 14:41:24 +03:00
Andrey Breslav 0f0f205248 Serializing information about star projections 2015-02-02 19:52:02 +03:00
Andrey Breslav fecf6f9fdf Star projection information preserved in substitutions
#KT-6700 Fixed
2015-02-02 19:52:01 +03:00
Andrey Breslav da639039bd KT-6698 Bad class file when using a star-projection on a Java's recursive generic parameter
#KT-6698 Fixed
2015-02-02 19:52:00 +03:00
Dmitry Jemerov 6442b61db8 Don't generate redundant initializers for 'var' properties.
Since only 'val' properties store initializers as compile time constants in descriptors, we need to take the initializer expression from the PSI and try to evaluate it as a constant.

 #KT-6661 fixed
2015-01-30 14:05:25 +01:00
Svetlana Isakova 6511086034 Rename: PartialBodyResolveProvider -> StatementFilter 2015-01-30 13:33:37 +03:00
Svetlana Isakova a2f03f2d52 Fix: constraint T? >: Int! should transform to T >: Int 2015-01-30 13:33:37 +03:00
Andrey Breslav 6395fd819f Got rid of non-lazy local classifier analyzer 2015-01-29 16:07:27 +03:00
Alexander Udalov de3f096ae1 Test classpath order of sources vs library dependencies 2015-01-28 19:58:37 +03:00
Alexander Udalov 2253567e36 Tests: use preloader instead of URLClassLoader in MockLibraryUtil
This fixes runtime dependency of the compiler and thus allows to run tests
which use MockLibraryUtil in case of an ABI-incompatible change; also it's
slightly more efficient (noticeable when running a single test)
2015-01-28 19:58:36 +03:00
Alexander Udalov 5903b8c4a7 Reorder and optimize dependencies between modules and libraries
- drop 'kotlin-runtime' and other dependencies which are exported by
  other modules ('util' and 'util.runtime' in case of 'kotlin-runtime')
- make all Kotlin modules from the compiler depend on 'util' for clarity
- put 'util' and 'util.runtime' to the bottom of the list everywhere: when
  kotlin-runtime gets reflection, classes from core/ should have higher
  priority than their previous versions from kotlin-runtime.jar
2015-01-28 19:58:35 +03:00
Nikolay Krasko 825a194429 Temp workaround for build test failed when parser tests are executed first 2015-01-28 15:12:28 +03:00
Evgeny Gerashchenko 897854b3dc KT-6671 Report unused constructor parameters
#KT-6671 fixed
2015-01-27 22:38:27 +03:00
Andrey Breslav 38044c1000 LocalClassifierAnalyzer injected 2015-01-22 14:15:50 +03:00
Valentin Kipyatkov 77a560775f KT-6628 Allow imports of classes from root package
#KT-6628 Fixed
2015-01-21 20:10:18 +03:00
Valentin Kipyatkov fa779bbdd2 Fixed KT-4085 Usability problem: Can't import protected nested class
#KT-4085 Fixed
2015-01-21 20:10:18 +03:00
Valentin Kipyatkov 974982463c Visible classes take priority when resolving imports with * 2015-01-21 20:10:18 +03:00
Valentin Kipyatkov b9d47ffe7a Changed priority for default imports + default imports include all built-ins explicitly for java module
#KT-4374 Fixed
2015-01-21 20:10:18 +03:00
Valentin Kipyatkov 929d6b885d Current package members to have less priority than explicit imports 2015-01-21 20:10:17 +03:00
Valentin Kipyatkov a9d4fd5213 Moved tests for imports into proper group 2015-01-21 20:10:16 +03:00
Valentin Kipyatkov 2c60201832 Fixed test data (+ renamed test) 2015-01-21 20:10:16 +03:00
Valentin Kipyatkov 2e420fc312 Conflicting imports error for imports of classes and packages 2015-01-21 20:10:16 +03:00
Valentin Kipyatkov b888ea601c Changed imports semantics: imports order does not affect resolve, explicit imports have higher priority for classes 2015-01-21 20:10:16 +03:00
Svetlana Isakova 9dbcd8b55f Approximate captured types only when necessary 2015-01-21 15:37:33 +03:00
Alexander Udalov ae6ffeb88a Skip inlined lambdas when determining EnclosingMethod
#KT-6368 Fixed
2015-01-20 21:02:57 +03:00
Dmitry Jemerov 100b8c2c4d Fix tests according to new PSI structure; move doc comment text calculation from JetQuickDocumentationProvider to KDocTag.getContent() 2015-01-20 18:07:18 +01:00
Dmitry Jemerov c3a496b9a2 introduce the concept of sections 2015-01-20 18:00:17 +01:00
Dmitry Jemerov f3763bc2b5 some initial PSI for KDoc; changed syntax of links (Markdown style single brackets instead of Wiki style double brackets) 2015-01-20 18:00:09 +01:00
Alexey Sedunov 9278dee1a4 Pseudocode: Bind nondeterministic jump caused by local declaration to declaration iself instead of its parent element
#KT-6261 Fixed
 #KT-6416 Fixed
2015-01-19 20:58:50 +03:00