Source: ruby-charlock-holmes
Source-Version: 0.7.5-1
Severity: important
Tags: patch
Usertags: icu63

Dear Maintainer,

ICU 63.1 recently released, packaged and uploaded to experimental.
Its transition is going to start soon. However your package fails to
build with this version. I attach a patch which fixes the problem.
Please check if it works with the version in Sid and upload the
package when it's feasible for you.

Thanks,
Laszlo/GCS
Description: fix FTBFS with ICU 63.1
 Add icu namespace.
Author: Laszlo Boszormenyi (GCS) <gcs@debian.org>
Last-Update: 2018-11-04

---

--- ruby-charlock-holmes-0.7.5.orig/ext/charlock_holmes/transliterator.cpp
+++ ruby-charlock-holmes-0.7.5/ext/charlock_holmes/transliterator.cpp
@@ -36,7 +36,7 @@ static VALUE rb_cTransliterator;
 
 static VALUE rb_transliterator_id_list(VALUE self) {
   UErrorCode status = U_ZERO_ERROR;
-  StringEnumeration *id_list;
+  icu::StringEnumeration *id_list;
   int32_t id_list_size;
   const char *curr_id;
   int32_t curr_id_len;
@@ -44,7 +44,7 @@ static VALUE rb_transliterator_id_list(V
   VALUE rb_curr_id;
 
   id_list_size = 0;
-  id_list = Transliterator::getAvailableIDs(status);
+  id_list = icu::Transliterator::getAvailableIDs(status);
   if(!U_SUCCESS(status)) {
     rb_raise(rb_eArgError, "%s", u_errorName(status));
   }
@@ -78,12 +78,12 @@ static VALUE rb_transliterator_id_list(V
 static VALUE rb_transliterator_transliterate(VALUE self, VALUE rb_txt, VALUE rb_id) {
   UErrorCode status = U_ZERO_ERROR;
   UParseError p_error;
-  Transliterator *trans;
+  icu::Transliterator *trans;
   const char *txt;
   size_t txt_len;
   const char *id;
   size_t id_len;
-  UnicodeString *u_txt;
+  icu::UnicodeString *u_txt;
   std::string result;
   VALUE rb_out;
 
@@ -98,14 +98,14 @@ static VALUE rb_transliterator_translite
   id = RSTRING_PTR(rb_id);
   id_len = RSTRING_LEN(rb_id);
 
-  trans = Transliterator::createInstance(UnicodeString(id, id_len), UTRANS_FORWARD, p_error, status);
+  trans = icu::Transliterator::createInstance(icu::UnicodeString(id, id_len), UTRANS_FORWARD, p_error, status);
   if(!U_SUCCESS(status)) {
     rb_raise(rb_eArgError, "%s", u_errorName(status));
   }
 
-  u_txt = new UnicodeString(txt, txt_len);
+  u_txt = new icu::UnicodeString(txt, txt_len);
   trans->transliterate(*u_txt);
-  StringByteSink<std::string> sink(&result);
+  icu::StringByteSink<std::string> sink(&result);
   u_txt->toUTF8(sink);
 
   delete u_txt;

Reply via email to