Re: [PATCH] refs: forbid clang to complain about unreachable code
From: Junio C Hamano <hidden>
Date: 2025-10-10 15:48:58
Patrick Steinhardt [off-list ref] writes:
An alternative could be to fix this at the source, e.g. like the below (untested) patch. But I don't mind this too much, especially given that this here is the only callsite of that function anyway. So please feel free to disregard. Thanks!
Indeed that is much nicer as it targets only NO_SYMLINK_HEAD case without affecting the other side of #ifdef/#else/#endif but as you say, I think this falls into "once the code is written one way, it is not worth revisiting to change it with more iterations" category. Thanks for very sharp eyes, nevertheless.
quoted hunk
diff --git a/refs/files-backend.c b/refs/files-backend.c index bb2bec3807..cb402a2a54 100644 --- a/refs/files-backend.c +++ b/refs/files-backend.c@@ -2115,7 +2115,7 @@ static int commit_ref_update(struct files_ref_store *refs, } #ifdef NO_SYMLINK_HEAD -#define create_ref_symlink(a, b) (-1) +#define create_ref_symlink(a, b) NOT_CONSTANT(-1) #else static int create_ref_symlink(struct ref_lock *lock, const char *target) {