Mikhail Glukhikh
29114fe7b5
FIR: leave 'isSuspend' in functional & resolved type references only
2020-04-20 17:05:38 +03:00
Jinseong Jeon
88f81b9b71
FIR: record 'suspend' function modifier in type references
2020-04-20 17:05:28 +03:00
Dmitriy Novozhilov
276754260a
[FIR] Add replaceCalleeReference to all FirResolvable
...
Also improve tree generator: now it generates abstract overrides
for `replace` functions and correctly generates replace for fields
with overriden type
2020-04-17 12:37:28 +03:00
Dmitriy Novozhilov
fa1e5f9593
[FIR] Add transformations for delegated constructor call
2020-04-17 12:37:28 +03:00
Mikhail Glukhikh
d906c814cf
[FIR] Fix lookup tag creation for values() & valueOf()
2020-04-15 19:32:53 +03:00
Georgy Bronnikov
7ea4ac9e9a
[FIR] Regenerate FIR tree
2020-04-15 16:26:44 +03:00
Georgy Bronnikov
a1a2da3c0f
Revert "IR: put resolution of unbound type parameter symbols behind a language version flag"
...
This reverts commit 9634e6fba3 .
2020-04-15 15:58:44 +03:00
Georgy Bronnikov
9634e6fba3
IR: put resolution of unbound type parameter symbols behind a language version flag
2020-04-15 15:51:20 +03:00
Dmitriy Novozhilov
d718b596bc
[FIR] Add transform declaration and companion to regular class
2020-04-15 11:13:00 +03:00
Dmitriy Novozhilov
17c6122987
[FIR] Make STATUS resolve phase as required for body resolve
2020-04-15 11:12:59 +03:00
Dmitriy Novozhilov
452fb3e723
[FIR] Add stage for resolve contract desription
2020-04-15 11:12:59 +03:00
Dmitriy Novozhilov
cef6cd765c
[FIR] Make ConeEffectDeclaration an abstract class
2020-04-15 11:12:58 +03:00
Dmitriy Novozhilov
eef9b87047
[FIR] List for unresolved effects to resolved contract node
2020-04-15 11:12:57 +03:00
Dmitriy Novozhilov
4e1bf5f1e2
[FIR] Add extracting contracts in raw fir builder and light tree builder
2020-04-15 11:12:57 +03:00
Dmitriy Novozhilov
25cee12421
[FIR] Add contracts to FIR renderer
2020-04-15 11:12:57 +03:00
Dmitriy Novozhilov
50627f2c83
[FIR] Add contract renderer
2020-04-15 11:12:57 +03:00
Dmitriy Novozhilov
a89e0123c7
[FIR] Add fir node for raw contract description
2020-04-15 11:12:56 +03:00
simon.ogorodnik
6d3dccab83
[FIR] Fix obsolete transforms & visit consistency
2020-04-14 20:05:47 +03:00
simon.ogorodnik
c2ea0676e4
[FIR] Split functions & constructors processing
2020-04-13 20:26:17 +03:00
simon.ogorodnik
d55c6550bb
[FIR] Add substitution to classifiers processing
2020-04-13 20:26:16 +03:00
simon.ogorodnik
cb00a4c136
[FIR] Update type parameter use-sites to use type parameter refs
2020-04-13 20:26:15 +03:00
simon.ogorodnik
7c56209cef
[FIR] Introduce type parameter ref in generated tree
2020-04-13 20:26:15 +03:00
Mikhail Glukhikh
cd5a4900e6
[FIR] Support dispatch & extension receiver in component calls
2020-04-09 15:22:56 +03:00
Mikhail Glukhikh
32748ea741
[FIR] Change char constant rendering to prevent encoding inconsistencies
2020-04-06 16:41:58 +03:00
Mikhail Glukhikh
f3f7bf70f6
[FIR] Set delegate field receiver properly
2020-04-03 13:29:55 +03:00
Mikhail Glukhikh
036b6c63f6
[FIR] During resolve, set correctly property reference type in delegate
2020-04-03 13:18:47 +03:00
Jinseong Jeon
94749855b9
FIR: fix visibility extension for fake override.
2020-04-03 13:03:50 +03:00
Dmitriy Novozhilov
16b5b2dcef
[FIR] Add symbol to FirAnonymousInitializer
2020-04-03 10:08:24 +03:00
Dmitriy Novozhilov
1177a56815
[FIR] Don't resolve annotations twice
2020-04-03 10:08:20 +03:00
Dmitriy Novozhilov
28738971bc
[FIR] Add transformAnnotations for fir nodes
2020-04-03 10:08:19 +03:00
Dmitriy Novozhilov
8cb6e8f8af
[FIR] Add control flow graph for class initialization
2020-04-03 10:08:17 +03:00
Dmitriy Novozhilov
74d86d82c6
[FIR] Add control flow graph to FirAnonymousInitializer
2020-04-03 10:08:16 +03:00
Dmitriy Novozhilov
8d3ee4f304
[FIR] Add cfg reference to classes
2020-04-03 10:08:16 +03:00
Jinseong Jeon
44c34ab8c3
[FIR2IR] Don't create fake overrides for private property accessors
2020-04-02 12:43:06 +03:00
Alexander Udalov
34e9e899f8
FIR: move FirModifierList to module 'fir:checkers'
...
To remove dependency of a large module 'fir:tree' on 'psi', allowing
them to compile in parallel.
2020-04-01 12:09:41 +02:00
Jinseong Jeon
078cf02c8a
FIR: Provide dispatch receiver for 'field' according to property type
2020-03-30 16:57:53 +03:00
Alexander Udalov
b6fdc96994
Reverse dependency 'psi' <-> 'frontend.common'
...
Move ParseUtils to 'psi', and ImportPath to 'frontend.common'.
Now 'psi' depends on 'frontend.common', and that allows to remove
dependency of 'fir:tree:tree-generator' on 'psi', allowing the former to
compile in parallel with the old frontend code.
2020-03-28 21:30:07 +01:00
Mikhail Glukhikh
d8bc29e6c6
[FIR] Eliminate obsolete NO_SUPERTYPE diagnostic from builder
2020-03-27 18:24:50 +03:00
Mikhail Glukhikh
cec0f58544
[FIR] Introduce & use toFirLightSourceElement
2020-03-27 16:46:59 +03:00
Mikhail Glukhikh
6a5acc024a
[FIR] Rename PSI version of toFirSourceElement
2020-03-27 16:46:59 +03:00
Mikhail Glukhikh
b27152f903
Replace some FIR syntax errors with more proper diagnostics
2020-03-27 16:46:59 +03:00
Mikhail Glukhikh
2f63c8a46a
[FIR] Enhance diagnostic DSL to be able to use concrete factories
...
Before this commit, things like DiagnosticFactory0<KtDeclaration>
were effectively unusable.
2020-03-27 16:46:58 +03:00
FenstonSingel
b7d8e879a6
[FIR] Support 4 diagnostics for pairs of modifiers
...
In particular, this commit includes:
* Attempt to abstract access to FirSourceElement via FirModifier
* Add more visit functions to DeclarationCheckersDiagnosticComponent
* Add messages+factories for 4 modifier-related errors and warnings
* Introduce FirModifierChecker
2020-03-27 12:34:29 +03:00
Dmitriy Novozhilov
3acb64c536
[FIR] Add flexible default upper bound for java type parameters
2020-03-27 10:17:12 +03:00
Dmitriy Novozhilov
75e2596b34
[FIR] Update imports in generated tree
2020-03-25 18:07:27 +03:00
Dmitriy Novozhilov
86e7faf639
[FIR] Add start offset and end offset to FirSourceElement
2020-03-25 11:35:43 +03:00
Dmitriy Novozhilov
2c37627b15
[FIR] Add unified diagnostics for psi and light tree
2020-03-25 11:35:43 +03:00
Dmitriy Novozhilov
1a3fef5fa1
[FIR] Switch names of FirDiagnostic and ConeDiagnostic
2020-03-25 11:35:43 +03:00
simon.ogorodnik
27136ef8be
[FIR] Support unsigned integer literals
2020-03-24 18:58:18 +03:00
Nick
abcd6bd528
[FIR] Support diagnostic SUPER_IS_NOT_AN_EXPRESSION
2020-03-23 15:14:06 +03:00