New issue
Advanced search Search tips

Issue 723295 link

Starred by 1 user

Issue metadata

Status: Verified
Owner:
Closed: May 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 3
Type: Bug



Sign in to add a comment

ld warning building libblink_plaltform on OSX

Project Member Reported by noel@chromium.org, May 17 2017

Issue description

New clang arrived this week: noticed this ld warning during linking component build of chrome at ToT.

[24330/27524] SOLINK libblink_platform.dylib libblink_platform.dylib.TOC
ld: warning: direct access in blink::CubicBezierTimingFunction::Preset(cc::CubicBezierTimingFunction::EaseType) to global weak symbol blink::CubicBezierTimingFunction::Preset(cc::CubicBezierTimingFunction::EaseType)::ease_in_out means the weak symbol cannot be overridden at runtime. This was likely caused by different translation units being compiled with different visibility settings.
...

warning repeats ~10 times.

 
I noticed that ComputedStyle.h has a DEFINE_STATIC_REF variable as well. Does ComputedStyle appear in the warnings?

Comment 2 by noel@chromium.org, May 17 2017

Nope, no whinge about ComputedStyle.  I've just pulled chromium ToT again to do another full component build re-compile to see if this is still.

Comment 3 by noel@chromium.org, May 17 2017

And no mention of ComputedStyle.  Log attached.  gn args are:

is_component_build = true
is_debug = false
enable_nacl = false
is_clang = true

osx-link-log.txt
7.8 KB View Download
Components: -Build -Blink>Animation Internals>Compositing>Animation
Owner: alancutter@chromium.org
Status: Assigned (was: Untriaged)
We should probably add a presubmit check to avoid using this macro in header files.

Comment 6 by noel@chromium.org, May 18 2017

Yeap, maybe file a bug about the presubmit for now.
Project Member

Comment 7 by bugdroid1@chromium.org, May 18 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/1d5b2074f9265b918ef7571e13cfc2c2d794d940

commit 1d5b2074f9265b918ef7571e13cfc2c2d794d940
Author: alancutter <alancutter@chromium.org>
Date: Thu May 18 13:10:30 2017

Remove DEFINE_STATIC_REF calls from header files

This patch moves calls to DEFINE_STATIC_REF from header files to their
corresponding source file.

DEFINE_STATIC_REF initialises static local variables. They should not be
used in header files otherwise separate build components may end up
holding onto separate versions of the object.

BUG= 723295 

Review-Url: https://codereview.chromium.org/2885983004
Cr-Commit-Position: refs/heads/master@{#472784}

[modify] https://crrev.com/1d5b2074f9265b918ef7571e13cfc2c2d794d940/third_party/WebKit/Source/core/style/ComputedStyle.cpp
[modify] https://crrev.com/1d5b2074f9265b918ef7571e13cfc2c2d794d940/third_party/WebKit/Source/core/style/ComputedStyle.h
[modify] https://crrev.com/1d5b2074f9265b918ef7571e13cfc2c2d794d940/third_party/WebKit/Source/platform/animation/TimingFunction.cpp
[modify] https://crrev.com/1d5b2074f9265b918ef7571e13cfc2c2d794d940/third_party/WebKit/Source/platform/animation/TimingFunction.h

Status: Fixed (was: Assigned)

Comment 9 by noel@chromium.org, May 22 2017

Status: Verified (was: Fixed)
Did a full ToT component build on OSX today with gn args per #3, and no warnings about linking libblink_platform.dylib anymore.

Sign in to add a comment