Bugzilla Automation <[email protected]> has asked freebsd-chromium (Nobody)
<[email protected]> for maintainer-feedback:
Bug 277178: www/chromium: fix build with clang 18
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=277178



--- Description ---
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>.

Reply via email to