Hi James!
On Sat, Nov 09, 2013 at 09:39:34PM +0100, Joerg Sonnenberger wrote:
> On Sat, Nov 09, 2013 at 12:20:36PM +0000, James wrote:
> > These patches don't apply cleanly to current master.
> >
> > If you can git format them, then I can shepherd them through our
> > patch review/test process for you.
>
> Not easily and I don't have time for adopting them to a git checkout.
> Maybe Thomas has...
Thanks for the offer!
I've adapted the patches to apply to lilypond git (from yesterday).
There are two of them:
Putting the config.hh inclusion into std-vector.hh, as David
suggested, really is sufficient for fixing the HAVE_STL_DATA_METHOD
issue.
The other patch removes ambiguity with respect to to_string.
With these two patches, I can compile lilypond git with clang-3.4 from
SVN and a rather new libc++. Please include them.
Thomas
$NetBSD$
--- flower/include/std-vector.hh.orig 2013-11-12 11:12:50.000000000 +0000
+++ flower/include/std-vector.hh
@@ -20,6 +20,8 @@
#ifndef STD_VECTOR_HH
#define STD_VECTOR_HH
+#include "config.hh"
+
#if 0
/*
$NetBSD$
--- flower/string-convert.cc.orig 2013-11-12 11:12:50.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
$NetBSD$
--- lily/arpeggio.cc.orig 2013-11-12 11:12:50.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 ();
}
$NetBSD$
--- lily/flag.cc.orig 2013-11-12 11:12:50.000000000 +0000
+++ lily/flag.cc
@@ -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 ())
$NetBSD$
--- lily/input.cc.orig 2013-11-12 11:12:50.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 "?";
}
$NetBSD$
--- lily/mensural-ligature.cc.orig 2013-11-12 11:12:50.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);
$NetBSD$
--- lily/note-head.cc.orig 2013-11-12 11:12:50.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"), "");
$NetBSD$
--- lily/page-turn-page-breaking.cc.orig 2013-11-12 11:12:50.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");
$NetBSD$
--- lily/paper-column-engraver.cc.orig 2013-11-12 11:12:50.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"));
$NetBSD$
--- lily/paper-column.cc.orig 2013-11-12 11:12:50.000000000 +0000
+++ lily/paper-column.cc
@@ -237,7 +237,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 () : "?/?";
$NetBSD$
--- lily/performance.cc.orig 2013-11-12 11:12:50.000000000 +0000
+++ lily/performance.cc
@@ -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);
}
$NetBSD$
--- lily/rest.cc.orig 2013-11-12 11:12:50.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);
}
$NetBSD$
--- lily/simultaneous-music-iterator.cc.orig 2013-11-12 11:12:50.000000000
+0000
+++ lily/simultaneous-music-iterator.cc
@@ -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)
$NetBSD$
--- lily/source-file.cc.orig 2013-11-12 11:12:50.000000000 +0000
+++ lily/source-file.cc
@@ -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;
}
$NetBSD$
--- lily/system-start-delimiter.cc.orig 2013-11-12 11:12:50.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);
$NetBSD$
--- lily/system.cc.orig 2013-11-12 11:12:50.000000000 +0000
+++ lily/system.cc
@@ -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;
}
$NetBSD$
--- lily/time-signature.cc.orig 2013-11-12 11:12:50.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);
$NetBSD$
--- lily/volta-repeat-iterator.cc.orig 2013-11-12 11:12:50.000000000 +0000
+++ lily/volta-repeat-iterator.cc
@@ -103,7 +103,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)
{
alt_restores_ = SCM_EOL;
@@ -142,7 +142,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"),
_______________________________________________
bug-lilypond mailing list
[email protected]
https://lists.gnu.org/mailman/listinfo/bug-lilypond