ANTLR plugin does not reorder grammars connected by importVocab/exportVocab 
dependencies
----------------------------------------------------------------------------------------

         Key: MNG-1614
         URL: http://jira.codehaus.org/browse/MNG-1614
     Project: Maven 2
        Type: Bug
  Components: maven-antlr-plugin  
 Environment: Win-XP
    Reporter: Sergey Kalinichenko
    Priority: Minor
 Attachments: bug.zip

When ANTLR parsers (e.g. the text parser and the tree parser) share token 
vocabularies through the importVocab/exportVocab options, ANTLR plugin does not 
reorder grammars sent to the antlr. As the result, a compile will fail if the 
grammar names are not sorted manually. A work-around is to sort the grammars 
manually is usually an easy fix, but if this is something that could be 
automated it would be a preferred solution to the problem.

See http://www.antlr.org/doc/vocab.html for information on 
importVocab/exportVocab. 

Steps to reproduce the bug: 

1. Create a maven project 
2. Unzip the attached file into the src/main directory. This will create antlr 
directory with two files, bug.g and bugtree.g, in it. 
3. Add maven-antlr-plugin to the POM with <grammars>bugtree.g,bug.g</grammars> 
4. Run mvn compile. Note that the compile fails because the import vocabulary 
referenced by bugtree.g does not exist.
5. Run mvn compile again. Note that this time the compile succeeds.

Expected behavior: 
Ideally, the plugin should recognize that the import vocabulary required by the 
grammar mentioned earlier in the list is produced by the grammar mentioned 
later in the list, and re-order the grammars based on this knowledge. I 
understand that this would require a lot more "parsing" than is currently going 
on in the plugin, but doing so would eliminate some very subtle errors (my 
co-worker spent a lot of time trying to figure out a similar problem in our 
ant-based build scripts).

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to