Bug #117299 ddl0bulk.h:236:15: error: parameter 'prebuilt' not found in the function declaration [-Werror,-Wdocumentation]
Submitted: 27 Jan 2025 11:48 Modified: 6 Jul 18:45
Reporter: Laurynas Biveinis (OCA) Email Updates:
Status: Verified Impact on me:
None 
Category:MySQL Server: Compiling Severity:S3 (Non-critical)
Version:8.4.9, 26.7.0-er OS:MacOS (15.2)
Assigned to: CPU Architecture:ARM

[27 Jan 2025 11:48] Laurynas Biveinis
Description:
-DMAINTAINER_MODE=ON and -Wdocumentation being present by default result in:
...
In file included from /Users/laurynas/vilniusdb/mysql-9.2.0/storage/innobase/ddl/ddl0bulk.cc:31:
/Users/laurynas/vilniusdb/mysql-9.2.0/storage/innobase/include/ddl0bulk.h:236:15: error: parameter 'prebuilt' not found in the function declaration [-Werror,-Wdocumentation]
  236 |   @param[in]  prebuilt  prebuilt structures from innodb table handler
      |               ^~~~~~~~

The workarounds are obvious

How to repeat:
-DCMAKE_BUILD_TYPE=Debug -DWITH_DEBUG=ON -DMYSQL_MAINTAINER_MODE=ON -DWITH_SYSTEM_LIBS=ON -DWITH_NDBCLUSTER_STORAGE_ENGINE=OFF -DFORCE_COLORED_OUTPUT=ON -DCMAKE_CXX_FLAGS=-g -DCMAKE_CXX_FLAGS_DEBUG=-g -DCMAKE_CXX_FLAGS_RELEASE=-g -O2 -DNDEBUG

Suggested fix:
Code and comment in question are

  /** Merge the sub-trees to build the cluster index.
  @param[in]  prebuilt  prebuilt structures from innodb table handler
  @return innodb error code. */
  dberr_t merge_subtrees();

The fix is trivial.
[27 Jan 2025 13:15] MySQL Verification Team
Hello Laurynas,

Thank you for the report and feedback.

regards,
Umesh
[14 May 2025 15:19] Laurynas Biveinis
There are -Wdocumentation warnings on 8.4.5 too, e.g.

In file included from /Users/laurynas/vilniusdb/mysql-8.4.5/router/src/harness/src/dynamic_loader.cc:34:
/Users/laurynas/vilniusdb/mysql-8.4.5/router/src/harness/src/../include/mysql/harness/filesystem.h:121:34: error: empty paragraph passed to '@throws' command [-Werror,-Wdocumentation]
  121 |    * @throws std::invalid_argument
      |      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
  122 |    */
[17 Oct 2025 9:58] Laurynas Biveinis
Not reproducible with 8.4.6 and XCode 26
[17 Oct 2025 10:25] Laurynas Biveinis
Not reproducible with 9.4.0 either. Leaving it for you to close in case you want to update release notes
[11 Jun 9:59] Laurynas Biveinis
Reproducible with 8.4.9
[6 Jul 18:45] Laurynas Biveinis
Numerous -Wdocumentation warnings with 26.7.0-er, the first one I get is

