]> git.donarmstrong.com Git - lilypond.git/commitdiff
patch::: 1.2.0.jcn1
authorJan Nieuwenhuizen <janneke@gnu.org>
Sat, 14 Aug 1999 19:53:12 +0000 (21:53 +0200)
committerJan Nieuwenhuizen <janneke@gnu.org>
Sat, 14 Aug 1999 19:53:12 +0000 (21:53 +0200)
pl 0.jcn1
- gcc-2.95 nitpicks
- added pointers to mailing lists in toplevel docs

60 files changed:
BUGS
Documentation/topdocs/INSTALL.yo
Documentation/topdocs/README.yo
NEWS
VERSION
flower/include/dictionary-iter.hh
flower/include/parray.hh
flower/include/text-db.hh
flower/include/text-stream.hh
flower/include/virtual-methods.hh
flower/string.cc
lily/axis-group-element.cc
lily/bar-number-engraver.cc
lily/bar-script-engraver.cc
lily/base-span-bar-engraver.cc
lily/beam.cc
lily/break-align-item.cc
lily/breathing-sign.cc
lily/chord.cc
lily/clef-engraver.cc
lily/dimension-cache.cc
lily/dynamic-engraver.cc
lily/graphical-axis-group.cc
lily/includable-lexer.cc
lily/include/bar-align-engraver.hh
lily/include/bar-script-engraver.hh
lily/include/beam-swallow-trans.hh
lily/include/chord.hh
lily/include/dynamic-engraver.hh
lily/include/includable-lexer.hh
lily/include/lily-guile.hh
lily/include/musical-request.hh
lily/include/request.hh
lily/include/type-swallow-trans.hh
lily/include/type-swallow-translator.hh [new file with mode: 0644]
lily/key-engraver.cc
lily/lily-guile.cc
lily/lookup.cc
lily/main.cc
lily/mark-engraver.cc
lily/multi-measure-rest-engraver.cc
lily/musical-request.cc
lily/my-lily-lexer.cc
lily/note-column.cc
lily/note-head.cc
lily/note-heads-engraver.cc
lily/paper-outputter.cc
lily/parser.yy
lily/request.cc
lily/rest-engraver.cc
lily/score-element.cc
lily/script-engraver.cc
lily/staff-margin-engraver.cc
lily/stem-engraver.cc
lily/stem-staff-side.cc
lily/tie.cc
lily/type-swallow-trans.cc
lily/type-swallow-translator.cc [new file with mode: 0644]
lily/vertical-align-engraver.cc
lily/volta-spanner.cc

diff --git a/BUGS b/BUGS
index 5fe9ab69ee795d1ab2b08e43e4cb6330eb621d6a..53ffd70c9e7f3dd43b2420288df0ad56a3ffd9d0 100644 (file)
--- a/BUGS
+++ b/BUGS
@@ -1,6 +1,10 @@
 
 This documents serious bugs 
 
+Send bug reports to bug-gnu-music@gnu.org.  For help and questions use
+help-gnu-music@gnu.org and gnu-music-discuss@gnu.org.  Please consult
+the faq before mailing your problems.
+
 ********
 
 [LinuxPPC-R5, egcs-1.1.2-12c]
@@ -9,7 +13,7 @@ Serious egcs-1.1.2-12c (stock LinuxPPC R5) bug on ppc:
 
        *dest++ = *src++;
 
-Bug report filed, fixed in egcs-1.1.2-12f.
+Bug report filed, fixed in egcs-1.1.2-12f or gcc-2.95-0a.
 Although we've currently got a workaround in place, the compiler
 is buggy; you should upgrade:
 
index 68b71af9b4b44c7ee7bf29e1d68d6ee90b0cfea2..10b600bec1a144bbc3cb6602971ce32a15b0a8f5 100644 (file)
@@ -305,6 +305,12 @@ label(w32)
 Separate instructions on building for W32 are avaible
 url(in the file README-W32.yo)(../../DOEXPAND(outdir)/README-W32.html).
 
+sect(BUGS)
+
+Send bug reports to bug-gnu-music@gnu.org.  For help and questions use
+help-gnu-music@gnu.org and gnu-music-discuss@gnu.org.  Please consult
+the faq before mailing your problems.
+
 sect(AUTHORS)
 
 nemail(Han-Wen Nienhuys)(hanwen@cs.uu.nl)
index 7e94380736552e06a516a0d28e26b52c6bdeaad6..c5633cae319742c449c0a1f54c04d6ec1dd57623 100644 (file)
@@ -90,6 +90,13 @@ verb(rm `find /var/lib/texmf/fonts -name 'feta*'`)
 a script to do this for you is in file(buildscripts/clean-fonts.sh)
 
 
+sect(BUGS)
+
+Send bug reports to bug-gnu-music@gnu.org.  For help and questions use
+help-gnu-music@gnu.org and gnu-music-discuss@gnu.org.  Please consult
+the faq before mailing your problems.
+
+
 sect(CDROM DISTRIBUTIONS)
 
 If you have received LilyPond on a cdrom, chances are that development
diff --git a/NEWS b/NEWS
index effe4a6120ff9c67b5a24d3639c6a3082a9f7ca7..aa8a93aea169ec34ebb0f81e9578803c7bbf53f5 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -1,29 +1,3 @@
-
-WHAT'S NEW?
-
-* Large cleanups, enhanced design and GUILE integration for smaller
-  memory footprint and more flexible code.
-
-* Direct output to PostScript (optional), PDFTeX or as GUILE script
-  (default output still to plain TeX).
-
-* Convertors for ABC and MUP formats.
-
-* Font: now available as scalable PostScript.  New glyphs: time
-  signature, more note heads.
-
-* Enhanced input: semi-automatic beaming, (nested) tuplets, (nested)
-  repeats, chordnames, automatic Lyrics
-  durations.
-  
-* Grace notes, volta brackets, multiple styles for note heads and 
-  time signatures, breathing signs, lyric extenders, cross staff 
-  beaming and slurring.
-  
-* --safe option for the paranoid.
-
-* More elegant spacing.  Text is spaced exactly.
-
-* Lots of bugfixes.
-
-
+pl 0.jcn1
+       - gcc-2.95 nitpicks
+       - added pointers to mailing lists in toplevel docs
diff --git a/VERSION b/VERSION
index b021b69902d52e6235ee4b97398f22161affea04..181d5b07c32eb30971e27029a1385d5e502e9c01 100644 (file)
--- a/VERSION
+++ b/VERSION
@@ -2,7 +2,7 @@ PACKAGE_NAME=LilyPond
 MAJOR_VERSION=1
 MINOR_VERSION=2
 PATCH_LEVEL=0
-MY_PATCH_LEVEL=jbr1
+MY_PATCH_LEVEL=jcn1
 
 # use the above to send patches: MY_PATCH_LEVEL is always empty for a
 # released version.
