Fix for bug #101 (bad macro handling).
authorShamus Hammons <jlhamm@acm.org>
Thu, 20 Jul 2017 04:22:01 +0000 (23:22 -0500)
committerShamus Hammons <jlhamm@acm.org>
Thu, 20 Jul 2017 04:22:01 +0000 (23:22 -0500)
commitf7f625cf6c2f4b96854ac0e911ca2b1c249f4e05
treea1bd9bfa3fc10e1d0026c8d330002bec43e5ae5a
parentc9541a9d4f01e190ffefc20ce07896c7f04d9557
Fix for bug #101 (bad macro handling).

Just when you thought it was safe to write macros with constants, up
pops a condition you thought was dead and buried yet lurches inexorably
towards your code and causes it to segfault. As it turns out, it was
bad token stream parsing that caused this, with a constant masquerading
as a STRING token being the particular mischief maker. The code that
was in place was an awful mess of horrible garbage code that wasn't
even being used anymore--so that crap is gone, and replaced with
something more (I hope) sane and maintainable. I think that the code
that was there survived purging for so long because nobody really
understood it; now that I understand it, I can't believe that it was
written in the first place (to be fair, some of it was patching done by
me, though the bulk of awfulness didn't come from that code). Onward
and upward...
debug.c
debug.h
macro.c
token.c
token.h
version.h