[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: SableCC 4.0 preliminary highlights [Was: building sablecc from CVS]
Quoting Etienne Gagnon <egagnon@xxxxxxxxxxx>:
> Hi Aske,
Hi Etienne!
> There will probably be some minor 3.x release, but as far as I know, 3.2
> has no real bugs in it. Are you waiting for any specific bug (?) to be
> fixed?
Yes - the tree invariant bugs I told you about some time ago (mail to SableCC
Developers Mailing List on March 20, subject "SableCC 3.2 and the tree
invariant").
Right now my code contains workarounds like
block.setStatements((List<PStm>)block.getStatements().clone());
after I have added a node to a child list, in order to set the parent pointer of
the newly added node correctly. This is both ugly, slow and non-intuitive, and
there doesn't seem to be a similar workaround possible for removing nodes,
since parent pointers are (rightfully) not directly accessible.
As I wrote back then, fixing this bug (and some of the others I mentioned)
requires a special child list implementation, much like the one used in pre-3.2
versions.
I will probably (but no promises) take a shot at fixing these bugs myself
(sometime around the beginning of august, most likely). Just wanted to know if
there were any plans to fix them anyway. I will see if I can send you a patch
by then, but it might be a bit complicated, as we have made a few other changes
to our local SableCC version.
-Aske