Check for duplicate variable names at compilation time.
commit5853323e973807192e3dacac847896a7e266d371
authorDavid Lichteblau <david@lichteblau.com>
Sun, 9 Dec 2007 21:28:00 +0000 (9 22:28 +0100)
committerDavid Lichteblau <david@radon.home.lichteblau.com>
Sun, 9 Dec 2007 21:28:00 +0000 (9 22:28 +0100)
treedc7cb7111a57df9a0dd8d46c8872ccf2a8d011ad
parentf61078910e9ac5ed0a7610220262c198a32e0262
Check for duplicate variable names at compilation time.

Including collisions between <param> and <variable>.

Duplicates should be allowed (!) in the sexpr representation, since the
LET syntax makes that natural.  When reimplementing variables again
without the current frame list, we should add a test checking that
duplicates work in that situation.

But since XSLT doesn't allow duplicates in the same scope, we let the
parser collect those variables in PARSE-BODY and add an explicit form
allowing the compiler to check them.
TEST
instructions.lisp
package.lisp
parser.lisp
xslt.lisp