Auto-generated by script/capability-syntax.php. Do not edit by hand.
User-defined classes, methods, visibility, instanceof, match, and arrow functions.
Builtin functions are in capabilities.md.
Tracking issues: #58, #145, #138, #568 (link closed), #764 (execute), #143, #142, #199.
| Construct | VM | JIT | AOT | Issue | Notes |
|---|---|---|---|---|---|
class / new |
yes | yes | yes | #58 | compliance PHPT; bootstrap AOT |
| Instance methods | yes | yes | yes | #58 | compliance PHPT; bootstrap AOT |
| Private methods | yes | yes | yes | #145 | compliance PHPT; bootstrap AOT |
Property fetch $this->x |
yes | yes | yes | #58 | compliance PHPT; bootstrap AOT |
Native user-class link (phpc build --project) |
yes | yes | yes | #764 | AOT link yes (#568 closed); native execute #764; compliance PHPT; bootstrap AOT |
instanceof |
yes | yes | yes | #138 | compliance PHPT; bootstrap AOT |
match expression |
no | no | no | #143 | bootstrap AOT |
Arrow functions fn () => |
no | no | no | #142 | |
ClassName::class / static::class |
yes | yes | yes | #740 | Compile-time class name string; related to CLASS (#199); compliance PHPT; bootstrap AOT |
Magic constants __CLASS__, __METHOD__, __FUNCTION__ |
yes | yes | yes | #199 | Lowered at parse time via php-cfg MagicStringResolver; compliance PHPT |
Magic constant __NAMESPACE__ |
yes | yes | yes | #199 | Requires namespace declaration (#84); compliance PHPT |
Magic constants __DIR__, __FILE__ |
yes | yes | yes | #707 | VM script stack on include; JIT uses per-unit script path; compliance PHPT; bootstrap AOT |
Magic constant __LINE__ |
yes | yes | yes | #715 | Per-site line on TYPE_SCRIPT_MAGIC; include stack for multi-file units; compliance PHPT |
Syntax AOT column reflects Runtime::MODE_AOT compile probes unless a row pins AOT (e.g. native user-class link).
examples/003-MiniWebApp)PATH_INFO routing, deploy-root includes, and CGI drivers for the reference web app. ROADMAP Phase 3/4: #78, runtime tracker #539. Builtin matrix: capabilities.md.
| Construct | VM | JIT | AOT | Issue | Notes |
|---|---|---|---|---|---|
PATH_INFO / ?route= fallback |
yes | partial | partial | #489 | #489 VM closed; AOT lint partial; execute #764 |
phpc_deploy_path() + PHPC_DEPLOY_ROOT |
yes | partial | partial | #585 | #585 closed; deploy includes #623; execute #764 |
Runtime template include from deploy tree |
yes | no | partial | #623 | #623 VM/AOT lint; execute #764 |
CGI/1.1 driver (bin/cgi.php) |
yes | n/a | n/a | #50 | #50 VM closed; #656 CgiDriverTest; #666 MiniWebApp PATH_INFO |
AOT CGI (cgi-wrapper + phpc cgi) |
n/a | n/a | partial | #665 | #665 closed; 001 green; 003 execute #764; #682 |
| FastCGI loop | no | no | no | #173 |
Web rows are curated from ROADMAP issue state; native link #568 closed; AOT execute tracked in #764 and #676.