Commit Graph

13674 Commits

Author SHA1 Message Date
Mikhail Glukhikh 46f4191185 Unnecessary safe call is now reported in CallExpressionResolver, removed code duplication for safe call receivers
See also KT-10175
2015-11-25 16:19:48 +03:00
Dmitry Petrov da90c21284 Warn about comma-separated conditions in when without argument.
See KT-5143.
2015-11-25 15:39:23 +03:00
Mikhail Glukhikh b9e9c47b28 Using of enum entries as types is now forbidden #KT-5401 Fixed 2015-11-25 13:33:16 +03:00
Alexey Sedunov f4b4b023a3 Introduce Variable: Support extraction of string template fragments
#KT-2089 Fixed
2015-11-24 20:40:15 +03:00
Alexey Sedunov 5889971d62 Introduce Variable: Allow choosing extraction scope for expressions in the lambda body
#KT-7720 Fixed
2015-11-24 20:40:07 +03:00
Michael Bogdanov 3da463be27 Fix for KT-10137: Internal error: couldn't inline method call on lambda taking extension function parameter
#KT-10137 Fixed
2015-11-24 16:32:06 +03:00
Michael Bogdanov a19bdaeb23 Fix duplicate field error on inlining several lambdas 2015-11-24 16:32:06 +03:00
Michael Bogdanov d3f7e9f74b Rename this$0 on decl site 2015-11-24 16:32:06 +03:00
Michael Bogdanov d4369c1df9 Keep inline transformation invariant: all captured parameters stored in topmost lambda/object
Fix for KT-8668: java.lang.ClassFormatError: Duplicate field name&signature (based on property access)

  #KT-8668 Fixed
