Phase 20.12b: quick green + structural cleanup
- Deprecations: add warn-once for nyash.toml (runtime::deprecations); apply in plugin loader v2 (singletons/method_resolver) - Child env + runner hygiene: unify Stage‑3/quiet/disable-fallback env in test/runner; expand LLVM noise filters - Docs/branding: prefer and hako.toml in README.md/README.ja.md and smokes README - VM: implement Map.clear in MIR interpreter (boxes_map) - Stage‑B: gate bundle/alias/require smokes behind SMOKES_ENABLE_STAGEB; fix include cwd and resolve() call even for require-only cases - Core‑Direct: gate rc boundary canary behind SMOKES_ENABLE_CORE_DIRECT - Smokes: inject Stage‑3 and disable selfhost fallback for LLVM runs; filter using/* logs - Quick profile: 168/168 PASS locally This commit accelerates Phase 20.33 (80/20) by stabilizing quick suite, reducing noise, and gating heavy/experimental paths for speed.
This commit is contained in:
@ -170,7 +170,7 @@ static box Main {
|
||||
}
|
||||
}
|
||||
|
||||
if bundles.length() > 0 || bundle_srcs.length() > 0 {
|
||||
if bundles.length() > 0 || bundle_srcs.length() > 0 || require_mods.length() > 0 {
|
||||
local merged_prefix = BundleResolver.resolve(bundles, bundle_names, bundle_srcs, require_mods)
|
||||
if merged_prefix == null { return 1 }
|
||||
body_src = merged_prefix + body_src
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
# VM Layout (Current → Target)
|
||||
# Hakorune VM Layout (Current → Target)
|
||||
|
||||
Current
|
||||
- `lang/src/vm/hakorune-vm/` — Hakorune VM (nyvm) implementation
|
||||
@ -56,7 +56,8 @@ Tag→RC(Core Direct)
|
||||
Core Direct Toggle
|
||||
- `HAKO_CORE_DIRECT=1`(互換: `NYASH_CORE_DIRECT`)で、Gate‑C(Core) の JSON 実行を "Core Dispatcher 直行" 子経路に切り替える。
|
||||
- 形: 一時Hakoスクリプトに `include "lang/src/vm/core/dispatcher.hako"` を埋め込み、`NyVmDispatcher.run(json)` を実行。
|
||||
- rc: 最後の数値行を rc にマップ。数値がない場合(タグ等)は rc≠0 とする(Fail‑Fast)。
|
||||
- rc: 子プロセスの終了コードを採用(数値戻り=rc、タグ/非数=rc≠0)。
|
||||
- 判定: 直行は MIR(JSON v0)(`functions` と `blocks` を含む)に限定する。Stage‑B Program(JSON v0) は v1 bridge→VM 実行に迂回し、直行は行わない。
|
||||
- 用途: Core の診断タグや rc を CI で直接検証したい時に使用。
|
||||
- Runner Core toggle: `HAKO_NYVM_CORE=1` (or `NYASH_NYVM_CORE=1`) selects the
|
||||
Core bridge for the nyvm wrapper path.
|
||||
|
||||
@ -229,7 +229,7 @@ static box NyVmOpMirCall {
|
||||
_handle_console(callee, m, state) {
|
||||
local name = me._read_str(callee, "name")
|
||||
if name == "" { return me._fail(state, "[core/mir_call] console missing name") }
|
||||
if !(name == "env.console.log" || name == "nyash.console.log" || name == "env.console.warn" || name == "nyash.console.warn" || name == "env.console.error" || name == "nyash.console.error") {
|
||||
if !(name == "print" || name == "env.console.log" || name == "nyash.console.log" || name == "env.console.warn" || name == "nyash.console.warn" || name == "env.console.error" || name == "nyash.console.error") {
|
||||
return me._fail(state, "[core/mir_call] unsupported global: " + name)
|
||||
}
|
||||
local arg_vid = me._read_arg_vid(m, 0, "[core/mir_call] console missing arg", "[core/mir_call] console bad arg")
|
||||
|
||||
Reference in New Issue
Block a user