Alexander Udalov
b943ed26f3
Report incompatible metadata version error correctly
...
Similarly to pre-release classes, load metadata for the class anyway and allow
the resolution to select it as the result and prohibit its usage in the end
with the special diagnostic reported in MissingDependencyClassChecker
2016-12-09 01:59:36 +03:00
Alexander Udalov
d204fa91cc
Use "-Xskip-metadata-version-check" to load pre-release classes
2016-12-09 01:59:35 +03:00
Alexander Udalov
7de0cfde16
Report error on pre-release top level members
2016-12-09 01:59:34 +03:00
Alexander Udalov
11f975fe89
Add classifier usage checker for missing dependency classes
...
This has no effect for the original use case of mock class descriptors
(unresolved classes used in libraries), but is necessary for pre-release
classes in case the compiler is a release, because such classes end up in scope
and can be the result of the resolution
2016-12-09 01:59:33 +03:00
Alexander Udalov
4e99349f1f
Write "pre-release" flag to class files, do not allow usages in release
2016-12-09 01:59:33 +03:00
Alexander Udalov
1342743001
Add KotlinVersion.IS_PRE_RELEASE and a flag to kotlin/Metadata
2016-12-09 01:59:33 +03:00
Ilya Gorbunov
3e69820907
Fix ClosedComparableRange.contains implementation, add docs.
2016-12-08 22:13:02 +03:00
Ilya Gorbunov
8ec2a2e6fe
Add NaN-propagation in coerceIn(ClosedComparableRange<Double>)
2016-12-08 22:13:00 +03:00
Ilya Gorbunov
ea77673dde
Reimplement coerceIn to range with new range functions: lessThanOrEquals.
2016-12-08 20:50:26 +03:00
Ilya Gorbunov
d60fc7d9a8
Introduce ClosedComparableRange interface which inherits ClosedRange to provide special comparison operation for double and float.
2016-12-08 20:50:11 +03:00
Ilya Gorbunov
5773594412
Reimplement ClosedRange.contains extensions to call interface contains method.
2016-12-08 20:50:07 +03:00
Ilya Gorbunov
4721dcd07c
Add specialization overloads for Float.rangeTo and Double.rangeTo to resolve them statically.
2016-12-08 20:49:10 +03:00
Ilya Gorbunov
5765031209
Adjust Range.contains optimization for double and float ranges according to #KT-4481
...
#KT-5044 #KT-4481
2016-12-08 20:47:27 +03:00
Ilya Gorbunov
d91f3cba0b
Add additional invariant to check in Range.contains optimization tests.
...
Change expectations for double and float ranges according to #KT-4481
#KT-5044 #KT-4481
Custom 'rangeTo' might be unoptimized, but still 'in' should not diverge from 'contains'.
2016-12-08 20:47:25 +03:00
Ilya Gorbunov
f5cc53c157
Provide ComparableRange specializations for Double and Float.
...
#KT-4481
2016-12-08 20:47:24 +03:00
Ilya Gorbunov
1aad82bbaf
Allow to specify generated function visibility, add capacity rank of primitive type
2016-12-08 20:47:22 +03:00
Ilya Gorbunov
e4ab3f3b93
Fix rendered descriptors in test data after enhancing signatures.
2016-12-08 20:34:59 +03:00
Ilya Gorbunov
eaf64fb225
MapTest: Uncomment cases that pass now, add more cases.
2016-12-08 20:34:57 +03:00
Ilya Gorbunov
459c5fed8c
Tweak checks and type parameter heuristics in LazyJavaClassDescriptor.getPurelyImplementedSupertype to support cases of UnaryOperator and BinaryOperator enhancements.
2016-12-08 20:34:55 +03:00
Ilya Gorbunov
c3921d1e40
Docs: improve code formatting in PurelyImplements docs, fix MutableList fq-name in example.
2016-12-08 20:34:54 +03:00
Ilya Gorbunov
f66b4201d1
Refactor FakePureImplementationsProvider to use single map
2016-12-08 20:34:52 +03:00
Ilya Gorbunov
c66b3b8ef9
Nullability for java.lang.ref.Reference.get
2016-12-08 20:22:17 +03:00
Ilya Gorbunov
84a7e3c032
Add tests for enhanced java signatures based on AbstractResolvedCallsTest.
...
Refactor AbstractResolvedCallsTest to support multiple carets (multiple methods being tested for resolve) in testdata file.
2016-12-08 20:22:17 +03:00
Ilya Gorbunov
15061ff125
Add known methods of collections and maps.
2016-12-08 20:22:17 +03:00
Ilya Gorbunov
14ec4c7acc
Minor: refactor expression in signatureEnhancement for better debugging
2016-12-08 20:22:17 +03:00
Ilya Gorbunov
253a901bd3
Evolve DSL for defining enhanced nullability info for known JDK functions. Enhance nullability for java.util.Optional.
2016-12-08 20:22:17 +03:00
Alexey Sedunov
215d8b1e1a
Intentions: Convert function type receiver to parameter
...
#KT-14246 Fixed
2016-12-08 17:56:57 +03:00
Alexey Sedunov
d4ed2d2022
Intentions: Convert function type parameter to receiver
...
#KT-14246 In Progress
2016-12-08 17:56:55 +03:00
Alexey Sedunov
9cadfd01ae
Introduce Variable: Allow extraction to class body/file
2016-12-08 17:56:54 +03:00
Alexey Andreev
abca774422
Support external modifier on classes in descriptor renderer. Regenerate test data.
2016-12-08 15:41:44 +03:00
Alexey Andreev
85733b47f3
Add support of external modifier in classes and properties to IDEA stub builder
2016-12-08 15:41:44 +03:00
Alexey Andreev
dadffebe97
Support external modifier in descriptor renderer. Update test data.
2016-12-08 15:41:43 +03:00
Alexey Andreev
7e37d5d6fa
Prohibit external modifiers on classes and properties in JVM target
2016-12-08 15:41:42 +03:00
Alexey Andreev
d0ffb5bd32
JS: add restrictions to external modifier according to KT-13893
2016-12-08 15:41:42 +03:00
Alexey Andreev
c0c6992ea6
JS: regenerate declarations from IDL
2016-12-08 15:41:42 +03:00
Alexey Andreev
c558b5d2b2
JS: regenerate stdlib
2016-12-08 15:41:41 +03:00
Alexey Andreev
1ebf81c3ff
Don't report about unused parameters on external functions and constructors
2016-12-08 15:41:41 +03:00
Alexey Andreev
7a6b510ddb
Include external modifier to serialized descriptors for classes and properties
2016-12-08 15:41:40 +03:00
Alexey Andreev
a7ce770cb4
Don't report error for properties and functions without body that either external by themselves or are members of external classes
2016-12-08 15:41:40 +03:00
Alexey Andreev
68412ae94f
JS: replace all usages of @native annotation with external modifier, in tests, stdlib, etc
2016-12-08 15:41:39 +03:00
Alexey Andreev
e0cb56b3c3
JS: use external modifier instead of @native annotation
2016-12-08 15:41:39 +03:00
Alexey Andreev
0c2da93e5f
Allow external modifier on classes and properties
2016-12-08 15:41:38 +03:00
Alexey Andreev
ba2443bcb3
Add external property to class and property descriptors
2016-12-08 15:41:38 +03:00
Nikolay Krasko
43948a0170
Wrap options for constructor parameters
...
#KT-12176 In Progress
2016-12-08 15:15:12 +03:00
Nikolay Krasko
300601da54
Indent () in if, when, while and do-while with continuation indent (KT-5897)
...
#KT-5897 Fixed
2016-12-08 15:15:11 +03:00
Nikolay Krasko
211cae2ad2
Refactoring: use when instead of if
2016-12-08 15:15:09 +03:00
Alexander Udalov
d5c75ae764
Minor refactoring in frontend/resolution
...
Fix typos, formatting, diagnostic message
2016-12-08 12:20:37 +03:00
Alexander Udalov
921694e13a
Deduplicate code in JavaClassDataFinder
2016-12-08 12:20:36 +03:00
Alexander Udalov
41f2048f96
Minor, introduce DeserializedContainerSource
2016-12-07 21:46:37 +03:00
Alexander Udalov
228d0a1c43
Move "missing dependency class" diagnostic from JVM to common front-end
2016-12-07 21:46:37 +03:00