Rename raw-fir:common to raw-fir:common -> raw-fir:fir-common.
If there's dependency both on :compiler:visualizer:common and
:compiler:fir:raw-fir:common, only one of artifact is left in classpath
Somehow an Apache-2.0 license notice with a JetBrains copyright that had
been pasted in the middle of the LGPL license text.
This removes this notice and restores the pristine, unmodified license
text.
Signed-off-by: Philippe Ombredanne <pombredanne@nexb.com>
- Those calls seem to be redundant since the platform already
commits all documents before invoking any intention
- Also those calls are getting in the way of `Preview Intention` action
by requiring write action, which is not granted by the platform at
the moment
With Klibs, creation of LibraryInfo isn't that cheap now -- it usually
involves inspecting files in roots, reading manifest and such (see for
example NativePlatformKindResolution.createLibraryInfo)
First of all, note that currently ControlFlowGraphBuilder instance is fully mutable
and shared between all local classes and top-level classes in the same thread
Before this change, previous node for member of local class
was defined as lastNode
And in the case of implicit types, lastNode might be in a middle of another
local class member that is being resolved right now.
See the test:
- "a.length" expression in `bar` should be resolved because smart cast happens
before the class declaration
- "b.length" expression in `bar` should be unresolved because smart cast happens
in a different function
The latter case has been working incorrectly, the call was errorenously
resolved because "lastNode" were pointed just before "bar()" call in "foo"
The idea is making their mechanics more transparent and clear
Namely, we should move to the next level of designation only for declaration's content
Otherwise there might be some wrong steps when somebody just randomly
calls "transformElement" on the parent declaration.
For example, it happens for local classes when we resolve their supertypes, etc.