]> git.donarmstrong.com Git - lilypond.git/commit
Fix #1355.
authorNeil Puttock <n.puttock@gmail.com>
Sun, 24 Oct 2010 23:10:29 +0000 (00:10 +0100)
committerNeil Puttock <n.puttock@gmail.com>
Sun, 24 Oct 2010 23:10:56 +0000 (00:10 +0100)
commit161be50a3746bc3166de465ee5f815e36c71c2a4
treef102ee2290428cc470771b4297930e8ed1483daa
parentef981da2d6e8872aad3320c9efbbd6bd60ccd752
Fix #1355.

A derived smob cannot use the macro IMPLEMENT_TYPE_P () to export
its type predicate, since this relies on the IMPLEMENT_SMOBS ()
macro to initialize the class's smob tag and predicate function
(smob_p ()): IMPLEMENT_SMOBS () is reserved for use in base classes.
In the case of Stream_event, this results in both ly:stream-event?
and ASSERT_SMOB (Stream_event, ...) failing to distinguish
stream events from other Probs.

* lily/function-documentation.cc (init_func_doc):

  add type predicate documentation for Stream_event

* lily/include/stream-event.hh:

  remove declaration for Stream_event predicate

* lily/stream-event-scheme.cc:

  implement ly:stream-event? manually
  use LY_ASSERT_TYPE () instead of LY_ASSERT_SMOB ()

* lily/stream-event.cc:

  remove macro implementation of ly:stream-event?
lily/function-documentation.cc
lily/include/stream-event.hh
lily/stream-event-scheme.cc
lily/stream-event.cc