Index: icu4c/source/common/rbbidata.h |
=================================================================== |
--- icu4c/source/common/rbbidata.h (revision 40724) |
+++ icu4c/source/common/rbbidata.h (working copy) |
@@ -116,9 +116,10 @@ |
/* StatusTable of the set of matching */ |
/* tags (rule status values) */ |
int16_t fReserved; |
- uint16_t fNextState[2]; /* Next State, indexed by char category. */ |
- /* This array does not have two elements */ |
- /* Array Size is actually fData->fHeader->fCatCount */ |
+ uint16_t fNextState[1]; /* Next State, indexed by char category. */ |
+ /* Variable-length array declared with length 1 */ |
+ /* to disable bounds checkers. */ |
+ /* Array Size is actually fData->fHeader->fCatCount*/ |
/* CAUTION: see RBBITableBuilder::getTableSize() */ |
/* before changing anything here. */ |
}; |
@@ -129,7 +130,9 @@ |
uint32_t fRowLen; /* Length of a state table row, in bytes. */ |
uint32_t fFlags; /* Option Flags for this state table */ |
uint32_t fReserved; /* reserved */ |
- char fTableData[4]; /* First RBBIStateTableRow begins here. */ |
+ char fTableData[1]; /* First RBBIStateTableRow begins here. */ |
+ /* Variable-length array declared with length 1 */ |
+ /* to disable bounds checkers. */ |
/* (making it char[] simplifies ugly address */ |
/* arithmetic for indexing variable length rows.) */ |
}; |