Skip to content

Fix strict builds with current toolchains - #99

Merged
sheredom merged 6 commits into
mainfrom
fix/clang-cl-padded-warning
Jul 20, 2026
Merged

Fix strict builds with current toolchains#99
sheredom merged 6 commits into
mainfrom
fix/clang-cl-padded-warning

Conversation

@sheredom

@sheredom sheredom commented Jul 20, 2026

Copy link
Copy Markdown
Owner

Summary

  • suppress intentional Windows ABI struct padding diagnostics under clang-cl
  • use an internal wide-character alias to avoid Clang 22 C/C++ keyword compatibility warnings
  • suppress the intentional per-library TLS counter duplication diagnostic
  • select the standardized spawn chdir action for macOS 26 deployment targets while preserving compatibility with older targets
  • ignore MSVC 2026 warnings emitted by Windows SDK headers in test builds
  • refresh the vendored utest.h with Suppress intentional global constructor warning utest.h#184

Testing

  • Clang 19 debug build and all 3 tests
  • GCC 14 debug build and test suite
  • full GitHub Actions matrix passes on Ubuntu, Windows, and macOS

🧙 Conjured by AI via pi.dev using gpt-5.6-sol

🧙 Conjured by AI via [pi.dev](https://pi.dev/) using gpt-5.6
sheredom added a commit to sheredom/utest.h that referenced this pull request Jul 20, 2026
Includes the Clang padding warning fix from sheredom/subprocess.h#99.

🧙 Conjured by AI via [pi.dev](https://pi.dev/) using gpt-5.6
sheredom added 2 commits July 20, 2026 16:59
Includes the intentional global constructor warning fix from sheredom/utest.h#184.

🧙 Conjured by AI via [pi.dev](https://pi.dev/) using gpt-5.6
Use posix_spawn_file_actions_addchdir for macOS 26 deployment targets and suppress the intentional deprecation warning when retaining the backward-compatible _np API.

🧙 Conjured by AI via [pi.dev](https://pi.dev/) using gpt-5.6
sheredom added a commit to sheredom/utest.h that referenced this pull request Jul 20, 2026
Includes the macOS 26 spawn chdir compatibility fix from sheredom/subprocess.h#99.

🧙 Conjured by AI via [pi.dev](https://pi.dev/) using gpt-5.6
Use an internal wide-character alias so strict clang-cl C builds only need to suppress the compatibility warning at the intentional wchar_t typedef.

🧙 Conjured by AI via [pi.dev](https://pi.dev/) using gpt-5.6
sheredom added a commit to sheredom/utest.h that referenced this pull request Jul 20, 2026
Includes the strict clang-cl C compatibility fix from sheredom/subprocess.h#99.

🧙 Conjured by AI via [pi.dev](https://pi.dev/) using gpt-5.6
The named-pipe counter is intentionally local to each header-library instance.

🧙 Conjured by AI via [pi.dev](https://pi.dev/) using gpt-5.6
sheredom added a commit to sheredom/utest.h that referenced this pull request Jul 20, 2026
Includes the clang-cl TLS warning fix from sheredom/subprocess.h#99.

🧙 Conjured by AI via [pi.dev](https://pi.dev/) using gpt-5.6
MSVC 2026 emits C4865 from Windows SDK headers under /Wall; suppress that external-header warning in the test build.

🧙 Conjured by AI via [pi.dev](https://pi.dev/) using gpt-5.6
@sheredom sheredom changed the title Suppress intentional Windows struct padding warnings Fix strict builds with current toolchains Jul 20, 2026
@sheredom
sheredom merged commit 8671cee into main Jul 20, 2026
24 checks passed
@sheredom
sheredom deleted the fix/clang-cl-padded-warning branch July 20, 2026 19:00
sheredom added a commit to sheredom/utest.h that referenced this pull request Jul 20, 2026
Includes the Clang padding warning fix from sheredom/subprocess.h#99.

🧙 Conjured by AI via [pi.dev](https://pi.dev/) using gpt-5.6
sheredom added a commit to sheredom/utest.h that referenced this pull request Jul 20, 2026
Includes the macOS 26 spawn chdir compatibility fix from sheredom/subprocess.h#99.

🧙 Conjured by AI via [pi.dev](https://pi.dev/) using gpt-5.6
sheredom added a commit to sheredom/utest.h that referenced this pull request Jul 20, 2026
Includes the strict clang-cl C compatibility fix from sheredom/subprocess.h#99.

🧙 Conjured by AI via [pi.dev](https://pi.dev/) using gpt-5.6
sheredom added a commit to sheredom/utest.h that referenced this pull request Jul 20, 2026
Includes the clang-cl TLS warning fix from sheredom/subprocess.h#99.

🧙 Conjured by AI via [pi.dev](https://pi.dev/) using gpt-5.6
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.

1 participant