aboutsummaryrefslogtreecommitdiff
path: root/libobjc
diff options
context:
space:
mode:
authorTom de Vries <tom@codesourcery.com>2017-11-23 15:03:29 +0000
committerTom de Vries <vries@gcc.gnu.org>2017-11-23 15:03:29 +0000
commit7f339ecbd3d80cad057da964ed9b85430c38cffe (patch)
tree1fa3ac0e5738524d4221440d1b7d8e276940dcb9 /libobjc
parent77abf71fdf08dcb639aa022744a212ffb60d7278 (diff)
downloadgcc-7f339ecbd3d80cad057da964ed9b85430c38cffe.zip
gcc-7f339ecbd3d80cad057da964ed9b85430c38cffe.tar.gz
gcc-7f339ecbd3d80cad057da964ed9b85430c38cffe.tar.bz2
[libobjc] Wrap CLASS_TABLE_HASH in do {} while (0)
2017-11-23 Tom de Vries <tom@codesourcery.com> * class.c (CLASS_TABLE_HASH): Wrap in "do {} while (0)". From-SVN: r255099
Diffstat (limited to 'libobjc')
-rw-r--r--libobjc/ChangeLog4
-rw-r--r--libobjc/class.c18
2 files changed, 14 insertions, 8 deletions
diff --git a/libobjc/ChangeLog b/libobjc/ChangeLog
index 2f9361f..e1d32b6 100644
--- a/libobjc/ChangeLog
+++ b/libobjc/ChangeLog
@@ -1,3 +1,7 @@
+2017-11-23 Tom de Vries <tom@codesourcery.com>
+
+ * class.c (CLASS_TABLE_HASH): Wrap in "do {} while (0)".
+
2017-11-17 Igor Tsimbalist <igor.v.tsimbalist@intel.com>
* Makefile.in: Regenerate.
diff --git a/libobjc/class.c b/libobjc/class.c
index 53fb5fe..7a8f832 100644
--- a/libobjc/class.c
+++ b/libobjc/class.c
@@ -153,14 +153,16 @@ static objc_mutex_t __class_table_lock = NULL;
string, and HASH the computed hash of the string; CLASS_NAME is
untouched. */
-#define CLASS_TABLE_HASH(INDEX, HASH, CLASS_NAME) \
- HASH = 0; \
- for (INDEX = 0; CLASS_NAME[INDEX] != '\0'; INDEX++) \
- { \
- HASH = (HASH << 4) ^ (HASH >> 28) ^ CLASS_NAME[INDEX]; \
- } \
- \
- HASH = (HASH ^ (HASH >> 10) ^ (HASH >> 20)) & CLASS_TABLE_MASK;
+#define CLASS_TABLE_HASH(INDEX, HASH, CLASS_NAME) \
+ do { \
+ HASH = 0; \
+ for (INDEX = 0; CLASS_NAME[INDEX] != '\0'; INDEX++) \
+ { \
+ HASH = (HASH << 4) ^ (HASH >> 28) ^ CLASS_NAME[INDEX]; \
+ } \
+ \
+ HASH = (HASH ^ (HASH >> 10) ^ (HASH >> 20)) & CLASS_TABLE_MASK; \
+ } while (0)
/* Setup the table. */
static void