FAILED: [code=1] unittest/gunit/libs/scheduler/CMakeFiles/scheduler_perf_dependencies-t.dir/scheduler_perf_dependencies-t.cc.o
/usr/bin/c++ -DDATA_DIR=\"/Users/laurynas/vilniusdb/mysql-26.7.0-er/_build-debug/unittest/gunit\" -DDISABLE_PSI_COND -DDISABLE_PSI_FILE -DDISABLE_PSI_MEMORY -DDISABLE_PSI_METADATA -DDISABLE_PSI_MUTEX -DDISABLE_PSI_RWLOCK -DDISABLE_PSI_STAGE -DERRMSG_DIR=\"/Users/laurynas/vilniusdb/mysql-26.7.0-er/_build-debug/share\" -DEXTRA_CODE_FOR_UNIT_TESTING -DHAVE_TLSv13 -DLZ4_DISABLE_DEPRECATE_WARNINGS -DMYSQL_SERVER -DRAPIDJSON_HAS_STDSTRING=1 -DRAPIDJSON_NO_SIZETYPEDEFINE -DRAPIDJSON_SCHEMA_USE_INTERNALREGEX=0 -DRAPIDJSON_SCHEMA_USE_STDREGEX=1 -DSTANDALONE_LIBS_MYSQL -D_USE_MATH_DEFINES -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -I/Users/laurynas/vilniusdb/mysql-26.7.0-er/_build-debug -I/Users/laurynas/vilniusdb/mysql-26.7.0-er/_build-debug/include -I/Users/laurynas/vilniusdb/mysql-26.7.0-er -I/Users/laurynas/vilniusdb/mysql-26.7.0-er/include -I/Users/laurynas/vilniusdb/mysql-26.7.0-er/libs -isystem /Users/laurynas/vilniusdb/mysql-26.7.0-er/extra/rapidjson/include -isystem /opt/homebrew/opt/openssl/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-26.7.0-er/extra/googletest/googletest-1.17.0/googlemock -isystem /Users/laurynas/vilniusdb/mysql-26.7.0-er/extra/googletest/googletest-1.17.0/googlemock/include -isystem /Users/laurynas/vilniusdb/mysql-26.7.0-er/extra/googletest/googletest-1.17.0/googletest -isystem /Users/laurynas/vilniusdb/mysql-26.7.0-er/extra/googletest/googletest-1.17.0/googletest/include -isystem /Users/laurynas/vilniusdb/mysql-26.7.0-er/extra/unordered_dense/unordered_dense-4.4.0/include -isystem /Users/laurynas/vilniusdb/mysql-26.7.0-er/extra/zlib/zlib-1.3.2 -isystem /Users/laurynas/vilniusdb/mysql-26.7.0-er/_build-debug/extra/zlib/zlib-1.3.2 -fno-omit-frame-pointer -ftls-model=initial-exec -g -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 -Winconsistent-missing-destructor-override -Winconsistent-missing-override -Wshadow-field -Wstring-concatenation -Wdocumentation -Wno-documentation-deprecated-sync -Werror -Wno-unused-local-typedefs -DSAFE_MUTEX -DENABLED_DEBUG_SYNC -g -std=gnu++23 -arch arm64 -fPIE -fcolor-diagnostics -Wshadow-uncaptured-local -Wno-suggest-override -MD -MT unittest/gunit/libs/scheduler/CMakeFiles/scheduler_perf_dependencies-t.dir/scheduler_perf_dependencies-t.cc.o -MF unittest/gunit/libs/scheduler/CMakeFiles/scheduler_perf_dependencies-t.dir/scheduler_perf_dependencies-t.cc.o.d  --language=c++  -o unittest/gunit/libs/scheduler/CMakeFiles/scheduler_perf_dependencies-t.dir/scheduler_perf_dependencies-t.cc.o -c /Users/laurynas/vilniusdb/mysql-26.7.0-er/unittest/gunit/libs/scheduler/scheduler_perf_dependencies-t.cc
/Users/laurynas/vilniusdb/mysql-26.7.0-er/unittest/gunit/libs/scheduler/scheduler_perf_dependencies-t.cc:47:6: error: '@param' command used in a comment that is not attached to a function declaration [-Werror,-Wdocumentation]
   47 | /// @param sleep_duration_ms Simulates a task workload, this is the number of
      |      ^~~~~
/Users/laurynas/vilniusdb/mysql-26.7.0-er/unittest/gunit/libs/scheduler/scheduler_perf_dependencies-t.cc:66:12: error: parameter 'sleep_duration_ms' not found in the function declaration [-Werror,-Wdocumentation]
   66 | /// @param sleep_duration_ms task duration in ms
      |            ^~~~~~~~~~~~~~~~~
/Users/laurynas/vilniusdb/mysql-26.7.0-er/unittest/gunit/libs/scheduler/scheduler_perf_dependencies-t.cc:66:12: note: did you mean 'iterations'?
   66 | /// @param sleep_duration_ms task duration in ms
      |            ^~~~~~~~~~~~~~~~~
      |            iterations
2 errors generated.