Hi Eric,
[...]
>>I just kept that defconst in semantic-erlang-by.el and when I set the
>>max-lisp-eval-depth to 1000, I got these compiler warnings:
>>
>>Compiling file c:/TEMP/semantic-erlang-by.el at Thu Aug 28 22:12:07 2003
>>semantic-erlang-by.el:653:7:Warning: attempt to open-code `anonymous lambda'
>> with too few arguments
>>semantic-erlang-by.el:653:7:Warning: attempt to open-code `anonymous lambda'
>> with too few arguments
>>semantic-erlang-by.el:1524:7:Warning: attempt to open-code `anonymous lambda'
>> with too few arguments
>>semantic-erlang-by.el:1524:7:Warning: attempt to open-code `anonymous lambda'
>> with too few arguments
>>semantic-erlang-by.el:1564:7:Warning: attempt to open-code `anonymous lambda'
>> with too few arguments
>>semantic-erlang-by.el:1564:7:Warning: attempt to open-code `anonymous lambda'
>> with too few arguments
[...]
> Fascinating. This is a common warning in many of our files now. I
> first noticed when I started changing names and making old function
> names obsolete. Perhaps it is somehow related to that.
I found what caused the above warnings: it was a missing parameter in
calls to `semantic-tag-new-type' and `semantic-tag-new-include'. As
these functions are inlined, the compiler issued those warnings.
I fixed erlang.by and re-generated semantic-erlang-by.el, and the
warnings are gone :-)
About the "Variable binding depth exceeds max-specpdl-size" error, I
think it is caused by the complexity of the grammar table expression.
So I updated `semantic-grammar-batch-build-one-package' to give Emacs
a little more resources, and that fixed the error.
I also fixed a nasty bug I encountered in
`semantic-grammar-create-package', when the buffer name of the
generated lisp file is "uniquified" by the uniquify library. Now
`semantic-grammar-create-package' no more depend on buffer name.
Here is the change log:
2003-08-29 David Ponce <david@...>
* semantic/semantic-grammar.el
(semantic-grammar-buffer-file): New function.
(semantic-grammar-package, semantic-grammar-keywordtable)
(semantic-grammar-tokentable, semantic-grammar-parsetable)
(semantic-grammar-setupfunction, semantic-grammar-header)
(semantic-grammar-footer): Use it.
(semantic-grammar-batch-build-one-package): Increase some Emacs
limits to byte-compile complex grammar tables.
* semantic/bovine/erlang.by
(record-def): Fix call to TYPE-TAG.
(include-dir, include-lib-dir): Fix call to INCLUDE-TAG.
* semantic/bovine/semantic-erlang-by.el
Re-generated.
David
|