]> granicus.if.org Git - icu/commitdiff
ICU-13541 rbbi.cpp, try again to fix xlC build problem.
authorAndy Heninger <andy.heninger@gmail.com>
Thu, 1 Mar 2018 21:00:46 +0000 (21:00 +0000)
committerAndy Heninger <andy.heninger@gmail.com>
Thu, 1 Mar 2018 21:00:46 +0000 (21:00 +0000)
X-SVN-Rev: 41042

icu4c/source/common/rbbi.cpp

index 24f1f89d20fd8e1580916f42f3c070c9e68876a0..69f92d94c602c33cc65cb7d873956a3efca08aed 100644 (file)
@@ -277,7 +277,6 @@ RuleBasedBreakIterator::operator=(const RuleBasedBreakIterator& that) {
 //
 //-----------------------------------------------------------------------------
 void RuleBasedBreakIterator::init(UErrorCode &status) {
-    fText                 = UTEXT_INITIALIZER;
     fCharIter             = NULL;
     fData                 = NULL;
     fPosition             = 0;
@@ -289,7 +288,12 @@ void RuleBasedBreakIterator::init(UErrorCode &status) {
     fBreakCache           = NULL;
     fDictionaryCache      = NULL;
 
-    if (U_FAILURE(status)) {
+    // Note: IBM xlC is unable to assign or initialize member fText from UTEXT_INITIALIZER.
+    // fText                 = UTEXT_INITIALIZER;
+    static const UText initializedUText = UTEXT_INITIALIZER;
+    uprv_memcpy(&fText, &initializedUText, sizeof(UText));
+
+   if (U_FAILURE(status)) {
         return;
     }