2015-11-24 16:32:05 +03:00
Alexey Sedunov b75665a96a Misc: Do not use resolved call of outer expression if current call expression has no callee
#KT-10105 Fixed
2015-11-24 14:03:42 +03:00
Michael Nedzelsky a01a18cb1a fix test data for K2JsCliTest 2015-11-24 13:30:16 +03:00
Dmitry Petrov 931463af0d - Fix code generation for inlined String::plus
#KT-10131 Fixed.
- Make extra factory methods in IntrinsicMethod protected.
This ensures that any of them can be properly overridden.
2015-11-24 12:09:34 +03:00
Michael Nedzelsky a7636126a1 fix tests for js 2015-11-23 22:32:40 +03:00
Michael Nedzelsky c80c33efb6 add kjsm option for kotlin js command line compiler 2015-11-23 22:32:32 +03:00
Nikolay Krasko a62e6f7737 Refactoring: extract ObservableStorageManager from LoggingStorageManager 2015-11-23 22:03:32 +03:00
Mikhail Glukhikh dc60c62781 Enum.values is now deprecated but Enum.values() is no more deprecated 2015-11-23 17:29:36 +03:00
Mikhail Glukhikh 6e733f708e DeclarationsChecker: converted to Kt + EffectiveVisibility related refactoring 2015-11-23 17:29:29 +03:00
Mikhail Glukhikh fe2fb7e5a5 DeclarationsChecker: rename to Kt 2015-11-23 17:29:26 +03:00
Mikhail Glukhikh 1c609663a4 Private setters are now deprecated for open properties 2015-11-23 17:29:23 +03:00
Mikhail Glukhikh 74976911a2 Diagnostic for "private setter in abstract property" renamed 2015-11-23 17:29:20 +03:00
Mikhail Glukhikh 284c1b2ec5 Local sealed classes are deprecated 2015-11-23 17:29:16 +03:00
Dmitry Petrov 048e96ef6a Fix safe call code generation for ranges. 2015-11-23 10:34:08 +03:00
Ilya Gorbunov 21f509511c Fix CharSequence parameter names in testData 2015-11-21 07:09:05 +03:00
Ilya Gorbunov ab3e6258ac Update testdata for LoadBuiltinsTest 2015-11-21 07:09:02 +03:00
Ilya Gorbunov 21e2e68ed4 Replace reversed() with apply { reverse() } or asReversed() 2015-11-21 00:54:03 +03:00
Ilya Gorbunov 32151c077e Replace map { ... }.filterNotNull() with mapNotNull { ... } 2015-11-21 00:54:01 +03:00
Mikhail Glukhikh f81a5c06ea Protected in allowed in companion objects but forbidden in other objects, relevant test fixes 2015-11-20 16:32:59 +03:00
Mikhail Glukhikh c84b22396b Diagnostic 'final function with no body' deleted because it's redundant 2015-11-20 15:43:25 +03:00
Mikhail Glukhikh b5610eebae Diagnostic 'final property in interface' deleted because it's redundant 2015-11-20 15:43:22 +03:00
Mikhail Glukhikh cd1b58f2eb Final in interfaces: deprecation ---> error + relevant test fixes 2015-11-20 15:43:19 +03:00
Pavel V. Talanov 56af3a0af4 Increase stub version after changes to parser (script refactoring)
better late than never :(
2015-11-20 15:38:40 +03:00
Valentin Kipyatkov 603bcaa039 KT-10006 Parameter Info does not work for smart cast receiver
#KT-10006 Fixed
2015-11-20 15:36:31 +03:00
Mikhail Glukhikh 4e44466cf9 Exposed visibility deprecation warnings made errors + relevant test fixes 2015-11-20 15:21:01 +03:00
Mikhail Glukhikh e8e5d700d2 Effective visibility source code fix: frond-end 2015-11-20 15:20:38 +03:00
Pavel V. Talanov dbd49c37c1 Psi: Introduce KtScriptInitializer, a separate entity for script initializers which are quite a bit different from class initializers 2015-11-19 22:57:07 +03:00
Pavel V. Talanov 321364102a KtAnonymousInitializer: make it an interface with KtClassInitializer inheritor 2015-11-19 22:57:06 +03:00
Pavel V. Talanov bc2a65b2ea J2K KtAnonymousInitializer in one go
Rip history
2015-11-19 22:57:05 +03:00
Pavel V. Talanov 6bb89021dd Rename: KtClassInitializer -> KtAnonymousInitializer 2015-11-19 22:57:05 +03:00
Pavel V. Talanov 917b8bfe66 Minor, repl: clean up code 2015-11-19 22:57:04 +03:00
Pavel V. Talanov bdc64f322c Add script codegen tests with package statements
Tests codegen annotating visitor
2015-11-19 22:57:03 +03:00
Pavel V. Talanov ae5c95038b Place repl specific stuff of GenerationState into a separate entity
Add even more hacks to tell if the line has useful result to display
2015-11-19 22:57:03 +03:00
Pavel V. Talanov 405cfa439d Repl test: behave closer to real repl 2015-11-19 22:57:02 +03:00
Pavel V. Talanov ad58617753 Script refactoring, codegen tests: change test data according to semantics change
Add some new tests for uncovered cases
2015-11-19 22:57:01 +03:00
Pavel V. Talanov 6563830584 Script refactoring, backend: scripts are classes now, remove/refactor 'special code' dealing with scripts 2015-11-19 22:57:01 +03:00
Pavel V. Talanov d037068bba Turn off duplicateJvmSignature reporting for scripts until light classes are implemented 2015-11-19 22:56:58 +03:00
Pavel V. Talanov 2b955bc6ec Script refactoring, frontend tests: changes according to semantic changes in scripts
Add checker tests for scripts
2015-11-19 22:56:57 +03:00
Pavel V. Talanov efa4bf1d74 Script refactoring, frontend: Treat scripts as classes (as opposed to function bodies)
ScriptDescriptor implements ClassDescriptor
Scripts are accessible in IDE via stub index
Replace special treatment of scripts with generic mechanism in several cases
Scripts to longer generate 'rv' property for storing result value (changes in repl required)
2015-11-19 22:56:57 +03:00
Pavel V. Talanov daa1a08213 Script refactoring, parser: wrap statements in script as if they are init blocks of a class 2015-11-19 22:56:54 +03:00
Pavel V. Talanov e45585be21 Make KtScript stubbed and add KotlinScriptFqnIndex 2015-11-19 22:56:53 +03:00
Michael Nedzelsky aa8f3df9a8 fix KT-10064 Regression: Error with multiple main functions within a single package
#KT-10064 Fixed
2015-11-19 19:59:27 +03:00