FA-255 / Runtime and resources / Member archive
Dropping a borrowed alias destroys a still-owned object · case 05
A borrowed pointer either keeps an object alive or decrements an ownership count it never incremented.
Case contract
The object starts with owning handle root. Events create distinct clone or borrow names, or drop an existing handle once. Cloning occurs only while a live owner exists. Borrowed handles do not extend lifetime and are not dereferenced here. Return [owning reference count,is alive,destruction transitions].
Why this case matters
Models ownership versus borrowed aliases in manual or native resource wrappers, including dangling borrow records after the last owner disappears, without executing unsafe memory access.
One recorded failure
Sample boundary fixtureThis sample comes from the broken implementation of a controlled reproducer.
| Boundary fixture | Actual | Expected | Outcome |
|---|---|---|---|
| borrows do not own | [6, true, 0] | [1, true, 0] | Failed |
MEMBER ARCHIVE
The complete case is available to members.
This record includes three runnable implementations, regression fixtures, execution results, and source hashes.
Member access is invitation-based. Sign in with your invited account to inspect the sources.
Sign in to the archive ↗