>>>> "Hrvoje" == Hrvoje Niksic
<hniksic(a)arsdigita.com> writes:
Hrvoje> Martin Buchholz <martin(a)xemacs.org> writes:
> In my opinion, the disadvantages outweigh the advantages, at
least for
> the changes you are planning. When the changes are done, no end user
> will see any advantage from the changes, except that build times will
> be a little slower.
Hrvoje> The *huge* disadvantage of using a custom preprocessor is that in that
Hrvoje> case your code is no longer C code, which means that it cannot be
Hrvoje> analyzed with the usual C tools such as lint or cflow, debugged with
Hrvoje> GDB, etc.
Well, gdb can be taught (perhaps) about the source code through #line
directives in the generated source.
To solve the problem of printing lisp variables like bell-volume, when
C only understands bell_volume, we would have to teach gdb how to turn
lisp variable names into C variable names, but that strains the
capabilities of gdb's command language.
Anyways, yes, the resulting program will be much harder to debug. And
this preprocessor is supposed to make the developer's life easier.