Raw FIR: handle local visibility for functions & classes

This commit is contained in:
Mikhail Glukhikh
2019-03-26 12:31:36 +03:00
parent 4187ea1f86
commit 61c2e4e590
3 changed files with 7 additions and 7 deletions
@@ -498,7 +498,7 @@ class RawFirBuilder(val session: FirSession, val stubMode: Boolean) {
classOrObject,
FirClassSymbol(currentClassId),
classOrObject.nameAsSafeName,
classOrObject.visibility,
if (classOrObject.isLocal) Visibilities.LOCAL else classOrObject.visibility,
classOrObject.modality,
classOrObject.hasExpectModifier(),
classOrObject.hasActualModifier(),
@@ -596,7 +596,7 @@ class RawFirBuilder(val session: FirSession, val stubMode: Boolean) {
function,
FirFunctionSymbol(callableIdForName(function.nameAsSafeName, function.isLocal)),
function.nameAsSafeName,
function.visibility,
if (function.isLocal) Visibilities.LOCAL else function.visibility,
function.modality,
function.hasExpectModifier(),
function.hasActualModifier(),
@@ -1,6 +1,6 @@
FILE: locals.kt
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? final? val pp: Int = R|<local>/pp|
@@ -13,7 +13,7 @@ FILE: locals.kt
}
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#)))
}
@@ -51,14 +51,14 @@ FILE: access.kt
lval d: R|kotlin/String| = String()
lval c: <ERROR TYPE REF: Unresolved name: c> = <Unresolved name: c>#
<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 b: R|kotlin/String| = R|<local>/a|
R|<local>/bcd|()
public final fun dcb(): R|kotlin/Unit| {
local final fun dcb(): R|kotlin/Unit| {
}
R|<local>/dcb|()