[PATCH/RFC v1 1/1] intialize false_but_the_compiler_does_not_know_it_
- From
tboegi@web.de <tboegi@web.de>
- Date
- May 6, 2025, 12:06 UTC
- Message-ID
- <20250506120644.186968-1-tboegi@web.de>
- In-Reply-To
- <7efc9c9c-8187-4e10-bf9d-1cbb6aeac124@web.de>
From: Torsten Bögershausen <tboegi@web.de>
Compiling/linking 82e79c63642c on an older MacOs machine leads to this:
Undefined symbols for architecture x86_64:
"_false_but_the_compiler_does_not_know_it_", referenced from:
_start_command in libgit.a(run-command.o)The linker doesn't seem to pick up the symbol: "false_but_the_compiler_does_not_know_it_"
Initializing the variable to 0 fixes the problem: The symbol type changes from 'C' to 'S' and is picked up by the linker.
Helped-by: Koji Nakamaru <koji.nakamaru@gree.net> Signed-off-by: Torsten Bögershausen <tboegi@web.de> --- compiler-tricks/not-constant.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
Koji Nakamaru: Thanks for the digging. This patch fixes the problem here - as a side note, the change in Makefile alone doesn't help.
diff --git a/compiler-tricks/not-constant.c b/compiler-tricks/not-constant.c index 1da3ffc2f5..9fb4f275b1 100644 --- a/compiler-tricks/not-constant.c +++ b/compiler-tricks/not-constant.c @@ -1,2 +1,2 @@ #include <git-compat-util.h> -int false_but_the_compiler_does_not_know_it_; +int false_but_the_compiler_does_not_know_it_ = 0;
-- 2.39.5