Skip to content

Commit f705503

Browse files
committed
Suppress variable-set-but-not-used warning from clang 13.
In the normal configuration where GEQO_DEBUG isn't defined, recent clang versions have started to complain that geqo_main.c accumulates the edge_failures count but never does anything with it. As a minimal back-patchable fix, insert a void cast to silence this warning. (I'd speculated about ripping out the GEQO_DEBUG logic altogether, but I don't think we'd wish to back-patch that.) Per recently-established project policy, this is a candidate for back-patching into out-of-support branches: it suppresses an annoying compiler warning but changes no behavior. Hence, back-patch all the way to 9.2. Discussion: https://postgr.es/m/CA+hUKGLTSZQwES8VNPmWO9AO0wSeLt36OCPDAZTccT1h7Q7kTQ@mail.gmail.com
1 parent 020bfc8 commit f705503

File tree

1 file changed

+6
-1
lines changed

1 file changed

+6
-1
lines changed

src/backend/optimizer/geqo/geqo_main.c

+6-1
Original file line numberDiff line numberDiff line change
@@ -227,12 +227,17 @@ geqo(PlannerInfo *root, int number_of_rels, List *initial_rels)
227227
}
228228

229229

230-
#if defined(ERX) && defined(GEQO_DEBUG)
230+
#if defined(ERX)
231+
#if defined(GEQO_DEBUG)
231232
if (edge_failures != 0)
232233
elog(LOG, "[GEQO] failures: %d, average: %d",
233234
edge_failures, (int) number_generations / edge_failures);
234235
else
235236
elog(LOG, "[GEQO] no edge failures detected");
237+
#else
238+
/* suppress variable-set-but-not-used warnings from some compilers */
239+
(void) edge_failures;
240+
#endif
236241
#endif
237242

238243
#if defined(CX) && defined(GEQO_DEBUG)

0 commit comments

Comments
 (0)