Skip to content

ci: fix GitHub Actions (clang build break + test gating) - #6

Merged
LuisHsu merged 1 commit into
masterfrom
claude/fix-github-ci
Jul 21, 2026
Merged

ci: fix GitHub Actions (clang build break + test gating)#6
LuisHsu merged 1 commit into
masterfrom
claude/fix-github-ci

Conversation

@LuisHsu

@LuisHsu LuisHsu commented Jul 21, 2026

Copy link
Copy Markdown
Collaborator

Validation PR to run the fixed workflow on real CI — the canonical review happens on GitLab (self-hosted); this will be closed once the change lands on master via the GitLab MR.

Fixes the two failures from the master run 29809260884:

  1. clang build break: Declarator::FunctionInfo holds std::vector<Parameter> by value while Parameter was only forward-declared; clang requires the complete type when defining Declarator's implicit virtual destructor at the end of the class. Parameter is now defined before Declarator. (GitLab builds gcc-only, so this never surfaced there.)

  2. Test gating: the workflow ran the full ctest suite, so two status-deferred conformance rows (known regressions of intentionally-deferred features) gated the run. The test step now mirrors GitLab's gating policy: host/unit tests (--label-exclude standard) + the status-supported conformance rows.

Also modernizes the workflow after WasmVM's main.yml (concurrency, timeouts, Ninja generator, no stale caches).

🤖 Generated with Claude Code

…gating with GitLab

Two failures broke the GitHub workflow on master while GitLab stayed green:

1. clang (macOS + ubuntu) rejected AST.hpp: Declarator::FunctionInfo holds
   std::vector<Parameter> by value, and Declarator's implicitly-defined
   virtual destructor (via Node) is required at the end of the class
   definition — where Parameter was still only forward-declared. GitLab
   never saw this because it builds with gcc only. Move the Parameter
   definition above Declarator.

2. The workflow ran the full ctest suite, so the two status-deferred
   conformance rows (std-lang-6.7.1-03, 6.7.6.2-04 — known master
   regressions of intentionally-deferred features) gated the pipeline.
   GitLab's policy gates on host/unit tests (--label-exclude standard)
   only, with the scaffold informational. Split the test step to mirror
   that policy, plus a gating status-supported run (100% green).

Also modernize the workflow after WasmVM's main.yml: top-level concurrency,
timeout-minutes, include-form matrix, macos-latest, actually use the Ninja
generator that was installed but unused, and drop the ccache/build-dir
caches and full-build-dir failure artifact (now Testing/ + logs only).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@LuisHsu
LuisHsu merged commit edc7f14 into master Jul 21, 2026
3 checks passed
@LuisHsu
LuisHsu deleted the claude/fix-github-ci branch July 21, 2026 18:32
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