Commit Graph

357 Commits

Author SHA1 Message Date
Pavel V. Talanov 3cfcef9da4 Render warning on 'class object' as deprecated 2015-03-10 18:21:32 +03:00
Pavel V. Talanov 5540f09751 Report default object specific diagnostics on 'default' modifier 2015-03-06 19:37:02 +03:00
Pavel V. Talanov 59f192ef90 Replace 'class object' with 'default object' in renderers and test data
Includes changes to decompiled text
Old syntax is used in builtins and project code for now
2015-03-06 19:36:54 +03:00
Evgeny Gerashchenko 056daeaadb Don't mark parameters of get/set/propertyDelegated functions as unused.
#KT-5974 fixed
2015-03-05 18:42:16 +03:00
Pavel V. Talanov 48fbce9582 Refactor: process mentions of class object
Rename usages that refer to "default object" concept now
Test data file names are left as is
2015-03-03 20:57:08 +03:00
Stanislav Erokhin 57fd5cc84c Support local return in lambda without explicit return type 2015-02-24 14:14:49 +03:00
Evgeny Gerashchenko b1840ebd99 Suppressing unused parameter annotation when function is entry point. 2015-02-18 13:37:36 +03:00
Pavel V. Talanov 1972c2f177 Update test data for various tests
Due to slight semantic changes after class object refactor
2015-02-16 15:38:37 +03:00
Andrey Breslav 0e972acf8c == turned into a safe-call 2015-02-10 06:55:46 +01:00
Evgeny Gerashchenko 897854b3dc KT-6671 Report unused constructor parameters
#KT-6671 fixed
2015-01-27 22:38:27 +03:00
Valentin Kipyatkov 1f17d7adcd Changed language sematics: imports with '*' do not import packages anymore 2014-12-26 15:45:01 +03:00
Natalia Ukhorskaya 449ebc35ef Debugger: add ability to evaluate expressions on closing bracket 2014-12-23 14:40:25 +03:00
Natalia Ukhorskaya 73d62902d0 Debugger: use partialBodyResolve. Don't compete variables defined after context element 2014-12-12 13:42:35 +03:00
Denis Zharkov 654411a0b0 Refactored tests using Array constructor:
Some moved to tests with stdlib
Some changed to use arrayOfNulls
2014-12-11 16:04:03 +03:00
Zalim Bashorov 65ef7525ce Allow to use dynamic types for JS projects in IDEA. 2014-12-10 22:48:00 +03:00
Evgeny Gerashchenko a94f7f10b0 Testing highlight type for all "unused" diagnostics. 2014-12-08 17:30:48 +03:00
Evgeny Gerashchenko a3fdce8131 Highlighting "as Foo" for useless casts in gray.
#KT-6070 fixed
2014-12-08 17:30:47 +03:00
Alexander Udalov a7b88e9485 Make CharSequence.length a function instead of property
And String.length as well.

This is done for JVM interoperability: java.lang.CharSequence is an open class
and has a function 'length()' which should be implemented in subclasses
somehow.

A minor unexpected effect of this is that String.length() is now a compile-time
constant (it wasn't such as a property because properties are not supported in
compile-time constant evaluation)

 #KT-3571 Fixed
2014-11-27 20:38:17 +03:00
Nikolay Krasko 722624f0a4 Add test about platform static checks in ide 2014-11-25 17:16:15 +03:00
Natalia Ukhorskaya c9e5099307 Add test for KT-6240: create custom renderer for generic class
#KT-6240 Open
2014-11-12 15:17:21 +03:00
Natalia Ukhorskaya 12b4fc7ad9 Resolve codeFragments with context of JetClass 2014-11-12 15:13:37 +03:00
Valentin Kipyatkov f0b93f3de3 Fixed highlighting range for errors in class object 2014-10-31 21:08:52 +03:00
Valentin Kipyatkov cf04ba4943 Corrected test data 2014-10-31 21:07:51 +03:00
Andrey Breslav 70db76b219 Typo fixed in a diagnostic message 2014-10-29 18:43:48 +03:00
Alexander Udalov ae401cac0f Prohibit type parameters for enum classes
#KT-5696 Fixed
2014-10-21 00:16:07 +04:00
Andrey Breslav 391b57077b KT-5976 Parser recovery is poor on object with parameters
#KT-5976 Fixed
2014-10-15 12:22:35 +04:00
Pavel V. Talanov c04b52561e "abstract" modifier on enum class is an error
#KT-3454 Fixed
2014-10-10 17:43:32 +04:00
Nikolay Krasko e85b36cdff Store resolution context for light classes to prevent back-end fail 2014-10-09 02:28:41 +04:00
Svetlana Isakova ce01c61811 Rename: auto cast -> smart cast 2014-10-01 18:52:52 +04:00
Zalim Bashorov 48de3b706d Frontend: added the support file annotations to LazyTopDownAnalyzer. 2014-09-10 22:39:12 +04:00
Alexander Udalov 5b1993f62a Resolve "values" and "valueOf" in enum class object
Import enum class's static scope into its class object's member scope
2014-09-09 20:42:38 +04:00
Alexander Udalov b52f337f7f Drop enum class object hack
Place valueOf() and values() into the static scope of the corresponding enum
class

 #KT-5580 Fixed
 #KT-2410 Fixed
