New issue
Advanced search Search tips

Issue 747408 link

Starred by 1 user

Issue metadata

Status: Untriaged
Owner: ----
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 3
Type: Bug



Sign in to add a comment

HashTables can depend on traits that are not guaranteed to be known by the compiler

Project Member Reported by brat...@opera.com, Jul 21 2017

Issue description

When working on jumbo I encountered a warning about Hash traits for CSSPropertyID being instantiated implicitly first and explicitly later. It turned out that bindings/core/v8/custom/V8CSSStyleDeclarationCustom.cpp used a HashMap<String, CSSPropertyID> which instantiated the traits implicitly, but then there is a trait specialization in core/css/CSSPropertyIDTemplates.h which another part of the jumbo unit included.

I don't know if that specialization makes a difference, but it can't be a good thing to compile the hash table with half the information.

I will make a patch to add the include to the bindings file, but this seems like an easy mistake to make. Maybe there is something we could do to make it harder.
 
Cc: yutak@chromium.org
Project Member

Comment 2 by bugdroid1@chromium.org, Jul 22 2017

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

commit 941dae278d7b0dfd369cb0168569665601d752ed
Author: Daniel Bratell <bratell@opera.com>
Date: Sat Jul 22 07:22:46 2017

Make sure CSSPropertyIdMap knows the CSSPropertyID traits.

CSSPropertyID has some custom traits and without knowing them the
HashTable will not be compiled as intended. This was noticed through
a warning in jumbo builds about the traits being instantiated implicitly
before they were instantiated explicitly (in a specialization).

R=haraken@chromium.org

Bug: 747408
Change-Id: I2dea24bec17c8d071cbe60e443834d440eebfb2a
Reviewed-on: https://chromium-review.googlesource.com/581447
Reviewed-by: Kentaro Hara <haraken@chromium.org>
Commit-Queue: Daniel Bratell <bratell@opera.com>
Cr-Commit-Position: refs/heads/master@{#488861}
[modify] https://crrev.com/941dae278d7b0dfd369cb0168569665601d752ed/third_party/WebKit/Source/bindings/core/v8/custom/V8CSSStyleDeclarationCustom.cpp

Project Member

Comment 3 by sheriffbot@chromium.org, Jul 23

Labels: Hotlist-Recharge-Cold
Status: Untriaged (was: Available)
This issue has been Available for over a year. If it's no longer important or seems unlikely to be fixed, please consider closing it out. If it is important, please re-triage the issue.

Sorry for the inconvenience if the bug really should have been left as Available.

For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot

Sign in to add a comment