CI: restore the 32-bit GCC 12 C++17/20 Drone stage, and name the split stages - #91
Merged
Conversation
There were two GCC 12 stages, both misnamed: "C++11-14" ran CXXSTD 17,20 and "C++17-20" ran 2b. e520c1d corrected the first name, which made the two names identical; dd2c40d then resolved the clash by deleting one of the pair - the 17,20 stage - leaving the 2b stage wearing the 17,20 label. Net effect: GCC 12 at C++17/20 was no longer built for 32 bits anywhere. The GHA matrix covers gcc-12 at those standards, but 64-bit only, so nothing was testing this library's 32-bit codegen on GCC 12 at C++17/20. Restore the deleted stage and name the surviving one for the standard it actually runs. Bundling 17,20 in one stage matches the neighbouring GCC 11 stage (17,2a x 32/64), which is well inside the 60-minute Drone step limit that f886630 and 44d0d61 split the heavier stages to respect. Verified locally by evaluating .drone.jsonnet with jsonnet: 35 -> 36 pipelines, all names unique, and every stage whose name states a standard now matches its CXXSTD. Not exercised on Drone itself. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
f886630 and 44d0d61 split the heavy sanitizer stages one C++ standard per stage, naming the new ones C++17 and C++20 but leaving the original of each trio unnamed - so "GCC 14 UBSAN C++17", "GCC 14 UBSAN C++20" and a bare "GCC 14 UBSAN" that is in fact the 2b run, and reads like the whole set. Four stages were in that shape. Names only; no environment, matrix or coverage change. This is the same ambiguity that let dd2c40d delete the wrong member of the GCC 12 pair. Verified with jsonnet: 36 pipelines before and after, all names unique, no bare name left inside a split group, and every stage name that states a standard matches its CXXSTD. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
|
An automated preview of the documentation is available at https://91.openmethod.prtest3.cppalliance.org/libs/openmethod/doc/html/index.html If more commits are pushed to the pull request, the docs will rebuild at the same URL. 2026-08-23 01:46:09 UTC |
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## develop #91 +/- ##
========================================
Coverage 94.97% 94.97%
========================================
Files 99 99
Lines 4322 4322
Branches 2138 2138
========================================
Hits 4105 4105
Misses 160 160
Partials 57 57 Continue to review full report in Codecov by Harness.
🚀 New features to boost your workflow:
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Two Drone-only changes.
.drone.jsonnetis the only file touched.Restore the 32-bit GCC 12 C++17/20 stage
There were two GCC 12 stages and both were misnamed:
"C++11-14"ranCXXSTD: '17,20', and"C++17-20"ran'2b'. e520c1d corrected the firstname, which made the two names identical; dd2c40d then resolved the clash by
deleting one of the pair — the
17,20one — leaving the2bstage wearingthe
17,20label.Net effect: GCC 12 at C++17/20 stopped being built for 32 bits anywhere.
The GHA matrix covers gcc-12 at those standards, but 64-bit only.
This restores the deleted stage and names the survivor for the standard it
actually runs.
17,20stays bundled in one stage, matching the neighbouringGCC 11 stage (
17,2a × 32/64), which sits well inside the 60-minute Dronestep limit that f886630 and 44d0d61 split the heavier stages to respect.
Name the split stages for the standard they run
f886630 and 44d0d61 split the heavy sanitizer stages one standard per stage,
naming the new ones
C++17/C++20but leaving the original of each triounnamed — so
GCC 14 UBSAN C++17,GCC 14 UBSAN C++20, and a bareGCC 14 UBSANthat is in fact the2brun and reads like the whole set.Four stages were in that shape. Names only; no environment, matrix or
coverage change.
This is the same ambiguity that let dd2c40d delete the wrong member of the
GCC 12 pair.
Verification
Evaluated
.drone.jsonnetwith jsonnet locally: 35 → 36 pipelines, allpipeline names unique, no bare name left inside a split group, and every
stage name that states a standard matches its
CXXSTD. Not exercised onDrone — that is what this PR is for.
🤖 Generated with Claude Code
https://claude.ai/code/session_016ZvWvMxJsHkK4n5unJfx52