0001-fix-ambiguous-format-call-on-64bit-builds.patch 1.6 KB

123456789101112131415161718192021222324252627
  1. boost: fix ambiguous format call on 64-bit builds
  2. Fixes problem:
  3. libs/locale/src/icu/formatter.cpp: In member function
  4. 'virtual std::basic_string<_CharT, std::char_traits<_CharT>, std::allocator<_CharT> > boost::locale::impl_icu::number_format<CharType>::format(boost::int64_t, size_t&) const':
  5. libs/locale/src/icu/formatter.cpp:61: error: call of overloaded 'format(boost::int64_t&, icu_49::UnicodeString&)' is ambiguous
  6. /ec/include/unicode/numfmt.h:317: note: candidates are: icu_49::UnicodeString& icu_49::NumberFormat::format(double, icu_49::UnicodeString&) const
  7. /ec/include/unicode/numfmt.h:330: note: icu_49::UnicodeString& icu_49::NumberFormat::format(int32_t, icu_49::UnicodeString&) const
  8. /ec/include/unicode/numfmt.h:343: note: icu_49::UnicodeString& icu_49::NumberFormat::format(int64_t, icu_49::UnicodeString&) const
  9. Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
  10. Backported-from: https://svn.boost.org/trac/boost/ticket/6851
  11. diff -ruN boost_1_49_0.orig/libs/locale/src/icu/formatter.cpp boost_1_49_0/libs/locale/src/icu/formatter.cpp
  12. --- boost_1_49_0.orig/libs/locale/src/icu/formatter.cpp 2011-07-12 14:57:36.000000000 +0100
  13. +++ boost_1_49_0/libs/locale/src/icu/formatter.cpp 2012-05-01 14:27:54.000000000 +0100
  14. @@ -58,7 +58,7 @@
  15. virtual string_type format(int64_t value,size_t &code_points) const
  16. {
  17. icu::UnicodeString tmp;
  18. - icu_fmt_->format(value,tmp);
  19. + icu_fmt_->format(::int64_t(value),tmp);
  20. code_points=tmp.countChar32();
  21. return cvt_.std(tmp);
  22. }