Bug #80365 [Opn->Dup]: Nonsensical error message says "expecting end of file"

From: Date: Fri, 05 Feb 2021 21:44:38 +0000
Subject: Bug #80365 [Opn->Dup]: Nonsensical error message says "expecting end of file"
References: 1  Groups: php.bugs 
Request: Send a blank email to php-bugs+get-231963@lists.php.net to get a copy of this message
Edit report at https://bugs.php.net/bug.php?id=80365&edit=1

 ID:                 80365
 Updated by:         cmb@php.net
 Reported by:        php4fan at gmail dot com
 Summary:            Nonsensical error message says "expecting end of
                     file"
-Status:             Open
+Status:             Duplicate
 Type:               Bug
-Package:            *General Issues
+Package:            Scripting Engine problem
 Operating System:   all
 PHP Version:        8.0.0RC4
-Assigned To:        
+Assigned To:        cmb
 Block user comment: N
 Private report:     N

 New Comment:

Duplicate of feature request #47883.


Previous Comments:
------------------------------------------------------------------------
[2020-11-13 18:49:39] php4fan at gmail dot com

Similar issue:
https://bugs.php.net/bug.php?id=77101

------------------------------------------------------------------------
[2020-11-13 18:49:12] php4fan at gmail dot com

Description:
------------
The script below rightfully results in a parse error, but the error message is garbage.

It says 'unexpected token "<"' (so far so good) but then it adds
"expecting end of file".

End of file is only one out of a pile of possible valid tokens there.

I appreciate that you tried to improve on previous versions which would only say "unexpected
token [...]" without specifying what valid thing was expected. I myself complained many times
about that. It's necessary to always specify not only the unexpected thing but also what was
expected instead, at least when the range of possibilities can be reasonably narrowed down.

But it makes no sense to name only one random possible valid token and to say you are expecting that
one. If the range of valid possibilities is too big to list, just say so.

Test script:
---------------
<?php

echo 3+2;
// I'll forget a closing php tag ("? >") now


<body>
</body>
<?php

// ...

?>

Expected result:
----------------
  
   Parse error: syntax error, unexpected token "<", ...

and there you could end with something like:

 "expecting end of file among other valid possibilities", 

or

 "expecting something else (too many possibilities to list them exhaustively)"


(and of course "on line 7")

Actual result:
--------------
Parse error: syntax error, unexpected token "<", expecting end of file in [...] on line
7


------------------------------------------------------------------------



--
Edit this bug report at https://bugs.php.net/bug.php?id=80365&edit=1


Thread (3 messages)

« previous php.bugs (#231963) next »