Skip to content

fix(parser): accept phaser forward declarations after heredocs - #1690

Merged
fglock merged 3 commits into
masterfrom
fix/heredoc-followed-by-end-block
Oct 8, 2026
Merged

fglock merged 3 commits into
masterfrom
fix/heredoc-followed-by-end-block

Conversation

@fglock

@fglock fglock commented Oct 7, 2026

Copy link
Copy Markdown
Owner

Summary

Validation

  • nice -n 19 make — passed.
  • prove src/test/resources/unit/heredoc.t with system Perl 5.42.2 — 25 tests passed.
  • timeout 180 ./jperl src/test/resources/unit/heredoc.t — 25 tests passed.
  • timeout 180 ./jperl --interpreter src/test/resources/unit/heredoc.t — 25 tests passed.
  • nice -n 19 make check-links — passed.

fglock and others added 3 commits October 7, 2026 22:38
Route standalone phaser names followed by a semicolon through subroutine
forward-declaration parsing, matching standard Perl and avoiding a strict-subs
bareword error after heredoc terminators. Add focused regression coverage and
changelog entry. Fixes #1411.

Generated with [OpenAI Codex](https://openai.com/codex/)

Co-Authored-By: OpenAI Codex <codex@openai.com>
Materialize a pending hash reference when reading one of its elements, matching
Perl behavior for defined checks and allowing Test-Mockify's Error helper to
render an empty hash instead of undef.

Generated with [OpenAI Codex](https://openai.com/codex)

Co-Authored-By: OpenAI Codex <openai-codex[bot]@users.noreply.github.com>
@fglock
fglock marked this pull request as ready for review October 8, 2026 07:52
@fglock
fglock merged commit f7e1599 into master Oct 8, 2026
2 checks passed
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.

Parser rejects valid heredoc END statement under strict subs

1 participant