summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStephan Bergmann <sbergman@redhat.com>2015-01-09 10:20:18 +0100
committerStephan Bergmann <sbergman@redhat.com>2015-01-09 10:20:43 +0100
commit89b5423c01ab4e4f05f8d73fe7826f64197abe41 (patch)
treedb53699c47549e92701c21d0e8e81e6543c3acf4
parent4280ff6cb5696f33a425034130875c0a89be5aa5 (diff)
external/icu: Work around -fsanitize=shift
Change-Id: I17936ae2e37520abaa7dd31a5bb9aec6300ea021
-rw-r--r--external/icu/icu-ubsan.patch.06
1 files changed, 4 insertions, 2 deletions
diff --git a/external/icu/icu-ubsan.patch.0 b/external/icu/icu-ubsan.patch.0
index e5d8ed6b3514..25efb5fec728 100644
--- a/external/icu/icu-ubsan.patch.0
+++ b/external/icu/icu-ubsan.patch.0
@@ -51,15 +51,17 @@
if (fRB->fLookAheadHardBreak) {
--- source/common/ubidiimp.h
+++ source/common/ubidiimp.h
-@@ -198,7 +198,7 @@
+@@ -198,8 +198,8 @@
/* 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 ADD_ODD_BIT_FROM_LEVEL(x, level) ((x)|=((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 ADD_ODD_BIT_FROM_LEVEL(x, level) ((x)|=((uint32_t)(level)<<31))
#define REMOVE_ODD_BIT(x) ((x)&=~INDEX_ODD_BIT)
+ #define GET_INDEX(x) ((x)&~INDEX_ODD_BIT)
--- source/common/ucharstriebuilder.cpp
+++ source/common/ucharstriebuilder.cpp
@@ -285,7 +285,7 @@