RESOLVED FIXED305995
Add missing forward declarations in Source/WebKit/UIProcess/mac/WebViewImpl.h
https://bugs.webkit.org/show_bug.cgi?id=305995
Summary Add missing forward declarations in Source/WebKit/UIProcess/mac/WebViewImpl.h
Carlos Alberto Lopez Perez
Reported 2026-01-21 16:41:06 PST
I had this build errors on Mac $ cat build1.log|grep -i error: /Users/igalia/webkit-playwright/Source/WebKit/UIProcess/mac/WebViewImpl.h:561:132: error: no member named 'DigitalCredentialsResponseData' in namespace 'WebCore' /Users/igalia/webkit-playwright/Source/WebKit/UIProcess/mac/WebViewImpl.h:809:67: error: no type named 'TextAnimationData' in namespace 'WebCore'; did you mean 'TextIndicatorData'? /Users/igalia/webkit-playwright/Source/WebKit/UIProcess/mac/WebViewImpl.h:832:176: error: no template named 'ExceptionData' in namespace 'WebCore'; did you mean 'ExceptionOr'? /Users/igalia/webkit-playwright/Source/WebKit/UIProcess/mac/WebViewImpl.h:832:176: error: use of class template 'WebCore::ExceptionOr' requires template arguments /Users/igalia/webkit-playwright/Source/WebKit/UIProcess/mac/WebViewImpl.mm:2957:19: error: out-of-line definition of 'showDigitalCredentialsPicker' does not match any declaration in 'WebKit::WebViewImpl' /Users/igalia/webkit-playwright/Source/WebKit/UIProcess/mac/WebViewImpl.mm:4950:19: error: out-of-line definition of 'addTextAnimationForAnimationID' does not match any declaration in 'WebKit::WebViewImpl' /Users/igalia/webkit-playwright/Source/WebKit/UIProcess/mac/WebViewImpl.mm:7319:19: error: out-of-line definition of 'showCaptionDisplaySettings' does not match any declaration in 'WebKit::WebViewImpl' /Users/igalia/webkit-playwright/Source/WebKit/UIProcess/mac/WebViewImpl.h:561:132: error: no member named 'DigitalCredentialsResponseData' in namespace 'WebCore' /Users/igalia/webkit-playwright/Source/WebKit/UIProcess/mac/WebViewImpl.h:809:67: error: no type named 'TextAnimationData' in namespace 'WebCore'; did you mean 'TextIndicatorData'? /Users/igalia/webkit-playwright/Source/WebKit/UIProcess/mac/WebViewImpl.h:832:176: error: no template named 'ExceptionData' in namespace 'WebCore'; did you mean 'ExceptionOr'? /Users/igalia/webkit-playwright/Source/WebKit/UIProcess/mac/WebViewImpl.h:832:176: error: use of class template 'WebCore::ExceptionOr' requires template arguments /Users/igalia/webkit-playwright/Source/WebKit/UIProcess/mac/WebViewImpl.h:561:132: error: no member named 'DigitalCredentialsResponseData' in namespace 'WebCore' /Users/igalia/webkit-playwright/Source/WebKit/UIProcess/mac/WebViewImpl.h:809:67: error: no type named 'TextAnimationData' in namespace 'WebCore'; did you mean 'TextIndicatorData'? /Users/igalia/webkit-playwright/Source/WebKit/UIProcess/mac/WebViewImpl.h:832:176: error: no template named 'ExceptionData' in namespace 'WebCore'; did you mean 'ExceptionOr'? /Users/igalia/webkit-playwright/Source/WebKit/UIProcess/mac/WebViewImpl.h:832:176: error: use of class template 'WebCore::ExceptionOr' requires template arguments I think those might have been trigered by 305889@main depending on the build switches that you enable because the build failure comes from a unifiedsource unit. Example: In file included from /Users/igalia/webkit-playwright/WebKitBuild/Release/DerivedSources/WebKit/unified-sources/UnifiedSource65-nonARC.mm:1: In file included from /Users/igalia/webkit-playwright/Source/WebKit/UIProcess/mac/WebViewImpl.mm:27: /Users/igalia/webkit-playwright/Source/WebKit/UIProcess/mac/WebViewImpl.h:561:132: error: no member named 'DigitalCredentialsResponseData' in namespace 'WebCore' 561 | void showDigitalCredentialsPicker(const WebCore::DigitalCredentialsRequestData&, WTF::CompletionHandler<void(Expected<WebCore::DigitalCredentialsResponseData, WebCore::ExceptionData>&&)>&&, WKWebView*); | ~~~~~~~~~^ /Users/igalia/webkit-playwright/Source/WebKit/UIProcess/mac/WebViewImpl.h:809:67: error: no type named 'TextAnimationData' in namespace 'WebCore'; did you mean 'TextIndicatorData'? 809 | void addTextAnimationForAnimationID(WTF::UUID, const WebCore::TextAnimationData&); | ~~~~~~~~~^~~~~~~~~~~~~~~~~ | TextIndicatorData In file included from /Users/igalia/webkit-playwright/WebKitBuild/Release/DerivedSources/WebKit/unified-sources/UnifiedSource65-nonARC.mm:1: In file included from /Users/igalia/webkit-playwright/Source/WebKit/UIProcess/mac/WebViewImpl.mm:27: In file included from /Users/igalia/webkit-playwright/Source/WebKit/UIProcess/mac/WebViewImpl.h:44: /Users/igalia/webkit-playwright/WebKitBuild/Release/WebCore.framework/PrivateHeaders/TextIndicator.h:132:8: note: 'TextIndicatorData' declared here 132 | struct TextIndicatorData { | ^ In file included from /Users/igalia/webkit-playwright/WebKitBuild/Release/DerivedSources/WebKit/unified-sources/UnifiedSource65-nonARC.mm:1: In file included from /Users/igalia/webkit-playwright/Source/WebKit/UIProcess/mac/WebViewImpl.mm:27: /Users/igalia/webkit-playwright/Source/WebKit/UIProcess/mac/WebViewImpl.h:832:176: error: no template named 'ExceptionData' in namespace 'WebCore'; did you mean 'ExceptionOr'? 832 | void showCaptionDisplaySettings(WebCore::HTMLMediaElementIdentifier, const WebCore::ResolvedCaptionDisplaySettingsOptions&, CompletionHandler<void(Expected<void, WebCore::ExceptionData>&&)>&&); | ~~~~~~~~~^~~~~~~~~~~~~ | ExceptionOr /Users/igalia/webkit-playwright/Source/WebKit/UIProcess/mac/WebViewImpl.h:137:26: note: 'ExceptionOr' declared here 137 | template<typename> class ExceptionOr; | ^ /Users/igalia/webkit-playwright/Source/WebKit/UIProcess/mac/WebViewImpl.h:832:176: error: use of class template 'WebCore::ExceptionOr' requires template arguments 832 | void showCaptionDisplaySettings(WebCore::HTMLMediaElementIdentifier, const WebCore::ResolvedCaptionDisplaySettingsOptions&, CompletionHandler<void(Expected<void, WebCore::ExceptionData>&&)>&&); | ^ /Users/igalia/webkit-playwright/Source/WebKit/UIProcess/mac/WebViewImpl.h:137:26: note: template is declared here 137 | template<typename> class ExceptionOr; | ~~~~~~~~~~~~~~~~~~ ^ In file included from /Users/igalia/webkit-playwright/WebKitBuild/Release/DerivedSources/WebKit/unified-sources/UnifiedSource65-nonARC.mm:1: /Users/igalia/webkit-playwright/Source/WebKit/UIProcess/mac/WebViewImpl.mm:2957:19: error: out-of-line definition of 'showDigitalCredentialsPicker' does not match any declaration in 'WebKit::WebViewImpl' 2957 | void WebViewImpl::showDigitalCredentialsPicker(const WebCore::DigitalCredentialsRequestData& requestData, CompletionHandler<void(Expected<WebCore::DigitalCredentialsResponseData, WebCore::ExceptionData>&&)>&& completionHandler, WKWebView* webView) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from /Users/igalia/webkit-playwright/WebKitBuild/Release/DerivedSources/WebKit/unified-sources/UnifiedSource65-nonARC.mm:1: In file included from /Users/igalia/webkit-playwright/Source/WebKit/UIProcess/mac/WebViewImpl.mm:27: /Users/igalia/webkit-playwright/Source/WebKit/UIProcess/mac/WebViewImpl.h:561:86: note: type of 2nd parameter of member declaration does not match definition ('WTF::CompletionHandler<void (int &&)> &&' vs 'CompletionHandler<void (Expected<WebCore::DigitalCredentialsResponseData, WebCore::ExceptionData> &&)> &&' (aka 'CompletionHandler<void (expected<WebCore::DigitalCredentialsResponseData, WebCore::ExceptionData> &&)> &&')) 561 | void showDigitalCredentialsPicker(const WebCore::DigitalCredentialsRequestData&, WTF::CompletionHandler<void(Expected<WebCore::DigitalCredentialsResponseData, WebCore::ExceptionData>&&)>&&, WKWebView*); | ^ In file included from /Users/igalia/webkit-playwright/WebKitBuild/Release/DerivedSources/WebKit/unified-sources/UnifiedSource65-nonARC.mm:1: /Users/igalia/webkit-playwright/Source/WebKit/UIProcess/mac/WebViewImpl.mm:4950:19: error: out-of-line definition of 'addTextAnimationForAnimationID' does not match any declaration in 'WebKit::WebViewImpl' 4950 | void WebViewImpl::addTextAnimationForAnimationID(WTF::UUID uuid, const WebCore::TextAnimationData& data) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /Users/igalia/webkit-playwright/Source/WebKit/UIProcess/mac/WebViewImpl.mm:7319:19: error: out-of-line definition of 'showCaptionDisplaySettings' does not match any declaration in 'WebKit::WebViewImpl' 7319 | void WebViewImpl::showCaptionDisplaySettings(WebCore::HTMLMediaElementIdentifier, const WebCore::ResolvedCaptionDisplaySettingsOptions& options, CompletionHandler<void(Expected<void, WebCore::ExceptionData>&&)>&& completionHandler) | ^~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from /Users/igalia/webkit-playwright/WebKitBuild/Release/DerivedSources/WebKit/unified-sources/UnifiedSource65-nonARC.mm:1: In file included from /Users/igalia/webkit-playwright/Source/WebKit/UIProcess/mac/WebViewImpl.mm:27: /Users/igalia/webkit-playwright/Source/WebKit/UIProcess/mac/WebViewImpl.h:832:129: note: type of 3rd parameter of member declaration does not match definition ('CompletionHandler<void (int &&)> &&' vs 'CompletionHandler<void (Expected<void, WebCore::ExceptionData> &&)> &&' (aka 'CompletionHandler<void (expected<void, WebCore::ExceptionData> &&)> &&')) 832 | void showCaptionDisplaySettings(WebCore::HTMLMediaElementIdentifier, const WebCore::ResolvedCaptionDisplaySettingsOptions&, CompletionHandler<void(Expected<void, WebCore::ExceptionData>&&)>&&); | ^ 7 errors generated.
Attachments
Carlos Alberto Lopez Perez
Comment 1 2026-01-21 16:48:06 PST
EWS
Comment 2 2026-01-21 17:52:25 PST
Committed 305984@main (8ed3c9ea5e88): <https://commits.webkit.org/305984@main> Reviewed commits have been landed. Closing PR #57017 and removing active labels.
Radar WebKit Bug Importer
Comment 3 2026-01-21 17:53:14 PST
Note You need to log in before you can comment on or make changes to this bug.