Assigned
Status Update
Comments
ma...@google.com <ma...@google.com>
ma...@google.com <ma...@google.com> #2
Thanks for reaching out. To investigate the problem, we require a few details. Could you please provide your GMS module versions, recent system logs and video of the issue.
You can find instructions for retrieving the versions and logs on
Description
Feature Request
With structured concurrency, it is advisable that APIs indicate their threading behavior in a manner comprehensible to the compiler so that it can be checked.
Protocols such as GMSMapViewDelegate are apparently invoked on the main queue as might be typical for UIKit callbacks. However, unlike UIKit delegates, they are not annotated. Consequently, interacting with e.g. UIKit or the GMS APIs from delegate implementations is not allowed in structured concurrency. When this becomes the default language mode for Swift this will cause many applications to miscompile.
Presumably, GMSMapViewDelegate (and perhaps other APIs, such as GMSMapView) ought to be annotated either
NS_SWIFT_UI_ACTOR
(foundation annotation) or__attribute__((swift_attr("@UIActor")))
(clang)