Research the size overhead of the inline defaulted move constructors.
Reported by
yorikpig...@gmail.com,
May 31 2018
|
||||||
Issue descriptionUserAgent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/66.0.3359.181 YaBrowser/18.6.1.287 (beta) Yowser/2.5 Safari/537.36 Steps to reproduce the problem: Google's c++ style guide requires noexcept on moves. At the same time current precommit checks require that complicated move constructors be declared out of line. When declaring move constructor/assignment noexcept, default and out of line - some compilers will report a bug when the members of your type are not noexcept move constructible/assignable. And others wouldn't. Example: https://godbolt.org/g/gUVakx On top of compilers having different requirements, different standard libraries provide different noexcept guaranties. For example std::set has a noexcept move constructor in libc++ but doesn't have one in MSVC. A solution could be to write noexcept default move constructors inline. This, as far as I understand, forces the noexcept regardless of the member characteristics. Example: https://godbolt.org/g/ze5zNy However, it might increase the binary size. This task should answer: is the binary size increase a real problem if we change the out of line declaration rule. discussion: https://groups.google.com/a/chromium.org/forum/?utm_medium=email&utm_source=footer#!msg/cxx/ze4WJFg7RvU/USljDy4WBAAJ What is the expected behavior? What went wrong? (nothing) Did this work before? N/A Chrome version: 66.0.3359.181 Channel: n/a OS Version: OS X 10.13.4 Flash Version: Shockwave Flash 29.0 r0
,
May 31 2018
Sorry for reporting a bug from an account for spam, my bad.
,
Jun 1 2018
,
Jun 1 2018
As this issue is out of scope of triaging at TE end, adding 'TE-NeedsTriageHelp' label and requesting someone from Blink>JavaScript>Language to look into the issue and help in further triaging. Thanks...
,
Jun 1 2018
This isn't V8 specific. I'm not sure what component this fits under, please re-assign to a Chrome/Blink issue sheriff for triage.
,
Jun 1 2018
thakis@, brucedawson@ you guys might have some context here.
,
Jun 13 2018
|
||||||
►
Sign in to add a comment |
||||||
Comment 1 Deleted