Pavel V. Talanov
7e6bed7ad8
Decompiled text: should always render all modifiers even if we don't feel like it
2015-12-09 18:51:31 +03:00
Pavel V. Talanov
fee19ad9de
CallableClsStubBuilder: correctly decide whether callable is extension
2015-12-09 18:51:30 +03:00
Pavel V. Talanov
deb6410a5c
Add test for builtIn stub builder and decompiler
...
These test are by no means exhaustive, the correctness of the subsystem relies on it sharing code with well-tested js-decompilation
2015-12-09 18:51:30 +03:00
Pavel V. Talanov
5cc04e41fe
Enable keyword highlighting in .kotlin_class, .kotlin_package files
2015-12-09 18:51:29 +03:00
Pavel V. Talanov
c40d6af1e5
Decompile builtins (kotlin_class and kotlin_package files)
...
The main purpose of this is to be able to index builtin declarations and enable go to symbol/class functionality in ide
Also it makes sense to show builtin classes (Any, Int ...) as classes when browsing kotlin-runtime.jar
Refactor decompiler code to eliminate existing and potential duplication
Share the code between js (kjsm) decompilation and builtin decompilation heavily
2015-12-09 18:51:28 +03:00
Pavel V. Talanov
6164566cad
Extract duplicate logic between javascript and builtins serialization/deserialization
2015-12-09 18:51:27 +03:00
Pavel V. Talanov
34c3c04ead
Implement NameResolverImpl#getPackageFqName(index)
2015-12-09 18:51:26 +03:00
Pavel V. Talanov
5846769b43
J2K NameResolverImpl: convert
2015-12-09 18:51:26 +03:00
Pavel V. Talanov
9ff6be6f0f
J2K NameResolverImpl: rename file
2015-12-09 18:51:25 +03:00
Pavel V. Talanov
e458534c93
Write package_fq_name to for Package message when serializing builtins
2015-12-09 18:51:24 +03:00
Pavel V. Talanov
f05de6d6eb
Add package_fq_name field extension to builtins.proto
2015-12-09 18:51:24 +03:00
Pavel V. Talanov
9a2442bba6
Decompiler, refactor: reduce the number of classes needed to define a decompiler
2015-12-09 18:51:23 +03:00
Pavel V. Talanov
dc34d4fc31
Decompiler, minor: fix some strange code
2015-12-09 18:51:22 +03:00
Pavel V. Talanov
136e8d9d02
Refactor: repackage decompiler code and explicitly extract class file and js metafile parts
2015-12-09 18:51:21 +03:00
Dmitry Petrov
70c200d265
Fix diagnostic messages for properties.
...
Fix IDE tests.
Update quick fixes in IDE
(TODO: review new inheritance-related diagnostics with regards to quick fixes)
2015-12-09 17:43:48 +03:00
Dmitry Petrov
94bea54db3
Change "most specific return type" definition for fake overrides.
...
Given overridden descriptors D = d[i].
1. Find D*, subset of D:
returnType(d* from D*) <: returnType(d) for each d from D.
Always prefer var to val.
2. Prefer non-flexible return type to flexible.
Check for var/val overrides properly
(NB: this will report PROPERTY_TYPE_MISMATCH_ON_OVERRIDE
for all properties, not just overrides involving vars as it was before).
2015-12-09 17:43:48 +03:00
Dmitry Petrov
594039ac42
Delegation and overrides:
...
- Tests.
- No need for a separate diagnostic message regarding
return/property type conflict on override by delegation:
it is always a conflict of inherited signatures.
2015-12-09 17:43:48 +03:00
Dmitry Petrov
84824b1024
Fix KT-10194: skip incorrect delegates.
2015-12-09 17:43:48 +03:00
Dmitry Petrov
ef72c594c4
KT-1934 & KT-10197:
...
Naive approximation for fake overriding signature:
use upper bound for flexible types.
Check delegation errors.
2015-12-09 17:43:47 +03:00
Dmitry Petrov
6e2d42daf9
J2K: DelegationResolver.kt: convert to Kotlin
2015-12-09 17:43:47 +03:00
Dmitry Petrov
8f5df45edc
J2K: DelegationResolver.kt
2015-12-09 17:43:47 +03:00
Dmitry Petrov
2fcb7e532b
KT-1934: Fixing synthetic accessors hierarchy
2015-12-09 17:43:47 +03:00
Dmitry Petrov
135c30323b
KT-1934 Check inherited signatures for compatibility
...
Overridden signatures should have compatible return types
(equal types for 'var').
Only relevant overrides should be taken into account.
Refactor inherited signatures check,
introduce a strategy interface for problem reporting.
2015-12-09 17:43:47 +03:00
Dmitry Jemerov
18e343d405
Merge pull request #795 from mcgee/KT-10124
...
#KT-10124 Fixed
2015-12-09 15:28:31 +01:00
Dmitry Jemerov
863e32c5cd
Merge pull request #791 from mcgee/KT-9938
...
#KT-9938 Fixed
2015-12-09 15:17:31 +01:00
Andrey Breslav
83189013c6
Minor. Drop deprecated unary operator names from JS back-end
2015-12-09 17:10:30 +03:00
Andrey Breslav
0a0e4f1ba2
Minor. Clean up the code in OperatorChecker.kt
2015-12-09 17:10:30 +03:00
Andrey Breslav
3eeab68261
Signature checks fixed for plus() and minus()
2015-12-09 17:10:30 +03:00
Andrey Breslav
421f84e05a
Error messages fixed for deprecations that have been made errors
2015-12-09 17:10:30 +03:00
Andrey Breslav
434082cadb
'yield' reserved as a keyword
2015-12-09 17:10:30 +03:00
Alexey Tsvetkov
e6bba01798
Increment cache version
...
Wildcard generation could cause source level incompatibility, so we should rebuild
2015-12-09 16:23:35 +03:00
Alexey Tsvetkov
c567376e35
Save class hierarchy to incremental caches
...
Author: Alexey Tsvetkov <Alexey.Tsvetkov@jetbrains.com >
2015-12-09 16:23:35 +03:00
Alexey Tsvetkov
6ba5dcaa06
Simplify collection externalizers
2015-12-09 16:23:35 +03:00
Nikolay Krasko
8a95f23a23
Adjust formatting for FILE_ANNOTATION_LIST
2015-12-09 16:01:56 +03:00
Nikolay Krasko
966ad9d3b6
Move idea-repl module to ide group
2015-12-09 16:01:55 +03:00
Nikolay Krasko
a2d6bd09f3
Minor: allow to use ${file} directive in action text to reference file name
2015-12-09 16:01:53 +03:00
Nikolay Krasko
3374ac7606
Minor: More tests for warnings suppression
2015-12-09 16:01:52 +03:00
Nikolay Krasko
3c5b02e54a
Minor: better diagnostic message in tests
2015-12-09 16:01:50 +03:00
Nikolay Krasko
789738c45f
Minor: add fqname to dictionary
2015-12-09 16:01:49 +03:00
Dmitry Jemerov
e97e82d119
use terms "lambda expression" and "anonymous function" instead of "function literal" and "function expression"
2015-12-09 13:55:40 +01:00
mcgee
4a0e33003b
#KT-9938 Fixed
...
Top level test case is added
2015-12-09 07:32:41 +03:00
Alexander Udalov
9a01c0d9cb
Test that no delegated properties are used in critical classes in reflection
2015-12-08 22:59:00 +03:00
Stanislav Erokhin
cfed28c2ff
Use CastImplicitClassReceiver for implicit this with smart cast
2015-12-08 20:42:55 +03:00
Stanislav Erokhin
b7e4fdf4d5
Add extensionReceiver to ScopeTowerLevel & use it in ImportingScopeBasedTowerLevel
2015-12-08 20:42:55 +03:00
Dmitry Jemerov
57b5588498
rename "Jet" to "Kotlin" in CFG classes
2015-12-08 16:54:09 +01:00
Dmitry Jemerov
3275542426
one more missing invokeLater() for plugin update checks (EA-76738 - Throwable: DebugUtil.currentStackTrace)
2015-12-08 16:45:40 +01:00
Dmitry Jemerov
d65c8fb06c
double-check action parameters (EA-76026 - KNPE: ShowExpressionTypeAction.actionPerformed)
2015-12-08 16:45:39 +01:00
Dmitry Jemerov
0ec57e7fee
add missing scope checks for highlight usages (EA-75896)
...
#KT-10038 Fixed
2015-12-08 16:45:19 +01:00
Stanislav Erokhin
10a13e737e
Minor. Add isComputing to DeferredType
2015-12-08 17:29:55 +03:00
Stanislav Erokhin
11410000b4
Minor. Do not resolve implicit invoke for callable reference
2015-12-08 17:29:55 +03:00