-
Notifications
You must be signed in to change notification settings - Fork 10.6k
Closed
Labels
access exclusivityFeature: Enforcement of exclusive access to memoryFeature: Enforcement of exclusive access to memorybugA deviation from expected or documented behavior. Also: expected but undesirable behavior.A deviation from expected or documented behavior. Also: expected but undesirable behavior.concurrencyFeature: umbrella label for concurrency language featuresFeature: umbrella label for concurrency language featuresruntimeThe Swift RuntimeThe Swift Runtime
Description
Description
The runtime exports a symbol, _swift_willThrow
, for use by testing frameworks (specifically XCTest) to track when errors are thrown for diagnostic purposes. This symbol is not declared as an atomic value, which means that access to it has undefined behavior across threads. Because test logic can run concurrently (and that includes throwing errors), atomic access to this variable is necessary.
Steps to reproduce
N/A
Expected behavior
N/A
Metadata
Metadata
Assignees
Labels
access exclusivityFeature: Enforcement of exclusive access to memoryFeature: Enforcement of exclusive access to memorybugA deviation from expected or documented behavior. Also: expected but undesirable behavior.A deviation from expected or documented behavior. Also: expected but undesirable behavior.concurrencyFeature: umbrella label for concurrency language featuresFeature: umbrella label for concurrency language featuresruntimeThe Swift RuntimeThe Swift Runtime