The Swift compiler does lifetime and ownership analysis to eliminate many/most ARC overhead, beyond when things are truly shared between threads and the like.
https://g.co/gemini/share/51670084cd0f - lame, but it references core concepts.
https://g.co/gemini/share/51670084cd0f - lame, but it references core concepts.
In Swift 6 this is only true if the value’s type is Sendable.
Though the vast majority of cases where ARC would come into play are of the trivial variety.