From: Peter Eisentraut Date: Wed, 24 Oct 2018 23:47:59 +0000 (+0100) Subject: Improve unconstify() documentation X-Git-Tag: REL_12_BETA1~1347 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=f2898de98a5407a8b78f49866ef4931813505ca2;p=postgresql Improve unconstify() documentation Refer to expression instead of variable when appropriate. Discussion: https://www.postgresql.org/message-id/08adbe4e-38f8-2c73-55f0-591392371687%402ndquadrant.com --- diff --git a/src/include/c.h b/src/include/c.h index 4a757bc8ea..08c554aaa5 100644 --- a/src/include/c.h +++ b/src/include/c.h @@ -1122,14 +1122,14 @@ typedef union PGAlignedXLogBlock #endif /* - * Macro that allows to cast constness away from a variable, but doesn't + * Macro that allows to cast constness away from an expression, but doesn't * allow changing the underlying type. Enforcement of the latter * currently only works for gcc like compilers. * - * Please note IT IS NOT SAFE to cast constness away if the variable will ever + * Please note IT IS NOT SAFE to cast constness away if the result will ever * be modified (it would be undefined behaviour). Doing so anyway can cause * compiler misoptimizations or runtime crashes (modifying readonly memory). - * It is only safe to use when the the variable will not be modified, but API + * It is only safe to use when the the result will not be modified, but API * design or language restrictions prevent you from declaring that * (e.g. because a function returns both const and non-const variables). * @@ -1137,13 +1137,13 @@ typedef union PGAlignedXLogBlock * be nice, but not trivial, to improve that). */ #if defined(HAVE__BUILTIN_TYPES_COMPATIBLE_P) -#define unconstify(underlying_type, var) \ - (StaticAssertExpr(__builtin_types_compatible_p(__typeof(var), const underlying_type), \ +#define unconstify(underlying_type, expr) \ + (StaticAssertExpr(__builtin_types_compatible_p(__typeof(expr), const underlying_type), \ "wrong cast"), \ - (underlying_type) (var)) + (underlying_type) (expr)) #else -#define unconstify(underlying_type, var) \ - ((underlying_type) (var)) +#define unconstify(underlying_type, expr) \ + ((underlying_type) (expr)) #endif /* ----------------------------------------------------------------