summaryrefslogtreecommitdiff
path: root/external/icu
diff options
context:
space:
mode:
authorStephan Bergmann <sbergman@redhat.com>2015-01-07 08:39:53 +0100
committerStephan Bergmann <sbergman@redhat.com>2015-01-07 08:39:53 +0100
commit934d32a930047d0f221493f8974f1a2682f6779d (patch)
treeb8e39e14abb82b8c87049530ba1e8f44296f7af9 /external/icu
parenta9c2d1c626c52ae595efc1000b0682ba6354fc54 (diff)
external/icu: Work around -fsanitize=shift
Change-Id: I0ca31fc36b14d433e9276401c952959a46994c91
Diffstat (limited to 'external/icu')
-rw-r--r--external/icu/icu-ubsan.patch.011
1 files changed, 11 insertions, 0 deletions
diff --git a/external/icu/icu-ubsan.patch.0 b/external/icu/icu-ubsan.patch.0
index c1d229c0059f..57296618f23c 100644
--- a/external/icu/icu-ubsan.patch.0
+++ b/external/icu/icu-ubsan.patch.0
@@ -49,6 +49,17 @@
table->fNumStates = fDStates->size();
table->fFlags = 0;
if (fRB->fLookAheadHardBreak) {
+--- source/common/ubidiimp.h
++++ source/common/ubidiimp.h
+@@ -198,7 +198,7 @@
+ /* in a Run, logicalStart will get this bit set if the run level is odd */
+ #define INDEX_ODD_BIT (1UL<<31)
+
+-#define MAKE_INDEX_ODD_PAIR(index, level) ((index)|((int32_t)(level)<<31))
++#define MAKE_INDEX_ODD_PAIR(index, level) ((index)|((uint32_t)(level)<<31))
+ #define ADD_ODD_BIT_FROM_LEVEL(x, level) ((x)|=((int32_t)(level)<<31))
+ #define REMOVE_ODD_BIT(x) ((x)&=~INDEX_ODD_BIT)
+
--- source/common/ucharstriebuilder.cpp
+++ source/common/ucharstriebuilder.cpp
@@ -285,7 +285,7 @@