index 2cf455ef8f42bcdf3763b839beac25999466d5a4..966211bdaae1b59944743c78cd8e10bb4be05387 100644 (file)
@@ -15,7 +15,7 @@
 
 
 template<class V>
-class Dictionary_iter<V> : public Hash_table_iter<String,V>
+class Dictionary_iter : public Hash_table_iter<String,V>
 {
 public:
   Dictionary_iter (Dictionary<V> const &d)
index 94d2e319e32e4a9d6ab9d5274b28a4f204da21f5..3aabb2b06cb3a8c02982f86d2e49254bcdf788a7 100644 (file)
@@ -21,7 +21,7 @@
 template<class T>
 class Link_array : private Array<void *>
 {
-  static default_compare (T *const& p1, T  *const&p2) {
+  static int default_compare (T *const& p1, T  *const&p2) {
     /* can't do p1 -p2, since T might be an incomplete type */
     if (p1 < p2)
       return -1 ;
index 6e90e38c47ff3b3fb5186a96ef45a406ad3886bb..83a8460fa6a17bec57eb58ec61721054a9100397 100644 (file)
@@ -14,7 +14,7 @@ public:
     Text_record() { } // needed because of other ctor
 
     /// report an error in this line.
-    message (String s) {
+    void message (String s) {
        cerr << '\n'<< filename << ": "<< line_no << s << "\n";
     }         
     String operator[](int j) {
index 3bebb08505d844b04acb0f1ed8575cfece910fa1..d68c75a2b84e4e2d07951f98d0ee7ef086bc37dd 100644 (file)
@@ -48,7 +48,7 @@ public:
   }
   char peek() {
     if (eof_b ())
-      return -1;
+      return (char)-1;
     char c = get();
     unget (c);
     return c;
index 792c06f28077e218d4bd1686b146452e13dd6988..b00e741330fdb768e85f7cf4d62adfa41bde56ff 100644 (file)
@@ -28,6 +28,28 @@ demangle_classname (const char*);
    };
    
  */
-#define VIRTUAL_COPY_CONS(base)   virtual base *clone () const { return new typeof(*this) (*this); }
 
+// fix constness: gcc-2.95 is correct in defining
+//    typeof (*this)
+// in a const member function to be const
+
+#if 0
+#define VIRTUAL_COPY_CONS(base) \
+  virtual base *clone () const \
+  { \
+    return new typeof(*this) (*this); \
+  }
+#else
+#define VIRTUAL_COPY_CONS(base) \
+  virtual base* clone_const_helper () \
+    { \
+      return new typeof (*this) (*this); \
+    } \
+  virtual base* clone () const \
+    { \
+      base* urg = (base*)this; \
+      return urg->clone_const_helper (); \
+    }
 #endif 
+
+#endif /* VIRTUAL_METHODS_HH */
index f0cfb0824d860cb73a74ab7265519e4483cd5455..48d7feaec25c134facb7c994bc27b31bf865488e 100644 (file)
@@ -285,7 +285,7 @@ String::index_any_i (String set) const
       char * found= (char*) memchr (me_l, set[i], n );
       if (found) 
        {
-         return found - me_l;
+         return found - (char const*)me_l;
        }
     }
   return -1;
index 09f7ad4d27a5d2f1fce9b8fe43f838c256594dd8..2d303f35385a3eea9da26ccd4818bb12089f1513 100644 (file)
@@ -86,7 +86,8 @@ Interval
 Axis_group_element::extra_extent (Axis a )const
 {
   Interval g;
-  purge_extra ();              // Yeah yeah,  const correctness.
+  Axis_group_element* urg = (Axis_group_element*)this;
+  urg->purge_extra ();         // Yeah yeah,  const correctness.
   for (int i=0;  i < extra_elems_.size (); i++)
     {
       Interval ge = extra_elems_[i]->extent (a);
index 99eb26a26cb7c3d7504ecbafba3d860d8f4a21e9..9db68461fbff5f2932cfc4a9712c806254eb3220 100644 (file)
@@ -18,7 +18,7 @@ Bar_number_engraver::Bar_number_engraver()
   axis_ = Y_AXIS;
   type_ = "barNumber";
   visibility_lambda_
-    = gh_eval_str ("postbreak_only_visibility");
+    = ly_ch_C_eval_scm ("postbreak_only_visibility");
 }
 
 void
index c96b0621249f089bb0ec57de15f81be255fe6085..b13e27500fbb9b60645265c1cd9c3abd221f24fe 100644 (file)
@@ -23,7 +23,7 @@ Bar_script_engraver::Bar_script_engraver ()
   text_p_ =0;
   hang_on_clef_b_ = false;
   visibility_lambda_ 
-    = gh_eval_str ("non_postbreak_visibility");
+    = ly_ch_C_eval_scm ("non_postbreak_visibility");
 }
 
 void
index 617408c4a405b98b2b1e32f5ab7626b13c521c14..80dd64a99efb9a565a8f5c2f92a5da1d89d4c391 100644 (file)
@@ -55,7 +55,7 @@ Base_span_bar_engraver::acknowledge_element (Score_element_info i)
          String visnam =  String(name()) + "_visibility";
          
          spanbar_p_->set_elt_property (visibility_lambda_scm_sym,
-                                       gh_eval_str (visnam.ch_C()));
+                                       ly_ch_C_eval_scm (visnam.ch_C()));
 
          if (use_priority_b_)
            {
index b4d351d269e9bb8102f0d096dd9afa4b03a8d674..c063ddbd8e498c2ef51bc811bd1a7f6eb292de62 100644 (file)
@@ -199,7 +199,7 @@ Beam::get_default_dir () const
   */
 
   Direction beam_dir;
-  Direction neutral_dir = (int)paper_l ()->get_var ("stem_default_neutral_direction");
+  Direction neutral_dir = (Direction)(int)paper_l ()->get_var ("stem_default_neutral_direction");
 
   Dir_algorithm a = (Dir_algorithm)rint(paper_l ()->get_var ("beam_dir_algorithm"));
   switch (a)
index 1e65bbe23ee972c77ee18fabe6e0e28fae476b10..c3f9b05ca5ba7ba28415bc5bc2d15b97c767bf82 100644 (file)
@@ -47,7 +47,7 @@ Break_align_item::do_pre_processing()
 
   SCM symbol_list = SCM_EOL;
   Array<Real> dists;
-  SCM current_origin = gh_str02scm ("");
+  SCM current_origin = ly_ch_C_to_scm ("");
   for (int i=0; i <= elems.size (); i++)
     {
       Score_element *next_elt  = i < elems.size ()
@@ -61,11 +61,11 @@ Break_align_item::do_pre_processing()
          next_origin = next_elt->get_elt_property (origin_scm_sym);
          next_origin =
            (next_origin == SCM_BOOL_F)
-           ? gh_str02scm ("")
+           ? ly_ch_C_to_scm ("")
            : SCM_CDR (next_origin);
        }
       else
-       next_origin = gh_str02scm ("begin-of-note");
+       next_origin = ly_ch_C_to_scm ("begin-of-note");
       
       SCM extra_space
        = scm_eval (scm_listify (ly_symbol ("break-align-spacer"),
@@ -173,7 +173,7 @@ Break_align_item::add_breakable_item (Item *it)
        warning bells about missing Y refpoints go off later on.
       */
       hg->dim_cache_[Y_AXIS]->parent_l_ = dim_cache_[Y_AXIS];
-      hg->set_elt_property (ly_symbol("origin"), gh_str02scm (it->name()));
+      hg->set_elt_property (ly_symbol ("origin"), ly_ch_C_to_scm (it->name ()));
 
       pscore_l_->typeset_element (hg);
       add_element_priority (hg, priority);
index c9f3b1fd280f997541f29cac51f0bb72e3ebd6af..1fc36f8897ba22b6d9f33417b76e45cab72ba0cb 100644 (file)
@@ -26,7 +26,7 @@ Breathing_sign::Breathing_sign ()
   set_elt_property (breakable_scm_sym, SCM_BOOL_T);
   set_elt_property (break_priority_scm_sym, gh_int2scm (-4));
   set_elt_property (visibility_lambda_scm_sym,
-                   gh_eval_str ("non_postbreak_visibility"));
+                   ly_ch_C_eval_scm ("non_postbreak_visibility"));
 }
 
 void
index e3475f3aa22dd6a2a6f67b437cf09a320002ca06..b0b081e2173f7f1d5c9f56ae3ab20f3229f7033a 100644 (file)
@@ -260,7 +260,7 @@ Chord::Chord (Musical_pitch tonic, Array<Musical_pitch>* add_arr_p, Array<Musica
 }
 
 void
-Chord::find_additions_and_subtractions(Array<Musical_pitch>* add_arr_p, Array<Musical_pitch>* sub_arr_p)
+Chord::find_additions_and_subtractions(Array<Musical_pitch>* add_arr_p, Array<Musical_pitch>* sub_arr_p) const
 {
   Musical_pitch tonic = pitch_arr_[0];
   /*
index 59cb9b791c9cd428e3acb8435ea02328e1ff6a9f..4c0960b99cb4f3304bd993dd3f7f23f778e04afd 100644 (file)
@@ -130,7 +130,7 @@ Clef_engraver::acknowledge_element (Score_element_info info)
       create_clef();
       if(def)
        clef_p_->set_elt_property(visibility_lambda_scm_sym,
-                                 gh_eval_str ("postbreak_only_visibility"));
+                                 ly_ch_C_eval_scm ("postbreak_only_visibility"));
     }
 
   /* ugh; should make Clef_referenced baseclass */
@@ -194,7 +194,7 @@ Clef_engraver::create_clef()
       String clefstyle = get_property ("clefStyle", 0);
       if (clefstyle.length_i ())
        c->set_elt_property (style_scm_sym,
-                            gh_str02scm (clefstyle.ch_C()));
+                            ly_ch_C_to_scm (clefstyle.ch_C()));
       
       announce_element (Score_element_info (c, clef_req_l_));
       clef_p_ = c;
index be69da11157e7fadc12ca34cc2cb8e1f8a2e55fc..12d292efe61553f592d91f34f16eca1b0dea03f4 100644 (file)
@@ -100,18 +100,14 @@ Dimension_cache::relative_coordinate (Dimension_cache *d) const
 Dimension_cache *
 Dimension_cache::common_group (Dimension_cache const* s) const
 {
-  Link_array<Dimension_cache const> my_groups;
-  for (Dimension_cache const *c = this;
-       c ; c = c->parent_l_)
-    my_groups.push (c);
-  
+  Link_array<Dimension_cache> my_groups;
+  for (Dimension_cache const *c = this; c ; c = c->parent_l_)
+    my_groups.push ((Dimension_cache*)c);
   
   Dimension_cache const *common=0;
   
-  for (Dimension_cache const * d = s;
-       !common && d;
-       d = d->parent_l_)
-    common = my_groups.find_l (d);
+  for (Dimension_cache const * d = s; !common && d; d = d->parent_l_)
+    common = (Dimension_cache const*)my_groups.find_l (d);
 
   return (Dimension_cache*)common;
 }
index 121d55fdfb6d5271343f99b782f178668dc57073..0e3f29135304af912deeb44d87cb352dc86bc4d9 100644 (file)
@@ -7,7 +7,6 @@
 */
 #include "debug.hh"
 #include "crescendo.hh"
-#include "dynamic-engraver.hh"
 #include "musical-request.hh"
 #include "lookup.hh"
 #include "paper-def.hh"
index f1321c55e4705bc327d2140c51822940ab7b1794..6beccc696110c5ddedd434eca97c58d1df5e6d5e 100644 (file)
   Graphical_axis_group at one time. */
 Graphical_axis_group::Graphical_axis_group(Graphical_axis_group const&s)
 {
+#if 0
+  /*
+  gcc-2.95: huh? why can't i assign a const value to a var?
+  graphical-axis-group.cc:20: incompatible types in assignment of `const Axis[2]' to `Axis[2]'
+  */
   axes_ = s.axes_;
+#else
+  axes_[0] = s.axes_[0];
+  axes_[1] = s.axes_[1];
+#endif 
   ordered_b_ = s.ordered_b_;
 }
 
index 2adb810cd99b6eb2946fc9259598b8cdcca4c56c..524519623cb585673f57b35a89b5f1dab03ef333 100644 (file)
@@ -107,7 +107,7 @@ Includable_lexer::close_input ()
 }
 
 char const*
-Includable_lexer::here_ch_C ()
+Includable_lexer::here_ch_C () const
 {
   if (include_stack_.empty ())
     return 0;
index 7cf2db0cfea5c70b8e432cf2aa7534a6cf7a7756..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 100644 (file)
@@ -1,13 +0,0 @@
-/*
-  bar-align-engraver.hh -- declare 
-
-  source file of the GNU LilyPond music typesetter
-
-  (c)  1997--1999 Han-Wen Nienhuys <hanwen@cs.uu.nl>
-*/
-
-
-#ifndef BAR_ALIGN_GRAV_HH
-#define BAR_ALIGN_GRAV_HH
-
-#endif // BAR_ALIGN_GRAV_HH
index 6944762d2d0c23ccb84bfe36fdacdcc8a28038b9..dec3c05ef6686107f48adef00e9be76832f6f921 100644 (file)
@@ -18,6 +18,8 @@
  */
 class Bar_script_engraver : public Engraver
 {
+public:
+  VIRTUAL_COPY_CONS(Translator);
 protected:
   Staff_side_item* staff_side_p_;
   Text_item* text_p_;
index fb4fd96d59f31153fbc2fc0cc185307a0a0fbfd6..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 100644 (file)
@@ -1,15 +0,0 @@
-/*   
-  beam-swallow-trans.hh -- declare 
-  
-  source file of the GNU LilyPond music typesetter
-  
-  (c)  1997--1999 Han-Wen Nienhuys <hanwen@cs.uu.nl>
-  
- */
-
-#ifndef BEAM_SWALLOW_TRANS_HH
-#define BEAM_SWALLOW_TRANS_HH
-
-
-#endif /* BEAM_SWALLOW_TRANS_HH */
-
index a863e76572e3d341e14b5ea9602d61adc0355a72..9b38abbb41c41ac5b3f95f7605fba81c005a8532 100644 (file)
@@ -27,7 +27,7 @@ public:
   int find_tonic_i () const;
   int find_pitch_i (Musical_pitch p) const;
   int find_notename_i (Musical_pitch p) const;
-  void find_additions_and_subtractions(Array<Musical_pitch>* add_arr_p, Array<Musical_pitch>* sub_arr_p);
+  void find_additions_and_subtractions(Array<Musical_pitch>* add_arr_p, Array<Musical_pitch>* sub_arr_p) const;
 
   Array<Musical_pitch> pitch_arr_;
 };
index 989602690ada6ece2c138b46c84998b600506ae2..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 100644 (file)
@@ -1,13 +0,0 @@
-/*
-  dynamic-engraver.hh -- declare Dynamic_engraver
-
-  source file of the GNU LilyPond music typesetter
-
-  (c)  1997--1999 Han-Wen Nienhuys <hanwen@cs.uu.nl>
-*/
-
-
-#ifndef DYNAMIC_GRAV_HH
-#define DYNAMIC_GRAV_HH
-
-#endif // DYNAMIC_GRAV_HH
index 7bff4284c12e8bf2ce0a383a89301c31f5d1b744..5acf3cc6c5c28b1cd8fd76635d8c1e2e1008e7d9 100644 (file)
@@ -46,7 +46,7 @@ public:
   void new_input (String name, String data, Sources*);
 
   void add_lexed_char (int);
-  char const * here_ch_C ();
+  char const * here_ch_C () const;
 };
 
 
index 33d8eda649a186e970c057124fd0946d498f4ee9..90773ac8d1da641a8929aba0bba05df1c05acc2d 100644 (file)
@@ -15,6 +15,8 @@
 #include <libguile.h>
 #include "direction.hh"
 
+SCM ly_ch_C_to_scm (char const*c);
+SCM ly_ch_C_eval_scm (char const*c);
 SCM ly_symbol (String name);
 String symbol_to_string (SCM);
 SCM ly_set_scm (String name , SCM val);
index cf583c1b99556ebb3b047630071d65d3a58bdf4d..fc0e2f3a313a8f1bab768b5e98cfbf256730d1cc 100644 (file)
@@ -24,7 +24,7 @@ public:
   Duration duration_;
   virtual void do_print () const;
 
-  bool do_equal_b (Request*) const;
+  bool do_equal_b (Request const*) const;
   void compress (Moment);
   virtual Moment length_mom () const;
   static int compare (Rhythmic_req const&,Rhythmic_req const&);
@@ -60,7 +60,7 @@ class Articulation_req : public Script_req
 public:
   String articulation_str_;
 protected:
-  virtual bool do_equal_b (Request*) const;
+  virtual bool do_equal_b (Request const*) const;
   virtual void do_print () const;
   VIRTUAL_COPY_CONS(Music);
 };
@@ -73,7 +73,7 @@ public:
   String style_str_;
 protected:
   VIRTUAL_COPY_CONS(Music);
-  virtual bool do_equal_b (Request*)const;
+  virtual bool do_equal_b (Request const*)const;
   virtual void do_print () const;
 };
 
@@ -88,7 +88,7 @@ struct Melodic_req :virtual Request
 protected:
   /// transpose. #delta# is relative to central c.
   virtual void transpose (Musical_pitch delta);
-  virtual bool do_equal_b (Request*) const;
+  virtual bool do_equal_b (Request const*) const;
   virtual void do_print () const;
   VIRTUAL_COPY_CONS(Music);
 };
