--- tools/toolutil/toolutil.cpp.orig 2019-10-03 07:30:54.000000000 +1000
+++ tools/toolutil/toolutil.cpp 2019-10-22 03:07:00.000000000 +1100
#include "unicode/errorcode.h"
#include "unicode/putil.h"
@@ -243,7 +245,7 @@ struct UToolMemory {
int32_t capacity, maxCapacity, size, idx;
- alignas(max_align_t) char staticArray[1];
+ alignas(std::max_align_t) char staticArray[1];
U_CAPI UToolMemory * U_EXPORT2
--- common/uarrsort.cpp.orig 2019-10-03 07:30:54.000000000 +1000
+++ common/uarrsort.cpp 2019-10-22 03:10:45.000000000 +1100
* Internal function for sorting arrays.
#include "unicode/utypes.h"
static constexpr int32_t sizeInMaxAlignTs(int32_t sizeInBytes) {
- return (sizeInBytes + sizeof(max_align_t) - 1) / sizeof(max_align_t);
+ return (sizeInBytes + sizeof(std::max_align_t) - 1) / sizeof(std::max_align_t);
/* UComparator convenience implementations ---------------------------------- */
@@ -139,7 +141,7 @@ static void
insertionSort(char *array, int32_t length, int32_t itemSize,
UComparator *cmp, const void *context, UErrorCode *pErrorCode) {
- icu::MaybeStackArray<max_align_t, sizeInMaxAlignTs(STACK_ITEM_SIZE)> v;
+ icu::MaybeStackArray<std::max_align_t, sizeInMaxAlignTs(STACK_ITEM_SIZE)> v;
if (sizeInMaxAlignTs(itemSize) > v.getCapacity() &&
v.resize(sizeInMaxAlignTs(itemSize)) == nullptr) {
*pErrorCode = U_MEMORY_ALLOCATION_ERROR;
@@ -233,7 +235,7 @@ static void
quickSort(char *array, int32_t length, int32_t itemSize,
UComparator *cmp, const void *context, UErrorCode *pErrorCode) {
/* allocate two intermediate item variables (x and w) */
- icu::MaybeStackArray<max_align_t, sizeInMaxAlignTs(STACK_ITEM_SIZE) * 2> xw;
+ icu::MaybeStackArray<std::max_align_t, sizeInMaxAlignTs(STACK_ITEM_SIZE) * 2> xw;
if(sizeInMaxAlignTs(itemSize)*2 > xw.getCapacity() &&
xw.resize(sizeInMaxAlignTs(itemSize) * 2) == nullptr) {
*pErrorCode=U_MEMORY_ALLOCATION_ERROR;
--- common/utext.cpp.orig 2019-10-03 07:30:54.000000000 +1000
+++ common/utext.cpp 2019-10-22 03:13:50.000000000 +1100
* created by: Markus W. Scherer
#include "unicode/utypes.h"
#include "unicode/ustring.h"
#include "unicode/unistr.h"
@@ -566,8 +568,8 @@ enum {
// when a provider asks for a UText to be allocated with extra storage.
+ std::max_align_t extension;
static const UText emptyText = UTEXT_INITIALIZER;
@@ -582,7 +584,7 @@ utext_setup(UText *ut, int32_t extraSpac
// We need to heap-allocate storage for the new UText
int32_t spaceRequired = sizeof(UText);
- spaceRequired = sizeof(ExtendedUText) + extraSpace - sizeof(max_align_t);
+ spaceRequired = sizeof(ExtendedUText) + extraSpace - sizeof(std::max_align_t);
ut = (UText *)uprv_malloc(spaceRequired);