]> git.ipfire.org Git - thirdparty/postgresql.git/commitdiff
Fix additional fallthrough warnings from clang
authorPeter Eisentraut <peter@eisentraut.org>
Mon, 23 Feb 2026 06:37:50 +0000 (07:37 +0100)
committerPeter Eisentraut <peter@eisentraut.org>
Mon, 23 Feb 2026 06:40:19 +0000 (07:40 +0100)
Clang warns if falling through to a case or default label that is
immediately followed by break, but GCC does
not (https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91432).  (MSVC also
warns about the equivalent code in C++.)

This is in preparation for enabling fallthrough warnings on Clang.

Reviewed-by: Jelte Fennema-Nio <postgres@jeltef.nl>
Discussion: https://www.postgresql.org/message-id/flat/76a8efcd-925a-4eaf-bdd1-d972cd1a32ff%40eisentraut.org

contrib/isn/isn.c
contrib/pg_overexplain/pg_overexplain.c
src/backend/access/transam/xlogrecovery.c
src/backend/replication/logical/decode.c
src/backend/tcop/dest.c
src/backend/utils/mb/conversion_procs/euc_tw_and_big5/big5.c
src/pl/plpgsql/src/pl_comp.c
src/tools/pg_bsd_indent/indent.c

index 00bb814c5266a75ec979ed2ba1d9b9ed07355bbb..bbe4344e6adb0b4665d8ece1534e9a1d35262fd0 100644 (file)
@@ -837,6 +837,7 @@ string2ean(const char *str, struct Node *escontext, ean13 *result,
                case UPC:
                        buf[2] = '0';
                        valid = (valid && ((rcheck = checkdig(buf + 2, 13)) == check || magic));
+                       break;
                default:
                        break;
        }
index 36e6aac0e2c54544b683546634168870871a34df..964e35240db0b19888f6c55dc0f35a384c3f7d5b 100644 (file)
@@ -258,6 +258,7 @@ overexplain_per_node_hook(PlanState *planstate, List *ancestors,
                                        overexplain_bitmapset("RTIs",
                                                                                  ((Result *) plan)->relids,
                                                                                  es);
+                               break;
                        default:
                                break;
                }
index fc79469344226d7d4eb89e30c3f935e2b630408c..38387a522918532fccd8c608cea95efda23b3648 100644 (file)
@@ -1895,6 +1895,7 @@ PerformWalRecovery(void)
                                        recoveryPausesHere(true);
 
                                        /* drop into promote */
+                                       pg_fallthrough;
 
                                case RECOVERY_TARGET_ACTION_PROMOTE:
                                        break;
index 32af124961075f9a987844b40f72449c44f764ea..21f03864a666a4bfa9c309ee31e3ae8d5fad02f2 100644 (file)
@@ -430,9 +430,8 @@ heap2_decode(LogicalDecodingContext *ctx, XLogRecordBuffer *buf)
 
                                xlrec = (xl_heap_new_cid *) XLogRecGetData(buf->record);
                                SnapBuildProcessNewCid(builder, xid, buf->origptr, xlrec);
-
-                               break;
                        }
+                       break;
                case XLOG_HEAP2_REWRITE:
 
                        /*
index 931cc563ba613ea72aafdc9ea7f9de102a34cd70..fb163930c896b4d9ff62a725726fa4aa55645713 100644 (file)
@@ -180,6 +180,7 @@ EndCommand(const QueryCompletion *qc, CommandDest dest, bool force_undecorated_o
                        len = BuildQueryCompletionString(completionTag, qc,
                                                                                         force_undecorated_output);
                        pq_putmessage(PqMsg_CommandComplete, completionTag, len + 1);
+                       break;
 
                case DestNone:
                case DestDebug:
index 68f76aa8cb82b5bb4d2ebd2b124970437806b960..21d55523aceeefef40022a6a9a4d55b603685b68 100644 (file)
@@ -370,6 +370,7 @@ CNStoBIG5(unsigned short cns, unsigned char lc)
                                if (b1c4[i][1] == cns)
                                        return b1c4[i][0];
                        }
+                       break;
                default:
                        break;
        }
index 7d648c941c06d8b01ece4608a74c15363b8e2c6a..5ecc7766757e98c6867933610e463baa6632d487 100644 (file)
@@ -2333,6 +2333,7 @@ plpgsql_add_initdatums(int **varnos)
                                        case PLPGSQL_DTYPE_VAR:
                                        case PLPGSQL_DTYPE_REC:
                                                (*varnos)[n++] = plpgsql_Datums[i]->dno;
+                                               break;
 
                                        default:
                                                break;
index 6e550ff310fa29ed6b20deb1e0c96c269cff48f7..421592db92816b2e7f203080b50b644ce0fdfced 100644 (file)
@@ -296,6 +296,7 @@ main(int argc, char **argv)
                 * done earlier.
                 */
                force_nl = false;
+               break;
            case form_feed:
                break;
            case comment: