ID:               31787
 Updated by:       [EMAIL PROTECTED]
 Reported By:      codeslinger at compsalot dot com
-Status:           Open
+Status:           Bogus
 Bug Type:         Scripting Engine problem
 Operating System: Linux
 PHP Version:      4.3.10
 New Comment:

Thank you for taking the time to write to us, but this is not
a bug. Please double-check the documentation available at
http://www.php.net/manual/ and the instructions on how to report
a bug at http://bugs.php.net/how-to-report.php

Please read the docs on html containment - this is expected.


Previous Comments:
------------------------------------------------------------------------

[2005-02-01 00:46:55] codeslinger at compsalot dot com

I doubt it makes a difference, but this is the CLI version of php.

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

[2005-02-01 00:36:23] codeslinger at compsalot dot com

Description:
------------
Here is a bizarre script parsing problem

The // comment operator is supposed to ignore everything on that line. 
But if you happen to do something like

// fwrite($pipes[0], "<?php echo 'Hello World';  ?>" );

Then you start getting all kinds of strange parse errors.

I isolated the problem.  What is happening is that

// ?>
or even  // "?>"

is being interpeted as the script terminator.

Happily  /*  ?>  */ does work


Reproduce code:
---------------
<?php

// ?>
  echo "we get an error because it sees the ?> in the comment";

?>

# The above will fail, but this works

<?php

/*
?>
*/
  echo "the ?> is properly ignored";

?>



Expected result:
----------------
anything and everything following a // to be ignored


Actual result:
--------------
Warning: Unexpected character in input:  '\' (ASCII=92) state=1 in
/foo/phpchild/parent1.php on line 29

Parse error: parse error, unexpected ')', expecting ',' or ';' in
/foo/phpchild/parent1.php on line 29


The actual error depends on the specific code following the termination
point.

This thing really had me baffeled for awhile...
I commented out several lines of code and started getting parse errors
about missing parens and semicolons, etc.

Depending upon what I commented out, the error would change, which made
it very hard to track down. Naturally I assumed I had made a mistake,
mismatched quotes etc. Took me quite a bit of head banging to finally
figure out what was going on.

=============
"Are you sure that you searched before you submitted your bug report?"

By the way....   You don't allow searching for specific characters such
as //  and  ?>   this makes it very hard to check for duplicates of this
bug....
   
I note that your auto-dup detector did search for // in fact it did a
very impressive job of finding similar bugs.  But no dups.




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


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

Reply via email to