http://codereview.appspot.com/5729051/diff/6001/lily/span-bar-stub-engraver.cc
File lily/span-bar-stub-engraver.cc (right):

http://codereview.appspot.com/5729051/diff/6001/lily/span-bar-stub-engraver.cc#newcode93
lily/span-bar-stub-engraver.cc:93: if (!scm_is_pair (axis_groups_) ||
!scm_is_pair (scm_car (axis_groups_)))
I'd remove the second check here.  The first check makes sure that we
have got data to operate on (so it checks the overall algorithmic
consistency), but the second check just checks that the data is of the
form we actually put in here, and since it is private data, nobody could
have changed it but ourselves.  It is a test of the
if (1 == 0) cerr << "Your compiler or CPU is broken";
variety.  Even if it triggered, the error message would not fit the
problem.

http://codereview.appspot.com/5729051/diff/6001/lily/span-bar-stub-engraver.cc#newcode160
lily/span-bar-stub-engraver.cc:160: // removes all unused contexts
On 2012/03/04 10:47:17, Neil Puttock wrote:
Is it feasible to listen for RemoveContext instead?  At least then you
only need
to rebuild axis_groups_ when contexts die.

I'd second this suggestion.  It should give more reliable lifetimes, and
also cause a better correlation of "parsed object should be dead"
messages with realities.

http://codereview.appspot.com/5729051/

_______________________________________________
lilypond-devel mailing list
lilypond-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-devel

Reply via email to