Bug 189370

Summary: QuickLook.mm and QuickLookSoftLink.mm must never be built in the same unified source file
Product: WebKit Reporter: Daniel Bates <dbates>
Component: Tools / TestsAssignee: Daniel Bates <dbates>
Status: RESOLVED DUPLICATE    
Severity: Normal CC: aestes, ddkilzer, lforschler
Priority: P2    
Version: WebKit Nightly Build   
Hardware: All   
OS: All   
Attachments:
Description Flags
Patch none

Description Daniel Bates 2018-09-06 14:20:13 PDT
Today when I re-built WebKit after removing file PlatformEventFactoryIOS.mm from the list of files that are compatible with unified sources (Source/WebCore/SourcesCocoa.txt) my build failed with the following compile error:

[[
In file included from /Volumes/.../DerivedSources/WebCore/unified-sources/UnifiedSource43-mm.mm:8:
platform/ios/QuickLookSoftLink.mm:32:1: error: redefinition of default argument
SOFT_LINK_FRAMEWORK_FOR_SOURCE(WebCore, QuickLook)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /Volumes/.../DerivedSources/WebCore/unified-sources/UnifiedSource43-mm.mm:5:
In file included from platform/ios/PlatformPasteboardIOS.mm:46:
In file included from /Volumes/.../usr/local/include/wtf/SoftLinking.h:28:
/Volumes/.../usr/local/include/wtf/cocoa/SoftLinking.h:345:35: note: expanded from macro 'SOFT_LINK_FRAMEWORK_FOR_SOURCE'
    void* framework##Library(bool isOptional = false); \
                                  ^            ~~~~~
In file included from /Volumes/.../DerivedSources/WebCore/unified-sources/UnifiedSource43-mm.mm:7:
In file included from platform/ios/QuickLook.mm:39:
platform/ios/QuickLookSoftLink.h:30:1: note: previous definition is here
SOFT_LINK_FRAMEWORK_FOR_HEADER(WebCore, QuickLook)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /Volumes/.../DerivedSources/WebCore/unified-sources/UnifiedSource43-mm.mm:5:
In file included from platform/ios/PlatformPasteboardIOS.mm:46:
In file included from /Volumes/.../usr/local/include/wtf/SoftLinking.h:28:
/Volumes/.../usr/local/include/wtf/cocoa/SoftLinking.h:336:42: note: expanded from macro 'SOFT_LINK_FRAMEWORK_FOR_HEADER'
    extern void* framework##Library(bool isOptional = false); \
]]
Comment 1 Daniel Bates 2018-09-06 14:20:54 PDT
The error indicates that QuickLook.mm and QuickLookSoftLink.mm cannot be built in the same unified source file.
Comment 2 Daniel Bates 2018-09-06 14:31:56 PDT
Created attachment 349074 [details]
Patch
Comment 3 Andy Estes 2018-09-06 14:33:21 PDT
Comment on attachment 349074 [details]
Patch

Why not annotate with @no-unify?
Comment 4 Daniel Bates 2018-09-06 14:37:49 PDT
(In reply to Andy Estes from comment #3)
> Comment on attachment 349074 [details]
> Patch
> 
> Why not annotate with @no-unify?

Forgot.
Comment 5 Daniel Bates 2018-09-06 14:39:09 PDT
This issue was fixed with the patch in bug #189009.

*** This bug has been marked as a duplicate of bug 189009 ***