@@ -110,7 +110,7 @@ public:
   Note_req();
 protected:
   virtual void do_print () const;
-  bool do_equal_b (Request*) const;
+  bool do_equal_b (Request const*) const;
   VIRTUAL_COPY_CONS(Music);
 };
 
index 03d4b29504a07c0a9a7c17e8a6d2de2cf4727867..d525daa83ba3b9d36ca0793b43acb08ca45d3aa5 100644 (file)
@@ -28,9 +28,9 @@ class Request : public Music {
 public:
   virtual ~Request(){}
   VIRTUAL_COPY_CONS(Music);
-  bool equal_b (Request*) const;
+  bool equal_b (Request const*) const;
 protected:
-  virtual bool do_equal_b (Request*) const;
+  virtual bool do_equal_b (Request const*) const;
   virtual void do_print() const;
 };
 
@@ -57,7 +57,7 @@ public:
   
   Span_req();
 protected:
-  virtual bool do_equal_b (Request*) const;
+  virtual bool do_equal_b (Request const*) const;
   virtual void do_print() const;
   VIRTUAL_COPY_CONS(Music);
 };
index da857f6c294cc5f7b03f1fb6a9a799c692c3bf64..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 100644 (file)
@@ -1,38 +0,0 @@
-/*
-  type-swallow-engraver.hh -- declare Type_swallow_translator
-
-  source file of the GNU LilyPond music typesetter
-
-  (c)  1997--1999 Han-Wen Nienhuys <hanwen@cs.uu.nl>
-*/
-
-
-#ifndef TYPESWALLOW_GRAV_HH
-#define TYPESWALLOW_GRAV_HH
-
-#include "translator.hh"
-
-/** eat a certain type of request.
-    (Duh, it's good for your skin)
- */
-class Type_swallow_translator : public virtual Translator
-{
-protected:
-  String swallow_str_;
-  bool do_try_music (Music*);
-public:  
-  VIRTUAL_COPY_CONS(Translator);
-};
-
-#define DECLARE_REQUEST_SWALLOWER(TYPE)  \
-struct TYPE ## _swallow_translator : public Type_swallow_translator {\
-  TYPE ## _swallow_translator() { \
-      swallow_str_ =  #TYPE;\
-  }\
-  \
-  VIRTUAL_COPY_CONS(Translator);\
-};\
-ADD_THIS_TRANSLATOR(TYPE ## _swallow_translator);\
-
-#endif // TYPESWALLOW_GRAV_HH
-
diff --git a/lily/include/type-swallow-translator.hh b/lily/include/type-swallow-translator.hh
new file mode 100644 (file)
index 0000000..da857f6
--- /dev/null
@@ -0,0 +1,38 @@
+/*
+  type-swallow-engraver.hh -- declare Type_swallow_translator
+
+  source file of the GNU LilyPond music typesetter
+
+  (c)  1997--1999 Han-Wen Nienhuys <hanwen@cs.uu.nl>
+*/
+
+
+#ifndef TYPESWALLOW_GRAV_HH
+#define TYPESWALLOW_GRAV_HH
+
+#include "translator.hh"
+
+/** eat a certain type of request.
+    (Duh, it's good for your skin)
+ */
+class Type_swallow_translator : public virtual Translator
+{
+protected:
+  String swallow_str_;
+  bool do_try_music (Music*);
+public:  
+  VIRTUAL_COPY_CONS(Translator);
+};
+
+#define DECLARE_REQUEST_SWALLOWER(TYPE)  \
+struct TYPE ## _swallow_translator : public Type_swallow_translator {\
+  TYPE ## _swallow_translator() { \
+      swallow_str_ =  #TYPE;\
+  }\
+  \
+  VIRTUAL_COPY_CONS(Translator);\
+};\
+ADD_THIS_TRANSLATOR(TYPE ## _swallow_translator);\
+
+#endif // TYPESWALLOW_GRAV_HH
+
index eff74dbb29c41462e0d4e5aa9de24d9fa9c2c798..f8c32dac6a3211b0b21d97bc33513e290395f72c 100644 (file)
@@ -92,7 +92,7 @@ Key_engraver::acknowledge_element (Score_element_info info)
       if (def)
        {
          item_p_->set_elt_property (visibility_lambda_scm_sym,
-                                   gh_eval_str ("postbreak_only_visibility"));
+                                   ly_ch_C_eval_scm ("postbreak_only_visibility"));
        }
     }
 
