1
0
mirror of https://github.com/postgres/postgres.git synced 2025-06-23 14:01:44 +03:00

Get rid of trailing semicolons in C macro definitions.

Writing a trailing semicolon in a macro is almost never the right thing,
because you almost always want to write a semicolon after each macro
call instead.  (Even if there was some reason to prefer not to, pgindent
would probably make a hash of code formatted that way; so within PG the
rule should basically be "don't do it".)  Thus, if we have a semi inside
the macro, the compiler sees "something;;".  Much of the time the extra
empty statement is harmless, but it could lead to mysterious syntax
errors at call sites.  In perhaps an overabundance of neatnik-ism, let's
run around and get rid of the excess semicolons whereever possible.

The only thing worse than a mysterious syntax error is a mysterious
syntax error that only happens in the back branches; therefore,
backpatch these changes where relevant, which is most of them because
most of these mistakes are old.  (The lack of reported problems shows
that this is largely a hypothetical issue, but still, it could bite
us in some future patch.)

John Naylor and Tom Lane

Discussion: https://postgr.es/m/CACPNZCs0qWTqJ2QUSGJ07B7uvAvzMb-KbG2q+oo+J3tsWN5cqw@mail.gmail.com
This commit is contained in:
Tom Lane
2020-05-01 17:28:00 -04:00
parent d66935448f
commit 0da06d9faf
13 changed files with 28 additions and 23 deletions

View File

@ -341,12 +341,13 @@ gbt_ts_union(PG_FUNCTION_ARGS)
}
#define penalty_check_max_float(val) do { \
#define penalty_check_max_float(val) \
do { \
if ( val > FLT_MAX ) \
val = FLT_MAX; \
if ( val < -FLT_MAX ) \
val = -FLT_MAX; \
} while(false);
} while (0)
Datum

View File

@ -74,7 +74,7 @@ typedef struct
(*(result)) += (float) ( ((double)(tmp)) / ( (double)(tmp) + ( ((double)(oupper))*0.49F - ((double)(olower))*0.49F ) ) ); \
(*(result)) *= (FLT_MAX / (((GISTENTRY *) PG_GETARG_POINTER(0))->rel->rd_att->natts + 1)); \
} \
} while (0);
} while (0)
/*

View File

@ -48,7 +48,7 @@ typedef char trgm[3];
*(((char*)(a))+0) = *(((char*)(b))+0); \
*(((char*)(a))+1) = *(((char*)(b))+1); \
*(((char*)(a))+2) = *(((char*)(b))+2); \
} while(0);
} while(0)
#ifdef KEEPONLYALNUM
#define ISWORDCHR(c) (t_isalpha(c) || t_isdigit(c))

View File

@ -469,7 +469,7 @@ BF_swap(BF_word *x, int count)
tmp3 ^= tmp2; \
(R) ^= data.ctx.P[(N) + 1]; \
tmp3 += tmp1; \
(R) ^= tmp3;
(R) ^= tmp3
#else
/* Architectures with no complicated addressing modes supported */
#define BF_INDEX(S, i) \
@ -490,7 +490,7 @@ BF_swap(BF_word *x, int count)
tmp3 ^= tmp2; \
(R) ^= data.ctx.P[(N) + 1]; \
tmp3 += tmp1; \
(R) ^= tmp3;
(R) ^= tmp3
#endif
/*
@ -516,17 +516,18 @@ BF_swap(BF_word *x, int count)
BF_ROUND(R, L, 15); \
tmp4 = R; \
R = L; \
L = tmp4 ^ data.ctx.P[BF_N + 1];
L = tmp4 ^ data.ctx.P[BF_N + 1]
#if BF_ASM
extern void _BF_body_r(BF_ctx *ctx);
#define BF_body() \
_BF_body_r(&data.ctx);
_BF_body_r(&data.ctx)
#else
#define BF_body() \
do { \
L = R = 0; \
ptr = data.ctx.P; \
do { \
@ -542,7 +543,8 @@ extern void _BF_body_r(BF_ctx *ctx);
BF_ENCRYPT; \
*(ptr - 2) = L; \
*(ptr - 1) = R; \
} while (ptr < &data.ctx.S[3][0xFF]);
} while (ptr < &data.ctx.S[3][0xFF]); \
} while (0)
#endif
static void