2014-09-09 20:42:37 +04:00
Svetlana Isakova 91b0ad2023 Removed 'implicit this' from scope for member lookup 2014-09-07 01:03:59 +04:00
Svetlana Isakova 9d366cb896 Prohibit local objects and enum classes
#KT-5402 Fixed
  #KT-4838 Fixed

Resolve type of object inside local object as special, not supertype('Any').
Changed visibility of constructor of anonymous object to 'internal' to be able to resolve the following:
fun box(): String {
    var foo = object {
        val bar = object {
            val baz = "ok"
        }
    }
    return foo.bar.baz
}
The containing declaration of property initializers is constructor, so 'baz' was invisible inside private constructor.
2014-09-01 12:32:52 +04:00
Svetlana Isakova f811b9541c Position error on 'class A' or 'object A' instead of name identifier only 2014-09-01 12:32:51 +04:00
Svetlana Isakova 7f33ad90a6 Report 'nested class accessed via instance reference' error 2014-09-01 12:32:50 +04:00
Nikolay Krasko 186a9a13a8 Report unmet trait requirements in IDE
#KT-3006 Fixed
2014-08-26 14:42:29 +04:00
Alexey Sedunov 9fee8600cb Pseudocode: Do not generate implicit return instruction inside of
Unit-typed lambdas
 #KT-5549 Fixed
2014-08-05 18:14:40 +04:00
Alexey Sedunov 9cbcabffa4 Control-Flow Analysis: Reuse pseudo-value information for unused expression analysis 2014-07-28 13:07:37 +04:00
Alexander Udalov de0f751207 Replace object$ -> OBJECT$, instance$ -> INSTANCE$ in the project 2014-07-26 00:21:05 +04:00
Zalim Bashorov c767ffc3e7 Unit.VALUE -> Unit in testData 2014-07-25 17:16:40 +04:00
Svetlana Isakova 9d4aad3bbc Extracted 'generateBooleanOperation'
Generate magic instruction for '&&, ||' in condition as well
2014-06-21 12:26:34 +04:00
Svetlana Isakova 79cec6411d Mark only unreachable parts of element if it has reachable parts
like for 'return todo()' mark only 'return'
2014-06-21 12:26:33 +04:00
Andrey Breslav e2c5d9edf6 Support reporting errors on class objects and any classes or objects contained anywhere 2014-06-19 22:12:02 +04:00
Andrey Breslav f0da5d570e Do not report "accidental overrides" when "override" modifier is specified 2014-06-19 22:12:01 +04:00
Andrey Breslav 27f76630e6 ACCIDENTAL_OVERRIDE diagnostics supported
#KT-1 In Progress
2014-06-19 22:10:55 +04:00
Andrey Breslav bb581bb645 Only normalize names when accessing PSI, not earlier
#KT-4833 Fixed
2014-06-19 22:10:52 +04:00
Andrey Breslav 91136ada27 Filtering duplicate diagnostics for package facades and package parts 2014-06-19 22:10:49 +04:00
Andrey Breslav 22c47c2f82 Highlight only declarations, without body, on platform signature clashes 2014-06-19 22:10:48 +04:00
Andrey Breslav 27e61a75a1 Diagnostic tests for duplicate JVM signatures 2014-06-19 22:10:46 +04:00