Skip to content

misaki-g2p/parakeet: fix GCC and Windows CI build breaks - #74

Merged
lalalune merged 2 commits into
eliza/develop-pin-ea8b3f2from
claude/misaki-ci-build-fixes
Oct 14, 2026
Merged

lalalune merged 2 commits into
eliza/develop-pin-ea8b3f2from
claude/misaki-ci-build-fixes

Conversation

@lalalune

Copy link
Copy Markdown
Member

Fixes the build breaks that stop the GCC and Windows CI jobs in tools/misaki-g2p before parakeet compiles (seen on #73):

  • tagger.cpp:266: std::all_of used without <algorithm> (ubuntu-24-webgpu, build-cmake-pkg, Windows clang jobs). <algorithm> is now included in every misaki-g2p and parakeet source that uses std::min, std::max or std::all_of.
  • misaki-internal.h:159: GCC ignores [[maybe_unused]] on a non-static data member, which -Werror=attributes turns into an error (ubuntu-cpu, ggml-ci-*). The attribute is gone. data_dir_ is now referenced in the no-espeak path so clang's -Wunused-private-field stays quiet.
  • lexicon.cpp: the C-style cast in munmap dropped const (-Wcast-qual). It's now a const_cast.

Local check: GCC 15 with -DLLAMA_FATAL_WARNINGS=ON compiles every misaki-g2p, parakeet, omnivoice/elizainference and voice test translation unit with no warnings in tools/. paradee.cpp and ggml-cpu can't be built with GCC on macOS because Apple's Accelerate SDK headers don't compile under GCC, and that isn't related to this change. Apple clang builds and host tests run in the follow-up pin-to-main merge.

AI assistance disclosure: an AI coding assistant (Claude Code) wrote this change. A maintainer-authorised agent reviewed it.

🤖 Generated with Claude Code

- tagger.cpp used std::all_of without <algorithm>; GCC and the Windows
  clang toolchains reject it. Include <algorithm> in every misaki-g2p
  and parakeet source that uses std::min/std::max/std::all_of.
- GCC ignores [[maybe_unused]] on a non-static data member and
  -Werror=attributes turned that into an error in misaki-internal.h.
  Drop the attribute and reference data_dir_ in the no-espeak path so
  clang's -Wunused-private-field stays quiet.
- lexicon.cpp munmap cast dropped const via a C cast (-Wcast-qual).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
test-kokoro-layer-options compared the fast and libm Snake paths with a
fixed 1e-6 bound on |diff| * |a|. Both paths round x + sin^2(a x) / a to
float, so for |x| near 8-16 the output ulp alone (~9.5e-7) times |a|
exceeds that bound. Every Linux, Windows and macOS-x64 job now reaches
this test (misaki-g2p no longer stops the build first), and all of them
failed it with 1.06e-06. Subtract one output ulp before scaling, so the
check still bounds the fast_sin2 error (observed 2.4-2.8e-07) and no
longer counts float rounding of the sum.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@lalalune

Copy link
Copy Markdown
Member Author

With the misaki-g2p break fixed, every CPU job now builds and reaches ctest. That exposed one test that was already failing: test-kokoro-layer-options, with snake mismatch 1.06e-06. I reproduced it locally without Accelerate on GCC 15 and clang. The 1e-6 bound counted float rounding of the Snake output (ulp(x) times |a|) as kernel error. The pushed commit subtracts one output ulp before the bound applies, and the test now passes with an excess of 2.4-2.8e-07. The remaining macOS-arm64 failure, test-metal-matmul-support, also fails on #73's run at the base commit and doesn't touch these files.

🤖 Generated with Claude Code

@lalalune

Copy link
Copy Markdown
Member Author

Merging. 31 checks pass. The only failure is macOS-latest-arm64 test-metal-matmul-support (Subprocess aborted), which fails the same way on main at 0ab5992 and on #73. The five checks still pending (windows-2022-cuda, graviton4, ppc64le, s390x, riscv64-native) are waiting for runners that never picked them up. On main those same jobs are queued or cancelled.

🤖 Generated with Claude Code

@lalalune
lalalune merged commit d05d7af into eliza/develop-pin-ea8b3f2 Oct 14, 2026
33 of 38 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant