Commit Graph

513 Commits

Author SHA1 Message Date
Ilya Kirillov cd063d0cd0 [LL FIR] update phase of value parameters on lazy resolve
Previously, such phases may not be properly set which could cause additional lazy resolve
2022-08-10 22:49:13 +02:00
Ilya Kirillov 56e6d5d6b9 [Analysis API] do not preresolve all FirDeclarations to TYPES in tests
Previously, we resolved all declaration to the TYPES phase to collect their sealed inheritors
and thus not really checking lazy resolution to TYPES.
Now sealed class inheritors collection happens in separate LLFirResolveSession
2022-08-10 22:49:13 +02:00
Dmitry Gridin c0d6a64a8a [slc] rename fir to symbol
^KT-50241
2022-08-08 19:08:46 +00:00
Mikhail Glukhikh 2598ecf23f Revert "K2: fix internal visibility checks for overrides #KT-53197 Fixed"
This reverts commit 166965e559.
2022-08-05 18:26:59 +02:00
Dmitry Gridin 4ceb170917 regenerate tests 2022-08-05 14:12:41 +02:00
Artem Kobzar 2d85eddeb9 [FIR] test: add a test case for reified inline functions with a same name in different packages. 2022-08-04 22:56:07 +02:00
Denis.Zharkov 11a26e540e Revert "KT-35811: Type parameter angle brackets followed by equal sign are parsed incorrectly if whitespace is missing"
This reverts commit a2077f9063.
2022-08-04 17:50:00 +02:00
Denis.Zharkov 2ae2a7e442 Revert "KT-8263: Conditional operators are not parsed correctly"
This reverts commit 85800b4f9f.
2022-08-04 17:49:42 +02:00
Ilya Kirillov 6be2483824 [Analysis API FIR] rethrow IndexNotReadyException 2022-08-04 14:33:44 +00:00
Iven Krall 85800b4f9f KT-8263: Conditional operators are not parsed correctly 2022-08-04 11:24:09 +00:00
Iven Krall a2077f9063 KT-35811: Type parameter angle brackets followed by equal sign are parsed incorrectly if whitespace is missing 2022-08-04 11:24:08 +00:00
Mikhail Glukhikh 166965e559 K2: fix internal visibility checks for overrides #KT-53197 Fixed 2022-08-03 07:52:14 +00:00
Victor Petukhov 8500ee08a8 [FE 1.0] Remove CONSTRAINT_SYSTEM_FOR_OVERLOAD_RESOLUTION analysis flag
The constraint system for the old type inference is going to be removed.
Also, `CONSTRAINT_SYSTEM_FOR_OVERLOAD_RESOLUTION` isn't used in the production
2022-08-02 10:29:38 +00:00
Victor Petukhov a61648651b [FE 1.0] Use original receivers for NI while DSL scope violation checking
Original receivers are already use in the near place

^KT-46969 Fixed
2022-07-28 08:51:42 +00:00
Ilya Kirillov 24c9b8e006 [LL FIR] fix invalid designation collection in case of classpath conflict
^KTIJ-22323 fixed
2022-07-28 01:37:54 +02:00
Ilya Kirillov d9c4fda521 [Analysis API FIR] implement reference resolve inside KDoc
^KTIJ-22324 fixed
2022-07-28 01:37:53 +02:00
Ilya Kirillov fae30cef94 [Analysis API FIR] fix getting class id for non-java declarations 2022-07-26 23:41:11 +02:00
Ilya Kirillov 8be019d9bf [Analysis API] simplify KotlinDeclarationProvider interface 2022-07-26 23:41:11 +02:00
Ilya Kirillov 9d82eb8fe3 [LL FIR] do not rethrow IndexNotReadyException/ControlFlowException from caches 2022-07-26 23:41:11 +02:00
Ivan Kochurkin 2f56b29b3f [FIR] Extract FirSessionConfigurator and IncrementalCompilationContext to separated classes
With FirSessionFactory and FirJsSessionFactory
2022-07-25 23:30:09 +02:00
Ilya Kirillov 91cf194a94 [LL FIR] incrementally update module caches 2022-07-24 15:37:44 +02:00
Ilya Kirillov 76f1744868 [Analysis API FIR] add more info to some exceptions 2022-07-23 19:54:47 +02:00
Ilya Kirillov 6f0769ea68 [LL FIR] add detailed exception info to lazy resolve 2022-07-23 17:08:22 +02:00
Ilya Kirillov e462016151 [LL FIR] remove abstract class LLFirModuleData with only inheritor 2022-07-23 17:08:22 +02:00
Ilya Kirillov 827c262f68 [Analysis API FIR, LL FIR] use exceptionWithAttachment to not leak user data 2022-07-23 17:08:22 +02:00
Ilya Kirillov b701c1c6f6 [LL FIR] fix top-level callables classpath conflicts checks for single-file facades 2022-07-23 17:08:22 +02:00
Mikhail Glukhikh bc396b9765 K2: don't report RETURN_TYPE_MISMATCH on last statement returns
#KT-53198 Fixed
2022-07-22 16:39:51 +00:00
Victor Petukhov 00d1e46c5a [FE 1.0] Don't throw exception during substitution of accessors, just return original 2022-07-22 16:03:53 +00:00
Victor Petukhov db54d18c72 [FE 1.0] Add fallback for extracting when call 2022-07-22 16:03:52 +00:00
Victor Petukhov 224beb24eb Remove explicit disabling the new type inference from test data 2022-07-22 16:03:51 +00:00
Mikhail Glukhikh 78da5907c8 K2 checkers: separate report committer from other diagnostic components 2022-07-22 11:35:28 +00:00
Mikhail Glukhikh eba0e94429 K2: get rid of manual diagnostic suppression in checkers 2022-07-22 11:35:28 +00:00
Mikhail Glukhikh 07f16ef378 K2 LL API: implement automatic diagnostic suppression 2022-07-22 11:35:27 +00:00
Mikhail Glukhikh 9add6f3d55 K2: add more accurate & more automatic control of diagnostic suppression
#KT-51363 Fixed
2022-07-22 11:35:26 +00:00
Mikhail Glukhikh 179b267d9f K2: add test with some samples of diagnostic suppression 2022-07-22 11:35:25 +00:00
Ilya Kirillov b55f36f0fd [Analysis API] introduce some basic API to create KtSymbol by Java PSI
^KT-50240
2022-07-22 00:58:59 +02:00
Ilya Kirillov a0f0fa5a47 [Analysis API FIR] fix candidate collection for delegatedConstructor call
^KTIJ-20446
2022-07-22 00:58:59 +02:00
Ilya Kirillov 51cd5fb5d8 [LL FIR] reuse source sessions 2022-07-22 00:58:58 +02:00
Ilya Kirillov a43ed57be5 [LL FIR] add basic supoport of handling not under content root modules 2022-07-22 00:58:58 +02:00
Ilya Kirillov 38c6d4b740 [LL FIR] correctly handle facade conflicts in module dependencies 2022-07-19 17:17:34 +02:00
Ilya Kirillov 237ce187ab [LL FIR] do not fail on cycle in module dependencies 2022-07-19 17:17:34 +02:00
Ilya Kirillov 22b8fd636f [Analysis API FIR] fix creating symbol for library declaration
the search scope for symbols is limited to the target module, so we can find only a single declaration
2022-07-19 17:17:34 +02:00
Ilya Kirillov dd00062559 [analysis] introduce KtBuiltinsModule and remove hacks related to the stdlib module search 2022-07-19 17:17:33 +02:00
Ilya Kirillov dc4527462f [LL FIR] create separate library session for each library 2022-07-19 17:17:33 +02:00
Ilya Kirillov dbfeeae696 [fir] add more info to the error message in FirModuleData 2022-07-19 17:17:32 +02:00
Pavel Mikhailovskii 846537b367 KT-45375 Lightweight lambdas; KT-52817 introduce @JvmSerializableLambda 2022-07-18 17:10:07 +02:00
Mikhail Glukhikh 83200f8774 FIR: Support inferring PRIVATE_TO_THIS visibility see KT-49875 2022-07-15 07:57:41 +00:00
Mikhail Glukhikh 7ce5100946 FirRenderer: slightly change/refactor declaration rendering 2022-07-14 09:38:45 +00:00
Mikhail Glukhikh 801426d0e6 Simplify creation of FirRenderer 2022-07-14 09:38:44 +00:00
Mikhail Glukhikh f9fdb5d3bc Extract separate FirResolvePhaseRenderer 2022-07-14 09:38:43 +00:00