index a177b2c88b6961164c9c44e2db9c9a82b47d7220..d771b86923ceaeffdd3a1a51a902101765ee28c3 100644 (file)
 #include "file-path.hh"
 #include "debug.hh"
 
+SCM
+ly_ch_C_to_scm (char const*c)
+{
+  // this all really sucks, guile should take char const* arguments!
+  return gh_str02scm ((char*)c);
+}
+
+SCM
+ly_ch_C_eval_scm (char const*c)
+{
+  // this all really sucks, guile should take char const* arguments!
+  return gh_eval_str ((char*)c);
+}
+
 /*
   scm_m_quote doesn't use any env, but needs one for a good signature in GUILE.
 
@@ -41,7 +55,7 @@ ly_quote_scm (SCM s)
 SCM
 ly_symbol (String name)
 {
-  return gh_car (scm_intern (name.ch_C(), name.length_i()));
+  return gh_car (scm_intern ((char*)name.ch_C(), name.length_i()));
 }
 
 String
@@ -53,7 +67,7 @@ symbol_to_string (SCM s)
 SCM
 ly_set_scm (String name, SCM val)
 {
-  return scm_sysintern (name.ch_C(), val);
+  return scm_sysintern ((char*)name.ch_C(), val);
   
 }
 
@@ -78,7 +92,7 @@ read_lily_scm_file (String fn)
 
   Simple_file_storage f(s);
   
-  gh_eval_str ((char *) f.ch_C());
+  ly_ch_C_eval_scm ((char *) f.ch_C());
   *mlog << ']' << flush;  
 }
 
@@ -100,7 +114,7 @@ ly_gulp_file (SCM name)
 
 
   Simple_file_storage f(s);
-  return gh_str02scm (f.ch_C());
+  return ly_ch_C_to_scm (f.ch_C());
 }
 
 void
@@ -152,8 +166,8 @@ ly_warning (SCM str)
 void
 init_functions ()
 {
-  scm_make_gsubr ("ly-warn", 1, 0, 0, ly_warning);
-  scm_make_gsubr ("ly-gulp-file", 1,0, 0, ly_gulp_file);
+  scm_make_gsubr ("ly-warn", 1, 0, 0, (SCM(*)(...))ly_warning);
+  scm_make_gsubr ("ly-gulp-file", 1,0, 0, (SCM(*)(...))ly_gulp_file);
 }
 
 extern void init_symbols ();
index d82c1f55baec45046d2ef0b9fa204b0910561038..3c05d65b28192947fd20dd9567befab9e16d41fb 100644 (file)
@@ -393,7 +393,7 @@ Lookup::text (String style, String text, Paper_def *paper_l) const
   /*
     UGH.
   */
