Skip to content

glaze: fix broken build - #15936

Open
xingyaner wants to merge 1 commit into
google:masterfrom
xingyaner:fix-glaze
Open

glaze: fix broken build#15936
xingyaner wants to merge 1 commit into
google:masterfrom
xingyaner:fix-glaze

Conversation

@xingyaner

Copy link
Copy Markdown
Contributor

The glaze fuzzer build failed because of upstream commit 4cbddc3e, which added fuzzing/msgpack_roundtrip_string.cpp: this file serializes std::string via glz::write_msgpack, and clang-22 (snapshot cb2f0d0a) in the oss-fuzz base image segfaults when compiling that call with -std=c++23, hitting deep recursion and stack exhaustion in Sema's partial ordering of constrained partial specializations (a bare glz::write_msgpack(std::string, buffer) call reproduces the crash; it happens at all optimization levels from -O0 to -O3, cannot be worked around by increasing the stack, and is confirmed as a deterministic compiler bug). Only this file is affected; the other 18 fuzzers compile fine.

The fix patches fuzzing/ossfuzz.sh in build.sh to exclude msgpack_roundtrip_string.cpp from the oss-fuzz build, a targeted workaround for the clang-22 compiler bug that is fully self-contained in the oss-fuzz project config with no upstream changes, while the remaining msgpack fuzzers (reflection/roundtrip_int/roundtrip_floating) keep msgpack coverage with minimal loss.

@github-actions

Copy link
Copy Markdown

xingyaner is a new contributor to projects/glaze. The PR must be approved by known contributors before it can be merged. The past contributors are: hunsche, pauldreik

@DavidKorczynski DavidKorczynski left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

could you land this change in the upstream repository?

@xingyaner

Copy link
Copy Markdown
Contributor Author

OK, I get it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants