Matthieu Moy <[email protected]> writes: > Stephen Leake <[email protected]> writes: > >> Emacs 23.1 is released; I've switched to using it. >> >> The byte-compiler now warns about using the Common Lisp runtime. >> Compiling DVC gets many warnings, mostly in xmtn. > > (I don't consider these very important, but it's good to follow the > guidelines ...)
There is a bug in the xmtn code somewhere that causes a 'c' or 'C-c' key event to be generated, intermittently. I suspect that is due to the CL runtime; the bzr code doesn't exhibit the same bug, and the main difference is the CL runtime (assuming the external process running mtn isn't the problem!). The reason the CL runtime is deprecated is that it has bugs. So we should not use it. I generally find fixing warnings to be a good thing. There are always exceptions, so it would be nice if we could tell the byte compiler to shut up in specific instances, like dir-compare in dvc-fileinfo, and captured-values in dvc-lisp. In those cases, we could declare a global variable, but that seems wrong. >> I will work on eliminating CL runtime from the xmtn packages; that >> will take a lot of work. > > Most of the 'cl things are actually macros, so first thing you can do > it to replace > > (eval-and-compile (require 'cl)) > > by just (eval-when-compile ...). Then, the warnings I get are : > > Warning: Function `gensym' from cl package called at runtime > Warning: Function `subseq' from cl package called at runtime > Warning: Function `gensym' from cl package called at runtime > Warning: Function `some' from cl package called at runtime > > gensym => see `dvc-gensym', they should be similar. Yes. They are the same, except dvc-gensym also declares the symbol, apparently to satisfy 'lint'. Currently, dvc-gensym is only used in tla-tests.el. I gather with-temp-buffer isn't used there because it let-binds a symbol 'temp-buffer' that might hide a symbol in the user-provided `forms' argument? That seems unlikely, but it is certainly possible. Or maybe the tla code was written before with-temp-buffer was available. Otherwise, only xmtn uses gensym, but it uses gensym a lot. The xmtn coding style makes things very hard to debug (which is partly why I haven't found the 'c' bug above yet), so I'd like to simplify it anyway. -- -- Stephe _______________________________________________ Dvc-dev mailing list [email protected] https://mail.gna.org/listinfo/dvc-dev