-  SCM l = gh_eval_str (("(style-to-cmr \"" + style + "\")").ch_C());
+  SCM l = ly_ch_C_eval_scm (("(style-to-cmr \"" + style + "\")").ch_C());
   if (l != SCM_BOOL_F)
     {
       style = ly_scm2string (SCM_CDR(l)) +to_str  ((int)font_h);
@@ -422,7 +422,7 @@ Lookup::text (String style, String text, Paper_def *paper_l) const
            brace_count ++;
          else if (text[i] == '}')
            brace_count --;
-          Character_metric *c = afm_l->get_char ((unsigned char)text[i],false);
+          Character_metric *c = (Character_metric*)afm_l->get_char ((unsigned char)text[i],false);
 
          w += c->dimensions()[X_AXIS].length ();
          ydims.unite (c->dimensions()[Y_AXIS]);
@@ -449,7 +449,7 @@ Lookup::text (String style, String text, Paper_def *paper_l) const
 
   
   Atom at  (gh_list (text_scm_sym,
-                    gh_str02scm (text.ch_C()),
+                    ly_ch_C_to_scm (text.ch_C()),
                     SCM_UNDEFINED));
   at.font_ = ly_symbol (style);
   at.magn_ = gh_int2scm (font_mag);
index ffb26cede22b2b55a3acf53865fef337346daae2..e48887a977a0a8b68392ec8ccbf3119ed889d28a 100644 (file)
@@ -254,7 +254,7 @@ setup_paths ()
 
 
 void
-main_prog (int argc, char **argv)
+main_prog (int, char**)
 {
   /*
     need to do this first. Engravers use lily.scm contents.
@@ -388,7 +388,7 @@ main (int argc, char **argv)
 #ifdef WINNT
   gh_enter (argc, argv, main_prog);
 #else
-  gh_enter (argc, argv, (void(*)())main_prog);
+  gh_enter (argc, argv, (void(*)(...))main_prog);
 #endif
 
   return 0;                    // unreachable
index 345c4f8e429649043b0fc86f56909fcb1be79adf..1c4b966a4fa7d139629ff5c84b3abd2e1ad20fb2 100644 (file)
@@ -18,7 +18,7 @@ Mark_engraver::Mark_engraver ()
   mark_req_l_ = 0;
   axis_ = Y_AXIS;
   type_ = "mark";
-  visibility_lambda_ = gh_eval_str ("mark-visibility");
+  visibility_lambda_ = ly_ch_C_eval_scm ("mark-visibility");
 }
 
 void
index 00fd9118c15c4de6e8efd260c24592c0154525dc..51ff44654231651913b3ddc33fbe5a4ae4449007 100644 (file)
@@ -75,7 +75,7 @@ Multi_measure_rest_engraver::do_process_requests ()
       mmrest_p_ = new Multi_measure_rest;
       if(dynamic_cast<Repetitions_req *> (multi_measure_req_l_))
        mmrest_p_->set_elt_property (alt_symbol_scm_sym, 
-                                    gh_str02scm("scripts-repeatsign"));
+                                    ly_ch_C_to_scm ("scripts-repeatsign"));
       announce_element (Score_element_info (mmrest_p_, multi_measure_req_l_));
       start_measure_i_ = time->bars_i_;
     }
index fd47b955853aea6322bd857832a82d29f5bf701b..c5f9de2d56a96eca5c6d2998b9c2f0babee4f334 100644 (file)
@@ -47,9 +47,9 @@ Melodic_req::transpose (Musical_pitch delta)
 
 
 bool
-Melodic_req::do_equal_b (Request*r) const
+Melodic_req::do_equal_b (Request const* r) const
 {
-  Melodic_req* m= dynamic_cast <Melodic_req *> (r);
+  Melodic_req const* m= dynamic_cast <Melodic_req const*> (r);
   return m&& !compare (*m, *this);
 }
 
@@ -75,9 +75,9 @@ Rhythmic_req::compare (Rhythmic_req const &r1, Rhythmic_req const &r2)
 }
 
 bool
-Rhythmic_req::do_equal_b (Request*r) const
+Rhythmic_req::do_equal_b (Request const* r) const
 {
-  Rhythmic_req* rh = dynamic_cast <Rhythmic_req *> (r);
+  Rhythmic_req const* rh = dynamic_cast <Rhythmic_req const*> (r);
 
   return rh && !compare (*this, *rh);
 }
@@ -114,9 +114,9 @@ Lyric_req::do_print () const
 
 
 bool
-Note_req::do_equal_b (Request*r) const
+Note_req::do_equal_b (Request const* r) const
 {
-  Note_req *n = dynamic_cast<Note_req*> (r);
+  Note_req const* n = dynamic_cast<Note_req const*> (r);
   return n&& Rhythmic_req::do_equal_b (n) && Melodic_req::do_equal_b (n);
 }
 
@@ -148,9 +148,9 @@ Note_req::do_print () const
 
 
 bool
-Span_req::do_equal_b (Request*r) const
+Span_req::do_equal_b (Request const*r) const
 {
-  Span_req * s = dynamic_cast <Span_req *> (r);
+  Span_req const* s = dynamic_cast <Span_req const*> (r);
   return s && span_dir_ == s->span_dir_;
 }
 
@@ -180,9 +180,9 @@ Text_script_req::do_print () const
 }
 
 bool
-Text_script_req::do_equal_b (Request *r) const
+Text_script_req::do_equal_b (Request const* r) const
 {
-  Text_script_req * t  = dynamic_cast<Text_script_req*>(r);
+  Text_script_req const* t  = dynamic_cast<Text_script_req const*> (r);
   return t && t->text_str_ == text_str_ && t->style_str_ == style_str_;
 }
 
@@ -193,9 +193,9 @@ Articulation_req::do_print () const
 }
 
 bool
-Articulation_req::do_equal_b (Request*r) const
+Articulation_req::do_equal_b (Request const* r) const
 {
-  Articulation_req * a = dynamic_cast<Articulation_req*>(r);
+  Articulation_req const* a = dynamic_cast<Articulation_req const*> (r);
   
   return a &&  articulation_str_ == a->articulation_str_;
 }
index 91d2c5ce2d0940d8150a9bd4d71435b0ce1c5773..2bf4d1120c6d7f7ac7638ec60efc353fa8e297a0 100644 (file)
@@ -238,6 +238,6 @@ My_lily_lexer::escaped_char(char c) const
 Input
 My_lily_lexer::here_input () const
 {
-  Source_file * f_l= source_file_l();
-  return Input (f_l, here_ch_C());
+  Source_file * f_l= source_file_l ();
+  return Input (f_l, (char*)here_ch_C ());
 }
index a0fde290c08d79dfaf2c199974b068f57c5db2ff..bf32b3ad0734ee8fb2b7049a59accdc657315a45 100644 (file)
@@ -63,7 +63,7 @@ Note_column::dir () const
   if (stem_l_)
     return stem_l_->dir_;
   else if (head_l_arr_.size ())
-    return sign (head_positions_interval().center ());
+    return (Direction)sign (head_positions_interval().center ());
 
   programming_error ("Note column without heads and stem!");
   return CENTER;
index 8afe7358ce90b9609e4ed176024e76b35316e70a..64134c9f2c7ec4dffe71098eed48108ef6108946 100644 (file)
@@ -78,7 +78,7 @@ Note_head::do_brew_molecule_p() const
 
   if (streepjes_i) 
     {
-      Direction dir = sign (position_i_);
+      Direction dir = (Direction)sign (position_i_);
       Interval hd = out->dim_[X_AXIS];
       Real hw = hd.length ()/4;
       
index 55282d2334e225accbc2d2300006afc5f515d9cf..f3c290916bb43b620edf040645ae977ebb42a628 100644 (file)
@@ -58,7 +58,7 @@ Note_heads_engraver::do_process_requests()
          Scalar dir = get_property ("verticalDirection",0);
          if (dir.isdir_b())
            {
-             d->resolve_dir_ = int (dir);
+             d->resolve_dir_ = (Direction)(int)dir;
            }
          
          announce_element (Score_element_info (d,0));
@@ -70,7 +70,7 @@ Note_heads_engraver::do_process_requests()
        note_p->set_elt_property (transparent_scm_sym, SCM_BOOL_T);
       else 
         note_p->set_elt_property (style_scm_sym,
-                                 gh_str02scm (noteheadstyle.ch_C()));
+                                 ly_ch_C_to_scm (noteheadstyle.ch_C()));
 
       
       Score_element_info itinf (note_p,note_req_l);
index 564314efd1d6ce825b4fe5ec7a1d9736666d8599..07fe0330b9869d9c18bab60a0b63aaf0eb88e603 100644 (file)
@@ -57,10 +57,10 @@ Paper_outputter::output_header ()
   if (safe_global_b)
     {
       ly_set_scm ("security-paranoia", SCM_BOOL_T);
-      //      gh_eval_str ("(set! security-paranoia #t)");
+      //      ly_ch_C_eval_scm ("(set! security-paranoia #t)");
     }
   String s = String ("(eval (") + output_global_ch + "-scm 'all-definitions))";
-  gh_eval_str (s.ch_C ());
+  ly_ch_C_eval_scm (s.ch_C ());
   
   String creator;
   if (no_timestamps_global_b)
@@ -80,8 +80,8 @@ Paper_outputter::output_header ()
     }
 
   SCM args_scm = 
-    gh_list (gh_str02scm (creator.ch_l ()),
-            gh_str02scm (generate.ch_l ()), SCM_UNDEFINED);
+    gh_list (ly_ch_C_to_scm (creator.ch_l ()),
+            ly_ch_C_to_scm (generate.ch_l ()), SCM_UNDEFINED);
 
 #ifndef NPRINT
   DOUT << "output_header\n";
@@ -140,7 +140,7 @@ Paper_outputter::output_molecule (Molecule const*m, Offset o, char const *nm)
       if (i->font_)
        {
          output_scheme (gh_list (ly_symbol ("select-font"),
-                                 gh_str02scm (symbol_to_string (i->font_).ch_C()),
+                                 ly_ch_C_to_scm (symbol_to_string (i->font_).ch_C()),
                                  SCM (i->magn_),
                                  SCM_UNDEFINED));
        }
@@ -241,7 +241,7 @@ Paper_outputter::output_font_def (int i, String str)
 {
   SCM scm = gh_list (ly_symbol ("font-def"),
                     gh_int2scm (i),
-                    gh_str02scm (str.ch_l ()),
+                    ly_ch_C_to_scm (str.ch_l ()),
                     SCM_UNDEFINED);
 
   output_scheme (scm);
@@ -252,8 +252,8 @@ Paper_outputter::output_Real_def (String k, Real v)
 {
   
   SCM scm = gh_list (ly_symbol ("lily-def"),
-                    gh_str02scm (k.ch_l ()),
-                    gh_str02scm (to_str(v).ch_l ()),
+                    ly_ch_C_to_scm (k.ch_l ()),
+                    ly_ch_C_to_scm (to_str(v).ch_l ()),
                     SCM_UNDEFINED);
   output_scheme (scm);
 
@@ -265,20 +265,20 @@ Paper_outputter::output_String_def (String k, String v)
 {
   
   SCM scm = gh_list (ly_symbol ("lily-def"),
-                    gh_str02scm (k.ch_l ()),
-                    gh_str02scm (v.ch_l ()),
+                    ly_ch_C_to_scm (k.ch_l ()),
+                    ly_ch_C_to_scm (v.ch_l ()),
                     SCM_UNDEFINED);
   output_scheme (scm);
 
-  gh_define (k.ch_l (), gh_str02scm (v.ch_l ()));
+  gh_define (k.ch_l (), ly_ch_C_to_scm (v.ch_l ()));
 }
 
 void
 Paper_outputter::output_int_def (String k, int v)
 {
   SCM scm = gh_list (ly_symbol ("lily-def"),
-                    gh_str02scm (k.ch_l ()),
-                    gh_str02scm (to_str (v).ch_l ()),
+                    ly_ch_C_to_scm (k.ch_l ()),
+                    ly_ch_C_to_scm (to_str (v).ch_l ()),
                     SCM_UNDEFINED);
   output_scheme (scm);
 
index 682365234a520580fa83af587034274774192195..62bda87e067cd517ac772310ae6d7ad252ef00fb 100644 (file)
@@ -427,6 +427,9 @@ translator_spec_block:
 translator_spec_body:
        TRANS_IDENTIFIER        {
                $$ = $1->access_content_Translator (true);
+               Translator_group * tg = dynamic_cast<Translator_group*> ($$);
+               if (!tg)
+                       THIS->parser_error (_("Need a translator group for a context"));
                $$-> set_spot (THIS->here_input ());
        }
        | TYPE STRING semicolon {
@@ -456,8 +459,10 @@ translator_spec_body:
 
                delete $4;
                /* ugh*/
-               Translator_group * tr = dynamic_cast<Translator_group*>($$);
-               tr->set_property (*$2, str);
+               Translator_group* tg = dynamic_cast<Translator_group*> ($$);
+               if (!tg)
+                       THIS->parser_error (_("Need a translator group for a context"));
+               tg->set_property (*$2, str);
        }
        | translator_spec_body NAME STRING semicolon {
                $$->type_str_ = *$3;
index 7c833def052075f8e4fbc2e2b0d4397e8560797b..67d1e548e2715acf8b19a84ef54c9f0881a8a79b 100644 (file)
@@ -15,13 +15,13 @@ Request::do_print() const
 }
 
 bool
-Request::equal_b (Request *r) const
+Request::equal_b (Request const* r) const
 {
   return r->do_equal_b (this) || this->do_equal_b (r) ;
 }
 
 bool
-Request::do_equal_b (Request*) const
+Request::do_equal_b (Request const*) const
 {
   return true;
 }
index a8f601e9ee6d27ead0b1b967e827747fa1141249..b3f5e4494da1ab5b0ab3d7703dd49111814e5741 100644 (file)
@@ -60,7 +60,7 @@ Rest_engraver::do_process_requests ()
          String reststyle = get_property ("restStyle", 0);
          if (reststyle.length_i ())
            rest_p_->set_elt_property (style_scm_sym,
-                                      gh_str02scm (reststyle.ch_C()));
+                                      ly_ch_C_to_scm (reststyle.ch_C()));
        }
       announce_element (Score_element_info (rest_p_, rest_req_l_));
     }
