[FIR JS] Report JS_MODULE-related diagnostics

This commit is contained in:
Nikolay Lunyak
2023-01-03 14:27:37 +02:00
committed by Space Team
parent f422a3a4e8
commit 0426f35684
20 changed files with 210 additions and 43 deletions
@@ -33,3 +33,13 @@ inline val FirDeclaration.isPrecompiled: Boolean
get() = origin == FirDeclarationOrigin.Precompiled
inline val FirDeclaration.isSynthetic: Boolean
get() = origin == FirDeclarationOrigin.Synthetic
// NB: This function checks transitive localness. That is,
// if a declaration `isNonLocal`, then its parent also `isNonLocal`.
val FirDeclaration.isNonLocal
get() = when (this) {
is FirFile -> true
is FirCallableDeclaration -> !symbol.callableId.isLocal
is FirClassLikeDeclaration -> !symbol.classId.isLocal
else -> false
}
@@ -104,6 +104,7 @@ class FirAnonymousFunctionSymbol : FirFunctionWithoutNameSymbol<FirAnonymousFunc
class FirPropertyAccessorSymbol : FirFunctionWithoutNameSymbol<FirPropertyAccessor>(Name.identifier("accessor")) {
val isGetter: Boolean get() = fir.isGetter
val isSetter: Boolean get() = fir.isSetter
val propertySymbol get() = fir.propertySymbol
}
class FirErrorFunctionSymbol : FirFunctionWithoutNameSymbol<FirErrorFunction>(Name.identifier("error"))