Skip to content

0.15.4 --- openkal-musl 0.20.1 beneath - #34

Merged
Sunrisepeak merged 1 commit into
mainfrom
openkal-0.16.1
Oct 2, 2026
Merged

Sunrisepeak merged 1 commit into
mainfrom
openkal-0.16.1

Conversation

@Sunrisepeak

Copy link
Copy Markdown
Member

The pin moves and nothing else does, for the reason this package has moved for every release of the C library it is built above: a version written without an operator is an exact pin in mcpp, so a consumer naming this runtime and the C library it was built against names one musl and not two.

openkal-musl 0.20.1 carries openkal-linux 0.16.1, whose repair is where that implementation copies the program's thread-local image.

This package's own probe is what found the defect: examples/cxx declares a thread_local object with a destructor, and against 0.16.0 its guard byte — which lives in the same image — read as non-zero, so the constructor never ran and the check reported

FAIL: a thread_local is constructed in a spawned thread

against the released packages. The repair is in the implementation; this release is the pin that reaches it.

The branch is named openkal-0.16.1 because tools/branch-graph.sh substitutes the C library and its backends from the branch of the same name, and the previous round's branch would have verified this against 0.20.0.

The pin moves and nothing else does, for the reason this package has moved for
every release of the C library it is built above: a version written without an
operator is an exact pin in mcpp, so a consumer naming this runtime and the C
library it was built against names one musl and not two.

openkal-musl 0.20.1 carries openkal-linux 0.16.1, whose repair is where that
implementation copies the program's thread-local image. THIS PACKAGE'S OWN PROBE
IS WHAT FOUND IT: `examples/cxx` declares a `thread_local` object with a
destructor, and against 0.16.0 its guard byte --- which lives in the same image
--- read as non-zero, so the constructor never ran and the check reported

    FAIL: a thread_local is constructed in a spawned thread

against the released packages. The repair is in the implementation; this release
is the pin that reaches it.
@Sunrisepeak
Sunrisepeak merged commit b4198d3 into main Oct 2, 2026
8 of 9 checks passed
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