index fdeba32ff30e19a3956891224c3fea5ea8fc6cc4..128b380d04f0f4df2fc1056edf52ff98b6cec047 100644 (file)
@@ -161,13 +161,13 @@ Score_element::lookup_l () const
 {
   if (!lookup_l_)
     {
-      Score_element * me = (Score_element*)this;
-      SCM sz = me->remove_elt_property (fontsize_scm_sym);
+      Score_element * urg = (Score_element*)this;
+      SCM sz = urg->remove_elt_property (fontsize_scm_sym);
       int i = (sz != SCM_BOOL_F)
        ? gh_scm2int (SCM_CDR (sz))
        : 0;
 
-      me->lookup_l_ =  pscore_l_->paper_l_->lookup_l (i);
+      urg->lookup_l_ =  (Lookup*)pscore_l_->paper_l_->lookup_l (i);
     }
   return lookup_l_;
 }
index 66fcda01662b2d11006e09c52099a295a0e7df35..4cc2917b6040d4c12a8d9dcfe73c0d5546a339c7 100644 (file)
@@ -42,7 +42,7 @@ Script_engraver::do_process_requests()
       Articulation_req* l=script_req_l_arr_[i];
 
 
-      SCM list = gh_eval_str (("(articulation-to-scriptdef \"" + l->articulation_str_ + "\")").ch_C());
+      SCM list = ly_ch_C_eval_scm (("(articulation-to-scriptdef \"" + l->articulation_str_ + "\")").ch_C());
       
       if (list == SCM_BOOL_F)
        {
@@ -67,13 +67,13 @@ Script_engraver::do_process_requests()
       SCM priority = SCM_CAR(list);
 
       if (relative_stem_dir)
-         ss->relative_dir_ = relative_stem_dir;
+         ss->relative_dir_ = (Direction)relative_stem_dir;
       else
-         ss->dir_ = force_dir;
+         ss->dir_ = (Direction)force_dir;
 
       Scalar dir_prop (get_property ("articulationScriptVerticalDirection", 0));
       if (dir_prop.isnum_b () && (int) dir_prop != CENTER)
-       ss->dir_ = (int) dir_prop;
+       ss->dir_ = (Direction)(int)dir_prop;
 
       if (l->dir_)
        ss->dir_ = l->dir_;
index 6d083e01ee074b0fe5b24816b9b82814f9bad96c..c637ff46235f9197a68d29a22aaf7b6d1eee00d1 100644 (file)
@@ -18,8 +18,7 @@ Staff_margin_engraver::Staff_margin_engraver ()
 {
   axis_ = X_AXIS;
   type_ = "margin";
-  visibility_lambda_
-    = gh_eval_str ("postbreak_only_visibility");
+  visibility_lambda_ = ly_ch_C_eval_scm ("postbreak_only_visibility");
 }
 
 
index 296422cfea1d11d03fb87c75c8bfa80e3c078510..1ec79bf2308664ea41f56d0a920fb69562668b8a 100644 (file)
@@ -104,7 +104,7 @@ Stem_engraver::do_pre_move_processing()
          stem_p_->set_elt_property (dir_forced_scm_sym, SCM_BOOL_T);
        }
 
