Bug #120650 -Wunused-but-set-variable failing build

Submitted: 9 Jun 19:25
Reporter: Laurynas Biveinis (OCA) Email Updates:
Status: Open Impact on me:
None 
Category:MySQL Server: Compiling Severity:S3 (Non-critical)
Version:8.0.46 OS:MacOS (26.5.1)
Assigned to: CPU Architecture:ARM

[9 Jun 19:25] Laurynas Biveinis
Description:
FAILED: [code=1] storage/innobase/CMakeFiles/innobase.dir/fts/fts0pars.cc.o
/opt/homebrew/opt/llvm@18/bin/clang++ -DBOOST_NO_CXX98_FUNCTION_BASE -DCOMPILER_HINTS -DHAVE_IB_GCC_ATOMIC_THREAD_FENCE=1 -DHAVE_IB_GCC_SYNC_SYNCHRONISE=1 -DHAVE_LZ4=1 -DHAVE_NANOSLEEP=1 -DHAVE_TLSv13 -DLOG_SUBSYSTEM_TAG=\"InnoDB\" -DLZ4_DISABLE_DEPRECATE_WARNINGS -DMUTEX_EVENT -DMYSQL_SERVER -DPFS_DIRECT_CALL -DRAPIDJSON_HAS_STDSTRING=1 -DRAPIDJSON_NO_SIZETYPEDEFINE -DRAPIDJSON_SCHEMA_USE_INTERNALREGEX=0 -DRAPIDJSON_SCHEMA_USE_STDREGEX=1 -D_USE_MATH_DEFINES -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -I/Users/laurynas/vilniusdb/mysql-8.0.46/_build-llvm-18-debug -I/Users/laurynas/vilniusdb/mysql-8.0.46/_build-llvm-18-debug/include -I/Users/laurynas/vilniusdb/mysql-8.0.46 -I/Users/laurynas/vilniusdb/mysql-8.0.46/include -I/Users/laurynas/vilniusdb/mysql-8.0.46/storage/innobase -I/Users/laurynas/vilniusdb/mysql-8.0.46/storage/innobase/include -I/Users/laurynas/vilniusdb/mysql-8.0.46/storage/innobase/handler -I/Users/laurynas/vilniusdb/mysql-8.0.46/sql -I/Users/laurynas/vilniusdb/mysql-8.0.46/sql/auth -isystem /Users/laurynas/vilniusdb/mysql-8.0.46/extra/rapidjson/include -isystem /opt/homebrew/opt/openssl@1.1/include -isystem /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/editline -isystem /opt/homebrew/include -isystem /Users/laurynas/vilniusdb/mysql-8.0.46/extra/zlib/zlib-1.3.2 -isystem /Users/laurynas/vilniusdb/mysql-8.0.46/_build-llvm-18-debug/extra/zlib/zlib-1.3.2 -isystem /opt/homebrew/opt/icu4c/include -isystem /Users/laurynas/vilniusdb/mysql-8.0.46/extra/unordered_dense/unordered_dense-4.4.0/include -isystem /Users/laurynas/vilniusdb/mysql-8.0.46/plugin/x/client -isystem /Users/laurynas/vilniusdb/mysql-8.0.46/_build-llvm-18-debug/plugin/x/generated/protobuf_lite -isystem /Users/laurynas/vilniusdb/mysql-8.0.46/_build-llvm-18-debug/plugin/x/generated -std=c++17 -fno-omit-frame-pointer -ftls-model=initial-exec -Wno-invalid-specialization -g -Wno-uninitialized-const-pointer -Wno-conditional-uninitialized -Wno-unnecessary-virtual-specifier -Wno-nonnull -Wno-unknown-warning-option -Wall -Wextra -Wformat-security -Wvla -Wundef -Wmissing-format-attribute -Woverloaded-virtual -Wcast-qual -Wno-null-conversion -Wno-unused-private-field -Wconditional-uninitialized -Wdeprecated -Wno-deprecated-declarations -Wno-shorten-64-to-32 -Wextra-semi -Wheader-hygiene -Wnon-virtual-dtor -Wundefined-reinterpret-cast -Wrange-loop-analysis -Werror -Wno-unused-parameter -Wno-cast-qual -DSAFE_MUTEX -DENABLED_DEBUG_SYNC -Wno-invalid-specialization -g -Wno-uninitialized-const-pointer -Wno-conditional-uninitialized -Wno-unnecessary-virtual-specifier -Wno-nonnull -Wno-unknown-warning-option -DUNIV_DEBUG -arch arm64 -fPIC -fcolor-diagnostics -MD -MT storage/innobase/CMakeFiles/innobase.dir/fts/fts0pars.cc.o -MF storage/innobase/CMakeFiles/innobase.dir/fts/fts0pars.cc.o.d  --language=c++  -o storage/innobase/CMakeFiles/innobase.dir/fts/fts0pars.cc.o -c /Users/laurynas/vilniusdb/mysql-8.0.46/storage/innobase/fts/fts0pars.cc
fts0pars.cc:1177:9: error: variable 'ftsnerrs' set but not used [-Werror,-Wunused-but-set-variable]
 1177 |     int yynerrs;
      |         ^
