diff src/screen.c @ 13632:cec5137d5332 v8.0.1688

patch 8.0.1688: some macros are used without a semicolon commit https://github.com/vim/vim/commit/6f4700233fd925fe122b851f937929fb5e5da707 Author: Bram Moolenaar <Bram@vim.org> Date: Tue Apr 10 18:47:20 2018 +0200 patch 8.0.1688: some macros are used without a semicolon Problem: Some macros are used without a semicolon, causing auto-indent to be wrong. Solution: Use the do-while(0) trick. (Ozaki Kiichi, closes #2729)
author Christian Brabandt <cb@256bit.org>
date Tue, 10 Apr 2018 19:00:07 +0200
parents 9b09f6e470e0
children 57da3d873f20
line wrap: on
line diff
--- a/src/screen.c
+++ b/src/screen.c
@@ -2705,15 +2705,21 @@ fold_line(
     }
 
 #ifdef FEAT_RIGHTLEFT
-# define RL_MEMSET(p, v, l)  if (wp->w_p_rl) \
-				for (ri = 0; ri < l; ++ri) \
-				   ScreenAttrs[off + (wp->w_width - (p) - (l)) + ri] = v; \
-			     else \
-				for (ri = 0; ri < l; ++ri) \
-				   ScreenAttrs[off + (p) + ri] = v
+# define RL_MEMSET(p, v, l) \
+    do { \
+	if (wp->w_p_rl) \
+	    for (ri = 0; ri < l; ++ri) \
+	       ScreenAttrs[off + (wp->w_width - (p) - (l)) + ri] = v; \
+	 else \
+	    for (ri = 0; ri < l; ++ri) \
+	       ScreenAttrs[off + (p) + ri] = v; \
+    } while (0)
 #else
-# define RL_MEMSET(p, v, l)   for (ri = 0; ri < l; ++ri) \
-				 ScreenAttrs[off + (p) + ri] = v
+# define RL_MEMSET(p, v, l) \
+    do { \
+	for (ri = 0; ri < l; ++ri) \
+	    ScreenAttrs[off + (p) + ri] = v; \
+    } while (0)
 #endif
 
     /* Set all attributes of the 'number' or 'relativenumber' column and the