-      Translator_group const *which;
+      Translator_groupwhich;
       prop = get_property ("stemLeftBeamCount", &which);
       if (prop.isnum_b ())
        {
@@ -127,7 +127,7 @@ Stem_engraver::do_pre_move_processing()
       prop = get_property ("stemStyle", 0);
       if (prop.to_bool ())
        {
-         stem_p_->set_elt_property (style_scm_sym, gh_str02scm (prop.ch_C()));
+         stem_p_->set_elt_property (style_scm_sym, ly_ch_C_to_scm (prop.ch_C()));
        }
       
       typeset_element(stem_p_);
index 9af9d40bb675000f61e637ca851d4034dbe21505..d582047f57558cdcfa3db6b712e9152780706ff9 100644 (file)
@@ -41,7 +41,7 @@ Stem_staff_side_item::set_stem (Stem*s)
 Direction
 Stem_staff_side_item::get_default_direction () const
 {
-  return relative_dir_ * stem_l_->dir_;
+  return (Direction)(relative_dir_ * stem_l_->dir_);
 }
 
 void
index 1bd0d1cdee2e5d8007ca83c56106ac58bb9c4a96..9df607babf5bc8d45e0bacd0fcc3caebab1f58db 100644 (file)
@@ -44,7 +44,7 @@ Tie::get_default_dir () const
     If dir is not determined: inverse of stem: down
     (see stem::get_default_dir ())
    */
-  Direction neutral_dir = (int)paper_l ()->get_var ("stem_default_neutral_direction");
+  Direction neutral_dir = (Direction)(int)paper_l ()->get_var ("stem_default_neutral_direction");
   return (m == 0) ? other_dir (neutral_dir) : (m < 0) ? DOWN : UP;
 }
 
