From 2155ae5979f8f56dcf585fff2eaa1788bced89f9 Mon Sep 17 00:00:00 2001 From: Sutou Kouhei Date: Sat, 27 Jun 2020 07:10:37 +0900 Subject: [PATCH] Use "do { } while (0)" to ensure requiring ";" --- ext/fiddle/function.c | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/ext/fiddle/function.c b/ext/fiddle/function.c index b624255f..95648d3c 100644 --- a/ext/fiddle/function.c +++ b/ext/fiddle/function.c @@ -19,14 +19,14 @@ VALUE cFiddleFunction; #define Check_Max_Args_Long(name, len) \ Check_Max_Args_(name, len, "l") #define Check_Max_Args_(name, len, fmt) \ - if ((size_t)(len) < MAX_ARGS) { \ - /* OK */ \ - } \ - else { \ - rb_raise(rb_eTypeError, \ - name" is so large that it can cause integer overflow (%"fmt"d)", \ - (len)); \ - } + do { \ + if ((size_t)(len) >= MAX_ARGS) { \ + rb_raise(rb_eTypeError, \ + "%s is so large " \ + "that it can cause integer overflow (%"fmt"d)", \ + (name), (len)); \ + } \ + } while (0) static void deallocate(void *p)