diff options
Diffstat (limited to 'lexlib')
| -rw-r--r-- | lexlib/CharacterCategory.cxx | 3 | ||||
| -rw-r--r-- | lexlib/StringCopy.h | 3 | ||||
| -rw-r--r-- | lexlib/WordList.cxx | 3 | 
3 files changed, 7 insertions, 2 deletions
| diff --git a/lexlib/CharacterCategory.cxx b/lexlib/CharacterCategory.cxx index a83776028..765469a3f 100644 --- a/lexlib/CharacterCategory.cxx +++ b/lexlib/CharacterCategory.cxx @@ -9,6 +9,7 @@  #include <algorithm> +#include "StringCopy.h"  #include "CharacterCategory.h"  #ifdef SCI_NAMESPACE @@ -3275,7 +3276,7 @@ const int catRanges[] = {  const int maxUnicode = 0x10ffff;  const int maskCategory = 0x1F; -const int nRanges = sizeof(catRanges) / sizeof(catRanges[0]); +const int nRanges = ELEMENTS(catRanges);  } diff --git a/lexlib/StringCopy.h b/lexlib/StringCopy.h index caca49911..1812b4e35 100644 --- a/lexlib/StringCopy.h +++ b/lexlib/StringCopy.h @@ -1,6 +1,7 @@  // Scintilla source code edit control  /** @file StringCopy.h   ** Safe string copy function which always NUL terminates. + ** ELEMENTS macro for determining array sizes.   **/  // Copyright 2013 by Neil Hodgson <neilh@scintilla.org>  // The License.txt file describes the conditions under which this software may be distributed. @@ -26,6 +27,8 @@ void StringCopy(T (&dest)[count], const T* source) {  	dest[count-1] = 0;  } +#define ELEMENTS(a) (sizeof(a) / sizeof(a[0])) +  #ifdef SCI_NAMESPACE  }  #endif diff --git a/lexlib/WordList.cxx b/lexlib/WordList.cxx index e789c0eaf..10b6fe349 100644 --- a/lexlib/WordList.cxx +++ b/lexlib/WordList.cxx @@ -13,6 +13,7 @@  #include <algorithm> +#include "StringCopy.h"  #include "WordList.h"  #ifdef SCI_NAMESPACE @@ -131,7 +132,7 @@ void WordList::Set(const char *s) {  #else  	SortWordList(words, len);  #endif -	for (unsigned int k = 0; k < (sizeof(starts) / sizeof(starts[0])); k++) +	for (unsigned int k = 0; k < ELEMENTS(starts); k++)  		starts[k] = -1;  	for (int l = len - 1; l >= 0; l--) {  		unsigned char indexChar = words[l][0]; | 
