Joshua Spiewak writes:
 > Please enter the details of your bug report here
 > 
 > Hi Paul,
 > 
 > Just updated to 2.3.0 and had an issue with a prj.el that I had been
 > using for a while.  When I opened a java file in the project, I would
 > get an error loading the prj.el: "List nesting exceeds
 > max-list-eval-depth".  I isolated the issue to the setting of the
 > jde-build-function to jde-ant-build in the prl.el.  If I remove that
 > line, everything works fine.  I further isolated the issue to
 > jde-ant.el where it calls jde-update-autoloaded-symbols.  If I comment
 > that line out, everything works just fine.  Obviously there is an
 > unintended recursion happening.  The jde-log attached is from an emacs
 > session where I only opened the java source file and submitted this
 > report.  Notice that the log begins to repeat at the setting of the
 > jde-build-function.  There are many more variables to be set after
 > that.  Hope this is enough information to figure out what to do, but
 > let me know if I can be of more assistance figuring this out.
 > 

This problem occurs because jde-build-function executes a 
(require 'jde-ant) everytime it is set to jde-ant-build. I don't
know why it does this. Perhaps because at one time jde-ant
was an optional package that the JDE did not require. Anyway
the superfluous (?) require causes an infinite loop because
it loads jde-ant which executes jde-update-autoloaded-symbols
which loads the project file which then sets jde-build-function
which then requires jde-ant which causes Emacs to reload
jde-ant because the (provide 'jde-ant) form is at the end of
the file and hence has not been executed which causes 
jde-update-autoloaded-symbols to be executed, etc., until
the Emacs max-list-eval-depth kicks in to halt the recursion.
The simplest fix is to remove the superfluous (I believe)
require form from the definition of jde-build-function
in jde.el. I've tested this and it solves the problem on
my system. I'll make the fix and make another release this
evening.

Paul

Reply via email to