On Fri, Nov 08, 2013 at 12:01:04PM +0100, David Kastrup wrote:
> Thomas Klausner <[email protected]> writes:
> 
> > Hi!
> >
> > I've tried building lilypond-2.17.28 with libc++, the new standard c++
> > library for use with llvm (http://libcxx.llvm.org/).
> >
> > I have a build failure I don't really know how to fix, it is:
> >
> > In file included from file-path.cc:21:
> > In file included from ./include/file-path.hh:23:
> > In file included from ./include/std-vector.hh:74:
> > /usr/include/c++/vector:1371:12: error: calling a private constructor of 
> > class 'std::__1::__wrap_iter<std::__1::basic_string<char> *>'
> >     return iterator(__p);
> >            ^
> > /usr/include/c++/vector:1408:12: note: in instantiation of member function 
> > 'std::__1::__flower_vector<std::__1::basic_string<char>,
> >       std::__1::allocator<std::__1::basic_string<char> > >::__make_iter' 
> > requested here
> >     return __make_iter(this->__end_);
> >            ^
> > ./include/std-vector.hh:155:15: note: in instantiation of member function 
> > 'std::__1::__flower_vector<std::__1::basic_string<char>,
> >       std::__1::allocator<std::__1::basic_string<char> > >::end' requested 
> > here
> >   v.insert (v.end (), w.begin (), w.end ());
> >               ^
> > file-path.cc:52:3: note: in instantiation of function template 
> > specialization 'concat<std::__1::basic_string<char> >' requested here
> >   concat (dirs_, string_split (p, PATHSEP));
> >   ^
> > /usr/include/c++/iterator:1200:31: note: declared private here
> >     _LIBCPP_INLINE_VISIBILITY __wrap_iter(iterator_type __x) _NOEXCEPT : 
> > __i(__x) {}
> 
> Looks like a rather fundamental problem in the C++ library to me.  Note
> that this is triggered by use of the template function

It isn't. It's a bug in Lilypond I had fixed in pkgsrc for the old
version, but Thomas was missing the various changed for 2.17.28.
Essentially, lots of files are not including config.h and therefore
don't have the HAVE_STD_VECTOR_DATA define set.

Attached is a patchset to fix this, some inconsistencies in the forward
type defines and some issues with the ambiguity of to_string.

Joerg
--- flower/file-name.cc.orig	2013-10-06 15:16:08.000000000 +0000
+++ flower/file-name.cc
@@ -18,6 +18,7 @@
   along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
 */
 
+#include "config.hh"
 #include "file-name.hh"
 
 #include <cstdio>
--- flower/file-path.cc.orig	2013-10-06 15:16:08.000000000 +0000
+++ flower/file-path.cc
@@ -18,12 +18,12 @@
   along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
 */
 
+#include "config.hh"
 #include "file-path.hh"
 
 #include <cstdio>
 #include <cerrno>
 
-#include "config.hh"
 #if HAVE_SYS_STAT_H
 #include <sys/stat.h>
 #endif
--- flower/interval-set.cc.orig	2013-10-06 15:16:08.000000000 +0000
+++ flower/interval-set.cc
@@ -17,6 +17,7 @@
   along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
 */
 
+#include "config.hh"
 #include "interval-set.hh"
 
 /*
--- flower/polynomial.cc.orig	2013-10-06 15:16:08.000000000 +0000
+++ flower/polynomial.cc
@@ -17,6 +17,7 @@
   along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
 */
 
+#include "config.hh"
 #include "polynomial.hh"
 
 #include "warn.hh"
--- flower/std-string.cc.orig	2013-10-06 15:16:08.000000000 +0000
+++ flower/std-string.cc
@@ -17,6 +17,7 @@
   along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
 */
 
+#include "config.hh"
 #include "std-string.hh"
 #include "string-convert.hh"
 
--- flower/string-convert.cc.orig	2013-11-08 19:16:14.000000000 +0000
+++ flower/string-convert.cc
@@ -37,8 +37,8 @@ string
 String_convert::bin2hex (Byte bin_char)
 {
   string str;
-  str += to_string ((char) nibble2hex_byte ((Byte) (bin_char >> 4)));
-  str += to_string ((char) nibble2hex_byte (bin_char++));
+  str += ::to_string ((char) nibble2hex_byte ((Byte) (bin_char >> 4)));
+  str += ::to_string ((char) nibble2hex_byte (bin_char++));
   return str;
 }
 
@@ -49,8 +49,8 @@ String_convert::bin2hex (const string &b
   Byte const *byte = (Byte const *)bin_string.data ();
   for (ssize i = 0; i < bin_string.length (); i++)
     {
-      str += to_string ((char)nibble2hex_byte ((Byte) (*byte >> 4)));
-      str += to_string ((char)nibble2hex_byte (*byte++));
+      str += ::to_string ((char)nibble2hex_byte ((Byte) (*byte >> 4)));
+      str += ::to_string ((char)nibble2hex_byte (*byte++));
     }
   return str;
 }
@@ -127,7 +127,7 @@ String_convert::hex2bin (string hex_stri
       int low_i = hex2nibble (*byte++);
       if (high_i < 0 || low_i < 0)
         return 1; // invalid char
-      bin_string_r += to_string ((char) (high_i << 4 | low_i), 1);
+      bin_string_r += ::to_string ((char) (high_i << 4 | low_i), 1);
       i += 2;
     }
   return 0;
@@ -165,10 +165,10 @@ String_convert::int2dec (int i, size_t l
     fill_char = '0';
 
   // ugh
-  string dec_string = to_string (i);
+  string dec_string = ::to_string (i);
 
   // ugh
-  return to_string (fill_char, ssize_t (length_i - dec_string.length ())) + dec_string;
+  return ::to_string (fill_char, ssize_t (length_i - dec_string.length ())) + dec_string;
 }
 
 // stupido.  Should use int_string ()
@@ -182,14 +182,14 @@ String_convert::unsigned2hex (unsigned u
 #if 1 // both go...
   while (u)
     {
-      str = to_string ((char) ((u % 16)["0123456789abcdef"])) + str;
+      str = ::to_string ((char) ((u % 16)["0123456789abcdef"])) + str;
       u /= 16;
     }
 #else
   str += int_string (u, "%x");  // hmm. %lx vs. %x -> portability?
 #endif
 
-  str = to_string (fill_char, ssize_t (length - str.length ())) + str;
+  str = ::to_string (fill_char, ssize_t (length - str.length ())) + str;
   while ((str.length () > length) && (str[ 0 ] == 'f'))
     str = str.substr (2);
 
@@ -299,7 +299,7 @@ String_convert::pointer_string (void con
 string
 String_convert::precision_string (double x, int n)
 {
-  string format = "%." + to_string (max (0, n - 1)) + "e";
+  string format = "%." + ::to_string (max (0, n - 1)) + "e";
   string str = double_string (abs (x), format.c_str ());
 
   int exp = dec2int (str.substr (str.length () - 3));
@@ -316,9 +316,9 @@ String_convert::precision_string (double
   str = str.substr (0, 1) + str.substr (2);
   ssize dot = 1 + exp;
   if (dot <= 0)
-    str = "0." + to_string ('0', -dot) + str;
+    str = "0." + ::to_string ('0', -dot) + str;
   else if (dot >= str.length ())
-    str += to_string ('0', dot - str.length ());
+    str += ::to_string ('0', dot - str.length ());
   else if ((dot > 0) && (dot < str.length ()))
     str = str.substr (0, dot) + "." + str.substr (dot);
   else
--- flower/warn.cc.orig	2013-10-06 15:16:08.000000000 +0000
+++ flower/warn.cc
@@ -17,6 +17,7 @@
   along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
 */
 
+#include "config.hh"
 #include "warn.hh"
 
 #include <cstdlib>
--- lily/accidental.cc.orig	2013-10-06 15:16:08.000000000 +0000
+++ lily/accidental.cc
@@ -17,6 +17,7 @@
   along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
 */
 
+#include "config.hh"
 #include "accidental-interface.hh"
 #include "font-interface.hh"
 #include "international.hh"
--- lily/align-interface.cc.orig	2013-10-06 15:16:08.000000000 +0000
+++ lily/align-interface.cc
@@ -17,6 +17,7 @@
   along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
 */
 
+#include "config.hh"
 #include "align-interface.hh"
 #include "axis-group-interface.hh"
 #include "grob-array.hh"
--- lily/all-font-metrics-scheme.cc.orig	2013-10-06 15:16:08.000000000 +0000
+++ lily/all-font-metrics-scheme.cc
@@ -18,6 +18,7 @@
   along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
 */
 
+#include "config.hh"
 #include "all-font-metrics.hh"
 #include "main.hh"
 
--- lily/all-font-metrics.cc.orig	2013-10-06 15:16:08.000000000 +0000
+++ lily/all-font-metrics.cc
@@ -17,6 +17,7 @@
   along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
 */
 
+#include "config.hh"
 #include "all-font-metrics.hh"
 
 #include "string-convert.hh"
--- lily/arpeggio.cc.orig	2013-11-08 19:34:44.000000000 +0000
+++ lily/arpeggio.cc
@@ -163,7 +163,7 @@ Arpeggio::print (SCM smob)
   if (dir)
     {
       Font_metric *fm = Font_interface::get_default_font (me);
-      arrow = fm->find_by_name ("scripts.arpeggio.arrow." + to_string (dir));
+      arrow = fm->find_by_name ("scripts.arpeggio.arrow." + ::to_string (dir));
       heads[dir] -= dir * arrow.extent (Y_AXIS).length ();
     }
 
--- lily/audio-element-info.cc.orig	2013-10-06 15:16:08.000000000 +0000
+++ lily/audio-element-info.cc
@@ -17,6 +17,7 @@
   along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
 */
 
+#include "config.hh"
 #include "audio-element-info.hh"
 
 #include "translator-group.hh"
--- lily/audio-staff.cc.orig	2013-10-06 15:16:08.000000000 +0000
+++ lily/audio-staff.cc
@@ -17,6 +17,7 @@
   along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
 */
 
+#include "config.hh"
 #include "audio-staff.hh"
 
 #include "midi-chunk.hh"
--- lily/auto-beam-engraver.cc.orig	2013-10-06 15:16:08.000000000 +0000
+++ lily/auto-beam-engraver.cc
@@ -17,6 +17,7 @@
   along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
 */
 
+#include "config.hh"
 #include "beaming-pattern.hh"
 #include "beam.hh"
 #include "context.hh"
--- lily/axis-group-interface-scheme.cc.orig	2013-10-06 15:16:08.000000000 +0000
+++ lily/axis-group-interface-scheme.cc
@@ -17,6 +17,7 @@
   along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
 */
 
+#include "config.hh"
 #include "axis-group-interface.hh"
 #include "lily-guile.hh"
 #include "grob.hh"
--- lily/axis-group-interface.cc.orig	2013-10-06 15:16:08.000000000 +0000
+++ lily/axis-group-interface.cc
@@ -17,6 +17,7 @@
   along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
 */
 
+#include "config.hh"
 #include "axis-group-interface.hh"
 
 #include <map>
--- lily/beam-performer.cc.orig	2013-10-06 15:16:08.000000000 +0000
+++ lily/beam-performer.cc
@@ -17,6 +17,7 @@
   along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
 */
 
+#include "config.hh"
 #include "performer.hh"
 #include "audio-item.hh"
 #include "audio-column.hh"
--- lily/bezier-bow.cc.orig	2013-10-06 15:16:08.000000000 +0000
+++ lily/bezier-bow.cc
@@ -17,6 +17,7 @@
   along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
 */
 
+#include "config.hh"
 #include "misc.hh"
 #include "bezier.hh"
 
--- lily/bezier.cc.orig	2013-10-06 15:16:08.000000000 +0000
+++ lily/bezier.cc
@@ -17,6 +17,7 @@
   along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
 */
 
+#include "config.hh"
 #include "bezier.hh"
 #include "warn.hh"
 #include "libc-extension.hh"
--- lily/book-scheme.cc.orig	2013-10-06 15:16:08.000000000 +0000
+++ lily/book-scheme.cc
@@ -17,6 +17,7 @@
   along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
 */
 
+#include "config.hh"
 #include "book.hh"
 
 #include "output-def.hh"
--- lily/book.cc.orig	2013-10-06 15:16:08.000000000 +0000
+++ lily/book.cc
@@ -17,6 +17,7 @@
   along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
 */
 
+#include "config.hh"
 #include "book.hh"
 
 #include <cstdio>
--- lily/change-iterator.cc.orig	2013-10-06 15:16:08.000000000 +0000
+++ lily/change-iterator.cc
@@ -17,6 +17,7 @@
   along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
 */
 
+#include "config.hh"
 #include "change-iterator.hh"
 
 #include "context.hh"
--- lily/chord-tremolo-iterator.cc.orig	2013-10-06 15:16:08.000000000 +0000
+++ lily/chord-tremolo-iterator.cc
@@ -18,6 +18,7 @@
   along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
 */
 
+#include "config.hh"
 #include "chord-tremolo-iterator.hh"
 
 #include "input.hh"
--- lily/column-x-positions.cc.orig	2013-10-06 15:16:08.000000000 +0000
+++ lily/column-x-positions.cc
@@ -17,6 +17,7 @@
   along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
 */
 
+#include "config.hh"
 #include "column-x-positions.hh"
 
 Column_x_positions::Column_x_positions ()
--- lily/context-def.cc.orig	2013-10-06 15:16:08.000000000 +0000
+++ lily/context-def.cc
@@ -20,6 +20,7 @@
 /* TODO: should junk this class an replace by
    a single list of context modifications?  */
 
+#include "config.hh"
 #include "context-def.hh"
 
 #include "context.hh"
--- lily/context-specced-music-iterator.cc.orig	2013-10-06 15:16:08.000000000 +0000
+++ lily/context-specced-music-iterator.cc
@@ -17,6 +17,7 @@
   along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
 */
 
+#include "config.hh"
 #include "music-wrapper-iterator.hh"
 #include "context.hh"
 #include "music.hh"
--- lily/drum-note-performer.cc.orig	2013-10-06 15:16:08.000000000 +0000
+++ lily/drum-note-performer.cc
@@ -17,6 +17,7 @@
   along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
 */
 
+#include "config.hh"
 #include "performer.hh"
 #include "audio-item.hh"
 #include "audio-column.hh"
--- lily/dynamic-engraver.cc.orig	2013-10-06 15:16:08.000000000 +0000
+++ lily/dynamic-engraver.cc
@@ -17,6 +17,7 @@
   along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
 */
 
+#include "config.hh"
 #include "axis-group-interface.hh"
 #include "context.hh"
 #include "engraver.hh"
--- lily/dynamic-performer.cc.orig	2013-10-06 15:16:08.000000000 +0000
+++ lily/dynamic-performer.cc
@@ -17,6 +17,7 @@
   along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
 */
 
+#include "config.hh"
 #include "performer.hh"
 #include "audio-item.hh"
 #include "stream-event.hh"
--- lily/event-chord-iterator.cc.orig	2013-10-06 15:16:08.000000000 +0000
+++ lily/event-chord-iterator.cc
@@ -17,6 +17,7 @@
   along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
 */
 
+#include "config.hh"
 #include "event-chord-iterator.hh"
 
 #include "context.hh"
--- lily/event-iterator.cc.orig	2013-10-06 15:16:08.000000000 +0000
+++ lily/event-iterator.cc
@@ -17,6 +17,7 @@
   along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
 */
 
+#include "config.hh"
 #include "event-iterator.hh"
 
 #include "context.hh"
--- lily/flag.cc.orig	2013-10-06 15:16:08.000000000 +0000
+++ lily/flag.cc
@@ -18,6 +18,7 @@
   along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
 */
 
+#include "config.hh"
 #include "stem.hh"
 
 #include "directional-element-interface.hh"
@@ -105,7 +106,7 @@ Flag::glyph_name (SCM smob)
 
   char dir = (d == UP) ? 'u' : 'd';
   string font_char = flag_style
-                     + to_string (dir) + staffline_offs + to_string (log);
+                     + ::to_string (dir) + staffline_offs + ::to_string (log);
   return ly_string2scm ("flags." + font_char);
 }
 
@@ -143,11 +144,11 @@ Flag::print (SCM smob)
       string stroke_style = ly_scm2string (stroke_style_scm);
       if (!stroke_style.empty ())
         {
-          string font_char = flag_style + to_string (dir) + stroke_style;
+          string font_char = flag_style + ::to_string (dir) + stroke_style;
           Stencil stroke = fm->find_by_name ("flags." + font_char);
           if (stroke.is_empty ())
             {
-              font_char = to_string (dir) + stroke_style;
+              font_char = ::to_string (dir) + stroke_style;
               stroke = fm->find_by_name ("flags." + font_char);
             }
           if (stroke.is_empty ())
--- lily/font-select.cc.orig	2013-10-06 15:16:08.000000000 +0000
+++ lily/font-select.cc
@@ -17,6 +17,7 @@
   along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
 */
 
+#include "config.hh"
 #include "dimensions.hh"
 #include "all-font-metrics.hh"
 #include "output-def.hh"
--- lily/global-ctor.cc.orig	2013-10-06 15:16:08.000000000 +0000
+++ lily/global-ctor.cc
@@ -17,6 +17,7 @@
   along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
 */
 
+#include "config.hh"
 #include "global-ctor.hh"
 
 #include "std-vector.hh"
--- lily/grace-iterator.cc.orig	2013-10-06 15:16:08.000000000 +0000
+++ lily/grace-iterator.cc
@@ -17,6 +17,7 @@
   along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
 */
 
+#include "config.hh"
 #include "grace-iterator.hh"
 #include "global-context.hh"
 #include "warn.hh"
--- lily/grob-property.cc.orig	2013-10-06 15:16:08.000000000 +0000
+++ lily/grob-property.cc
@@ -2,6 +2,7 @@
   Implement storage and manipulation of grob properties.
 */
 
+#include "config.hh"
 #include <cstring>
 
 #include "main.hh"
--- lily/horizontal-bracket.cc.orig	2013-10-06 15:16:08.000000000 +0000
+++ lily/horizontal-bracket.cc
@@ -17,6 +17,7 @@
   along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
 */
 
+#include "config.hh"
 #include "horizontal-bracket.hh"
 
 #include "lookup.hh"
--- lily/includable-lexer.cc.orig	2013-10-06 15:16:08.000000000 +0000
+++ lily/includable-lexer.cc
@@ -17,6 +17,7 @@
   along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
 */
 
+#include "config.hh"
 #include "includable-lexer.hh"
 
 #include <sstream>
--- lily/input.cc.orig	2013-11-08 19:38:00.000000000 +0000
+++ lily/input.cc
@@ -142,7 +142,7 @@ string
 Input::line_number_string () const
 {
   if (source_file_)
-    return to_string (source_file_->get_line (start_));
+    return ::to_string (source_file_->get_line (start_));
   return "?";
 }
 
--- lily/instrument-name-engraver.cc.orig	2013-10-06 15:16:08.000000000 +0000
+++ lily/instrument-name-engraver.cc
@@ -17,6 +17,7 @@
   along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
 */
 
+#include "config.hh"
 #include "align-interface.hh"
 #include "axis-group-interface.hh"
 #include "engraver.hh"
--- lily/interval-minefield.cc.orig	2013-10-06 15:16:08.000000000 +0000
+++ lily/interval-minefield.cc
@@ -18,6 +18,7 @@
   along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
 */
 
+#include "config.hh"
 #include "interval-minefield.hh"
 
 Interval_minefield::Interval_minefield (Interval feasible_placements, Real bulk)
--- lily/key-signature-interface.cc.orig	2013-10-06 15:16:08.000000000 +0000
+++ lily/key-signature-interface.cc
@@ -19,6 +19,7 @@
   along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
 */
 
+#include "config.hh"
 #include "accidental-interface.hh"
 #include "font-interface.hh"
 #include "international.hh"
--- lily/keyword.cc.orig	2013-10-06 15:16:08.000000000 +0000
+++ lily/keyword.cc
@@ -2,6 +2,7 @@
   keyword.cc -- keywords and identifiers
 */
 
+#include "config.hh"
 #include "keyword.hh"
 
 #include <cstring>
--- lily/least-squares.cc.orig	2013-10-06 15:16:08.000000000 +0000
+++ lily/least-squares.cc
@@ -17,6 +17,7 @@
   along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
 */
 
+#include "config.hh"
 #include "least-squares.hh"
 
 #include "warn.hh"
--- lily/ledger-line-engraver.cc.orig	2013-10-06 15:16:08.000000000 +0000
+++ lily/ledger-line-engraver.cc
@@ -17,6 +17,7 @@
   along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
 */
 
+#include "config.hh"
 #include "pointer-group-interface.hh"
 #include "spanner.hh"
 #include "engraver.hh"
--- lily/lily-lexer-scheme.cc.orig	2013-10-06 15:16:08.000000000 +0000
+++ lily/lily-lexer-scheme.cc
@@ -18,6 +18,7 @@
   along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
 */
 
+#include "config.hh"
 #include "lily-lexer.hh"
 
 LY_DEFINE (ly_lexer_keywords, "ly:lexer-keywords",
--- lily/lily-lexer.cc.orig	2013-10-06 15:16:08.000000000 +0000
+++ lily/lily-lexer.cc
@@ -17,6 +17,7 @@
   along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
 */
 
+#include "config.hh"
 #include "lily-lexer.hh"
 
 #include <cctype>
--- lily/lilypond-version.cc.orig	2013-10-06 15:16:08.000000000 +0000
+++ lily/lilypond-version.cc
@@ -17,6 +17,7 @@
   along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
 */
 
+#include "config.hh"
 #include <ctype.h>
 
 #include "lilypond-version.hh"
--- lily/line-spanner.cc.orig	2013-10-06 15:16:08.000000000 +0000
+++ lily/line-spanner.cc
@@ -17,6 +17,7 @@
   along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
 */
 
+#include "config.hh"
 #include "align-interface.hh"
 #include "axis-group-interface.hh"
 #include "font-interface.hh"
--- lily/main.cc.orig	2013-10-06 15:16:08.000000000 +0000
+++ lily/main.cc
@@ -17,6 +17,7 @@
   along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
 */
 
+#include "config.hh"
 #include "main.hh"
 
 #include <cassert>
--- lily/mensural-ligature.cc.orig	2013-11-08 19:35:40.000000000 +0000
+++ lily/mensural-ligature.cc
@@ -168,7 +168,7 @@ internal_brew_primitive (Grob *me)
       duration_log--;
     case MLP_BREVIS:
       duration_log--;
-      suffix = to_string (duration_log) + color
+      suffix = ::to_string (duration_log) + color
                + (duration_log < -1 ? "lig" : "") + "mensural";
       index = prefix + "s";
       out = fm->find_by_name (index + "r" + suffix);
--- lily/midi-chunk.cc.orig	2013-10-06 15:16:08.000000000 +0000
+++ lily/midi-chunk.cc
@@ -18,6 +18,7 @@
   along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
 */
 
+#include "config.hh"
 #include "midi-chunk.hh"
 
 #include "midi-item.hh"
--- lily/midi-stream.cc.orig	2013-10-06 15:16:08.000000000 +0000
+++ lily/midi-stream.cc
@@ -17,6 +17,7 @@
   along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
 */
 
+#include "config.hh"
 #include "midi-stream.hh"
 
 #include <cerrno>
--- lily/midi-walker.cc.orig	2013-10-06 15:16:08.000000000 +0000
+++ lily/midi-walker.cc
@@ -18,6 +18,7 @@
   along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
 */
 
+#include "config.hh"
 #include "midi-walker.hh"
 
 #include "audio-column.hh"
--- lily/misc.cc.orig	2013-10-06 15:16:08.000000000 +0000
+++ lily/misc.cc
@@ -18,6 +18,7 @@
   along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
 */
 
+#include "config.hh"
 #include <complex>
 
 #include "misc.hh"
--- lily/music-wrapper-iterator.cc.orig	2013-10-06 15:16:08.000000000 +0000
+++ lily/music-wrapper-iterator.cc
@@ -17,6 +17,7 @@
   along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
 */
 
+#include "config.hh"
 #include "music-wrapper-iterator.hh"
 #include "music-wrapper.hh"
 #include "music.hh"
--- lily/note-collision.cc.orig	2013-10-06 15:16:08.000000000 +0000
+++ lily/note-collision.cc
@@ -17,6 +17,7 @@
   along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
 */
 
+#include "config.hh"
 #include "note-collision.hh"
 
 #include "axis-group-interface.hh"
--- lily/note-head.cc.orig	2013-11-08 19:29:17.000000000 +0000
+++ lily/note-head.cc
@@ -38,7 +38,7 @@ internal_print (Grob *me, string *font_c
 {
   string style = robust_symbol2string (me->get_property ("style"), "default");
 
-  string suffix = to_string (min (robust_scm2int (me->get_property ("duration-log"), 2), 2));
+  string suffix = ::to_string (min (robust_scm2int (me->get_property ("duration-log"), 2), 2));
   if (style != "default")
     suffix = robust_scm2string (me->get_property ("glyph-name"), "");
 
--- lily/note-performer.cc.orig	2013-10-06 15:16:08.000000000 +0000
+++ lily/note-performer.cc
@@ -17,6 +17,7 @@
   along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
 */
 
+#include "config.hh"
 #include "performer.hh"
 #include "audio-item.hh"
 #include "audio-column.hh"
--- lily/ottava-bracket.cc.orig	2013-10-06 15:16:08.000000000 +0000
+++ lily/ottava-bracket.cc
@@ -17,6 +17,7 @@
   along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
 */
 
+#include "config.hh"
 #include "axis-group-interface.hh"
 #include "text-interface.hh"
 #include "spanner.hh"
--- lily/page-breaking-scheme.cc.orig	2013-10-06 15:16:08.000000000 +0000
+++ lily/page-breaking-scheme.cc
@@ -17,6 +17,7 @@
   along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
 */
 
+#include "config.hh"
 #include "paper-book.hh"
 #include "page-turn-page-breaking.hh"
 #include "one-line-page-breaking.hh"
--- lily/page-layout-problem.cc.orig	2013-10-06 15:16:08.000000000 +0000
+++ lily/page-layout-problem.cc
@@ -17,6 +17,7 @@
   along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
 */
 
+#include "config.hh"
 #include "page-layout-problem.hh"
 
 #include "align-interface.hh"
--- lily/page-spacing-result.cc.orig	2013-10-06 15:16:08.000000000 +0000
+++ lily/page-spacing-result.cc
@@ -18,6 +18,7 @@
   along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
 */
 
+#include "config.hh"
 #include "page-spacing-result.hh"
 #include <cstdio>
 
--- lily/page-turn-page-breaking.cc.orig	2013-11-08 19:38:26.000000000 +0000
+++ lily/page-turn-page-breaking.cc
@@ -232,7 +232,7 @@ Page_turn_page_breaking::solve ()
   for (vsize i = 0; i < last_break_position (); i++)
     {
       calc_subproblem (i);
-      progress_indication (string ("[") + to_string (i + 1) + "]");
+      progress_indication (string ("[") + ::to_string (i + 1) + "]");
     }
   progress_indication ("\n");
 
--- lily/pango-font-scheme.cc.orig	2013-10-06 15:16:08.000000000 +0000
+++ lily/pango-font-scheme.cc
@@ -17,6 +17,8 @@
   along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
 */
 
+#include "config.hh"
+
 #define PANGO_ENABLE_BACKEND // ugh, why necessary?
 
 #include <pango/pangoft2.h>
--- lily/pango-select.cc.orig	2013-10-06 15:16:08.000000000 +0000
+++ lily/pango-select.cc
@@ -17,6 +17,7 @@
   along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
 */
 
+#include "config.hh"
 #include "dimensions.hh"
 #include "all-font-metrics.hh"
 #include "libc-extension.hh"
--- lily/paper-book-scheme.cc.orig	2013-10-06 15:16:08.000000000 +0000
+++ lily/paper-book-scheme.cc
@@ -17,6 +17,7 @@
   along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
 */
 
+#include "config.hh"
 #include "paper-book.hh"
 #include "ly-module.hh"
 #include "output-def.hh"
--- lily/paper-book.cc.orig	2013-10-06 15:16:08.000000000 +0000
+++ lily/paper-book.cc
@@ -17,6 +17,7 @@
   along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
 */
 
+#include "config.hh"
 #include "paper-book.hh"
 
 #include "grob.hh"
--- lily/paper-column-engraver.cc.orig	2013-11-08 19:34:24.000000000 +0000
+++ lily/paper-column-engraver.cc
@@ -50,7 +50,7 @@ void
 Paper_column_engraver::finalize ()
 {
   if (! (breaks_ % 8))
-    progress_indication ("[" + to_string (breaks_) + "]");
+    progress_indication ("[" + ::to_string (breaks_) + "]");
 
   if (!made_columns_)
     {
@@ -269,7 +269,7 @@ Paper_column_engraver::stop_translation_
       breaks_++;
 
       if (! (breaks_ % 8))
-        progress_indication ("[" + to_string (breaks_) + "]");
+        progress_indication ("[" + ::to_string (breaks_) + "]");
     }
 
   context ()->get_score_context ()->unset_property (ly_symbol2scm ("forbidBreak"));
--- lily/paper-column.cc.orig	2013-11-08 19:34:01.000000000 +0000
+++ lily/paper-column.cc
@@ -229,7 +229,7 @@ Paper_column::print (SCM p)
 {
   Paper_column *me = dynamic_cast<Paper_column *> (unsmob_grob (p));
 
-  string r = to_string (Paper_column::get_rank (me));
+  string r = ::to_string (Paper_column::get_rank (me));
 
   Moment *mom = unsmob_moment (me->get_property ("when"));
   string when = mom ? mom->to_string () : "?/?";
--- lily/paper-outputter-scheme.cc.orig	2013-10-06 15:16:08.000000000 +0000
+++ lily/paper-outputter-scheme.cc
@@ -17,6 +17,7 @@
   along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
 */
 
+#include "config.hh"
 #include "paper-outputter.hh"
 
 #include "international.hh"
--- lily/paper-outputter.cc.orig	2013-10-06 15:16:08.000000000 +0000
+++ lily/paper-outputter.cc
@@ -18,6 +18,7 @@
   along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
 */
 
+#include "config.hh"
 #include "paper-outputter.hh"
 
 #include <cmath>
--- lily/paper-score-scheme.cc.orig	2013-10-06 15:16:08.000000000 +0000
+++ lily/paper-score-scheme.cc
@@ -17,6 +17,7 @@
   along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
 */
 
+#include "config.hh"
 #include "paper-score.hh"
 
 LY_DEFINE (ly_paper_score_paper_systems, "ly:paper-score-paper-systems",
--- lily/paper-score.cc.orig	2013-10-06 15:16:08.000000000 +0000
+++ lily/paper-score.cc
@@ -17,6 +17,7 @@
   along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
 */
 
+#include "config.hh"
 #include "paper-score.hh"
 
 #include "all-font-metrics.hh"
--- lily/performance-scheme.cc.orig	2013-10-06 15:16:08.000000000 +0000
+++ lily/performance-scheme.cc
@@ -17,6 +17,7 @@
   along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
 */
 
+#include "config.hh"
 #include "performance.hh"
 
 LY_DEFINE (ly_performance_write, "ly:performance-write",
--- lily/performance.cc.orig	2013-10-06 15:16:08.000000000 +0000
+++ lily/performance.cc
@@ -17,6 +17,7 @@
   along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
 */
 
+#include "config.hh"
 #include "performance.hh"
 
 #include <ctime>
@@ -56,7 +57,7 @@ Performance::output (Midi_stream &midi_s
   for (vsize i = 0; i < audio_staffs_.size (); i++)
     {
       Audio_staff *s = audio_staffs_[i];
-      debug_output ("[" + to_string (i), true);
+      debug_output ("[" + ::to_string (i), true);
       s->output (midi_stream, i, ports_);
       debug_output ("]", false);
     }
--- lily/performer-group.cc.orig	2013-10-06 15:16:08.000000000 +0000
+++ lily/performer-group.cc
@@ -18,6 +18,7 @@
   along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
 */
 
+#include "config.hh"
 #include "performer-group.hh"
 
 #include "context.hh"
--- lily/piano-pedal-performer.cc.orig	2013-10-06 15:16:08.000000000 +0000
+++ lily/piano-pedal-performer.cc
@@ -17,6 +17,7 @@
   along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
 */
 
+#include "config.hh"
 #include "performer.hh"
 
 #include "audio-item.hh"
--- lily/pointer-group-interface-scheme.cc.orig	2013-10-06 15:16:08.000000000 +0000
+++ lily/pointer-group-interface-scheme.cc
@@ -17,6 +17,7 @@
   along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
 */
 
+#include "config.hh"
 #include "pointer-group-interface.hh"
 #include "grob.hh"
 
--- lily/pointer-group-interface.cc.orig	2013-10-06 15:16:08.000000000 +0000
+++ lily/pointer-group-interface.cc
@@ -17,6 +17,7 @@
   along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
 */
 
+#include "config.hh"
 #include "pointer-group-interface.hh"
 
 #include "grob-array.hh"
--- lily/property-iterator.cc.orig	2013-10-06 15:16:08.000000000 +0000
+++ lily/property-iterator.cc
@@ -17,6 +17,7 @@
   along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
 */
 
+#include "config.hh"
 #include "property-iterator.hh"
 
 #include "context-def.hh"
--- lily/pure-from-neighbor-interface.cc.orig	2013-10-06 15:16:08.000000000 +0000
+++ lily/pure-from-neighbor-interface.cc
@@ -17,6 +17,7 @@
   along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
 */
 
+#include "config.hh"
 #include "axis-group-interface.hh"
 #include "grob.hh"
 #include "grob-array.hh"
--- lily/quote-iterator.cc.orig	2013-10-06 15:16:08.000000000 +0000
+++ lily/quote-iterator.cc
@@ -17,6 +17,7 @@
   along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
 */
 
+#include "config.hh"
 #include "music-wrapper-iterator.hh"
 
 #include "context.hh"
--- lily/rest.cc.orig	2013-11-08 19:31:16.000000000 +0000
+++ lily/rest.cc
@@ -217,7 +217,7 @@ Rest::glyph_name (Grob *me, int durlog, 
       actual_style = "";
     }
 
-  return ("rests." + to_string (durlog) + (is_ledgered ? "o" : "")
+  return ("rests." + ::to_string (durlog) + (is_ledgered ? "o" : "")
           + actual_style);
 }
 
--- lily/rhythmic-music-iterator.cc.orig	2013-10-06 15:16:08.000000000 +0000
+++ lily/rhythmic-music-iterator.cc
@@ -17,6 +17,7 @@
   along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
 */
 
+#include "config.hh"
 #include "rhythmic-music-iterator.hh"
 
 #include "context.hh"
--- lily/sequential-iterator.cc.orig	2013-10-06 15:16:08.000000000 +0000
+++ lily/sequential-iterator.cc
@@ -17,6 +17,7 @@
   along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
 */
 
+#include "config.hh"
 #include "sequential-iterator.hh"
 #include "music.hh"
 #include "translator-group.hh"
--- lily/simple-music-iterator.cc.orig	2013-10-06 15:16:08.000000000 +0000
+++ lily/simple-music-iterator.cc
@@ -17,6 +17,7 @@
   along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
 */
 
+#include "config.hh"
 #include "simple-music-iterator.hh"
 
 #include "music.hh"
--- lily/simple-spacer.cc.orig	2013-10-06 15:16:08.000000000 +0000
+++ lily/simple-spacer.cc
@@ -20,6 +20,7 @@
   along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
 */
 
+#include "config.hh"
 #include <cstdio>
 
 #include "column-x-positions.hh"
--- lily/simultaneous-music-iterator.cc.orig	2013-10-06 15:16:08.000000000 +0000
+++ lily/simultaneous-music-iterator.cc
@@ -17,6 +17,7 @@
   along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
 */
 
+#include "config.hh"
 #include "simultaneous-music-iterator.hh"
 #include "music.hh"
 #include "context.hh"
@@ -63,7 +64,7 @@ Simultaneous_music_iterator::construct_c
 
       SCM name = ly_symbol2scm (get_outlet ()->context_name ().c_str ());
       Context *c = (j && create_separate_contexts_)
-                   ? get_outlet ()->find_create_context (name, to_string (j), SCM_EOL)
+                   ? get_outlet ()->find_create_context (name, ::to_string (j), SCM_EOL)
                    : get_outlet ();
 
       if (!c)
--- lily/slur-configuration.cc.orig	2013-10-06 15:16:08.000000000 +0000
+++ lily/slur-configuration.cc
@@ -17,6 +17,7 @@
   along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
 */
 
+#include "config.hh"
 #include "slur-configuration.hh"
 
 #include "item.hh"
--- lily/slur-performer.cc.orig	2013-10-06 15:16:08.000000000 +0000
+++ lily/slur-performer.cc
@@ -17,6 +17,7 @@
   along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
 */
 
+#include "config.hh"
 #include "performer.hh"
 #include "audio-item.hh"
 #include "audio-column.hh"
--- lily/slur.cc.orig	2013-10-06 15:16:08.000000000 +0000
+++ lily/slur.cc
@@ -18,6 +18,7 @@
   along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
 */
 
+#include "config.hh"
 #include "slur.hh"
 #include "grob-info.hh"
 #include "grob-array.hh"
--- lily/source-file.cc.orig	2013-10-06 15:16:08.000000000 +0000
+++ lily/source-file.cc
@@ -18,6 +18,7 @@
   along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
 */
 
+#include "config.hh"
 #if GCC_MAJOR < 4
 #define _GLIBCXX_HAVE_MBSTATE_T
 #include <wchar.h>
@@ -181,8 +182,8 @@ Source_file::file_line_column_string (ch
       int l, ch, col, offset;
       get_counts (context_str0, &l, &ch, &col, &offset);
 
-      return name_string () + ":" + to_string (l)
-             + ":" + to_string (col + 1);
+      return name_string () + ":" + ::to_string (l)
+             + ":" + ::to_string (col + 1);
     }
 }
 
@@ -196,8 +197,8 @@ Source_file::quote_input (char const *po
   get_counts (pos_str0, &l, &ch, &col, &offset);
   string line = line_string (pos_str0);
   string context = line.substr (0, offset)
-                   + to_string ('\n')
-                   + to_string (' ', col)
+                   + ::to_string ('\n')
+                   + ::to_string (' ', col)
                    + line.substr (offset, line.length () - offset);
   return context;
 }
--- lily/sources.cc.orig	2013-10-06 15:16:08.000000000 +0000
+++ lily/sources.cc
@@ -17,6 +17,7 @@
   along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
 */
 
+#include "config.hh"
 #include "sources.hh"
 
 #include "config.hh"
--- lily/spacing-basic.cc.orig	2013-10-06 15:16:08.000000000 +0000
+++ lily/spacing-basic.cc
@@ -17,6 +17,7 @@
   along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
 */
 
+#include "config.hh"
 #include "spacing-spanner.hh"
 
 #include "spacing-options.hh"
--- lily/spacing-loose-columns.cc.orig	2013-10-06 15:16:08.000000000 +0000
+++ lily/spacing-loose-columns.cc
@@ -17,6 +17,7 @@
   along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
 */
 
+#include "config.hh"
 #include "system.hh"
 #include "paper-column.hh"
 #include "column-x-positions.hh"
--- lily/spacing-options.cc.orig	2013-10-06 15:16:08.000000000 +0000
+++ lily/spacing-options.cc
@@ -18,6 +18,7 @@
   along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
 */
 
+#include "config.hh"
 #include "spacing-options.hh"
 #include "spacing-spanner.hh"
 #include "grob.hh"
--- lily/spacing-spanner.cc.orig	2013-10-06 15:16:08.000000000 +0000
+++ lily/spacing-spanner.cc
@@ -17,6 +17,7 @@
   along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
 */
 
+#include "config.hh"
 #include "spacing-spanner.hh"
 
 #include <math.h>
--- lily/span-bar-stub-engraver.cc.orig	2013-10-06 15:16:08.000000000 +0000
+++ lily/span-bar-stub-engraver.cc
@@ -17,6 +17,7 @@
   along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
 */
 
+#include "config.hh"
 #include <algorithm>
 
 #include "align-interface.hh"
--- lily/stem.cc.orig	2013-10-06 15:16:08.000000000 +0000
+++ lily/stem.cc
@@ -37,6 +37,7 @@
   internal_height and internal_pure_height for all subsequent iterations.
 */
 
+#include "config.hh"
 #include "stem.hh"
 #include "spanner.hh"
 
--- lily/system-start-delimiter.cc.orig	2013-11-08 19:37:41.000000000 +0000
+++ lily/system-start-delimiter.cc
@@ -169,7 +169,7 @@ System_start_delimiter::staff_brace (Gro
     }
   while (hi - lo > 1);
 
-  Stencil stil (fm->find_by_name ("brace" + to_string (lo)));
+  Stencil stil (fm->find_by_name ("brace" + ::to_string (lo)));
   stil.translate_axis (-b[X_AXIS].length () / 2, X_AXIS);
 
   stil.translate_axis (-0.2, X_AXIS);
--- lily/system.cc.orig	2013-10-06 15:16:08.000000000 +0000
+++ lily/system.cc
@@ -17,6 +17,7 @@
   along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
 */
 
+#include "config.hh"
 #include "system.hh"
 
 #include "align-interface.hh"
@@ -223,7 +224,7 @@ System::get_paper_systems ()
       scm_vector_set_x (lines, scm_from_int (i),
                         system->get_paper_system ());
 
-      debug_output (to_string (i) + "]", false);
+      debug_output (::to_string (i) + "]", false);
     }
   return lines;
 }
--- lily/tempo-performer.cc.orig	2013-10-06 15:16:08.000000000 +0000
+++ lily/tempo-performer.cc
@@ -17,6 +17,7 @@
   along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
 */
 
+#include "config.hh"
 #include "performer.hh"
 
 #include "audio-item.hh"
--- lily/tie-configuration.cc.orig	2013-10-06 15:16:08.000000000 +0000
+++ lily/tie-configuration.cc
@@ -18,6 +18,7 @@
   along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
 */
 
+#include "config.hh"
 #include "tie-configuration.hh"
 
 #include "warn.hh"
--- lily/tie-performer.cc.orig	2013-10-06 15:16:08.000000000 +0000
+++ lily/tie-performer.cc
@@ -17,6 +17,7 @@
   along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
 */
 
+#include "config.hh"
 #include "performer.hh"
 
 #include "audio-item.hh"
--- lily/time-signature.cc.orig	2013-11-08 19:26:23.000000000 +0000
+++ lily/time-signature.cc
@@ -67,7 +67,7 @@ Time_signature::special_time_signature (
     return numbered_time_signature (me, n, d);
 
   if ((style == "default") || (style == ""))
-    style = to_string ("C");
+    style = ::to_string ("C");
 
   if (style == "C")
     {
@@ -77,7 +77,7 @@ Time_signature::special_time_signature (
         return numbered_time_signature (me, n, d);
     }
 
-  string char_name = style + to_string (n) + to_string (d);
+  string char_name = style + ::to_string (n) + ::to_string (d);
   me->set_property ("font-encoding", ly_symbol2scm ("fetaMusic"));
   Stencil out = Font_interface::get_default_font (me)
                 ->find_by_name ("timesig." + char_name);
@@ -100,9 +100,9 @@ Time_signature::numbered_time_signature 
                     chain);
 
   SCM sn = Text_interface::interpret_markup (me->layout ()->self_scm (), chain,
-                                             ly_string2scm (to_string (num)));
+                                             ly_string2scm (::to_string (num)));
   SCM sd = Text_interface::interpret_markup (me->layout ()->self_scm (), chain,
-                                             ly_string2scm (to_string (den)));
+                                             ly_string2scm (::to_string (den)));
 
   Stencil n = *unsmob_stencil (sn);
   Stencil d = *unsmob_stencil (sd);
--- lily/translator-dispatch-list.cc.orig	2013-10-06 15:16:08.000000000 +0000
+++ lily/translator-dispatch-list.cc
@@ -17,6 +17,7 @@
   along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
 */
 
+#include "config.hh"
 #include "translator-dispatch-list.hh"
 #include "engraver.hh"
 
--- lily/tuplet-bracket.cc.orig	2013-10-06 15:16:08.000000000 +0000
+++ lily/tuplet-bracket.cc
@@ -40,6 +40,7 @@
   todo: handle breaking elegantly.
 */
 
+#include "config.hh"
 #include "tuplet-bracket.hh"
 #include "axis-group-interface.hh"
 #include "line-interface.hh"
--- lily/tuplet-number.cc.orig	2013-10-06 15:16:08.000000000 +0000
+++ lily/tuplet-number.cc
@@ -18,6 +18,7 @@
   along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
 */
 
+#include "config.hh"
 #include "tuplet-bracket.hh"
 #include "moment.hh"
 #include "paper-column.hh"
--- lily/volta-repeat-iterator.cc.orig	2013-11-08 19:36:34.000000000 +0000
+++ lily/volta-repeat-iterator.cc
@@ -94,7 +94,7 @@ Volta_repeat_iterator::next_element (boo
     {
       if (alt_count_)
         {
-          string repstr = to_string (rep_count_ - alt_count_ + done_count_) + ".";
+          string repstr = ::to_string (rep_count_ - alt_count_ + done_count_) + ".";
           if (done_count_ > 1)
             {
               add_repeat_command (scm_list_n (ly_symbol2scm ("volta"), SCM_BOOL_F, SCM_UNDEFINED));
@@ -104,7 +104,7 @@ Volta_repeat_iterator::next_element (boo
             }
 
           if (done_count_ == 1 && alt_count_ < rep_count_)
-            repstr = "1.--" + to_string (rep_count_ - alt_count_ + done_count_) + ".";
+            repstr = "1.--" + ::to_string (rep_count_ - alt_count_ + done_count_) + ".";
 
           if (done_count_ <= alt_count_)
             add_repeat_command (scm_list_n (ly_symbol2scm ("volta"),
--- lily/include/lily-proto.hh.orig	2013-10-06 15:16:08.000000000 +0000
+++ lily/include/lily-proto.hh
@@ -31,7 +31,7 @@ class Audio_item;
 class Audio_key;
 class Audio_note;
 class Audio_piano_pedal;
-class Audio_staff;
+struct Audio_staff;
 class Audio_tempo;
 class Audio_text;
 class Audio_tie;
@@ -54,10 +54,10 @@ class Change_iterator;
 class Change_translator;
 class Chord_tremolo_iterator;
 class Cluster_engraver;
-class Column_x_positions;
+struct Column_x_positions;
 class Context;
-class Context_def;
-class Context_mod;
+struct Context_def;
+struct Context_mod;
 class Context_specced_music;
 class Dispatcher;
 class Dot_column;
@@ -87,7 +87,7 @@ class Input_file_results;
 class Item;
 class Key_performer;
 class Keyword_ent;
-class Keyword_table;
+struct Keyword_table;
 class Ligature_bracket_engraver;
 class Ligature_engraver;
 class Lily_lexer;
@@ -96,7 +96,7 @@ class Lilypond_context_key;
 class Lilypond_grob_key;
 class Line_group_engraver_group;
 class Listener;
-class Lookup;
+struct Lookup;
 class Lyric_combine_music;
 class Lyric_combine_music_iterator;
 class Lyric_engraver;
@@ -115,7 +115,7 @@ class Midi_note;
 class Midi_note_event;
 class Midi_note_off;
 class Midi_piano_pedal;
-class Midi_stream;
+struct Midi_stream;
 class Midi_tempo;
 class Midi_text;
 class Midi_time_signature;
@@ -169,7 +169,7 @@ class Skyline;
 class Skyline_entry;
 class Skyline_pair;
 class Slur_configuration;
-class Slur_score_state;
+struct Slur_score_state;
 class Source_file;
 class Sources;
 class Spacing_options;
_______________________________________________
bug-lilypond mailing list
[email protected]
https://lists.gnu.org/mailman/listinfo/bug-lilypond

Reply via email to