全部配置 / KN-XVERIFY-IR-VISIBILITY
Xverify-ir-visibility
Xverify-ir-visibility · KN-XVERIFY-IR-VISIBILITY · 编译器参数(Native)
重要:中 · 场景相关
默认:默认关
场合:场景可配
来源:上游原样
默认值:默认关。false(BooleanType.defaultFalse)。使用场合:场景可配。场景可配:有明确目标(性能、包体、安全、兼容)时再改。
它是做什么的
用途。在 lowering 前校验 IR 可见性违规。原文:Check for visibility violations in IR when validating it before running any lowerings.
影响。改变编译器内部校验或阶段行为;主要用于编译器/后端排查,应用工程很少需要。
适用场景。编译器开发或疑难后端问题;应用工程保持默认。
取值说明
- 参数描述:Check for visibility violations in IR when validating it before running any lowerings. Only has effect if '-Xverify-ir' is not 'none'.
可写。(开关存在 / true) / false / 不传
定义依据:description/CommonCompilerArguments.kt 在仓库中打开
怎么用
- 配置入口:build.gradle.kts → ohosArm64.binaries.all { freeCompilerArgs += "-Xverify-ir-visibility" }
- 示例:
// 文件:build.gradle.kts(应用的 Kotlin 模块,例如 composeApp)
kotlin {
ohosArm64 { // 按实际 native target 调整
binaries.all {
freeCompilerArgs += "-Xverify-ir-visibility"
}
}
}
- 生效:Sync 后执行该目标的 compile/link。
- 验证:编译日志出现 `-Xverify-ir-visibility`。
- 回滚:从 binaries.all 的 freeCompilerArgs 中删除该项后 Clean 并重编。
- 注意:会显著增加日志或中断流水线;定位完及时去掉。
默认行为 默认关
不写这个配置时,编译器会怎么处理?
此选项默认关闭,不设置时不生效。需要时显式开启。
false(BooleanType.defaultFalse)。