|
Mantis - Quercus
|
|||||
| Viewing Issue Advanced Details | |||||
|
|
|||||
| ID: | Category: | Severity: | Reproducibility: | Date Submitted: | Last Update: |
| 4139 | minor | always | 07-25-10 10:00 | 07-25-10 10:00 | |
|
|
|||||
| Reporter: | kdecherf | Platform: | |||
| Assigned To: | OS: | ||||
| Priority: | normal | OS Version: | |||
| Status: | new | Product Version: | 4.0.8 | ||
| Product Build: | Resolution: | open | |||
| Projection: | none | ||||
| ETA: | none | Fixed in Version: | |||
|
|
|||||
| Summary: | 0004139: "unknown lexeme:/ in" error when a comment is between 'implements' keyword and '{' | ||||
| Description: |
An error 500 is caught when a comment is between 'implements' keyword and '{' (class declaration beginning). Error report: ---- com.caucho.quercus.parser.QuercusParseException: /home/kdecherf/Working/Workspaces/quercus-4.0.8/build/web/quercus.php:8: unknown lexeme:/ in quercus.php:6: quercus.php:7: class MyClass implements quercus.php:8: /* Implementation class */ quercus.php:9: Implement { quercus.php:10: ---- I fixed it with two new functions : ignoreMultilineComment() and ignoreSinglelineComment() to ignore comments during execution of parseNamespaceIdentifier(). You can find a patch proposal in attachment (source based on SVN repo). |
||||
| Steps To Reproduce: | |||||
| Additional Information: |
Example file to reproduce error: <?php class Implement { function _test() { echo __CLASS__.':'.__FUNCTION__.'()'; } } class MyClass implements /* Implementation class */ Implement { function __construct() { echo $this->_test(); } } $Class = new MyClass(); ?> |
||||
| Relationships | |||||
| Attached Files: |
|
||||
| There are no notes attached to this issue. |