Simon Ogorodnik
3533541702
Provide class use-site scopes from FirSymbolProviders
2019-04-30 18:45:34 +03:00
Simon Ogorodnik
1cd25da7af
FIR scope processors: add function to check is stop on ProcessorAction
2019-04-30 18:45:34 +03:00
Simon Ogorodnik
082e9d1cd7
FIR Java: implement knownClassNamesInPackage optimization
2019-04-30 18:45:34 +03:00
Leonid Startsev
0ecf20bd62
Revert back visibility in deserialization ctor to public so inheritors can access it from other modules.
...
Fix instantiating of polymorphic serializer with generics.
Move context creation below as asked.
2019-04-30 17:53:40 +03:00
Alexander Udalov
e22594acde
JVM IR: slightly change field renaming convention implementation
...
Prefer to rename fields from the class, not from the companion, to be
more in line with the old backend's behavior. This has no effect on the
behavior of current tests but removes differences in metadata (since
metadata has information about every property->field mapping) in some of
them
2019-04-30 13:15:29 +02:00
Alexander Udalov
6cc293a0c5
JVM IR: record FIELD_FOR_PROPERTY for property delegates
...
Delegated properties now have their $delegate fields recorded in the
metadata (in `ClassCodegen.generateField`). This part of metadata is
used by `KPropertyN.getDelegate` functions, so almost all tests on
getDelegate are now unmuted
2019-04-30 13:15:29 +02:00
Alexander Udalov
5aae832c5f
Minor, update doc on -Xsanitize-parentheses
...
The ASM issue with parentheses was fixed in
https://gitlab.ow2.org/asm/asm/commit/02f00c4a82d9252b34d08dad47c540309fda3b7e
#KT-29475
2019-04-30 13:15:29 +02:00
Alexander Udalov
bd6e90f302
FIR: remove dependency of :compiler:fir:resolve on :compiler:cli
2019-04-30 12:01:23 +02:00
pyos
c77e8a8c2d
JVM_IR: remove another redundant lowering
2019-04-30 08:20:37 +02:00
Andrey Uskov
998a24414a
Improved parsing of internal compiler arguments with boolean state in
...
case when the argument is listed twice in the list of command line
arguments. The last value will be used.
#KT-27181 Fixed
2019-04-29 19:48:01 +03:00
Mikhael Bogdanov
0482f7e9c5
Restrict general compare intrinsic optimization to CompareTo intrinsic
2019-04-29 16:27:35 +02:00
Simon Ogorodnik
51f5042315
Fix FIR compilation
2019-04-29 16:51:39 +03:00
Mikhail Glukhikh
b8e6291265
Inference: use generic version of error type in type approximator
2019-04-29 16:51:39 +03:00
Simon Ogorodnik
db8bd8c197
Fix check isCapturedTypeFromSubtyping to support KotlinTypeMarkers
2019-04-29 16:51:38 +03:00
Simon Ogorodnik
aabc9fa10f
Abstract PostponedResolvedAtom & buildCurrentSubstitutor
2019-04-29 16:51:37 +03:00
Simon Ogorodnik
58029830f0
Skip star-projection to avoid failures
2019-04-29 16:51:37 +03:00
Simon Ogorodnik
2ea7fb8801
Cleanup ConstraintStorage.buildResultingSubstitutor
2019-04-29 16:51:36 +03:00
Simon Ogorodnik
57a3b1a773
Abstract TypeApproximator from NewCapturedType
2019-04-29 16:51:36 +03:00
Simon Ogorodnik
9306f3840f
Abstract buildResultingSubstitutor & ResultTypeResolver from KotlinType
2019-04-29 16:51:35 +03:00
Simon Ogorodnik
fe2e5b7301
Abstract FlatSignature from kotlin types
2019-04-29 16:51:34 +03:00
Simon Ogorodnik
8e595f015e
Initial OverloadingConflictResolver abstraction from KotlinTypes
2019-04-29 16:51:34 +03:00
Simon Ogorodnik
9a1678728d
Implement inference context and simple components
2019-04-29 16:51:33 +03:00
Jiaxiang Chen
4b99d85322
Optimize JVM byte code generation for conditional conjunction
...
Implement an intrinsic method for boolean.and operation, and replace
ANDAND condition with a call to such intrinsic method.
2019-04-29 13:28:18 +02:00
Alexander Gorshenev
bd78e7e0aa
Move property serialization to symbols
...
Make sure private field's wrapped descriptor is bound
2019-04-29 04:10:00 +03:00
Alexander Gorshenev
2c026114ae
Made IrStatementOrigin serialization field optional for all statements
2019-04-29 04:04:16 +03:00
Alexander Gorshenev
85f85fb3e8
IrStatementOrigin support in newly introduced IrDelegatedPropertyReference
2019-04-29 04:04:16 +03:00
Alexander Gorshenev
19bd01cc8a
Introduced proper IrStatementOrigin serialization.
2019-04-29 04:04:16 +03:00
Dmitry Petrov
865e0cc080
IR: IrConstructorCall: fixes after rebase
2019-04-26 17:43:26 +03:00
Igor Chevdar
7f423bd841
[IR] Fixes in inliner
2019-04-26 17:43:26 +03:00
Mikhael Bogdanov
be0b2e064b
Fix JVM IR inliner
2019-04-26 17:43:26 +03:00
Roman Artemev
c545481db9
Fix JS_IR IrConstructorCall support
2019-04-26 17:43:26 +03:00
Roman Artemev
2a3ce8e9f1
Serialize IrConstructorCall
2019-04-26 17:43:26 +03:00
Dmitry Petrov
b78d1bb2b9
IrConstructorCall support in JVM_IR, JS_IR, and FIR2IR
2019-04-26 17:43:25 +03:00
Dmitry Petrov
82128800c5
IR: assertion in IrCallImpl init
...
NB it uses descriptor to determine if we try to call constructor using
IrCall.
2019-04-26 17:43:24 +03:00
Dmitry Petrov
11eea6e86a
psi2ir: generate IrConstructorCall elements in IR builder helpers
2019-04-26 17:43:24 +03:00
Dmitry Petrov
e3fd74a580
IR: annotations are represented as IrConstructorCall elements
...
Also, they are rendered somewhat nicer
2019-04-26 17:43:24 +03:00
Dmitry Petrov
db7bcb6464
IR proto: IrConstructorCall in protobuf format
2019-04-26 17:43:24 +03:00
Dmitry Petrov
198ccbc114
JVM_IR: support IrConstructorCall in ExpressionCodegen
2019-04-26 17:43:24 +03:00
Dmitry Petrov
37b1c175ce
IR: introduce IrConstructorCall / IrConstructorCallImpl
2019-04-26 17:43:24 +03:00
Roman Artemev
5bd3bcd237
[JS IR BE] Support main function
...
* Implement IR-based main function detector
2019-04-26 17:04:28 +03:00
Roman Artemev
6729603ac7
[JS IR BE] Fix warnings
2019-04-26 17:04:28 +03:00
Mikhael Bogdanov
867e39f73c
Parallelize idea-gradle tests
2019-04-26 14:42:20 +02:00
Leonid Startsev
6bec6e6905
Add synthetic constructors to class member scope, so they won't fly 'in the air' in the backends
...
This is required mainly for Native compiler since it wont't work correctly on descriptors that are not present in the class.
2019-04-26 15:04:53 +03:00
Leonid Startsev
406896eaf0
Implement equals/hashcode for IrDeclarationOrigin so deserialized unknown origins would be compared correctly
2019-04-26 14:59:51 +03:00
Mikhael Bogdanov
c53682f397
Fix AS33 compilation
...
Commented unnecessary code that uses unavailable API
2019-04-26 11:29:42 +02:00
Mikhael Bogdanov
ceec35bf38
Up merge changes from UsefulTestCase into KtUsefulTestCase
2019-04-26 11:29:41 +02:00
Sergey Rostov
911a5bdd0e
Specify missing type arguments to fix compilation
2019-04-26 12:00:43 +03:00
Mikhail Zarechenskiy
5b33e54f77
[NI] Provide diagnostics for candidates in "allCandidates" mode
...
This helps for completion as it use diagnostics to clip extra
candidates
2019-04-26 11:40:17 +03:00
Mikhail Zarechenskiy
450bfed375
Specify missing type arguments to fix compilation in FE module
2019-04-26 11:32:19 +03:00
Mikhail Zarechenskiy
57ad0aa8fb
Missing fix for project compilation against bootstrap compiler
2019-04-26 06:28:13 +03:00