|
php.net | support | documentation | report a bug | advanced search | search howto | statistics | random bug | login |
PatchesPull Requests
Pull requests:
HistoryAllCommentsChangesGit/SVN commits
[2018-01-20 09:40 UTC] requinix@php.net
-Summary: Incorrect PHAR stub parsing
+Summary: Incorrect PHAR stub parsing with __halt_compiler()
using implied semicolon
[2018-01-20 09:40 UTC] requinix@php.net
[2021-01-25 16:18 UTC] cmb@php.net
-Summary: Incorrect PHAR stub parsing with
__halt_compiler() using implied semicolon
+Summary: Unclear error message wrt. __halt_compiler()
w/o semicolon
-Status: Open
+Status: Verified
-Assigned To:
+Assigned To: cmb
[2021-01-25 16:19 UTC] cmb@php.net
[2021-01-25 17:50 UTC] cmb@php.net
[2021-01-25 17:50 UTC] cmb@php.net
-Status: Verified
+Status: Closed
[2021-01-27 06:53 UTC] anrdaemon at yandex dot ru
|
|||||||||||||||||||||||||||
Copyright © 2001-2025 The PHP GroupAll rights reserved. |
Last updated: Mon Nov 24 09:00:02 2025 UTC |
Description: ------------ Unable to use stub with "?>" token present but ";" omitted after __halt_compiler(). According to PHP parsing rules, "?>" implies ";". (In other words, the stub itself executes cleanly, which makes it extra hard to realize the source of confusion.) At the very least, the error message could be clearer. Test script: --------------- <?php (new Phar("test.phar"))->setStub("<?php __halt_compiler()?>"); Expected result: ---------------- A `test.phar` example created. Actual result: -------------- PHP Fatal error: Uncaught PharException: illegal stub for phar ".../test.phar" in .../case2.php:3 Stack trace: #0 .../case2.php(3): Phar->setStub('<?php __halt_co...') #1 {main} thrown in .../case2.php on line 3