Category
bug · AOT crash · free date() timezone tokens
Problem
On master @ 1433ae9, thin AOT segfaults (rc=139) for free-function date() when the format includes timezone tokens. Zend and civil-only formats are fine. Distinct from DateTime::format named-zone crash (#33939).
| Repro |
Zend 8.2+ |
AOT |
echo date('T', strtotime('2024-01-15 12:00:00')); |
UTC |
SIGSEGV (139) |
date('e'/'O'/'P'/'r', …) |
zone / offset / RFC2822 |
SIGSEGV (139) |
date('c', …) / date('Y-m-d H:i:s', …) |
match |
match |
./script/aot-smoke.sh is 8/8 on this tree — measuring the feature, not the linker.
php-src reference
PHP implementation target
ext/standard/JitDate.php (and peers used by free date()) — civil/timezone token bake or safe NestedJIT path; no new runtime/*.c
Repro
./script/docker-exec.sh -- bash -lc 'cat >/tmp/date_t.php <<\"PHP\"
<?php
echo date(\"T\", strtotime(\"2024-01-15 12:00:00\")), \"\n\";
PHP
php /tmp/date_t.php
php bin/compile.php -o /tmp/date_t.bin /tmp/date_t.php && /tmp/date_t.bin; echo rc=$?'
Done when
Category
bug· AOT crash · freedate()timezone tokensProblem
On master @ 1433ae9, thin AOT segfaults (rc=139) for free-function
date()when the format includes timezone tokens. Zend and civil-only formats are fine. Distinct from DateTime::format named-zone crash (#33939).echo date('T', strtotime('2024-01-15 12:00:00'));UTCdate('e'/'O'/'P'/'r', …)date('c', …)/date('Y-m-d H:i:s', …)./script/aot-smoke.shis 8/8 on this tree — measuring the feature, not the linker.php-src reference
ext/date/php_date.c—php_format_date/zim_datePHP implementation target
ext/standard/JitDate.php(and peers used by freedate()) — civil/timezone token bake or safe NestedJIT path; no newruntime/*.cRepro
Done when
date('T'/'e'/'O'/'P'/'r', $ts)matches Zend (no SIGSEGV)./script/aot-smoke.shstays 8/8