Mantis Bugtracker
  

Viewing Issue Simple Details Jump to Notes ] View Advanced ] Issue History ] Print ]
ID Category Severity Reproducibility Date Submitted Last Update
0004139 [Quercus] minor always 07-25-10 10:00 07-25-10 10:00
Reporter kdecherf View Status public  
Assigned To
Priority normal Resolution open  
Status new   Product Version 4.0.8
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).
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();
?>
Attached Files  QuercusParser.patch [^] (2,438 bytes) 07-25-10 10:00

- Relationships

There are no notes attached to this issue.

- Issue History
Date Modified Username Field Change
07-25-10 10:00 kdecherf New Issue
07-25-10 10:00 kdecherf File Added: QuercusParser.patch
10-27-10 09:22 kdecherf Issue Monitored: kdecherf


Mantis 1.0.0rc3[^]
Copyright © 2000 - 2005 Mantis Group
28 total queries executed.
24 unique queries executed.
Powered by Mantis Bugtracker