<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>305995</bug_id>
          
          <creation_ts>2026-01-21 16:41:06 -0800</creation_ts>
          <short_desc>Add missing forward declarations in Source/WebKit/UIProcess/mac/WebViewImpl.h</short_desc>
          <delta_ts>2026-01-22 02:04:53 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=306015</see_also>
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Carlos Alberto Lopez Perez">clopez</reporter>
          <assigned_to name="Carlos Alberto Lopez Perez">clopez</assigned_to>
          <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>2173927</commentid>
    <comment_count>0</comment_count>
    <who name="Carlos Alberto Lopez Perez">clopez</who>
    <bug_when>2026-01-21 16:41:06 -0800</bug_when>
    <thetext>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 &apos;DigitalCredentialsResponseData&apos; in namespace &apos;WebCore&apos;
/Users/igalia/webkit-playwright/Source/WebKit/UIProcess/mac/WebViewImpl.h:809:67: error: no type named &apos;TextAnimationData&apos; in namespace &apos;WebCore&apos;; did you mean &apos;TextIndicatorData&apos;?
/Users/igalia/webkit-playwright/Source/WebKit/UIProcess/mac/WebViewImpl.h:832:176: error: no template named &apos;ExceptionData&apos; in namespace &apos;WebCore&apos;; did you mean &apos;ExceptionOr&apos;?
/Users/igalia/webkit-playwright/Source/WebKit/UIProcess/mac/WebViewImpl.h:832:176: error: use of class template &apos;WebCore::ExceptionOr&apos; requires template arguments
/Users/igalia/webkit-playwright/Source/WebKit/UIProcess/mac/WebViewImpl.mm:2957:19: error: out-of-line definition of &apos;showDigitalCredentialsPicker&apos; does not match any declaration in &apos;WebKit::WebViewImpl&apos;
/Users/igalia/webkit-playwright/Source/WebKit/UIProcess/mac/WebViewImpl.mm:4950:19: error: out-of-line definition of &apos;addTextAnimationForAnimationID&apos; does not match any declaration in &apos;WebKit::WebViewImpl&apos;
/Users/igalia/webkit-playwright/Source/WebKit/UIProcess/mac/WebViewImpl.mm:7319:19: error: out-of-line definition of &apos;showCaptionDisplaySettings&apos; does not match any declaration in &apos;WebKit::WebViewImpl&apos;
/Users/igalia/webkit-playwright/Source/WebKit/UIProcess/mac/WebViewImpl.h:561:132: error: no member named &apos;DigitalCredentialsResponseData&apos; in namespace &apos;WebCore&apos;
/Users/igalia/webkit-playwright/Source/WebKit/UIProcess/mac/WebViewImpl.h:809:67: error: no type named &apos;TextAnimationData&apos; in namespace &apos;WebCore&apos;; did you mean &apos;TextIndicatorData&apos;?
/Users/igalia/webkit-playwright/Source/WebKit/UIProcess/mac/WebViewImpl.h:832:176: error: no template named &apos;ExceptionData&apos; in namespace &apos;WebCore&apos;; did you mean &apos;ExceptionOr&apos;?
/Users/igalia/webkit-playwright/Source/WebKit/UIProcess/mac/WebViewImpl.h:832:176: error: use of class template &apos;WebCore::ExceptionOr&apos; requires template arguments
/Users/igalia/webkit-playwright/Source/WebKit/UIProcess/mac/WebViewImpl.h:561:132: error: no member named &apos;DigitalCredentialsResponseData&apos; in namespace &apos;WebCore&apos;
/Users/igalia/webkit-playwright/Source/WebKit/UIProcess/mac/WebViewImpl.h:809:67: error: no type named &apos;TextAnimationData&apos; in namespace &apos;WebCore&apos;; did you mean &apos;TextIndicatorData&apos;?
/Users/igalia/webkit-playwright/Source/WebKit/UIProcess/mac/WebViewImpl.h:832:176: error: no template named &apos;ExceptionData&apos; in namespace &apos;WebCore&apos;; did you mean &apos;ExceptionOr&apos;?
/Users/igalia/webkit-playwright/Source/WebKit/UIProcess/mac/WebViewImpl.h:832:176: error: use of class template &apos;WebCore::ExceptionOr&apos; 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 &apos;DigitalCredentialsResponseData&apos; in namespace &apos;WebCore&apos;
  561 |     void showDigitalCredentialsPicker(const WebCore::DigitalCredentialsRequestData&amp;, WTF::CompletionHandler&lt;void(Expected&lt;WebCore::DigitalCredentialsResponseData, WebCore::ExceptionData&gt;&amp;&amp;)&gt;&amp;&amp;, WKWebView*);
      |                                                                                                                           ~~~~~~~~~^
/Users/igalia/webkit-playwright/Source/WebKit/UIProcess/mac/WebViewImpl.h:809:67: error: no type named &apos;TextAnimationData&apos; in namespace &apos;WebCore&apos;; did you mean &apos;TextIndicatorData&apos;?
  809 |     void addTextAnimationForAnimationID(WTF::UUID, const WebCore::TextAnimationData&amp;);
      |                                                          ~~~~~~~~~^~~~~~~~~~~~~~~~~
      |                                                                   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: &apos;TextIndicatorData&apos; 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 &apos;ExceptionData&apos; in namespace &apos;WebCore&apos;; did you mean &apos;ExceptionOr&apos;?
  832 |     void showCaptionDisplaySettings(WebCore::HTMLMediaElementIdentifier, const WebCore::ResolvedCaptionDisplaySettingsOptions&amp;, CompletionHandler&lt;void(Expected&lt;void, WebCore::ExceptionData&gt;&amp;&amp;)&gt;&amp;&amp;);
      |                                                                                                                                                                       ~~~~~~~~~^~~~~~~~~~~~~
      |                                                                                                                                                                                ExceptionOr
