Denis Zharkov
3652cd9c18
Optimize top level class searching in LazyJavaPackageScope
...
Do not try to search something, that is known not to exist
2016-03-02 13:38:46 +03:00
Pavel V. Talanov
b399bbffd7
Improve JvmConflictingDeclarations diagnostics rendering
2016-02-26 14:45:08 +03:00
Pavel V. Talanov
ced5a6c917
Introduce RenderingContext and add as parameter to DiagnosticParameterRenderer#render
...
RenderingContext holds data about the whole diagnostics allowing to adjust rendering of its parameters
2016-02-26 14:45:04 +03:00
Pavel V. Talanov
4f18b3da53
Rename: Renderer -> DiagnosticParameterRenderer and move it out of descriptors module
...
DescriptorRenderer is no longer a renderer
DescriptorRenderers should not be used to render diagnostic parameters explicitly
2016-02-26 14:45:02 +03:00
Pavel V. Talanov
77f74a929a
Revert 06215ca932
...
It led to parameter names missing in parameter info and completion for compiled java code used from kotlin
See KT-11039
2016-02-26 14:05:47 +03:00
Stanislav Erokhin
6591f8a2ab
Minor. removed unused method from AdditionalTypeChecker.
2016-02-24 19:33:06 +03:00
Stanislav Erokhin
24829ee3ac
Minor. rename
2016-02-24 19:33:06 +03:00
Stanislav Erokhin
665e13e4ec
Remove obsolete code about warnings for expressions which can be null in java(has @Nullable annotation in java) and in kotlin not marked nullable.
...
After introducing flexible types and signature enhancement there is no more such expressions.
2016-02-24 19:33:05 +03:00
Alexander Udalov
1a5a077bd6
Replace map + filterNotNull -> mapNotNull in project
2016-02-20 19:05:30 +03:00
Natalia Ukhorskaya
42927bb078
Make function delegated to sam adapter synthetic
2016-02-17 15:08:53 +03:00
Denis Zharkov
961b72682a
Drop unnecessary call to substituted 'overriddenDescriptors'
2016-02-16 12:01:13 +03:00
Denis Zharkov
44148107ae
Optimize SamAdapterOverridabilityCondition
...
Do not calculate it for non-static members,
because SAM adapters only exist in static scope now
2016-02-16 12:01:13 +03:00
Denis Zharkov
9f22b17918
Optimize external overridability conditions
...
- Skip ones that can lead only to success after first success
- And vice versa
2016-02-16 12:01:13 +03:00
Denis Zharkov
1b4b8ab5db
Memoize 'JavaTypeClassifierImpl.isRaw' result
2016-02-16 12:01:12 +03:00
Pavel V. Talanov
1800e5a7db
Remove some usages of Name.guess (and rename this utility to discourage new usages)
2016-02-15 13:32:42 +03:00
Dmitry Petrov
aed2f2b993
Property vs classifier conflict.
...
TODO get rid of duplicate diagnostics
(looks like OverloadResolver and DeclarationResolver are partially redundant; refactor them).
2016-02-11 10:32:46 +03:00
Pavel V. Talanov
f59a4c537e
Minor: remove some dead code
2016-02-08 16:45:46 +03:00
Denis Zharkov
c879f83037
Fix primitive types mapping
...
Use boxed version if type was enhaced to not-nullable
2016-02-08 16:40:47 +03:00
Denis Zharkov
18e7272a1e
Do not force overridden descriptors computation
...
Currently 'overriddenDescriptors' of substituted function is lazy
and in most cases it's unnecessary to compute it
(it's enough to use the same field from 'original')
2016-02-08 16:40:47 +03:00
Denis Zharkov
924d706e79
Release original Java descriptors while enhancing
...
It's both more correct and helps to release memory retained by
descriptor before enhancement
2016-02-08 16:40:47 +03:00
Dmitry Petrov
65f754ffca
Fix KT-10764 IDEA doesn't show overload conflict between constructor and function...
...
When checking for overloads in package, consider functions and top-level class constructors as possibly conflicting between each other. NB OverloadUtil uses containing package scope from module descriptor.
Change diagnostic message for CONFLICTING_OVERLOAD: it's misleading in case of fun vs constructor conflict.
Add custom multifile test for diagnostics in IDE (probably not the best; should preprocess file content if it's required to check highlighting in multiple files, not only in the first file).
Add test for KT-10765 Incremental compilation misses overload conflict between constructor and function ...
2016-02-02 16:21:26 +03:00
Yan Zhulanow
da7acd5e73
Check annotations on default property getter/setter
2016-02-02 13:14:56 +03:00
Dmitry Petrov
112e54b35a
KT-10752: if (inferred) type for an expression refers to a Java class
...
non-accessible in the current context, it is a compiler error.
Otherwise we might generate a CHECKCAST instruction that causes IAE at run-time.
Here we are somewhat less permissive then Java
(see inaccessibleType.kt in diagnostics tests).
2016-01-29 10:30:00 +03:00
Dmitry Petrov
1b78d01ae6
Effective visibility issues in FileBasedKotlinClass.
...
Make exposed nested classes public.
2016-01-29 10:30:00 +03:00
Alexander Udalov
b946d725d7
Filter out methods without return type to fix EA-73795
2016-01-28 21:48:16 +03:00
Denis Zharkov
29c24267fa
Fix project compilation
...
First parameters of `DiagnosticFactory.on` methods are annotated as 'NotNull'
2016-01-28 08:36:24 +03:00
Ilya Gorbunov
744a7a83f7
Cleanup RC deprecations in compiler and plugin.
2016-01-27 18:34:30 +03:00
Mikhail Glukhikh
0368631aa3
Source code fix: exposed visibility in object members
2016-01-26 19:04:04 +03:00
Denis Zharkov
5baa0ed4bb
Minor. Rename TypeUtils.containsSpecialType -> contains
2016-01-22 19:17:22 +03:00
Denis Zharkov
a5c13ce8cf
Approximate projections in SAM type when creating SAM adapter
...
Use the same approach as Java 8 applies to function types
(see non-wildcard parametrization in §9.9 of JLS)
#KT-6918 Fixed
2016-01-22 19:17:22 +03:00
Ilya Gorbunov
1129cee0ff
Collect nested classes from all 4 builtin packages.
2016-01-22 05:54:38 +03:00
Ilya Gorbunov
9c0f0cad70
Packages: move collections to kotlin.collections.
2016-01-22 05:54:38 +03:00
Pavel V. Talanov
06215ca932
Correctly avoid calculation of autogenerated parameter name in ClsParameterImpl.calcName()
2016-01-21 20:47:21 +03:00
Alexander Udalov
e17cd12c3c
Report error on generating calls to binary incompatible classes
2016-01-19 18:39:59 +03:00
Alexander Udalov
661af854fa
Drop KotlinClassHeader#filePartClassNames, use 'data' instead
2016-01-19 18:39:59 +03:00
Alexander Udalov
b587d3a78d
Use JvmMetadataVersion where appropriate instead of bytecode version
2016-01-19 18:39:59 +03:00
Valentin Kipyatkov
a1d760fc36
KT-10631 Consider creating a synthetic property even when the setter returns 'this'
...
#KT-10631 Fixed
2016-01-19 15:57:20 +03:00
Nikolay Krasko
803bd55f70
Minor: refactoring
2016-01-19 13:33:51 +03:00
Mikhail Glukhikh
e4f7446bec
JvmSynthetic forbidden for delegated properties (and searched for different use-site targets)
2016-01-19 11:38:53 +03:00
Mikhail Glukhikh
a2bba7c8f1
JvmField forbidden for delegated properties
2016-01-19 11:38:49 +03:00
Mikhail Glukhikh
ec909d0775
Volatile forbidden for delegated properties (and checked for other use-site targets)
2016-01-19 11:38:45 +03:00
Michael Bogdanov
9b3d97470f
Prohibit super calls with default parameters
2016-01-15 17:50:48 +03:00
Denis Zharkov
01fd3905be
Minor. Fix typo in package name: typeEnhacement -> typeEnhancement
2016-01-14 19:24:10 +03:00
Mikhail Glukhikh
44b07d8dfa
Refactoring: context instead of trace in WhenChecker and around
2016-01-12 14:19:29 +03:00
Mikhail Glukhikh
c085eb650f
Better diagnostics for non-exhaustive whens, relevant test #KT-10295 Fixed
2016-01-12 14:18:23 +03:00
Dmitry Jemerov
117a0d8b7b
compiler: cleanup 'public', property access syntax
2016-01-07 17:57:38 +01:00
Michael Bogdanov
11268331a8
Added '@' for annotation names in diagnostic messages
2015-12-30 12:25:13 +03:00
Ilya Gorbunov
80916d5ed7
Cleanup in compiler modules
2015-12-29 18:04:15 +03:00
Ilya Gorbunov
b71b336a69
Fix fq names of moved facade classes in imports and other code occurrences
2015-12-29 18:04:13 +03:00
Michael Bogdanov
d54c3f4fc7
Added '@' to annotation names in diagnostic messages
2015-12-29 17:20:16 +03:00