index b3d192cdfea106a77f844f979b0017d76e5ac87e..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 100644 (file)
@@ -1,23 +0,0 @@
-/*
-  type-swallow-trans.cc -- implement Type_swallow_translator
-
-  source file of the GNU LilyPond music typesetter
-
-  (c)  1997--1999 Han-Wen Nienhuys <hanwen@cs.uu.nl>
-*/
-
-#include "type-swallow-trans.hh"
-#include "musical-request.hh"
-
-
-bool
-Type_swallow_translator::do_try_music (Music*r)
-{
-  if (classname (r) == swallow_str_)
-      return true;
-  return false;
-}
-
-
-
-DECLARE_REQUEST_SWALLOWER(Skip_req);
diff --git a/lily/type-swallow-translator.cc b/lily/type-swallow-translator.cc
new file mode 100644 (file)
index 0000000..8c33c86
--- /dev/null
@@ -0,0 +1,23 @@
+/*
+  type-swallow-translator.cc -- implement Type_swallow_translator
+
+  source file of the GNU LilyPond music typesetter
+
+  (c)  1997--1999 Han-Wen Nienhuys <hanwen@cs.uu.nl>
+*/
+
+#include "type-swallow-translator.hh"
+#include "musical-request.hh"
+
+
+bool
+Type_swallow_translator::do_try_music (Music*r)
+{
+  if (classname (r) == swallow_str_)
+      return true;
+  return false;
+}
+
+
+
+DECLARE_REQUEST_SWALLOWER(Skip_req);
index d02875c1d051deedc2ce739cf12548f83f077514..9614f5b359f0e87139798111a37f879472be2537 100644 (file)
@@ -47,7 +47,7 @@ Vertical_align_engraver::do_removal_processing()
   dist = get_property ("alignmentReference",0);
   if (dist.length_i () && dist.isnum_b ())
     {
-      valign_p_->align_dir_ = int (dist);
+      valign_p_->align_dir_ = (Direction)(int)dist;
     }
   valign_p_->set_bounds(RIGHT,get_staff_info().command_pcol_l ());
   typeset_element (valign_p_);
@@ -58,7 +58,9 @@ Vertical_align_engraver::do_removal_processing()
 bool
 Vertical_align_engraver::qualifies_b (Score_element_info i) const
 {
+#if 0
   Translator * t =   i.origin_trans_l_arr_[0];
+#endif
   int sz = i.origin_trans_l_arr_.size()  ;
 
 #if 0 
index a92e590714e382c8c0673bd90d2128de78e47ab1..bcc2424106b80a23caed1042856ef5ebf45946e5 100644 (file)
@@ -36,9 +36,9 @@ Volta_spanner::do_brew_molecule_p () const
   bool no_vertical_start = false;
   bool no_vertical_end = last_b_;
   Spanner *orig_span =  dynamic_cast<Spanner*> (original_l_);
-  if (orig_span && orig_span->broken_into_l_arr_[0] != this)
+  if (orig_span && (orig_span->broken_into_l_arr_[0] != (Spanner*)this))
     no_vertical_start = true;
-  if (orig_span && orig_span->broken_into_l_arr_.top () != this)
+  if (orig_span && (orig_span->broken_into_l_arr_.top () != (Spanner*)this))
     no_vertical_end = true;
   if (bar_arr_.top ()->type_str_.length_i () > 1)
     no_vertical_end = false;