/Users/igalia/webkit-playwright/Source/WebKit/UIProcess/mac/WebViewImpl.h:137:26: note: &apos;ExceptionOr&apos; declared here
  137 | template&lt;typename&gt; class ExceptionOr;
      |                          ^
/Users/igalia/webkit-playwright/Source/WebKit/UIProcess/mac/WebViewImpl.h:832:176: error: use of class template &apos;WebCore::ExceptionOr&apos; requires template arguments
  832 |     void showCaptionDisplaySettings(WebCore::HTMLMediaElementIdentifier, const WebCore::ResolvedCaptionDisplaySettingsOptions&amp;, CompletionHandler&lt;void(Expected&lt;void, WebCore::ExceptionData&gt;&amp;&amp;)&gt;&amp;&amp;);
      |                                                                                                                                                                                ^
/Users/igalia/webkit-playwright/Source/WebKit/UIProcess/mac/WebViewImpl.h:137:26: note: template is declared here
  137 | template&lt;typename&gt; 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 &apos;showDigitalCredentialsPicker&apos; does not match any declaration in &apos;WebKit::WebViewImpl&apos;
 2957 | void WebViewImpl::showDigitalCredentialsPicker(const WebCore::DigitalCredentialsRequestData&amp; requestData, CompletionHandler&lt;void(Expected&lt;WebCore::DigitalCredentialsResponseData, WebCore::ExceptionData&gt;&amp;&amp;)&gt;&amp;&amp; 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 (&apos;WTF::CompletionHandler&lt;void (int &amp;&amp;)&gt; &amp;&amp;&apos; vs &apos;CompletionHandler&lt;void (Expected&lt;WebCore::DigitalCredentialsResponseData, WebCore::ExceptionData&gt; &amp;&amp;)&gt; &amp;&amp;&apos; (aka &apos;CompletionHandler&lt;void (expected&lt;WebCore::DigitalCredentialsResponseData, WebCore::ExceptionData&gt; &amp;&amp;)&gt; &amp;&amp;&apos;))
  561 |     void showDigitalCredentialsPicker(const WebCore::DigitalCredentialsRequestData&amp;, WTF::CompletionHandler&lt;void(Expected&lt;WebCore::DigitalCredentialsResponseData, WebCore::ExceptionData&gt;&amp;&amp;)&gt;&amp;&amp;, 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 &apos;addTextAnimationForAnimationID&apos; does not match any declaration in &apos;WebKit::WebViewImpl&apos;
 4950 | void WebViewImpl::addTextAnimationForAnimationID(WTF::UUID uuid, const WebCore::TextAnimationData&amp; data)
      |                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/Users/igalia/webkit-playwright/Source/WebKit/UIProcess/mac/WebViewImpl.mm:7319:19: error: out-of-line definition of &apos;showCaptionDisplaySettings&apos; does not match any declaration in &apos;WebKit::WebViewImpl&apos;
 7319 | void WebViewImpl::showCaptionDisplaySettings(WebCore::HTMLMediaElementIdentifier, const WebCore::ResolvedCaptionDisplaySettingsOptions&amp; options, CompletionHandler&lt;void(Expected&lt;void, WebCore::ExceptionData&gt;&amp;&amp;)&gt;&amp;&amp; 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 (&apos;CompletionHandler&lt;void (int &amp;&amp;)&gt; &amp;&amp;&apos; vs &apos;CompletionHandler&lt;void (Expected&lt;void, WebCore::ExceptionData&gt; &amp;&amp;)&gt; &amp;&amp;&apos; (aka &apos;CompletionHandler&lt;void (expected&lt;void, WebCore::ExceptionData&gt; &amp;&amp;)&gt; &amp;&amp;&apos;))
  832 |     void showCaptionDisplaySettings(WebCore::HTMLMediaElementIdentifier, const WebCore::ResolvedCaptionDisplaySettingsOptions&amp;, CompletionHandler&lt;void(Expected&lt;void, WebCore::ExceptionData&gt;&amp;&amp;)&gt;&amp;&amp;);
      |                                                                                                                                 ^
7 errors generated.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2173929</commentid>
    <comment_count>1</comment_count>
    <who name="Carlos Alberto Lopez Perez">clopez</who>
    <bug_when>2026-01-21 16:48:06 -0800</bug_when>
    <thetext>Pull request: https://github.com/WebKit/WebKit/pull/57017</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2173945</commentid>
    <comment_count>2</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2026-01-21 17:52:25 -0800</bug_when>
    <thetext>Committed 305984@main (8ed3c9ea5e88): &lt;https://commits.webkit.org/305984@main&gt;

Reviewed commits have been landed. Closing PR #57017 and removing active labels.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>2173946</commentid>
    <comment_count>3</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2026-01-21 17:53:14 -0800</bug_when>
    <thetext>&lt;rdar://problem/168632447&gt;</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>