Repository navigation
Conversation
30 of 37 tasks
This branch has not been deployed
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.
Problem
Implicit copy/assignment and ownership-registry updates could partially change a destination on allocation failure. Cleanup also copied registry entries and could allocate while destroying callbacks.
Changes
The public class layout remains unchanged, but new copy methods add symbols. Recompiled clients use the strong guarantee; clients retaining the old inline/implicit implementation do not acquire that guarantee automatically. Old/new-header client link/run and sizeof/alignof checks passed in the reviewed combined library; formal ABI and native-platform checks remain CI gates. The fault oracle runs on Linux shared builds and concerns throwing C++ allocations, not generalized recoverable OOM.
Dependencies — keep as draft
Depends on #831. The diff against master includes the prerequisite stack. The contribution over the reviewed base is linked below; narrow/rebase the PR after its prerequisites are integrated.
Base:
ffba47d0b5ff664790ab6277b39dc71c6f07ab65(codex/pr/socallbacklist-add-atomic). Review this contribution over its base.Validation
Linux candidate 87/87 CTests at
ee516a61ecd17ae79178d9cf5d007768ebb3f242, with no skips. Dedicated integration lab previously passed 141/141 atf987241ef1b686e287fa43a2c143d5d7644e4988; that lab count is a separate reviewed snapshot.Fresh publication gate of all eight exact heads: 35/35 directed and 153/153 total CTests, no skips, at
e6687c088077082e6839b4fc39c632d5267b07d8. GCC/Ninja Debug shared build with COIN_THREADSAFE=ON and external Expat, build and compiler temporary files in RAM; Xvfb/software GLX environment.git diff --checkpassed for the proposed delta. Native Windows/macOS and formal ABI checks rerun on this published head.