Dmitriy Novozhilov
6c26fc1943
[FIR] Don't render Any? upper bounds of type parameters
2019-07-30 16:28:14 +03:00
Mikhail Glukhikh
d32e5065c5
FIR: implementation of delegateProvider in delegate resolve
2019-07-25 09:46:42 +03:00
Mikhail Glukhikh
213f951da3
FIR: partial implementation of delegate resolve #KT-32217 Fixed
2019-07-25 09:46:34 +03:00
Mikhail Glukhikh
7ccf21c5c8
FIR resolve: fix vararg parameter types
2019-07-17 10:45:07 +03:00
Mikhail Glukhikh
592cf4f4e8
Make FirNamedReferenceWithCandidate not resolved, fix receiver completion
...
Counting it as resolved provokes a lot of difficult to discover errors
2019-07-17 10:45:06 +03:00
Mikhail Glukhikh
fff954ed3f
FIR: skip extra non-valid groups during candidate resolve
2019-07-17 10:45:06 +03:00
Mikhail Glukhikh
2d74dac4f2
FIR: set constructor parameter scope correctly for designated transformer
2019-07-17 10:45:05 +03:00
Mikhail Glukhikh
2ceffa241b
FIR: make Java default constructor visibility same with class visibility
2019-07-11 12:38:53 +03:00
Mikhail Glukhikh
d96c66adac
FIR: partially implement invoke resolution
2019-07-08 16:59:37 +03:00
Mikhail Glukhikh
d41c50d6cf
FIR: support type inference for assignments, fix related lambda inference
2019-06-24 18:51:03 +03:00
Mikhail Glukhikh
48cea4b800
FIR: take expected type into account during inference
...
NB: this commit provokes some inference problems,
which are fixed by next commit about type inference for assignments
2019-06-24 18:42:52 +03:00
Mikhail Glukhikh
54078c4e9c
FIR resolve: support inferring property type from getter
2019-06-20 15:26:39 +03:00
Mikhail Glukhikh
16ead49967
FIR: implement backing field references via 'field' synthetic variable
2019-06-20 15:26:39 +03:00
Simon Ogorodnik
2995e9fcac
FIR deserializer optimization: avoid calling findKotlinClass twice
...
This commit influences enum entries deserialization.
In particular, now we don't deserialize enum entry members,
but deserialize its supertype correctly (see test data changes).
2019-06-19 23:04:41 +03:00
Mikhail Glukhikh
2db8409d85
FIR: introduce & resolve spread named arguments #KT-31575 Fixed
2019-05-28 10:20:42 +03:00
Mikhail Glukhikh
56435fa283
FIR Java: add default constructors
2019-05-28 10:20:40 +03:00
Mikhail Glukhikh
d2bdbd8978
FIR resolve: record & check implicit extension receiver type properly
2019-05-28 10:20:35 +03:00
Mikhail Glukhikh
d9d582b226
FIR tower resolve: add level with implicit extension receiver
2019-05-28 10:20:33 +03:00
Mikhail Glukhikh
45b0f5a0ca
Add FIR resolve test (call extension from extension)
2019-05-28 10:20:32 +03:00
Mikhail Glukhikh
bc336650ff
More top-level FIR resolve tests (map, with)
2019-05-28 10:20:31 +03:00
Mikhail Glukhikh
4d145db9f7
FIR resolve (by semoro): support correct type inference for generic args
...
This commit includes additional test and fixes e.g.
resolve of listOf() + listOf()
2019-05-28 10:19:12 +03:00
Simon Ogorodnik
d3f00280e9
Disable data class copy function body in raw FIR
...
After this commit we require 'copy' body generation in FIR2IR converter
2019-05-28 10:18:00 +03:00
Mikhail Glukhikh
05e4539019
Set resolved type for lambdas properly during FIR resolve
...
Partially done by semoro
2019-05-28 10:17:31 +03:00
Mikhail Glukhikh
0aaf8c7689
Fix FIR Java enhancement of java.util.Map & similar supertypes
2019-05-28 10:17:21 +03:00
Simon Ogorodnik
cef108a5ae
FIR: implement qualifier resolver
2019-05-28 10:17:05 +03:00
Mikhail Glukhikh
68da1a97d1
Add fib test to FIR resolve tests
2019-05-23 14:02:11 +03:00
Mikhail Glukhikh
2bf80ff64e
FIR: support copy functions in data classes
2019-05-23 14:02:10 +03:00
Simon Ogorodnik
6c313895df
[FIR] Do not enhance java fields to firProperty
2019-05-23 14:02:09 +03:00
Simon Ogorodnik
aa96837758
[FIR] Introduce unchecked not-null cast as internal operation for !!, ?:
2019-05-23 14:02:08 +03:00
Mikhail Glukhikh
90009f002c
Add FIR test for 'Exception' constructor resolve ambiguity (type alias)
2019-05-23 14:02:07 +03:00
Simon Ogorodnik
3e51cbc9dc
FIR: move test to stdlib group thus fixing it
2019-04-30 18:45:56 +03:00
victor.petukhov
3636046e2d
[FIR] Add test with potential recursive call in compiler FE on when with sealed class inside it (KT-18583)
2019-04-30 18:45:55 +03:00
Mikhail Glukhikh
d1d6b8b77a
FIR Java: handle primitive arrays in annotations correctly
2019-04-30 18:45:54 +03:00
Simon Ogorodnik
77817cb750
Raw FIR: copy class type-parameters into constructors properly
2019-04-30 18:45:54 +03:00
Simon Ogorodnik
99994e6c41
FIR: provide super-type as the self-type for anonymous objects
...
This commit is a temporary approximation useful before we have
symbols for local classes & objects
2019-04-30 18:45:54 +03:00
Simon Ogorodnik
d19a250cbe
FIR: support proper overriding of generic functions
2019-04-30 18:45:53 +03:00
Simon Ogorodnik
7b9f5293da
FIR: resolve primary constructor parameters in initializers context
2019-04-30 18:45:53 +03:00
Simon Ogorodnik
e521e66c74
FIR deserializer: provide proper type for enum entries
2019-04-30 18:45:52 +03:00
Simon Ogorodnik
ca350e64c2
FIR deserializer: add proper container class id to nested class members
2019-04-30 18:45:52 +03:00
Simon Ogorodnik
daf9f927d4
FIR: add property case to companion test
2019-04-30 18:45:52 +03:00
Simon Ogorodnik
3e69838f48
FIR Java: map classes to make java type-parameters have correct bounds
...
Really, this commit implements early J2K mapping for all Java types.
It's questionable and probably wrong at least for super-types,
because, for example, we cannot resolve spliterator() in classes
derived from java.lang.Iterable
2019-04-30 18:45:51 +03:00
Simon Ogorodnik
6a0e3371ae
FIR: resolve conflicts on multiple inheritance of fun with same signature
2019-04-30 18:45:50 +03:00
Simon Ogorodnik
cec10dac85
FIR deserializer: remove cycle in annotations loading
2019-04-30 18:45:48 +03:00
Mikhail Glukhikh
e3e7eea3fe
FIR: support (partially) type annotations in JVM deserialized
2019-04-30 18:45:48 +03:00
Mikhail Glukhikh
48cd9e3251
FIR: support class annotations in JVM deserialized
2019-04-30 18:45:48 +03:00
Mikhail Glukhikh
a9db64989b
FIR deserializer: support enum entries and their annotation usages
2019-04-30 18:45:48 +03:00
Mikhail Glukhikh
b839e50ee2
FIR: deserialize annotations (built-ins only, no enums & arrays yet)
...
Problems: enums aren't deserialized correctly; array aren't done at all;
Target annotation has no arguments in built-in for some reason.
2019-04-30 18:45:47 +03:00
Simon Ogorodnik
c487c1443f
FIR deserializer: provide type parameters for type-aliases
2019-04-30 18:45:47 +03:00
Simon Ogorodnik
9d7d358836
FIR deserializer: support properties
2019-04-30 18:45:47 +03:00
Simon Ogorodnik
b02b090bdf
FIR inference: implement simple constraint system properly
2019-04-30 18:45:46 +03:00