/Users/laurynas/vilniusdb/mysql-8.0.46/storage/innobase/fts/fts0pars.cc:71:25: note: expanded from macro 'yynerrs'
   71 | #define yynerrs         ftsnerrs
      |                         ^
1 error generated.

If adding -Wno-unused-but-set-variable to C++ flags, then

[1866/3836] Building C object libmysql/CMakeFiles/libmysql_api_test.dir/api_test.c.o
FAILED: [code=1] libmysql/CMakeFiles/libmysql_api_test.dir/api_test.c.o
/opt/homebrew/opt/llvm@18/bin/clang -DBOOST_NO_CXX98_FUNCTION_BASE -DHAVE_TLSv13 -DLZ4_DISABLE_DEPRECATE_WARNINGS -D_USE_MATH_DEFINES -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -I/Users/laurynas/vilniusdb/mysql-8.0.46/_build-llvm-18-debug -I/Users/laurynas/vilniusdb/mysql-8.0.46/_build-llvm-18-debug/include -I/Users/laurynas/vilniusdb/mysql-8.0.46 -I/Users/laurynas/vilniusdb/mysql-8.0.46/include -isystem /Users/laurynas/vilniusdb/mysql-8.0.46/extra/rapidjson/include -isystem /opt/homebrew/opt/openssl@1.1/include -isystem /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/editline -isystem /opt/homebrew/include -fno-omit-frame-pointer -ftls-model=initial-exec  -Wall -Wextra -Wformat-security -Wvla -Wundef -Wmissing-format-attribute -Wwrite-strings -Wconditional-uninitialized -Wextra-semi -Wmissing-noreturn -Wunreachable-code-break -Wunreachable-code-return -Werror -DSAFE_MUTEX -DENABLED_DEBUG_SYNC -g -arch arm64 -fPIE   -D CLIENT_PROTOCOL_TRACING -fcolor-diagnostics -Wshadow-uncaptured-local -Wno-missing-profile -MD -MT libmysql/CMakeFiles/libmysql_api_test.dir/api_test.c.o -MF libmysql/CMakeFiles/libmysql_api_test.dir/api_test.c.o.d -o libmysql/CMakeFiles/libmysql_api_test.dir/api_test.c.o -c /Users/laurynas/vilniusdb/mysql-8.0.46/_build-llvm-18-debug/libmysql/api_test.c
error: unknown warning option '-Wno-missing-profile' [-Werror,-Wunknown-warning-option]

Adding -Wno-unknown-warning-option to CMAKE_C_FLAGS allows build to complete

How to repeat:
CMake options 

-DCMAKE_EXPORT_COMPILE_COMMANDS=ON -DFORCE_UNSUPPORTED_COMPILER=ON -DCMAKE_BUILD_TYPE=Debug -DWITH_DEBUG=ON -DMYSQL_MAINTAINER_MODE=ON -DWITH_SYSTEM_LIBS=ON -DWITH_NDBCLUSTER_STORAGE_ENGINE=OFF -DDOWNLOAD_BOOST=ON -DWITH_BOOST=~/vilniusdb/mysql-boost/ -DFORCE_COLORED_OUTPUT=ON -DCMAKE_CXX_FLAGS=-Wno-invalid-specialization -g -Wno-uninitialized-const-pointer -Wno-conditional-uninitialized -Wno-unnecessary-virtual-specifier -Wno-nonnull -Wno-unknown-warning-option -DCMAKE_CXX_FLAGS_DEBUG=-Wno-invalid-specialization -g -Wno-uninitialized-const-pointer -Wno-conditional-uninitialized -Wno-unnecessary-virtual-specifier -Wno-nonnull -Wno-unknown-warning-option -DCMAKE_CXX_FLAGS_RELEASE=-O2 -DNDEBUG -Wno-invalid-specialization -g -Wno-uninitialized-const-pointer -Wno-conditional-uninitialized -Wno-unnecessary-virtual-specifier -Wno-nonnull -Wno-unknown-warning-option

(these include workarounds for bug 119238, bug 119329, bug 119242, bug 119246)

Portions of this website are copyright © 2001, 2002 The PHP Group

Page generated in 0.052 sec. using MySQL 8.4.7-u6-cloud

Timestamp references displayed by the system are UTC.
Content reproduced on this site is the property of the respective copyright holders.
It is not reviewed in advance by Oracle and does not necessarily represent the opinion of Oracle or any other party.