Skip to content

AOT: phpc build --project uses ProjectGraph PSR-4 discovery (#154) - #3866

Merged
PurHur merged 1 commit into
masterfrom
agent/issue-154-multi-tu-phase2
May 31, 2026
Merged

AOT: phpc build --project uses ProjectGraph PSR-4 discovery (#154)#3866
PurHur merged 1 commit into
masterfrom
agent/issue-154-multi-tu-phase2

Conversation

@PurHur

@PurHur PurHur commented May 30, 2026

Copy link
Copy Markdown
Owner

Summary

php-src reference

N/A (AOT linker / project graph). PSR-4 walk is analogous to the file set OPcache preload would load from a class map.

Verification

./script/docker-exec.sh -- bash -lc 'source script/php-env.sh
  vendor/bin/phpunit test/unit/Psr4StaticBuildProjectTest.php
  vendor/bin/phpunit test/unit/Psr4StaticAotExecuteTest.php
  vendor/bin/phpunit test/unit/ProjectGraphTest.php --filter Psr4
  ./phpc build --project test/fixtures/aot/projects/psr4_static --dry-run
'

Output:

OK (2 tests, 7 assertions)  # Psr4StaticBuildProjectTest
OK (1 test, 6 assertions)   # Psr4StaticAotExecuteTest (LLVM link+execute)

Closes #154

Made with Cursor

Phase 2 of multi-TU project build: compile argv uses ProjectGraph discovery
(manifest includes, literal requires, autoload.psr-4) instead of includes[] only.
Lint --project walks the same graph; docs and unit tests guard psr4_static.

Co-authored-by: Cursor <cursoragent@cursor.com>
@PurHur
PurHur force-pushed the agent/issue-154-multi-tu-phase2 branch from fed66f8 to 3d0f3a3 Compare May 31, 2026 13:54
@PurHur
PurHur merged commit afc9ff5 into master May 31, 2026
@PurHur
PurHur deleted the agent/issue-154-multi-tu-phase2 branch May 31, 2026 13:54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

AOT: Link multiple translation units into one binary

1 participant