Commit Graph

499 Commits

Author SHA1 Message Date
Dmitriy Novozhilov f9c37cfa6c [FIR] Add transformAnnotationTypeRef to FirAnnotationCall 2020-05-08 15:09:59 +03:00
Dmitriy Novozhilov bb645a7962 [FIR] Add transformSuperTypeRefs to FirClass 2020-05-08 15:09:58 +03:00
Dmitriy Novozhilov bad4497970 [FIR] Add transformDeclarations to FirFile 2020-05-08 15:09:58 +03:00
Dmitriy Novozhilov 4b580b4e06 [FIR] Refactor FirResolvePhase.requiredToLaunch 2020-05-08 15:09:58 +03:00
Dmitriy Novozhilov 3d30ba9c19 [FIR] Add ability to register user defined annotations for plugins 2020-05-08 15:09:58 +03:00
Jinseong Jeon 7b01cf7b04 FIR: handle labeled super reference properly 2020-05-07 12:02:56 +03:00
Dmitriy Novozhilov 41545cd2b4 [FIR] Initialize origin in all places with creating of declarations 2020-05-07 09:42:20 +03:00
Dmitriy Novozhilov e515b1c823 [FIR] Add origin field to FirDeclaration 2020-05-07 09:42:20 +03:00
Mikhail Glukhikh 07e9b9517a [FIR] Extract interface FirEffectiveVisibility 2020-04-29 17:25:12 +03:00
Dmitriy Novozhilov e6d8e67a3a [FIR] Generify ComponentArray 2020-04-28 21:05:06 +03:00
Dmitriy Novozhilov a4a58a9d74 [FIR] Get rid of FirSession.service 2020-04-28 21:05:06 +03:00
Denis Zharkov b62400124a FIR: Support DEBUG_INFO_CALL calls in tests 2020-04-21 09:48:03 +03:00
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