Represent tokens as doubly-linked list
Improve parser error messages