[Webkit-unassigned] [Bug 218850] New: configure-xcode-for-embedded-development breaks @available in Swift files

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Thu Nov 12 08:49:39 PST 2020


https://bugs.webkit.org/show_bug.cgi?id=218850

            Bug ID: 218850
           Summary: configure-xcode-for-embedded-development breaks
                    @available in Swift files
           Product: WebKit
           Version: WebKit Nightly Build
          Hardware: Unspecified
                OS: Unspecified
            Status: NEW
          Severity: Normal
          Priority: P2
         Component: Tools / Tests
          Assignee: webkit-unassigned at lists.webkit.org
          Reporter: ajuma at chromium.org
                CC: jbedard at apple.com

The changes applied by configure-xcode-for-embedded-development leave Xcode in state where using @available in a Swift class breaks compilation of Objective-C methods marked with API_AVAILABLE that call into that class.

Specifically, suppose we have:
-a Swift class Foo marked @available(iOS 14.0, *)
-an ObjC class Bar with a method myMethod marked API_AVAILABLE(ios(14))

The changes applied by configure-xcode-for-embedded-development for AvailabilityProhibitedInternal.h cause API_AVAILABLE to be ignored, but @available is not ignored. This means that calling from myMethod into Foo, which should be fine since both are available only in iOS 14+, results in a build failure when building with -Werror -Wunguarded-availability, since after pre-processing, myMethod has no availability notation.

I ran into this when trying to build Chrome for iOS using the same Xcode that I use for building WebKit.

-- 
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.webkit.org/pipermail/webkit-unassigned/attachments/20201112/b44a68f2/attachment.htm>


More information about the webkit-unassigned mailing list