Raw FIR: handle local visibility for functions & classes
This commit is contained in:
@@ -498,7 +498,7 @@ class RawFirBuilder(val session: FirSession, val stubMode: Boolean) {
|
|||||||
classOrObject,
|
classOrObject,
|
||||||
FirClassSymbol(currentClassId),
|
FirClassSymbol(currentClassId),
|
||||||
classOrObject.nameAsSafeName,
|
classOrObject.nameAsSafeName,
|
||||||
classOrObject.visibility,
|
if (classOrObject.isLocal) Visibilities.LOCAL else classOrObject.visibility,
|
||||||
classOrObject.modality,
|
classOrObject.modality,
|
||||||
classOrObject.hasExpectModifier(),
|
classOrObject.hasExpectModifier(),
|
||||||
classOrObject.hasActualModifier(),
|
classOrObject.hasActualModifier(),
|
||||||
@@ -596,7 +596,7 @@ class RawFirBuilder(val session: FirSession, val stubMode: Boolean) {
|
|||||||
function,
|
function,
|
||||||
FirFunctionSymbol(callableIdForName(function.nameAsSafeName, function.isLocal)),
|
FirFunctionSymbol(callableIdForName(function.nameAsSafeName, function.isLocal)),
|
||||||
function.nameAsSafeName,
|
function.nameAsSafeName,
|
||||||
function.visibility,
|
if (function.isLocal) Visibilities.LOCAL else function.visibility,
|
||||||
function.modality,
|
function.modality,
|
||||||
function.hasExpectModifier(),
|
function.hasExpectModifier(),
|
||||||
function.hasActualModifier(),
|
function.hasActualModifier(),
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
FILE: locals.kt
|
FILE: locals.kt
|
||||||
public? final? fun withLocals(p: Int): Int {
|
public? final? fun withLocals(p: Int): Int {
|
||||||
public? final? class Local : kotlin/Any {
|
local final? class Local : kotlin/Any {
|
||||||
public? constructor(pp: Int): super<kotlin/Any>()
|
public? constructor(pp: Int): super<kotlin/Any>()
|
||||||
|
|
||||||
public? final? val pp: Int = R|<local>/pp|
|
public? final? val pp: Int = R|<local>/pp|
|
||||||
@@ -13,7 +13,7 @@ FILE: locals.kt
|
|||||||
}
|
}
|
||||||
|
|
||||||
lval x: <implicit> = Local#(Int(42)).diff#()
|
lval x: <implicit> = Local#(Int(42)).diff#()
|
||||||
public? final? fun sum(y: Int, z: Int, f: ( (Int, Int) -> Int )): Int {
|
local final? fun sum(y: Int, z: Int, f: ( (Int, Int) -> Int )): Int {
|
||||||
^sum plus#(x#, f#(plus#(y#, z#)))
|
^sum plus#(x#, f#(plus#(y#, z#)))
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -51,14 +51,14 @@ FILE: access.kt
|
|||||||
lval d: R|kotlin/String| = String()
|
lval d: R|kotlin/String| = String()
|
||||||
lval c: <ERROR TYPE REF: Unresolved name: c> = <Unresolved name: c>#
|
lval c: <ERROR TYPE REF: Unresolved name: c> = <Unresolved name: c>#
|
||||||
<Unresolved name: abc>#()
|
<Unresolved name: abc>#()
|
||||||
public final fun bcd(): R|kotlin/Unit| {
|
local final fun bcd(): R|kotlin/Unit| {
|
||||||
}
|
}
|
||||||
|
|
||||||
public final fun abc(): R|kotlin/Unit| {
|
local final fun abc(): R|kotlin/Unit| {
|
||||||
lval a: R|kotlin/String| = R|<local>/d|
|
lval a: R|kotlin/String| = R|<local>/d|
|
||||||
lval b: R|kotlin/String| = R|<local>/a|
|
lval b: R|kotlin/String| = R|<local>/a|
|
||||||
R|<local>/bcd|()
|
R|<local>/bcd|()
|
||||||
public final fun dcb(): R|kotlin/Unit| {
|
local final fun dcb(): R|kotlin/Unit| {
|
||||||
}
|
}
|
||||||
|
|
||||||
R|<local>/dcb|()
|
R|<local>/dcb|()
|
||||||
|
|||||||
Reference in New Issue
Block a user