Repository navigation
Lots of new compiler warnings: unknown warning option '-Wtrampolines' [-Wunknown-warning-option] #121026
Copy link
Copy link
Closed
Labels
OS-macbuildThe build process and cross-buildThe build process and cross-buildtype-bugAn unexpected behavior, bug, or errorAn unexpected behavior, bug, or error
Description
Bug report
I am building CPython on macos 14.5, m2 chip, gcc:
» gcc --version
Apple clang version 15.0.0 (clang-1500.3.9.4)
Target: arm64-apple-darwin23.5.0
Thread model: posix
InstalledDir: /Library/Developer/CommandLineTools/usr/bin
I have lots of warnings like
gcc -fno-strict-overflow -Wimplicit-fallthrough -fstack-protector-strong -Wtrampolines -Wsign-compare -g -Og -Wall -I/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include -I/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include -std=c11 -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wstrict-prototypes -Werror=implicit-function-declaration -fvisibility=hidden -I./Include/internal -I./Include/internal/mimalloc -I. -I./Include -I/opt/homebrew/opt/openssl/include -I/opt/homebrew/opt/openssl/include -c ./Modules/_testmultiphase.c -o Modules/_testmultiphase.o
gcc -fno-strict-overflow -Wimplicit-fallthrough -fstack-protector-strong -Wtrampolines -Wsign-compare -g -Og -Wall -I/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include -I/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include -std=c11 -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wstrict-prototypes -Werror=implicit-function-declaration -fvisibility=hidden -I./Include/internal -I./Include/internal/mimalloc -I. -I./Include -I/opt/homebrew/opt/openssl/include -I/opt/homebrew/opt/openssl/include -c ./Modules/_testsinglephase.c -o Modules/_testsinglephase.o
warning: unknown warning option '-Wtrampolines' [-Wunknown-warning-option]
warning: unknown warning option '-Wtrampolines' [-Wunknown-warning-option]
warning: unknown warning option '-Wtrampolines' [-Wunknown-warning-option]
1 warning generated.
1 warning generated.
warning: unknown warning option '-Wtrampolines' [-Wunknown-warning-option]
gcc -fno-strict-overflow -Wimplicit-fallthrough -fstack-protector-strong -Wtrampolines -Wsign-compare -g -Og -Wall -I/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include -I/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include -std=c11 -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wstrict-prototypes -Werror=implicit-function-declaration -fvisibility=hidden -I./Include/internal -I./Include/internal/mimalloc -I. -I./Include -I/opt/homebrew/opt/openssl/include -I/opt/homebrew/opt/openssl/include -c ./Modules/_testexternalinspection.c -o Modules/_testexternalinspection.o
gcc -fno-strict-overflow -Wimplicit-fallthrough -fstack-protector-strong -Wtrampolines -Wsign-compare -g -Og -Wall -I/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include -I/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include -std=c11 -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wstrict-prototypes -Werror=implicit-function-declaration -fvisibility=hidden -I./Include/internal -I./Include/internal/mimalloc -I. -I./Include -I/opt/homebrew/opt/openssl/include -I/opt/homebrew/opt/openssl/include -c ./Modules/_ctypes/_ctypes_test.c -o Modules/_ctypes/_ctypes_test.o
warning: unknown warning option '-Wtrampolines' [-Wunknown-warning-option]
warning: unknown warning option '-Wtrampolines' [-Wunknown-warning-option]
1 warning generated.
1 warning generated.
Things I've tried:
- Clean build with
make clean - Latest
main
Looks like #120975 is the cause.
Please, note that buildbots of m1 workers also failed on this PR.
Linked PRs
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
OS-macbuildThe build process and cross-buildThe build process and cross-buildtype-bugAn unexpected behavior, bug, or errorAn unexpected behavior, bug, or error
Activity
[-]Lots of new copiler warnings: `unknown warning option '-Wtrampolines' [-Wunknown-warning-option]`[/-][+]Lots of new compiler warnings: `unknown warning option '-Wtrampolines' [-Wunknown-warning-option]`[/+]corona10 commentedon Jun 26, 2024
ah this is because apple gcc is alias of clang, we should exclude macOS case. I will submit the patch today.
pythongh-121026: Fix build error of macOS due to invalid compiler option
pythongh-121026: Fix build error of macOS due to invalid compiler option
nohlson commentedon Jun 26, 2024
I was wondering if simply using the fourth argument of
AX_CHECK_COMPILE_FLAGto include-Werrorwould be a better solution than making the special case for apple gcc. That way any system compiling with clang would not include-Wtrampolinesand could remove the check for$CCthat wraps it:AX_CHECK_COMPILE_FLAG([-Wtrampolines], [BASECFLAGS="$BASECFLAGS -Wtrampolines"], [AC_MSG_WARN([-Wtrampolines not supported])], [-Werror])mokko commentedon Jun 26, 2024
Related commit?
7fb32e0
corona10 commentedon Jun 26, 2024
@nohlson You can submit the patch if you want!
nohlson commentedon Jun 26, 2024
@corona10 I will submit a patch that makes all these additions to
BASEFLAGSinclude-Werrorwhen checking for each flag.corona10 commentedon Jun 26, 2024
@nohlson Please ping me once you submit the patch, we should run build bot too :)
nohlson commentedon Jun 26, 2024
@corona10 new PR #121030
gh-121026: Include -Werror with new compiler flag checks to ensure co…
pythongh-121026: Include -Werror with new compiler flag checks to ens…
pythongh-121026: Include -Werror with new compiler flag checks to ens…
pythongh-121026: Include -Werror with new compiler flag checks to ens…