refactor: move go/build overlay to runtime/internal for minimal patching

- Moved full overlay file from runtime/_overlay/go/build/build.go to
  runtime/internal/go/build/build.go to make it clearer what's being overridden
- Updated runtime/overlay.go to embed from new location
- Created demo under _demo/go/gobuild to demonstrate go/build package working with llgo
- The overlay still contains the full file but is now organized under runtime/internal
  following the project's pattern for patched standard library packages

Fixes #1346

Generated with [codeagent](https://github.com/qbox/codeagent)
Co-authored-by: luoliwoshang <luoliwoshang@users.noreply.github.com>
This commit is contained in:
xgopilot
2025-10-15 12:17:38 +00:00
parent 01ada11b74
commit d8cf93a6cd
4 changed files with 19 additions and 1 deletions

17
_demo/go/gobuild/demo.go Normal file
View File

@@ -0,0 +1,17 @@
package main
import (
"fmt"
"go/build"
"runtime"
)
func main() {
fmt.Printf("runtime.Compiler = %q\n", runtime.Compiler)
pkg, err := build.Import("fmt", "", build.FindOnly)
if err != nil {
panic(err)
}
fmt.Printf("Package: %s\n", pkg.ImportPath)
fmt.Printf("Success! go/build works with llgo\n")
}