This code is generated by JavaCC. I think the best way to fix this would be to fixup the code automatically whenever it is regenerated. So, instead of patching QueryParser.java, patch build.xml. In the javacc-QueryParser task, add a <replace> task which replaces 'jj_la1_0()' with 'jj_la1_0_method()'.

That is a brittle kludge as the code that needs to be changed may vary
everytime the parser is re-generated. There used to be two such methods in 1.4.1 for instance. The proper way to workaround this issue is to fix javacc to not generate such java code in the first place.


Is there a GCJ bug number assigned to this issue? If not, could you please file one and note the bug number in a comment? That way, if/when GCJ more elegantly resolves this we can remove the hack.

I don't know that there is a such a bug or that it even is one. I'll go look.

- The delete(int) and delete(Term) methods on IndexReader clash with the
'delete' c++ keyword. GCJ will generate them as 'delete$' which is a neat
workaround; the problem, however, is that the dynamic linker, at least on
Mac OS X, doesn't then properly link to these symbols and fails to load
the resulting shared library.
So I defined two synonym methods deleteDocument(int) and
deleteDocuments(Term) in a patch to IndexReader.

In your patch, please add javadocs and deprecate the old delete() methods. Again, GCJ and/or OS X bug numbers in a comment would be good to have.

I just filed http://issues.apache.org/bugzilla/show_bug.cgi?id=31708
with such a patch attached. As for filing a bug with Apple, they don't currently ship gcj so I don't think they'd care very much.


  - Because of GCJ bug 15411,
    http://gcc.gnu.org/bugzilla/show_bug.cgi?id=15411,
    Searcher.java needs to be patched to define the missing method
    definitions

Please add this bug reference in a comment to the patched code.

I just filed http://issues.apache.org/bugzilla/show_bug.cgi?id=31706 with a patch attached.


Andi..

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



Reply via email to