[Groonga-commit] groonga/groonga [master] Use the do/while trick in GRN_EXPR_CREATE_FOR_QUERY().

Back to archive index

null+****@clear***** null+****@clear*****
2012年 3月 26日 (月) 19:57:06 JST


Susumu Yata	2012-03-26 19:57:06 +0900 (Mon, 26 Mar 2012)

  New Revision: 5ea4428324f9620064dc2920ba4033836273280e

  Log:
    Use the do/while trick in GRN_EXPR_CREATE_FOR_QUERY().

  Modified files:
    include/groonga.h

  Modified: include/groonga.h (+3 -2)
===================================================================
--- include/groonga.h    2012-03-26 16:25:45 +0900 (59eeea3)
+++ include/groonga.h    2012-03-26 19:57:06 +0900 (6e95739)
@@ -2488,13 +2488,14 @@ GRN_API grn_obj *grn_table_select(grn_ctx *ctx, grn_obj *table, grn_obj *expr,
 GRN_API int grn_obj_columns(grn_ctx *ctx, grn_obj *table,
                             const char *str, unsigned int str_size, grn_obj *res);
 
-#define GRN_EXPR_CREATE_FOR_QUERY(ctx,table,expr,var) \
+#define GRN_EXPR_CREATE_FOR_QUERY(ctx,table,expr,var) do {\
   if (((expr) = grn_expr_create((ctx), NULL, 0)) &&\
       ((var) = grn_expr_add_var((ctx), (expr), NULL, 0))) {\
     GRN_RECORD_INIT((var), 0, grn_obj_id((ctx), (table)));\
   } else {\
     (var) = NULL;\
-  }
+  }\
+} while (0)
 
 typedef unsigned int grn_expr_flags;
 




Groonga-commit メーリングリストの案内
Back to archive index