[Bug 277178] www/chromium: fix build with clang 18

From: <bugzilla-noreply_at_freebsd.org>
Date: Mon, 19 Feb 2024 22:10:36 UTC
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=277178

            Bug ID: 277178
           Summary: www/chromium: fix build with clang 18
           Product: Ports & Packages
           Version: Latest
          Hardware: Any
                OS: Any
            Status: New
          Severity: Affects Some People
          Priority: ---
         Component: Individual Port(s)
          Assignee: chromium@FreeBSD.org
          Reporter: dim@FreeBSD.org
          Assignee: chromium@FreeBSD.org
             Flags: maintainer-feedback?(chromium@FreeBSD.org)

Clang 18 has become more stringent about narrowing in initializer lists,
resulting in errors when building www/chromium:

  ../../third_party/webrtc/pc/legacy_stats_collector.cc:191:54: error:
non-constant-expression cannot be narrowed from type 'double' to 'float' in
initializer list [-Wc++11-narrowing-const-reference]
    191 |       {StatsReport::kStatsValueNameTotalAudioEnergy,
info.total_output_energy},
        |                                                     
^~~~~~~~~~~~~~~~~~~~~~~~
  ../../third_party/webrtc/pc/legacy_stats_collector.cc:193:8: error:
non-constant-expression cannot be narrowed from type 'double' to 'float' in
initializer list [-Wc++11-narrowing-const-reference]
    193 |        info.total_output_duration}};
        |        ^~~~~~~~~~~~~~~~~~~~~~~~~~

and later:

  In file included from ../../cc/layers/mirror_layer_impl.cc:5:
  ../../cc/layers/mirror_layer_impl.h:59:40: error: non-constant-expression
cannot be narrowed from type 'int' to 'unsigned long' in initializer list
[-Wc++11-narrowing-const-reference]
     59 |     return viz::CompositorRenderPassId{mirrored_layer_id()};
        |                                        ^~~~~~~~~~~~~~~~~~~

The first batch of errors can be fixed similarly to bug 276997, by
cherry-picking <https://webrtc.googlesource.com/src/+/267f9bdd53> into the
thirdparty directory.

The second batch of errors can be fixed by cherry-picking
<https://chromium.googlesource.com/chromium/src/+/5e9fb4130a537>.

-- 
You are receiving this mail because:
You are the assignee for the bug.