You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
AOT: DatePeriod foreach SIGABRTs — snapshot still reads compileTimeLong after DateTime timestamp field split (re-#26937, ext/date/php_date.c) #33744
Thin AOT foreach (new DatePeriod(...)) compiles then SIGABRTs (rc=134). Zend prints the dates. This is a regression of #26772 / #26937: JitDateTimeConstruct stamps compileTimeDateTimeTimestamp (#32691) so DateTime is not treated as an int, but JitDatePeriodConstruct still reads compileTimeLong, so the foreach snapshot is empty. VmIteratorForeach::compileReset then takes object-property foreach before the DatePeriod snapshot, and format() on a property value aborts.
./script/aot-smoke.sh is 8/8. Probed 2026-08-22.
Repro
Zend 8.2
AOT (master)
foreach (new DatePeriod(new DateTimeImmutable('2020-01-01'), new DateInterval('P1D'), new DateTimeImmutable('2020-01-05')) as $d) echo $d->format('Y-m-d')
Activity
PurHur commentedon Aug 22, 2026
claim: implementer-worker-lane-c — starting this run (lane overflow: #32122 and #31968 children closed; DatePeriod foreach AOT SIGABRT re-#26937)
AOT: DatePeriod foreach uses DateTime timestamp snapshots (#33744) (#…
PurHur commentedon Aug 22, 2026
merged: #33747 (
36aff1ea8b)Fix: DatePeriod foreach snapshot reads
compileTimeDateTimeTimestamp(notcompileTimeLong); snapshot RESET runs before object-property foreach; DateTime construct sync no longer clobbers other DateTimeImmutable locals.Verification
./script/docker-exec.sh -- bash -lc './script/aot-smoke.sh'→ 8/8./script/phpunit.sh --filter Issue33744DatePeriodForeachAotTest→ OK (5 tests)test/repro/issue_33744_dateperiod_foreach_aot.phpmatches Zend (end-date + recurrences + inline ctor)AOT: DatePeriod foreach uses DateTime timestamp snapshots (#33744) (#…
AOT: restore DateTime::diff after two locals via unnamed New_ stamp p…