WebAssembly / WebAssembly/wabt

wabt fails to build with GCC 15

Open
#2,628 2 comments 1 reaction 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
C++
Stars
8.1k
Forks
827
Avg merge
4d 6h
Merged PRs (30d)
18

Description

Hi,

I'm currently building wabt from source and get the following build failure with GCC 15:

2025/05/31 00:58:25 INFO In file included from /home/build/third_party/gtest/googletest/src/gtest-all.cc:42:
2025/05/31 00:58:25 INFO /home/build/third_party/gtest/googletest/src/gtest-death-test.cc: In function 'pid_t testing::internal::ExecDeathTestSpawnChild(char* const*, int)':
2025/05/31 00:58:25 INFO /home/build/third_party/gtest/googletest/src/gtest-death-test.cc:1385:26: error: 'uintptr_t' does not name a type
2025/05/31 00:58:25 INFO  1385 |         reinterpret_cast<uintptr_t>(stack_top) % kMaxStackAlignment == 0);
2025/05/31 00:58:25 INFO       |                          ^~~~~~~~~
2025/05/31 00:58:25 INFO /home/build/third_party/gtest/googletest/src/gtest-death-test.cc:308:38: note: in definition of macro 'GTEST_DEATH_TEST_CHECK_'
2025/05/31 00:58:25 INFO   308 |     if (!::testing::internal::IsTrue(expression)) { \
2025/05/31 00:58:25 INFO       |                                      ^~~~~~~~~~
2025/05/31 00:58:25 INFO /home/build/third_party/gtest/googletest/src/gtest-death-test.cc:49:1: note: 'uintptr_t' is defined in header '<cstdint>'; this is probably fixable by adding '#include <cstdint>'
2025/05/31 00:58:25 INFO    48 | # include <limits.h>
2025/05/31 00:58:25 INFO   +++ |+#include <cstdint>
2025/05/31 00:58:25 INFO    49 | 
2025/05/31 00:58:25 WARN ninja: job failed: /usr/local/bin/c++ -D__STDC_FORMAT_MACROS=1 -D__STDC_LIMIT_MACROS=1 -I/home/build/third_party/picosha2 -I/home/build/third_party/gtest/googletest -I/home/build/third_party/gtest/googletest/include -Wold-style-cast -fno-exceptions -O3 -DNDEBUG -std=c++17   -Wall -Wextra -Wno-unused-parameter -Wpointer-arith -Wuninitialized -Wimplicit-fallthrough -Wno-clobbered -Wno-maybe-uninitialized -MD -MT CMakeFiles/gtest.dir/third_party/gtest/googletest/src/gtest-all.cc.o -MF CMakeFiles/gtest.dir/third_party/gtest/googletest/src/gtest-all.cc.o.d -o CMakeFiles/gtest.dir/third_party/gtest/googletest/src/gtest-all.cc.o -c /home/build/third_party/gtest/googletest/src/gtest-all.cc
2025/05/31 00:58:30 INFO /home/build/src/tools/spectest-interp.cc: In member function 'spectest::ActionResult spectest::CommandRunner::RunAction(int, const spectest::Action*, RunVerbosity)':
2025/05/31 00:58:30 INFO /home/build/src/tools/spectest-interp.cc:1422:12: warning: variable 'ok' set but not used [-Wunused-but-set-variable]
2025/05/31 00:58:30 INFO  1422 |       auto ok = func->Call(store_, action->args, result.values, &result.trap,
2025/05/31 00:58:30 INFO       |            ^~
2025/05/31 00:58:35 WARN ninja: subcommand failed
2025/05/31 00:58:35 INFO
2025/05/31 00:58:36 ERRO failed to build package: unable to run package wabt pipeline: unable to run pipeline: unable to run pipeline: exit status 1
make[1]: *** [Makefile:157: packages/x86_64/wabt-1.0.37-r2.apk] Error 1
make[1]: Leaving directory '/home/sergio_durigan_chainguard_dev/os'
make: *** [Makefile:151: package/wabt] Error 2

The failure comes from the gtest third party module, but it's affecting wabt so I'm filing the bug here.

Thanks.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the GCC 15 failure in third_party/gtest/googletest/src/gtest-death-test.cc, built through gtest-all.cc, and inspect the headers around the reported line. Reproduce the build with GCC 15, then verify that the project builds successfully and the gtest target completes without the uintptr_t error.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
build-system, testing
Issue type
Bug
Difficulty
2/5
Estimated time
1-3 hours
Activity status
Stale
Clarity
Clearly specified
Newbie friendliness
42/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.