Evaluate c++17 readiness |
||||||||||||||||||||||
Issue descriptionc++17 was ratified jul 31 2017 I gave it a try here: https://chromium-review.googlesource.com/c/593214/ On Mac/iOS, open-vcdiff: In file included from ../../sdch/open-vcdiff/src/decodetable.cc:19: ../../sdch/open-vcdiff/src/decodetable.h:136:8: error: no template named 'auto_ptr' in namespace 'std' std::auto_ptr<VCDiffCodeTableData> non_default_code_table_data_; ~~~~~^ On Win, MSVC's STL: FAILED: obj/base/base/memory_win.obj E:\b\c\goma_client/gomacc.exe ../../third_party/llvm-build/Release+Asserts/bin/clang-cl.exe /nologo /showIncludes @obj/base/base/memory_win.obj.rsp /c ../../base/process/memory_win.cc /Foobj/base/base/memory_win.obj /Fd"obj/base/base_cc.pdb" In file included from ../../base/process/memory_win.cc:7: e:\b\c\win_toolchain\vs_files\f53e4598951162bad6330f7a167486c7ae5db1e5\win_sdk\include\10.0.15063.0\ucrt\new.h(31,42): error: conflicting types for 'set_new_handler' _CRTIMP2 new_handler __cdecl set_new_handler(_In_opt_ new_handler _NewHandler) throw(); ^ e:\b\c\win_toolchain\vs_files\f53e4598951162bad6330f7a167486c7ae5db1e5\vc\include\new(26,30): note: previous declaration is here _CRTIMP2 new_handler __cdecl set_new_handler(_In_opt_ new_handler) ^ On Linux, libc++: In file included from ../../buildtools/third_party/libc++abi/trunk/src/cxa_unexpected.cpp:12: ../../buildtools/third_party/libc++abi/trunk/src/cxa_exception.hpp:39:10: error: no type named 'unexpected_handler' in namespace 'std' std::unexpected_handler unexpectedHandler; ~~~~~^ ../../buildtools/third_party/libc++abi/trunk/src/cxa_exception.hpp:91:10: error: no type named 'unexpected_handler' in namespace 'std' std::unexpected_handler unexpectedHandler; ~~~~~^ 2 errors generated. ⛆ |
|
|
Showing comments 7 - 106
of 106
Older ›
,
Nov 27 2017
On linux, without shipped libc++abi, with gcc 7.2:
- crc32c and leveldatabase requires c++17. I tried to add -std=gnu++17 to both, but this is not works.
- if I modify the cflagc_cc to -std=gnu++17 in build/config/compiler/BUILD.gn, the skia build fails:
FAILED: obj/skia/skia/SkTLS_pthread.o
g++ -MMD -MF obj/skia/skia/SkTLS_pthread.o.d -DV8_DEPRECATION_WARNINGS -DUSE_UDEV -DUSE_AURA=1 -DUSE_PANGO=1 -DUSE_CAIRO=1 -DUSE_GLIB=1 -DUSE_NSS_CERTS=1 -DUSE_X11=1 -DNO_TCMALLOC -DDISABLE_NACL -DFULL_SAFE_BROWSING -DSAFE_BROWSING_CSD -DSAFE_BROWSING_DB_LOCAL -DCHROMIUM_BUILD -DFIELDTRIAL_TESTING_ENABLED -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -DNDEBUG -DNVALGRIND -DDYNAMIC_ANNOTATIONS_ENABLED=0 -DSK_IGNORE_LINEONLY_AA_CONVEX_PATH_OPTS -DSK_HAS_PNG_LIBRARY -DSK_HAS_WEBP_LIBRARY -DSK_HAS_JPEG_LIBRARY -DSK_SUPPORT_GPU=1 -DSK_FREETYPE_MINIMUM_RUNTIME_VERSION=\(\(\(FREETYPE_MAJOR\)\ \*\ 0x01000000\)\ \|\ \(\(FREETYPE_MINOR\)\ \*\ 0x00010000\)\ \|\ \(\(FREETYPE_PATCH\)\ \*\ 0x00000100\)\) -DSK_GAMMA_EXPONENT=1.2 -DSK_GAMMA_CONTRAST=0.2 -DSK_DEFAULT_FONT_CACHE_LIMIT=20971520 -DGLIB_VERSION_MAX_ALLOWED=GLIB_VERSION_2_54 -DGLIB_VERSION_MIN_REQUIRED=GLIB_VERSION_2_26 -DUSE_LIBJPEG_TURBO=1 -DU_USING_ICU_NAMESPACE=0 -DU_ENABLE_DYLOAD=0 -DU_STATIC_IMPLEMENTATION -DICU_UTIL_DATA_IMPL=ICU_UTIL_DATA_FILE -DUCHAR_TYPE=uint16_t -I../.. -Igen -I../../skia/config -I../../skia/ext -I../../third_party/skia/include/c -I../../third_party/skia/include/config -I../../third_party/skia/include/core -I../../third_party/skia/include/effects -I../../third_party/skia/include/encode -I../../third_party/skia/include/gpu -I../../third_party/skia/include/images -I../../third_party/skia/include/lazy -I../../third_party/skia/include/pathops -I../../third_party/skia/include/pdf -I../../third_party/skia/include/pipe -I../../third_party/skia/include/ports -I../../third_party/skia/include/utils -I../../third_party/skia/third_party/vulkan -I../../third_party/skia/include/codec -I../../third_party/skia/src/gpu -I../../third_party/skia/src/sksl -I../../third_party/skia/include/private -I../../third_party/skia/include/client/android -I../../third_party/skia/src/codec -I../../third_party/skia/src/core -I../../third_party/skia/src/image -I../../third_party/skia/src/images -I../../third_party/skia/src/opts -I../../third_party/skia/src/pdf -I../../third_party/skia/src/ports -I../../third_party/skia/src/shaders -I../../third_party/skia/src/shaders/gradients -I../../third_party/skia/src/sfnt -I../../third_party/skia/src/utils -I../../third_party/skia/src/lazy -I../../third_party/skia/third_party/gif -I../../third_party/skia/src/effects/gradients -I../../third_party/libpng -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/cairo -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/pixman-1 -I/usr/include/libpng16 -I/usr/include/libdrm -I/usr/include/libpng16 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I../../third_party/libwebp/src -I../../third_party/freetype/include -I../../third_party/freetype/src/include -I../../third_party/libjpeg_turbo -I../../third_party/zlib -I../../third_party/icu/source/common -I../../third_party/icu/source/i18n -I../../third_party/sfntly/src/cpp/src -fno-strict-aliasing --param=ssp-buffer-size=4 -fstack-protector -Wno-builtin-macro-redefined -D__DATE__= -D__TIME__= -D__TIMESTAMP__= -funwind-tables -fPIC -pipe -pthread -m32 -msse2 -mfpmath=sse -mmmx -fomit-frame-pointer -g0 -fvisibility=hidden -Wno-unused-local-typedefs -Wno-maybe-uninitialized -Wno-missing-field-initializers -Wno-unused-parameter -O2 -fno-ident -fdata-sections -ffunction-sections -std=gnu++17 -fno-rtti -fno-exceptions -fvisibility-inlines-hidden -Wno-narrowing -c ../../third_party/skia/src/ports/SkTLS_pthread.cpp -o obj/skia/skia/SkTLS_pthread.o
../../third_party/skia/src/ports/SkTLS_pthread.cpp: In static member function 'static void* SkTLS::PlatformGetSpecific(bool)':
../../third_party/skia/src/ports/SkTLS_pthread.cpp:19:59: error: no match for call to '(SkOnce) (int (&)(pthread_key_t*, void (*)(void*)) noexcept, pthread_key_t*, void (&)(void*))'
once(pthread_key_create, &gSkTLSKey, SkTLS::Destructor);
^
In file included from ../../third_party/skia/src/ports/SkTLS_pthread.cpp:9:0:
../../third_party/skia/include/private/SkOnce.h:25:10: note: candidate: void SkOnce::operator()(Fn&&, Args&& ...) [with Fn = int (&)(unsigned int*, void (*)(void*)) noexcept; Args = {unsigned int*, void (&)(void*)}]
void operator()(Fn&& fn, Args&&... args) {
^~~~~~~~
../../third_party/skia/include/private/SkOnce.h:25:10: note: no known conversion for argument 1 from 'int(pthread_key_t*, void (*)(void*)) noexcept {aka int(unsigned int*, void (*)(void*)) noexcept}' to 'int (&)(unsigned int*, void (*)(void*)) noexcept'
,
Dec 17 2017
,
Jan 2 2018
,
Jan 5 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/9f78c9314f583e92bba148549b3553699224c75c commit 9f78c9314f583e92bba148549b3553699224c75c Author: jdoerrie <jdoerrie@chromium.org> Date: Fri Jan 05 12:21:25 2018 Return references from base::circular_deque::emplace_* C++17 changes the return type of emplace{,_front,_back} from void to reference for sequence containers [1]. This change updates base::circular_deque to reflect this change and be compatible with C++17. Note that this change has no effect on base::queue when using C++14, as std::queue does not know yet about the changed return type. [1] http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2016/p0084r2.pdf Bug: 752720 Change-Id: I163a6b60ade83ba135f429c8677fd60ab0bad451 Reviewed-on: https://chromium-review.googlesource.com/839773 Commit-Queue: Jan Wilken Dörrie <jdoerrie@chromium.org> Reviewed-by: Brett Wilson <brettw@chromium.org> Cr-Commit-Position: refs/heads/master@{#527259} [modify] https://crrev.com/9f78c9314f583e92bba148549b3553699224c75c/base/containers/circular_deque.h [modify] https://crrev.com/9f78c9314f583e92bba148549b3553699224c75c/base/containers/circular_deque_unittest.cc
,
Jan 8 2018
,
Jan 31 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/2f79d5432935b938db048a1899a0ba1150159397 commit 2f79d5432935b938db048a1899a0ba1150159397 Author: Nico Weber <thakis@chromium.org> Date: Wed Jan 31 14:33:22 2018 various small tweaks to blink's gperf use * make gperf.py call generate_gperf() both when it's invoked via use_jinja_gperf_template() as well as when it's called directly as a standalone script * make generate_gperf() do massaging of gperf's output to remove uses of the `register` keyword (needed to build with -std=c++17) and replace `/*FALLTHROUGH*/` with real FALLTHROUGH statements (needed for -Wimplicit-fallthrough) * remove now-unneeded suppressions for -Wdeprecated-register * remove TODO about removing gperf.py; that's from a time when the script was 1 non-comment line long * bump check_output() requirement in comment to 3.4 (since that added the input= parameter) * add missing dependency on gperf.py to build steps calling it through the jinja interface, so that these edges rerun when gperf.py gets modified * add a comment mentioning gperf.py at the start of the generated outputs * make :character_data not call gperf.py since it doesn't use gperf, and make it use compiled_action() instead which is made for exactly character_data's use case No intended behavior change. Bug: 752720, 177475 Change-Id: I56372729bb47787e2d41a5dff2f30804574770f0 Reviewed-on: https://chromium-review.googlesource.com/891141 Commit-Queue: Nico Weber <thakis@chromium.org> Reviewed-by: Darren Shen <shend@chromium.org> Reviewed-by: Daniel Cheng <dcheng@chromium.org> Cr-Commit-Position: refs/heads/master@{#533269} [modify] https://crrev.com/2f79d5432935b938db048a1899a0ba1150159397/third_party/WebKit/Source/build/scripts/core/css/parser/templates/AtRuleDescriptors.cpp.tmpl [modify] https://crrev.com/2f79d5432935b938db048a1899a0ba1150159397/third_party/WebKit/Source/build/scripts/core/css/templates/CSSValueKeywords.cpp.tmpl [modify] https://crrev.com/2f79d5432935b938db048a1899a0ba1150159397/third_party/WebKit/Source/build/scripts/gperf.py [modify] https://crrev.com/2f79d5432935b938db048a1899a0ba1150159397/third_party/WebKit/Source/build/scripts/templates/CSSPropertyNames.cpp.tmpl [modify] https://crrev.com/2f79d5432935b938db048a1899a0ba1150159397/third_party/WebKit/Source/core/BUILD.gn [modify] https://crrev.com/2f79d5432935b938db048a1899a0ba1150159397/third_party/WebKit/Source/platform/BUILD.gn [modify] https://crrev.com/2f79d5432935b938db048a1899a0ba1150159397/third_party/WebKit/Source/platform/ColorData.gperf
,
Jan 31 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/873601c652609d47e253c5e03672d80681be6fa7 commit 873601c652609d47e253c5e03672d80681be6fa7 Author: Rouslan Solomakhin <rouslan@chromium.org> Date: Wed Jan 31 15:32:16 2018 Revert "various small tweaks to blink's gperf use" This reverts commit 2f79d5432935b938db048a1899a0ba1150159397. Reason for revert: Failed compile on https://ci.chromium.org/buildbot/chromium.win/WinMSVC64/1698 [74/5635] ACTION //third_party/WebKit/Source/platform:color_data(//build/toolchain/win:x64) FAILED: gen/blink/platform/ColorData.cpp E:/b/depot_tools/win_tools-2_7_6_bin/python/bin/python.exe ../../third_party/WebKit/Source/build/scripts/gperf.py ../../third_party/gperf/bin/gperf.exe --key-positions=* -D -s 2 ../../third_party/WebKit/Source/platform/ColorData.gperf --output-file=gen/blink/platform/ColorData.cpp Traceback (most recent call last): File "../../third_party/WebKit/Source/build/scripts/gperf.py", line 88, in <module> main() File "../../third_party/WebKit/Source/build/scripts/gperf.py", line 85, in main generate_gperf(gperf_path, open(infile).read(), gperf_args)) File "../../third_party/WebKit/Source/build/scripts/gperf.py", line 30, in generate_gperf gperf_output = gperf.communicate(gperf_input)[0] File "E:\b\depot_tools\win_tools-2_7_6_bin\python\bin\lib\subprocess.py", line 798, in communicate return self._communicate(input) File "E:\b\depot_tools\win_tools-2_7_6_bin\python\bin\lib\subprocess.py", line 1035, in _communicate self.stdin.write(input) IOError: [Errno 22] Invalid argument Original change's description: > various small tweaks to blink's gperf use > > * make gperf.py call generate_gperf() both when it's invoked via > use_jinja_gperf_template() as well as when it's called directly > as a standalone script > > * make generate_gperf() do massaging of gperf's output to remove > uses of the `register` keyword (needed to build with -std=c++17) > and replace `/*FALLTHROUGH*/` with real FALLTHROUGH statements > (needed for -Wimplicit-fallthrough) > > * remove now-unneeded suppressions for -Wdeprecated-register > > * remove TODO about removing gperf.py; that's from a time when the > script was 1 non-comment line long > > * bump check_output() requirement in comment to 3.4 (since that added > the input= parameter) > > * add missing dependency on gperf.py to build steps calling it > through the jinja interface, so that these edges rerun when > gperf.py gets modified > > * add a comment mentioning gperf.py at the start of the generated > outputs > > * make :character_data not call gperf.py since it doesn't use gperf, > and make it use compiled_action() instead which is made for > exactly character_data's use case > > No intended behavior change. > > Bug: 752720, 177475 > Change-Id: I56372729bb47787e2d41a5dff2f30804574770f0 > Reviewed-on: https://chromium-review.googlesource.com/891141 > Commit-Queue: Nico Weber <thakis@chromium.org> > Reviewed-by: Darren Shen <shend@chromium.org> > Reviewed-by: Daniel Cheng <dcheng@chromium.org> > Cr-Commit-Position: refs/heads/master@{#533269} TBR=dcheng@chromium.org,thakis@chromium.org,shend@chromium.org Change-Id: Iddbf12ba341fa4ea456552f449154bc5d6328073 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: 752720, 177475 Reviewed-on: https://chromium-review.googlesource.com/895543 Reviewed-by: Rouslan Solomakhin <rouslan@chromium.org> Commit-Queue: Rouslan Solomakhin <rouslan@chromium.org> Cr-Commit-Position: refs/heads/master@{#533276} [modify] https://crrev.com/873601c652609d47e253c5e03672d80681be6fa7/third_party/WebKit/Source/build/scripts/core/css/parser/templates/AtRuleDescriptors.cpp.tmpl [modify] https://crrev.com/873601c652609d47e253c5e03672d80681be6fa7/third_party/WebKit/Source/build/scripts/core/css/templates/CSSValueKeywords.cpp.tmpl [modify] https://crrev.com/873601c652609d47e253c5e03672d80681be6fa7/third_party/WebKit/Source/build/scripts/gperf.py [modify] https://crrev.com/873601c652609d47e253c5e03672d80681be6fa7/third_party/WebKit/Source/build/scripts/templates/CSSPropertyNames.cpp.tmpl [modify] https://crrev.com/873601c652609d47e253c5e03672d80681be6fa7/third_party/WebKit/Source/core/BUILD.gn [modify] https://crrev.com/873601c652609d47e253c5e03672d80681be6fa7/third_party/WebKit/Source/platform/BUILD.gn [modify] https://crrev.com/873601c652609d47e253c5e03672d80681be6fa7/third_party/WebKit/Source/platform/ColorData.gperf
,
Jan 31 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/26af1d326eec9759c01552d85b3f60927c7d8135 commit 26af1d326eec9759c01552d85b3f60927c7d8135 Author: Nico Weber <thakis@chromium.org> Date: Wed Jan 31 19:53:11 2018 Reland: various small tweaks to blink's gperf use * make gperf.py call generate_gperf() both when it's invoked via use_jinja_gperf_template() as well as when it's called directly as a standalone script * make generate_gperf() do massaging of gperf's output to remove uses of the `register` keyword (needed to build with -std=c++17) and replace `/*FALLTHROUGH*/` with real FALLTHROUGH statements (needed for -Wimplicit-fallthrough) * remove now-unneeded suppressions for -Wdeprecated-register * remove TODO about removing gperf.py; that's from a time when the script was 1 non-comment line long * bump check_output() requirement in comment to 3.4 (since that added the input= parameter) * add missing dependency on gperf.py to build steps calling it through the jinja interface, so that these edges rerun when gperf.py gets modified * add a comment mentioning gperf.py at the start of the generated outputs * make :character_data not call gperf.py since it doesn't use gperf, and make it use compiled_action() instead which is made for exactly character_data's use case No intended behavior change. Originally reviewed at https://chromium-review.googlesource.com/c/chromium/src/+/891141 Attempt to fix WinMSVC64 by not passing input both on stdin and as arg. TBR=dcheng Bug: 752720, 177475 Change-Id: I8ef306cd0c943f06fc3538b58cf0bc086cd391dc Reviewed-on: https://chromium-review.googlesource.com/895668 Reviewed-by: Nico Weber <thakis@chromium.org> Reviewed-by: Daniel Cheng <dcheng@chromium.org> Commit-Queue: Daniel Cheng <dcheng@chromium.org> Cr-Commit-Position: refs/heads/master@{#533364} [modify] https://crrev.com/26af1d326eec9759c01552d85b3f60927c7d8135/third_party/WebKit/Source/build/scripts/core/css/parser/templates/AtRuleDescriptors.cpp.tmpl [modify] https://crrev.com/26af1d326eec9759c01552d85b3f60927c7d8135/third_party/WebKit/Source/build/scripts/core/css/templates/CSSValueKeywords.cpp.tmpl [modify] https://crrev.com/26af1d326eec9759c01552d85b3f60927c7d8135/third_party/WebKit/Source/build/scripts/gperf.py [modify] https://crrev.com/26af1d326eec9759c01552d85b3f60927c7d8135/third_party/WebKit/Source/build/scripts/templates/CSSPropertyNames.cpp.tmpl [modify] https://crrev.com/26af1d326eec9759c01552d85b3f60927c7d8135/third_party/WebKit/Source/core/BUILD.gn [modify] https://crrev.com/26af1d326eec9759c01552d85b3f60927c7d8135/third_party/WebKit/Source/platform/BUILD.gn [modify] https://crrev.com/26af1d326eec9759c01552d85b3f60927c7d8135/third_party/WebKit/Source/platform/ColorData.gperf
,
Apr 20 2018
,
Apr 24 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/99c0d03b9424ec1f31512bfe80f2dd01566c3924 commit 99c0d03b9424ec1f31512bfe80f2dd01566c3924 Author: Oystein Eftevaag <oysteine@chromium.org> Date: Tue Apr 24 00:25:56 2018 Rolled //third_party/perfetto to e62bd2ba4fb9e814d832cc313f9181b998cf7144 (ToT) R=primiano@chromium.org CC=tzik@chromium.org PRESUBMIT=TRUE BUG=752720 Change-Id: I0f4c5540fb58b1df000e2fcbe75a93f110cef39e Reviewed-on: https://chromium-review.googlesource.com/1024398 Reviewed-by: Primiano Tucci <primiano@chromium.org> Commit-Queue: oysteine <oysteine@chromium.org> Cr-Commit-Position: refs/heads/master@{#552921} [modify] https://crrev.com/99c0d03b9424ec1f31512bfe80f2dd01566c3924/DEPS
,
Apr 24 2018
The Skia issue in comment #7 appears to be a result of https://gcc.gnu.org/bugzilla/show_bug.cgi?id=82406 . In any event I have locally confirmed that this no longer happens with gcc 7.3.
,
Apr 25 2018
,
Apr 25 2018
On my attempt remaining issues are: * `register` keyword used in mesa gets unavailable. - http://crrev.com/c/1027451 * std::random_shuffle gets unavailable. - http://crrev.com/c/1023495 - A fix for crashpad is pending. * Return type update on emplace_back - Fixed and rolled as #c16 * Distinct type for noexcept functions - http://crrev.com/c/1027530 * Deprecated <functional> adapters get unavailable. - http://crrev.com/c/1025541 - https://webrtc-review.googlesource.com/c/src/+/72360. Plus, needs roll. * std::auto_ptr gets unavailable. - Already fixed in upstream. Needs roll. - http://crrev.com/c/1027561 * libc++abi needs to stick to C++14. - Needs configurable -std=*. http://crrev.com/c/1027600
,
Apr 25 2018
Thanks for looking at this!
,
Apr 25 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/22ae932e849e899e818ac3a28f060f7d19b76a42 commit 22ae932e849e899e818ac3a28f060f7d19b76a42 Author: tzik <tzik@chromium.org> Date: Wed Apr 25 16:22:12 2018 Remove deprecated std::ptr_fun and std::bind2nd std::ptr_fun and std::bind2nd are deprecated in C++11, and removed in C++17. This CL removes their usage, so that the code base is ready for C++17. Bug: 752720 Change-Id: I5a33143768a32864367f6889c4d1dbd0a26ee9e2 Reviewed-on: https://chromium-review.googlesource.com/1025541 Reviewed-by: Nico Weber <thakis@chromium.org> Reviewed-by: Sorin Jianu <sorin@chromium.org> Reviewed-by: Maksim Ivanov <emaxx@chromium.org> Commit-Queue: Nico Weber <thakis@chromium.org> Cr-Commit-Position: refs/heads/master@{#553595} [modify] https://crrev.com/22ae932e849e899e818ac3a28f060f7d19b76a42/components/policy/core/common/preg_parser.cc [modify] https://crrev.com/22ae932e849e899e818ac3a28f060f7d19b76a42/components/update_client/background_downloader_win.cc
,
Apr 26 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/d58a892381cec4d6b19f0f0333964621bee1a901 commit d58a892381cec4d6b19f0f0333964621bee1a901 Author: tzik <tzik@chromium.org> Date: Thu Apr 26 04:29:53 2018 Support C++17 noexcept function type in base::Bind In C++17, noexcept keyword is a part of the function type, and that causes a pattern match failure on base::Bind implementation. This CL fixes the failure by falling it back to bare function cases. Bug: 752720 Change-Id: I98c71977fa3fd759956c86e394fb9e30179c951c Reviewed-on: https://chromium-review.googlesource.com/1027530 Reviewed-by: Daniel Cheng <dcheng@chromium.org> Commit-Queue: Taiju Tsuiki <tzik@chromium.org> Cr-Commit-Position: refs/heads/master@{#553913} [modify] https://crrev.com/d58a892381cec4d6b19f0f0333964621bee1a901/base/bind_internal.h [modify] https://crrev.com/d58a892381cec4d6b19f0f0333964621bee1a901/base/bind_unittest.cc
,
Apr 27 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromium/buildtools/+/b7d53a93026d04002ca0705b5bf002de79c72165 commit b7d53a93026d04002ca0705b5bf002de79c72165 Author: tzik <tzik@chromium.org> Date: Thu Apr 26 09:05:03 2018 Make libc++abi C++17 ready libc++abi used to fail to compile in C++17 mode, as it touches std::unexpected, which is removed in C++17. This CL adds _LIBCPP_ENABLE_CXX17_REMOVED_UNEXPECTED_FUNCTIONS macro to all libc++abi files, so that libc++ provides missing std::unexpected even in C++17. Bug: 752720 Change-Id: Ib7cc2e350ae9bcd373cd9b4ea91ee4dcb85a0b6a [modify] https://crrev.com/b7d53a93026d04002ca0705b5bf002de79c72165/third_party/libc++abi/BUILD.gn
,
Apr 27 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromium/deps/mesa/+/9d9b0710470f581cb5485b02b6acd8415cc093e8 commit 9d9b0710470f581cb5485b02b6acd8415cc093e8 Author: tzik <tzik@chromium.org> Date: Thu Apr 26 11:36:47 2018 Regenerate chromium_gensrc with newer flex and bison This CL updates chremium_gensrc/ with the regenerated sources. ---- cd third_party/mesa/src touch src/mapi/glapi/gen/glapi_gen.mk ./autogen.sh ./configure make -k -j$(nproc) cd src/glsl cp -t ../../chromium_gensrc \ glcpp/glcpp-lex.c \ glcpp/glcpp-parse.{h,c} \ glsl_lexer.cc \ glsl_parser.{h,cc} \ program/lex.yy.c cp -t ../../chromium_gensrc/program \ program/program_parse.tab.{h,c} sed -i 's/\(yylex.*\)scanner/\1YYLEX_PARAM/g' \ glsl_parser.cc program/program_parse.tab.c sed -i 's/YYID//g' program/program_parse.tab.c Bug: chromium:752720 Change-Id: I28286d7f9581b2ba2c0d10cee273eb7fd3354dbe [modify] https://crrev.com/9d9b0710470f581cb5485b02b6acd8415cc093e8/chromium_gensrc/mesa/glcpp-parse.c [modify] https://crrev.com/9d9b0710470f581cb5485b02b6acd8415cc093e8/chromium_gensrc/mesa/glsl_lexer.cc [modify] https://crrev.com/9d9b0710470f581cb5485b02b6acd8415cc093e8/chromium_gensrc/mesa/program/program_parse.tab.c [modify] https://crrev.com/9d9b0710470f581cb5485b02b6acd8415cc093e8/chromium_gensrc/mesa/program/program_parse.tab.h [modify] https://crrev.com/9d9b0710470f581cb5485b02b6acd8415cc093e8/chromium_gensrc/mesa/glcpp-lex.c [modify] https://crrev.com/9d9b0710470f581cb5485b02b6acd8415cc093e8/chromium_gensrc/mesa/lex.yy.c [modify] https://crrev.com/9d9b0710470f581cb5485b02b6acd8415cc093e8/chromium_gensrc/mesa/glsl_parser.h [modify] https://crrev.com/9d9b0710470f581cb5485b02b6acd8415cc093e8/chromium_gensrc/mesa/glsl_parser.cc [modify] https://crrev.com/9d9b0710470f581cb5485b02b6acd8415cc093e8/chromium_gensrc/mesa/glcpp-parse.h
,
Apr 27 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/697e66a731ddf3da1e8704d7002646c1350f872e commit 697e66a731ddf3da1e8704d7002646c1350f872e Author: tzik <tzik@chromium.org> Date: Fri Apr 27 05:04:17 2018 Replace std::mem_fun with std::mem_fn in //chromeos/dbus As std::mem_fun is deprecated in C++11 and removed in C++17, we need to update it to compile the code in C++17. Bug: 752720 Change-Id: I8f1c6bb8d6b302ec20799b6d2d636f7ac4d62e2b Reviewed-on: https://chromium-review.googlesource.com/1032111 Reviewed-by: Ryo Hashimoto <hashimoto@chromium.org> Commit-Queue: Taiju Tsuiki <tzik@chromium.org> Cr-Commit-Position: refs/heads/master@{#554312} [modify] https://crrev.com/697e66a731ddf3da1e8704d7002646c1350f872e/chromeos/dbus/services/service_provider_test_helper.cc
,
Apr 27 2018
Reporting updates before leaving for OOO. Remaining issues on Linux C++17 are: 1. std::random_shuffle: - still under review. I'll probably wait for farahcharab's thread-local PRNG. - http://crrev.com/c/1023495 2. webrtc: - an upstream change is under review - https://webrtc-review.googlesource.com/c/src/+/72360 3. libaddressinput: - an upstream change is under review - https://github.com/googlei18n/libaddressinput/pull/159 4. libc++abi: - local workaround is in. - needs clean up after upstream change lands - https://reviews.llvm.org/D46056 After (2) is resolved, we'll be able to try it on the bot for other platforms.
,
Apr 27 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/6ba36e49a0c26c53bf7e4507707f84f7a20e2205 commit 6ba36e49a0c26c53bf7e4507707f84f7a20e2205 Author: tzik <tzik@chromium.org> Date: Fri Apr 27 12:30:49 2018 Roll src/buildtools/ ab7b6a7b3..b7d53a930 (1 commit) https://chromium.googlesource.com/chromium/buildtools.git/+log/ab7b6a7b350d..b7d53a93026d $ git log ab7b6a7b3..b7d53a930 --date=short --no-merges --format='%ad %ae %s' 2018-04-26 tzik Make libc++abi C++17 ready Created with: roll-dep src/buildtools BUG=752720 Change-Id: I225dd038f21b49d34bdf48bfd3fddaf40c1b2fea Reviewed-on: https://chromium-review.googlesource.com/1032130 Commit-Queue: Nico Weber <thakis@chromium.org> Reviewed-by: Nico Weber <thakis@chromium.org> Cr-Commit-Position: refs/heads/master@{#554362} [modify] https://crrev.com/6ba36e49a0c26c53bf7e4507707f84f7a20e2205/DEPS
,
Apr 29 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/51556bb7b468ff3bb5e998f69388b82a3633798f commit 51556bb7b468ff3bb5e998f69388b82a3633798f Author: tzik <tzik@chromium.org> Date: Sun Apr 29 09:48:22 2018 Roll src/third_party/mesa/src/ 803b11320..9d9b07104 (1 commit) https://chromium.googlesource.com/chromium/deps/mesa.git/+log/803b11320967..9d9b0710470f $ git log 803b11320..9d9b07104 --date=short --no-merges --format='%ad %ae %s' 2018-04-26 tzik Regenerate chromium_gensrc with newer flex and bison Created with: roll-dep src/third_party/mesa/src BUG=752720 Change-Id: I29ff738aab99fb36f8a89ea0b3732ad5cba29ec0 Reviewed-on: https://chromium-review.googlesource.com/1032132 Commit-Queue: Taiju Tsuiki <tzik@chromium.org> Reviewed-by: Antoine Labour <piman@chromium.org> Cr-Commit-Position: refs/heads/master@{#554669} [modify] https://crrev.com/51556bb7b468ff3bb5e998f69388b82a3633798f/DEPS [modify] https://crrev.com/51556bb7b468ff3bb5e998f69388b82a3633798f/third_party/mesa/BUILD.gn [modify] https://crrev.com/51556bb7b468ff3bb5e998f69388b82a3633798f/third_party/mesa/README.chromium
,
May 2 2018
The following revision refers to this bug: https://webrtc.googlesource.com/src.git/+/2199580590342381d07b215613be82964ab44871 commit 2199580590342381d07b215613be82964ab44871 Author: tzik <tzik@chromium.org> Date: Wed May 02 19:51:17 2018 Remove deprecated std::bind2nd and std::ptr_fun std::bind2nd and std::ptr_fun are deprecated in C++11 and removed in C++17. This CL removes their usage, so that the code base is ready for C++17. Bug: chromium:752720 Change-Id: I6ec0b596202ebf84cf7b8744f516a76ac8328ccd Reviewed-on: https://webrtc-review.googlesource.com/72360 Reviewed-by: Niels Moller <nisse@webrtc.org> Reviewed-by: Karl Wiberg <kwiberg@webrtc.org> Commit-Queue: Taiju Tsuiki <tzik@chromium.org> Cr-Commit-Position: refs/heads/master@{#23083} [modify] https://crrev.com/2199580590342381d07b215613be82964ab44871/pc/mediasession.cc
,
May 2 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/29f0d0af0615e8ba6c45ccd715f0886ce6b2d068 commit 29f0d0af0615e8ba6c45ccd715f0886ce6b2d068 Author: webrtc-chromium-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com <webrtc-chromium-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com> Date: Wed May 02 23:40:25 2018 Roll src/third_party/webrtc/ c3d8bb1c5..219958059 (4 commits) https://webrtc.googlesource.com/src.git/+log/c3d8bb1c522d..219958059034 $ git log c3d8bb1c5..219958059 --date=short --no-merges --format='%ad %ae %s' Created with: roll-dep src/third_party/webrtc BUG=chromium:752720 The AutoRoll server is located here: https://webrtc-chromium-roll.skia.org Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+/master/autoroll/README.md If the roll is causing failures, please contact the current sheriff, who should be CC'd on the roll, and stop the roller if necessary. CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:linux_chromium_archive_rel_ng;master.tryserver.chromium.mac:mac_chromium_archive_rel_ng TBR=webrtc-chromium-sheriffs-robots@google.com Change-Id: Ib4c32b2a27f0c4f4effd47b6b14888408b2973c6 Reviewed-on: https://chromium-review.googlesource.com/1040740 Reviewed-by: webrtc-chromium-autoroll <webrtc-chromium-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com> Commit-Queue: webrtc-chromium-autoroll <webrtc-chromium-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com> Cr-Commit-Position: refs/heads/master@{#555611} [modify] https://crrev.com/29f0d0af0615e8ba6c45ccd715f0886ce6b2d068/DEPS
,
May 7 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromium/buildtools/+/292896eef97e4c9af9bc1ae96e83779d7cceb24b commit 292896eef97e4c9af9bc1ae96e83779d7cceb24b Author: tzik <tzik@chromium.org> Date: Mon May 07 04:57:14 2018 Roll libc++abi 52c7a376..05a73941 This rolls libc++abi to grab 934e061, and removes an unneeded warning suppression for it. 05a7394 Fix test failure for missing _LIBCPP_ENABLE_CXX17_REMOVED_UNEXPECTED_FUNCTIONS 934e061 Move _LIBCPP_ENABLE_CXX17_REMOVED_UNEXPECTED_FUNCTIONS macro to build system b95ff2d [libc++abi] Replace __sync_* functions with __libcpp_atomic_* functions. 0df654b [demangler] NFC: Some refactoring to support partial demangling. Bug: 752720 Change-Id: I311f5de4677d551d245549db84dbd82acb6dddf4 [modify] https://crrev.com/292896eef97e4c9af9bc1ae96e83779d7cceb24b/deps_revisions.gni [modify] https://crrev.com/292896eef97e4c9af9bc1ae96e83779d7cceb24b/third_party/libc++abi/BUILD.gn [modify] https://crrev.com/292896eef97e4c9af9bc1ae96e83779d7cceb24b/DEPS
,
May 7 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/ef1f9c4bfd76361fe6739c2de3e848b5cae0858f commit ef1f9c4bfd76361fe6739c2de3e848b5cae0858f Author: tzik <tzik@chromium.org> Date: Mon May 07 22:56:20 2018 Remove an unneeded warning suppression in //third_party/libwebm -Wno-deprecated-declarations is no longer needed after http://crrev.com/689599319903ef86. Bug: 752720 Change-Id: Ief8b8d62b9d503c597e05534009ca728786e764d Reviewed-on: https://chromium-review.googlesource.com/1046405 Reviewed-by: Miguel Casas <mcasas@chromium.org> Commit-Queue: Taiju Tsuiki <tzik@chromium.org> Cr-Commit-Position: refs/heads/master@{#556592} [modify] https://crrev.com/ef1f9c4bfd76361fe6739c2de3e848b5cae0858f/third_party/libwebm/BUILD.gn
,
May 8 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/5de2157f1e7fb9b16f92472fcdf635911f478495 commit 5de2157f1e7fb9b16f92472fcdf635911f478495 Author: tzik <tzik@chromium.org> Date: Tue May 08 03:42:47 2018 Add base::RandomShuffle as a replacement of deprecated std::random_shuffle As std::random_shuffle is deprecated in C++14, and removed in C++17, its usage blocks the transition to C++17. This CL adds base::RandomShuffle as the replacement, updates all users, and adds a presubmit check to ban std::random_shuffle. Bug: 752720 Change-Id: I99a9dd267e56c04176cf3dc1f6bb7025cdb1deb6 Reviewed-on: https://chromium-review.googlesource.com/1023495 Reviewed-by: Robert Sesek <rsesek@chromium.org> Reviewed-by: Gabriel Charette <gab@chromium.org> Reviewed-by: Scott Violet <sky@chromium.org> Reviewed-by: Jeffrey Yasskin <jyasskin@chromium.org> Commit-Queue: Taiju Tsuiki <tzik@chromium.org> Cr-Commit-Position: refs/heads/master@{#556680} [modify] https://crrev.com/5de2157f1e7fb9b16f92472fcdf635911f478495/PRESUBMIT.py [modify] https://crrev.com/5de2157f1e7fb9b16f92472fcdf635911f478495/base/rand_util.h [modify] https://crrev.com/5de2157f1e7fb9b16f92472fcdf635911f478495/chrome/browser/android/thumbnail/scoped_ptr_expiring_cache_unittest.cc [modify] https://crrev.com/5de2157f1e7fb9b16f92472fcdf635911f478495/chrome/browser/extensions/api/declarative_net_request/declarative_net_request_browsertest.cc [modify] https://crrev.com/5de2157f1e7fb9b16f92472fcdf635911f478495/components/autofill/core/browser/personal_data_manager_unittest.cc [modify] https://crrev.com/5de2157f1e7fb9b16f92472fcdf635911f478495/components/sync/base/ordinal_unittest.cc [modify] https://crrev.com/5de2157f1e7fb9b16f92472fcdf635911f478495/components/url_pattern_index/url_pattern_index_unittest.cc [modify] https://crrev.com/5de2157f1e7fb9b16f92472fcdf635911f478495/net/proxy_resolution/dhcp_pac_file_fetcher_win_unittest.cc [modify] https://crrev.com/5de2157f1e7fb9b16f92472fcdf635911f478495/net/third_party/http2/hpack/decoder/hpack_block_collector.cc [modify] https://crrev.com/5de2157f1e7fb9b16f92472fcdf635911f478495/third_party/crashpad/README.chromium [modify] https://crrev.com/5de2157f1e7fb9b16f92472fcdf635911f478495/third_party/crashpad/crashpad/client/prune_crash_reports_test.cc [modify] https://crrev.com/5de2157f1e7fb9b16f92472fcdf635911f478495/tools/ipc_fuzzer/fuzzer/fuzzer_main.cc
,
May 8 2018
Here is an update after an attempt on bots: https://chromium-review.googlesource.com/c/chromium/src/+/1032317/11 1. libaddressinput. A google3 CL is under review. cr/195613391 2. mac link failed due to the old libc++. A workaround is pending. http://crrev.com/c/1049186 3. ios. Simple glitch? http://crrev.com/c/1049089 4. fuchsia needs SDK roll for https://fuchsia-review.googlesource.com/c/zircon/+/151136 5. win is TBD. Probably we need to migrate to libc++ from MSVC STL first? 6. nacl. nacl-clang is too old to use C++17. I think nacl-clang is a hard blocker, as it will not be updated to a newer clang. I don't know the deprecation timeline of NaCl, but it probably doesn't happen anytime soon. Also, there seem some out-of-tree components that use Chromium around Android and ChromeOS. We should probably care them too?
,
May 9 2018
,
May 9 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/a1f0022e74bb529dffd6648ee28373a226759dae commit a1f0022e74bb529dffd6648ee28373a226759dae Author: tzik <tzik@chromium.org> Date: Wed May 09 10:16:11 2018 Disable C++17 aligned memory allocation on Mac libc++ starts using aligned new operator when it's in C++17 mode, but system libc++ on Mac doesn't have it, and that causes a link error. This CL turn on _LIBCPP_HAS_NO_ALIGNED_ALLOCATION to avoid using the unavailable aligned allocation. Bug: 752720 Change-Id: I89be50bcc26d23a43da3b807109a1271fcf141f0 Reviewed-on: https://chromium-review.googlesource.com/1049186 Commit-Queue: Taiju Tsuiki <tzik@chromium.org> Reviewed-by: Nico Weber <thakis@chromium.org> Cr-Commit-Position: refs/heads/master@{#557133} [modify] https://crrev.com/a1f0022e74bb529dffd6648ee28373a226759dae/build/config/compiler/BUILD.gn
,
May 10 2018
Re 5 above: CEF says it wants to keep supporting building with the MSVC STL even if we switch, and it'd be nice for clang-cl if it worked with the MSVC STL in c++17 mode. So we should probably try and fix things there. Maybe you can make a dedicated blocking bug for that and list issues there. (The constexpr thing is already fixed upstream and just needs a clang roll.)
,
May 11 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/5793a94f8e085fdec7b2277fbccfe7813bd73683 commit 5793a94f8e085fdec7b2277fbccfe7813bd73683 Author: tzik <tzik@chromium.org> Date: Fri May 11 04:18:40 2018 Roll src/third_party/crc32c/src/ 0f771ed5e..f8925d027 (8 commits) This grabs f8925d027884dde9, that fixes a compile failure of crc32c on C++17 mode. https://chromium.googlesource.com/external/github.com/google/crc32c.git/+log/0f771ed5ef83..f8925d027884 $ git log 0f771ed5e..f8925d027 --date=short --no-merges --format='%ad %ae %s' 2018-05-10 tzik Move string_view inclusion out of crc32c namespace (#19) 2018-04-23 costan Bump third-party dependencies and fix MSVC compile warning. (#18) 2018-03-15 costan Improved configuration for YouCompleteMe, Travis and AppVeyor. (#16) 2018-03-15 costan Disable exceptions on Visual Studio. (#17) 2018-02-23 costan Replace preprocessor macros with Google Test's Type-Parameterized Tests. (#15) 2017-11-30 costan Update dependencies. (#14) 2017-11-27 costan Remove unofficial product notice from README. (#13) 2017-10-05 costan CMake: fix include install path. (#12) Created with: roll-dep src/third_party/crc32c/src BUG=752720 Change-Id: I6b5b7f101b830fa0c7c5df6bfd6d201e01a9a358 Reviewed-on: https://chromium-review.googlesource.com/1053848 Commit-Queue: Taiju Tsuiki <tzik@chromium.org> Reviewed-by: Victor Costan <pwnall@chromium.org> Cr-Commit-Position: refs/heads/master@{#557793} [modify] https://crrev.com/5793a94f8e085fdec7b2277fbccfe7813bd73683/DEPS
,
May 11 2018
,
May 15 2018
,
May 16 2018
We are almost there. After resolving a few clang-cl issues (https://reviews.llvm.org/D46820 for http://crbug.com/842118 , and https://reviews.llvm.org/D46929 for http://crbug.com/842996 ), we'll be able to build everything but NaCl in C++17.
,
May 16 2018
Great progress! Is there any word on the timeline for NaCl depreciation?
,
May 16 2018
Re #34. FYI: As of now, enabling C++17 would block updating libchrome, i.e., would block to update Mojo in several branches for ARC, too. It may also affect to Mojo's "building c library" plan, too, as toolchain is not available for ARC branches now.
,
May 16 2018
Re 43: Can you expand on that? Why wasn't libchrome a problem for the C++11 and C++14 switches?
,
May 16 2018
Re #44: My understanding is... The transition plan for C++14 was not so aggressive. So, at least toolchain was available in Android branches. For historical reason, libchrome was left very old in AOSP. It is problematic for Mojo maintenance, and it is necessary to keep it updated.
,
May 16 2018
Can you explain what exactly is problematic? Do we build parts of chrome with other compilers? Which parts? Which mojo files?
,
May 16 2018
rockot@, could you share the Mojo plan, and what exactly will be broken if we keep using older Mojo?
,
May 16 2018
Why would we have to keep using an older Mojo? Please explain what dependencies exist as if I had no idea at all about libchrome and ARC++, and please answer the questions in comment 46 :-)
,
May 16 2018
I assume the issue would be whatever toolchain is used to build stuff in AOSP, and it's not specific to Mojo really (i.e. //base is built there as well).
,
May 16 2018
BTW libchrome is a repo in AOSP which is a fork of a subset of the chromium tree. hidehiko@ and ecaruso@ have been working to uprev it, but it's severely out-of-date. It's a fairly important goal for this to be uprevved more often, and as soon as possible. I don't understand exactly where outdated toolchains are used though. I'm assuming AOSP, but maybe Chrome OS system repos also use an older toolchain than chromium?
,
May 16 2018
Do you have more details on this? base is explicitly not meant to be used anywhere outside src (see e.g. issue 472900 ). What exactly is built by the AOSP toolchain? Mojo compiler output? Code in src? (i.e. someone please answer the questions in comment 46 :-))
,
May 16 2018
There's a long history: https://www.chromium.org/chromium-os/packages/libchrome I don't know what all is built against base etc, but it is *a lot of stuff* and it's been going on for years.
,
May 16 2018
Ok, thanks, it sounds like libchrome is a copy of chrome code, so changes in chrome code itself doesn't immediately affect it and just makes it harder to update it. Worst case, I'm guessing AOSP could use chromium's clang to build these parts. Chrome OS uses a fairly recent clang managed by the chromeos toolchain team.
,
May 16 2018
> Why would we have to keep using an older Mojo? Current ARC++ is based on Android N, whose toolchain does not support C++17 AFAIK. With keeping the current structure, if C++17 is enabled, we have no way to roll it to N. Note that Mojo team is changing the roll mechanism, but I don't know the detailed plan. > libchrome and ARC++ libchrome is a library used in Chrome OS and Android to provide Chrome's functionality, including Mojo support. ARC++ uses it. > please answer the questions in comment 46 :-) Oh, I meant, Mojo team should know "what exactly is problematic" better, so, rockot@, could you share it? What'll happen if we keep using old Mojo?
,
May 16 2018
We are not changing the roll mechanism. We're merely reducing what parts of Mojo will be rolled vs being shipped as a shared library with the cros system. It doesn't really matter though, what matters is that libchrome needs to keep uprevving.
,
May 16 2018
So to elaborate a bit: we're stabilizing a minimal ABI for Mojo, and that will ship as a shared library on cros systems. Separately, the mojo/public APIs are being refactored to use that shared library if initialized appropriately. This will allow all components across the system (including in ARC++) to use the same core Mojo implementation without needing to be built against the same version of the public library. Once that work is fully landed, libchrome will need to uprev at least beyond that revision. Beyond that point it doesn't really matter (for Mojo) if libchrome is ever uprevved again. But that hasn't landed yet and is probably still several weeks away, and I assume the corresponding uprev will be months away.
,
May 16 2018
Please run the "stable ABI" parts by us compiler folks, this is something we have opinions about :-) Does using chromium's clang for building libchrome sound ok? It can target Android fine, and the assumption of chrome code is that it's built by that toolchain.
,
May 16 2018
Mojo core is strictly a C ABI, so probably nothing to worry about from your perspective. :) And we do use chromium's clang to build the shared library even for ARC++. The issue is going to random AOSP projects which depend on libchrome, because I don't know how much control we have over what toolchains they use.
,
May 16 2018
> so changes in chrome code itself doesn't immediately affect it and just makes it harder to update it. Exactly. At the same time, though, I'm worrying about it conflict with Mojo team's request to keep libchrome uprevved. Because of toolchain unavailability, I'm thinking it makes much harder to uprev libchrome in Android N. Meanwhile, we have to keep old libchrome/Mojo in the branch at least, when C++17 actually starts to be used. > We're merely reducing what parts of Mojo will be rolled vs being shipped as a shared library with the cros system. In case if we couldn't roll it, can older rolled lib talk to the shared lib?
,
May 16 2018
> C ABI Cool, no concerns then. (This implies no dependencies on libc++ or libc++abi or similar, right?) > The issue is going to random AOSP projects which depend on libchrome ...why are there random AOSP projects depending on libchrome? I had expected this to be a very small list necessary for ARC++. Does libchrome have a well-defined public interface, or does it expose chromium headers to the world more or less? That's kind of what it sounds like. Promising to not change chromium headers because it might break unknown projects far away does not at all seem reasonable to me, if that's the request. I hope I'm misunderstanding it though!
,
May 16 2018
No. The older public library doesn't even know the shared library exists. We have to roll at least to the revision where the public library knows about the shared library and some of its newer APIs (which haven't landed yet).
,
May 16 2018
Correct, no dependencies on any C++ ABI of any kind. As for libchrome... Not only are random projects building against it in Chrome OS and AOSP, but it even builds shared libraries for base and other parts, and things link against those shared libraries (yes with an unstable C++ ABI). So every project in the system which depends on libchrome (AFAIK there are dozens) must be uprevved in tandem with libchrome. It is a phenomenally bad situation. We obviously cannot be asked to stop changing chromium headers indefinitely, but I think we need to do ... something. If could defer C++17 allowances for a quarter -- which I would hate to do on account of only Android N ARC++ libchrome usage -- that would probably be a sufficient window to land what needs to be landed and uprevved, and then Android N ARC++ can commit itself to never uprevving libchrome again. Or we could find a way to make AOSP require a newer toolchain, which does not seem unreasonable to me at all. Is that not an option, hidehiko@?
,
May 16 2018
> ...why are there random AOSP projects depending on libchrome? I had expected this to be a very small list necessary for ARC++. libchrome is not only for ARC++, but also other projects. It has existed in AOSP since much before ARC++ starts. # I'm relatively new here, so I don't much know about its history well. libchrome exposes Chromium headers to projects depending on the lib, and each projects catch up to the latest Chrome API on update, so it hasn't been problem and libchrome didn't request to keep Chromium header files in ToT just because of libchrome. It works well in most cases. C++17 is a kind of edge case, IMHO, because it depends on toolchain burden, so I'd appreciate for exceptional consideration in this case. Re #61: Then, if; Once shared lib work is done, and rolled to ARC++ at least once. Then, the rolled Mojo can be kept for a while, even shared lib is updated?
,
May 16 2018
AOSP already has C++17-compliant toolchains. Android's init has been using C++17 features for a while now.
,
May 16 2018
Re #63 - yes, once rolled past the introduction of working shared library support in mojo/public, it doesn't matter how old libchrome gets. Alas... comment #64 is promising. :)
,
May 16 2018
Re #62: If that works, I'm ok from ARC++ point of view. So the plan is; - We can probably keep tracking ToT Chrome in libchrome in AOSP master (and probably ARC P, too). - For ARC N, we need at least one libchrome/Mojo roll supporting C library which is C++14 compatible, then, we can leave it for a while (at least it wouldn't break the product). Is my understanding correct?
,
May 16 2018
That all sounds correct, but ideally even ARC N could be built with newer toolchains. Is that really not feasible? Otherwise we will still have to ask for C++17 adoption to be deferred until the aforementioned libchrome uprev lands.
,
May 16 2018
> ideally even ARC N could be built with newer toolchains. Is that really not feasible? that's a consideration and what I asked tzik@ to check, actually. According to my personal experience, updating toolchain always hits mysterious issues, and takes longer time than expected even if it is really feasible. Personally, I'm slightly optimistic in this specific case, because newer Android already has newer toolchain, and they should have hit and have solved that "mysterious issues" already, so we may be able to borrow the fixes. Though, anyway, because it is not available now, unfortunately, I don't think it can be quickly done.
,
May 17 2018
As another proposal, can we move to C++17 mode anyway, but keep components C++14 compatible as needed? That is, as NaCl, libchrome and remoting use existing //base, //ipc, //net, //ppapi, and some other components, we may have to keep them in C++14 compatible, but other components don't matter to that. So, we can probably allow C++17 features on other components (e.g. //chrome, //content and Blink), then, maintain //base and others in C++14 compatible by hiding C++17 features behind the flag or excluding new files from the source set.
,
May 17 2018
I think that's very confusing, and we need to resolve the nacl stuff anyhow. Let's try to do that first for a bit.
,
May 22 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/00dbee10ee92b27a7d7ea989fd0a4f635527a90d commit 00dbee10ee92b27a7d7ea989fd0a4f635527a90d Author: tzik <tzik@chromium.org> Date: Tue May 22 08:31:25 2018 Add noexcept to logo_common.cc stuff to align its declarations Move ctors and assigns in logo_common.h have noexcept now, but its impls don't have noexcept. That causes a compile failure on C++17 mode. Bug: 752720 Change-Id: Ied88e8fc5a0c4e3519fe65b3139aa366440af448 Reviewed-on: https://chromium-review.googlesource.com/1068627 Reviewed-by: Marc Treib <treib@chromium.org> Commit-Queue: Taiju Tsuiki <tzik@chromium.org> Cr-Commit-Position: refs/heads/master@{#560514} [modify] https://crrev.com/00dbee10ee92b27a7d7ea989fd0a4f635527a90d/components/search_provider_logos/logo_common.cc
,
May 22 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/ff3f45c5118d6d9123570bc4edc65f037ce5c5a6 commit ff3f45c5118d6d9123570bc4edc65f037ce5c5a6 Author: tzik <tzik@chromium.org> Date: Tue May 22 08:53:26 2018 Remove unneeded std::move() in service_worker_version_unittest.cc The results of std::move() there are unused, and C++17 mode of clang on Windows starts warning for that. This CL just removes them as they are just nop. Bug: 752720 Change-Id: If3b82659b6a27a4231943fd0244f1d86a7672dac Reviewed-on: https://chromium-review.googlesource.com/1068774 Reviewed-by: Matt Falkenhagen <falken@chromium.org> Reviewed-by: Hiroki Nakagawa <nhiroki@chromium.org> Commit-Queue: Taiju Tsuiki <tzik@chromium.org> Cr-Commit-Position: refs/heads/master@{#560516} [modify] https://crrev.com/ff3f45c5118d6d9123570bc4edc65f037ce5c5a6/content/browser/service_worker/service_worker_version_unittest.cc
,
May 22 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/f75b341d492b9870cdd4c32df89d8b4e240c089d commit f75b341d492b9870cdd4c32df89d8b4e240c089d Author: tzik <tzik@chromium.org> Date: Tue May 22 11:40:15 2018 Remove stray std::move()s in gzip_source_stream.cc Some of std::move()s around replay_data_ in gzip_source_stream.cc are warned for their ignored result by C++17 mode of clang. Bug: 752720 Change-Id: I8e3f799ec523114e9c5b01ea57b028c2db997485 Reviewed-on: https://chromium-review.googlesource.com/1067559 Reviewed-by: Matt Menke <mmenke@chromium.org> Commit-Queue: Taiju Tsuiki <tzik@chromium.org> Cr-Commit-Position: refs/heads/master@{#560536} [modify] https://crrev.com/f75b341d492b9870cdd4c32df89d8b4e240c089d/net/filter/gzip_source_stream.cc
,
May 22 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/a6538e3e625da325aa892ec4f2d4e0888d3aec41 commit a6538e3e625da325aa892ec4f2d4e0888d3aec41 Author: tzik <tzik@chromium.org> Date: Tue May 22 18:15:46 2018 Remove stray std::move()s from reporter_runner_win.cc This CL replaces std::move()s whose result is not used, as clang starts warning that on C++17 mode. Bug: 752720 Change-Id: I843ba7d9356fdb14fe5cc0c258018fae201a32c6 Reviewed-on: https://chromium-review.googlesource.com/1068639 Reviewed-by: Joe Mason <joenotcharles@chromium.org> Commit-Queue: Taiju Tsuiki <tzik@chromium.org> Cr-Commit-Position: refs/heads/master@{#560708} [modify] https://crrev.com/a6538e3e625da325aa892ec4f2d4e0888d3aec41/chrome/browser/safe_browsing/chrome_cleaner/reporter_runner_win.cc
,
May 25 2018
,
May 29 2018
The following revision refers to this bug: https://skia.googlesource.com/skia/+/bdb49569f4db3b5c0c69d024b774a3345b5713ef commit bdb49569f4db3b5c0c69d024b774a3345b5713ef Author: tzik <tzik@chromium.org> Date: Tue May 29 11:35:35 2018 Drop unneeded .get() in GrCoverageCountingPathRenderer.cpp MSVC's std::unique_ptr<>::get() is marked as NODISCARD, and the .get() call here causes a warning. Bug: chromium:752720 Change-Id: Iadc217247533b6148285f7a81c982527d98c86f9 Reviewed-on: https://skia-review.googlesource.com/130360 Reviewed-by: Robert Phillips <robertphillips@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com> [modify] https://crrev.com/bdb49569f4db3b5c0c69d024b774a3345b5713ef/src/gpu/ccpr/GrCoverageCountingPathRenderer.cpp
,
May 29 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/99f974bfc5dd953eca10fbb3d083628e91ce1685 commit 99f974bfc5dd953eca10fbb3d083628e91ce1685 Author: skia-chromium-autoroll <skia-chromium-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com> Date: Tue May 29 15:23:13 2018 Roll src/third_party/skia 8e200f3..1d1edc1 (2 commits) https://skia.googlesource.com/skia.git/+log/8e200f3..1d1edc1 git log 8e200f3..1d1edc1 --date=short --no-merges --format='%ad %ae %s' 2018-05-29 jcgregorio@google.com Upgrade node to 8.11.2 2018-05-28 tzik@chromium.org Drop unneeded .get() in GrCoverageCountingPathRenderer.cpp Created with: gclient setdep -r src/third_party/skia@1d1edc1 The AutoRoll server is located here: https://autoroll.skia.org Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+/master/autoroll/README.md If the roll is causing failures, please contact the current sheriff, who should be CC'd on the roll, and stop the roller if necessary. CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_trusty_blink_rel;luci.chromium.try:android_optional_gpu_tests_rel;luci.chromium.try:linux_optional_gpu_tests_rel;luci.chromium.try:mac_optional_gpu_tests_rel;luci.chromium.try:win_optional_gpu_tests_rel BUG=chromium:752720 TBR=rmistry@chromium.org Change-Id: I52f71bc9d34dfd1351dab70215c242e8bc5bae9c Reviewed-on: https://chromium-review.googlesource.com/1076367 Reviewed-by: skia-chromium-autoroll <skia-chromium-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com> Commit-Queue: skia-chromium-autoroll <skia-chromium-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com> Cr-Commit-Position: refs/heads/master@{#562431} [modify] https://crrev.com/99f974bfc5dd953eca10fbb3d083628e91ce1685/DEPS
,
Jun 14 2018
The blocking bug suggests pnacl won't go away till ~2020. I don't want to wait that long :) What would it take to update the pnacl toolchain?
,
Jun 14 2018
Right now the (half-baked) plan is to fork the bits of chromium that nacl builds for its runtime into the nacl repo and then no longer update it. That way, we can do to the chromium bits what we want. Let me know if you (or anyone) have time to help with this, then I add you to the discussions.
,
Jun 14 2018
On the face of it that seems like a reasonable plan to me. I'll have to chat with Sami but I may be able to help out a bit.
,
Jun 22 2018
,
Jun 25 2018
> Let me know if you (or anyone) have time to help with this, then I add you to the discussions. I'm interested in this. thakis@ could you update me on the current plan for nacl?
,
Jun 26 2018
,
Jun 27 2018
,
Aug 15
The following revision refers to this bug: https://webrtc.googlesource.com/src.git/+/cdb87f1a65b2dd5d22b2dfab80d606197ec2626f commit cdb87f1a65b2dd5d22b2dfab80d606197ec2626f Author: tzik <tzik@chromium.org> Date: Wed Aug 15 15:19:07 2018 Add a missing #include from jsepicecandidate.cc to absl/memory/memory.h jsepicecandidate.cc uses absl::make_unique without including absl/memory/memory.h. This happens to work in C++14 due to a transitive #include, but doesn't work in C++17. Bug: chromium:752720 Change-Id: I995496f452b9eaa2e70b82cd3b7926b936d7dac0 Reviewed-on: https://webrtc-review.googlesource.com/94340 Reviewed-by: Steve Anton <steveanton@webrtc.org> Commit-Queue: Steve Anton <steveanton@webrtc.org> Cr-Commit-Position: refs/heads/master@{#24294} [modify] https://crrev.com/cdb87f1a65b2dd5d22b2dfab80d606197ec2626f/pc/jsepicecandidate.cc
,
Aug 15
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/4746202fcadfc786143b685b789dd3c7bcd05892 commit 4746202fcadfc786143b685b789dd3c7bcd05892 Author: tzik <tzik@chromium.org> Date: Wed Aug 15 18:00:37 2018 Add missing noexcept specifiers to move ctors and assigns The declarations of move ctors and assigns of DisjointRangeLockManager::LockRequest, ScopesLockManager::ScopeLock and ResolveProxyMsgHelper::PendingRequest have `noexcept` specifier, but their implementations don't. This is OK in C++14, but causes compile errors in C++17. This CL adds missing `noexcept` for them. Bug: 752720 Change-Id: I849f613c63c990afd23c590a9567069b772146d1 Reviewed-on: https://chromium-review.googlesource.com/1175656 Reviewed-by: Kinuko Yasuda <kinuko@chromium.org> Commit-Queue: Taiju Tsuiki <tzik@chromium.org> Cr-Commit-Position: refs/heads/master@{#583319} [modify] https://crrev.com/4746202fcadfc786143b685b789dd3c7bcd05892/content/browser/indexed_db/scopes/disjoint_range_lock_manager.cc [modify] https://crrev.com/4746202fcadfc786143b685b789dd3c7bcd05892/content/browser/indexed_db/scopes/scopes_lock_manager.cc [modify] https://crrev.com/4746202fcadfc786143b685b789dd3c7bcd05892/content/browser/resolve_proxy_msg_helper.cc
,
Aug 16
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/fc9f94af07b9165de597a8a50428f19e933786d4 commit fc9f94af07b9165de597a8a50428f19e933786d4 Author: webrtc-chromium-autoroll <webrtc-chromium-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com> Date: Thu Aug 16 12:17:25 2018 Roll src/third_party/webrtc b336c2784f5e..4eb4b05556ff (33 commits) https://webrtc.googlesource.com/src.git/+log/b336c2784f5e..4eb4b05556ff git log b336c2784f5e..4eb4b05556ff --date=short --no-merges --format='%ad %ae %s' 2018-08-16 nisse@webrtc.org Delete unused method VideoReceiver::SetMinReceiverDelay 2018-08-16 tzik@chromium.org Remove a static initializer in default_temporal_layers.cc 2018-08-16 kthelgason@webrtc.org Activate initial framedrop when first BW estimate arrives 2018-08-16 kthelgason@webrtc.org Add RTCCertificate to framework headers. 2018-08-16 peah@webrtc.org Hooks up more AEC3 parameters to be read by the AEC3 configuration file 2018-08-16 asapersson@webrtc.org Remove unused members in rtp_rtcp tests and make some members const. 2018-08-16 mbonadei@webrtc.org Change the default behaviour rtc_builtin_ssl_root_certificates. 2018-08-16 oprypin@webrtc.org Revert "Remove linux_internal_compile_lite from CQ." 2018-08-16 buildbot@webrtc.org Roll chromium_revision 636e4e8cc4..7e9f692ee3 (583445:583557) 2018-08-16 buildbot@webrtc.org Roll chromium_revision 858c0de5ad..636e4e8cc4 (583305:583445) 2018-08-15 lliuu@webrtc.org Revert "Optimize execution time of RTPSender::UpdateDelayStatistics" 2018-08-15 tarekh@google.com Update multiplex encoder to support having augmenting data attached to the video 2018-08-15 buildbot@webrtc.org Roll chromium_revision 60eb76e65c..858c0de5ad (583181:583305) 2018-08-15 terelius@webrtc.org Optimize execution time of RTPSender::UpdateDelayStatistics 2018-08-15 tzik@chromium.org Add a missing #include from jsepicecandidate.cc to absl/memory/memory.h 2018-08-15 nisse@webrtc.org In (new) estimator of encoder cpu load, count max per input frame. 2018-08-15 saza@webrtc.org Add APM config flag for legacy moderate suppression level in AEC2 2018-08-15 srte@webrtc.org Makes treatment of received reports of packets lost signed. 2018-08-15 aleloi@webrtc.org Gain metrics for digital adaptive AGC. 2018-08-15 titovartem@webrtc.org Use NetworkSimulationInterface instead of SimulatedNetwork. 2018-08-15 sprang@webrtc.org Refactor vp8 temporal layers with inferred sync and search order 2018-08-15 nisse@webrtc.org Delete class voe::RtcEventLogProxy 2018-08-15 danilchap@webrtc.org Inline one-line RtpPacket getters 2018-08-15 asapersson@webrtc.org Clear encoded frame map on gap in timestamp. 2018-08-15 aleloi@webrtc.org Fine-grained limiter metrics. 2018-08-15 aleloi@webrtc.org Atomically increment GainControl instance counter. 2018-08-15 nisse@webrtc.org Delete unneeded forward declares of vcm::VideoReceiver. 2018-08-15 buildbot@webrtc.org Roll chromium_revision 5edb31a0cd..60eb76e65c (582911:583181) 2018-08-14 benwright@webrtc.org Adds the custom TLS certificate verifier pointer to the reconfigure option as 2018-08-14 ouj@fb.com Video bitrate allocator factory interface for custom video bitrate allocator 2018-08-14 buildbot@webrtc.org Roll chromium_revision 690394a8a7..5edb31a0cd (582511:582911) 2018-08-14 mbonadei@webrtc.org Revert "Add initial support for RtpEncodingParameters max_framerate." 2018-08-13 michael@kapsulate.com Add certificate generate/set functionality to bring iOS closer to JS API Created with: gclient setdep -r src/third_party/webrtc@4eb4b05556ff The AutoRoll server is located here: https://webrtc-chromium-roll.skia.org Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+/master/autoroll/README.md If the roll is causing failures, please contact the current sheriff, who should be CC'd on the roll, and stop the roller if necessary. CQ_INCLUDE_TRYBOTS=luci.chromium.try:linux_chromium_archive_rel_ng;master.tryserver.chromium.mac:mac_chromium_archive_rel_ng BUG=chromium:None,chromium:none,chromium:None,chromium:None,chromium:None,chromium:None,chromium:752720,chromium:None,chromium:None,chromium:816819,chromium:None,chromium:None,chromium:None,chromium:None TBR=webrtc-chromium-sheriffs-robots@google.com Change-Id: Id37f277d7a7f512b4b141eca2821f14d0294fd4c Reviewed-on: https://chromium-review.googlesource.com/1177581 Reviewed-by: webrtc-chromium-autoroll <webrtc-chromium-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com> Commit-Queue: webrtc-chromium-autoroll <webrtc-chromium-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com> Cr-Commit-Position: refs/heads/master@{#583609} [modify] https://crrev.com/fc9f94af07b9165de597a8a50428f19e933786d4/DEPS
,
Aug 30
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/ddec5810ee47dfaa70c01fe931b22c985ef615ec commit ddec5810ee47dfaa70c01fe931b22c985ef615ec Author: tzik <tzik@chromium.org> Date: Thu Aug 30 03:15:26 2018 Drop support of the specialized std::swap on immutable_unittest.cc ImmutableTest.SpecializationToken uses a specialized std::swap to test if Immutable successfully find this pattern of `swap` implementation. However, it's not preferred way to implement `swap`, no one in Chromium doesn't implement `swap` in this manner, and this depends on the implementation details of std::swap. E.g. its return type may be std::enable_if with a complex condition instead of void, and its noexcept may contain a complex condition that needs to match the specialization. This CL removes the test for the std::swap specialization, and updates the comment for it. Bug: 752720 Change-Id: I30c3929b889bfb278e4f4ba94432faa6967df3a8 Reviewed-on: https://chromium-review.googlesource.com/1179485 Reviewed-by: Marc Treib <treib@chromium.org> Commit-Queue: Taiju Tsuiki <tzik@chromium.org> Cr-Commit-Position: refs/heads/master@{#587432} [modify] https://crrev.com/ddec5810ee47dfaa70c01fe931b22c985ef615ec/components/sync/base/immutable.h [modify] https://crrev.com/ddec5810ee47dfaa70c01fe931b22c985ef615ec/components/sync/base/immutable_unittest.cc
,
Sep 6
,
Sep 10
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/dae1b7479a7dbed41abdbe27b90cc4a54f4dd5c7 commit dae1b7479a7dbed41abdbe27b90cc4a54f4dd5c7 Author: tzik <tzik@chromium.org> Date: Mon Sep 10 11:12:54 2018 Disallow DOMWrapperMap copy explicitly v8::PersistentValueMapBase<> is an old style non-copyable type. It has private declaration-only copy ctor and assignment. That is inherited to v8::GlobalValueMap<>, and brought to DOMWrapperMap<>. That implies, DOMWrapperMap is a non-copyable type, but detected as copyable type by a defaulted copy constructor. That confuses std::optional and causes a build error on C++17 mode of Chromium. This mark DOMWrapperMap as non-copyable explicitly to fix the build error. Bug: 752720 Change-Id: Iff22df3cd108475ece9ba0c7cc4878a30d3bcb43 Reviewed-on: https://chromium-review.googlesource.com/1214908 Reviewed-by: Yuki Shiino <yukishiino@chromium.org> Reviewed-by: Kentaro Hara <haraken@chromium.org> Commit-Queue: Taiju Tsuiki <tzik@chromium.org> Cr-Commit-Position: refs/heads/master@{#589883} [modify] https://crrev.com/dae1b7479a7dbed41abdbe27b90cc4a54f4dd5c7/third_party/blink/renderer/platform/bindings/dom_wrapper_map.h
,
Oct 16
The following revision refers to this bug: https://webrtc.googlesource.com/src.git/+/f0e926fbdd8fcf9ca46d073ff375bb7169b6aaec commit f0e926fbdd8fcf9ca46d073ff375bb7169b6aaec Author: tzik <tzik@chromium.org> Date: Tue Oct 16 04:13:49 2018 Add missing #include and deps to absl/memory These files uses absl::WrapUnique or absl::make_unique without including absl/memory/memory.h. They used to include it indirectly via some other headers, but in C++17 mode, we need to include it explicitly. Bug: chromium:752720 Change-Id: Ic9a85a4844a71f8b8786c071f18d5b9cc301c26b Reviewed-on: https://webrtc-review.googlesource.com/c/105880 Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org> Reviewed-by: Yves Gerey <yvesg@webrtc.org> Reviewed-by: Karl Wiberg <kwiberg@webrtc.org> Commit-Queue: Taiju Tsuiki <tzik@chromium.org> Cr-Commit-Position: refs/heads/master@{#25192} [modify] https://crrev.com/f0e926fbdd8fcf9ca46d073ff375bb7169b6aaec/api/BUILD.gn [modify] https://crrev.com/f0e926fbdd8fcf9ca46d073ff375bb7169b6aaec/api/test/test_dependency_factory.cc [modify] https://crrev.com/f0e926fbdd8fcf9ca46d073ff375bb7169b6aaec/p2p/base/relayport.h [modify] https://crrev.com/f0e926fbdd8fcf9ca46d073ff375bb7169b6aaec/p2p/base/stunport.h [modify] https://crrev.com/f0e926fbdd8fcf9ca46d073ff375bb7169b6aaec/p2p/base/tcpport.h [modify] https://crrev.com/f0e926fbdd8fcf9ca46d073ff375bb7169b6aaec/p2p/base/turnport.h
,
Oct 16
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/6823ef31dad35092537505af58c2e78fcc1282fc commit 6823ef31dad35092537505af58c2e78fcc1282fc Author: chromium-autoroll <chromium-autoroll@skia-public.iam.gserviceaccount.com> Date: Tue Oct 16 09:46:29 2018 Roll src/third_party/webrtc c9e6b969a452..f0e926fbdd8f (4 commits) https://webrtc.googlesource.com/src.git/+log/c9e6b969a452..f0e926fbdd8f git log c9e6b969a452..f0e926fbdd8f --date=short --no-merges --format='%ad %ae %s' 2018-10-16 tzik@chromium.org Add missing #include and deps to absl/memory 2018-10-16 chromium-webrtc-autoroll@webrtc-ci.iam.gserviceaccount.com Roll chromium_revision 0e821c2fa2..0cecb6ce10 (599702:599821) 2018-10-15 srte@webrtc.org Reland "Deprecates legacy transport feedback adapter." 2018-10-15 chromium-webrtc-autoroll@webrtc-ci.iam.gserviceaccount.com Roll chromium_revision 0df2607f98..0e821c2fa2 (599562:599702) Created with: gclient setdep -r src/third_party/webrtc@f0e926fbdd8f The AutoRoll server is located here: https://autoroll.skia.org/r/webrtc-chromium-autoroll Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+/master/autoroll/README.md If the roll is causing failures, please contact the current sheriff, who should be CC'd on the roll, and stop the roller if necessary. CQ_INCLUDE_TRYBOTS=luci.chromium.try:linux_chromium_archive_rel_ng;luci.chromium.try:mac_chromium_archive_rel_ng BUG=chromium:752720,chromium:None,chromium:None TBR=webrtc-chromium-sheriffs-robots@google.com Change-Id: Ib8cd893ebca559660e96d2ad5f854a56091dc325 Reviewed-on: https://chromium-review.googlesource.com/c/1282329 Reviewed-by: chromium-autoroll <chromium-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: chromium-autoroll <chromium-autoroll@skia-public.iam.gserviceaccount.com> Cr-Commit-Position: refs/heads/master@{#599932} [modify] https://crrev.com/6823ef31dad35092537505af58c2e78fcc1282fc/DEPS
,
Oct 17
,
Oct 18
The following revision refers to this bug: https://webrtc.googlesource.com/src.git/+/d0be002ececb4f821a3485e0cb768de8601d72b7 commit d0be002ececb4f821a3485e0cb768de8601d72b7 Author: tzik <tzik@chromium.org> Date: Thu Oct 18 08:55:54 2018 Add missing #include to absl/memory/memory.h This is needed for absl::make_unique. absl/memory/memory.h is included through absl/types/optional.h on C++14 mode, but is not on C++17 mode. Bug: chromium:752720 Change-Id: I28c0dfc9c37910bcb8f0c0bbe40cdd47f2105e50 Reviewed-on: https://webrtc-review.googlesource.com/c/106760 Reviewed-by: Karl Wiberg <kwiberg@webrtc.org> Commit-Queue: Karl Wiberg <kwiberg@webrtc.org> Cr-Commit-Position: refs/heads/master@{#25247} [modify] https://crrev.com/d0be002ececb4f821a3485e0cb768de8601d72b7/rtc_base/sslfingerprint.cc
,
Oct 18
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/83a9525bd0a6a0d732539f76ffb4972574dadea7 commit 83a9525bd0a6a0d732539f76ffb4972574dadea7 Author: chromium-autoroll <chromium-autoroll@skia-public.iam.gserviceaccount.com> Date: Thu Oct 18 17:15:02 2018 Roll src/third_party/webrtc 09beff2cfd84..78416b6e1851 (19 commits) https://webrtc.googlesource.com/src.git/+log/09beff2cfd84..78416b6e1851 git log 09beff2cfd84..78416b6e1851 --date=short --no-merges --format='%ad %ae %s' 2018-10-18 srte@webrtc.org Adds time to initial config in analyzer code. 2018-10-18 ilnik@webrtc.org Correctly slice MediaBitrateRecieved on content type in ReceiveStatisticsProxy 2018-10-18 srte@webrtc.org Adds field trial to AudioPriorityBitrateAllocationStrategy. 2018-10-18 peah@webrtc.org AEC3: Introduce partial adaptive filter resets at echo path changes 2018-10-18 peah@webrtc.org AEC3: Remove ERLE uncertainty code that has no effect 2018-10-18 kwiberg@webrtc.org Relieve perkj@ of some OWNER duties 2018-10-18 mbonadei@webrtc.org Remove expat from generate_licenses.py. 2018-10-18 tzik@chromium.org Add missing #include to absl/memory/memory.h 2018-10-18 mbonadei@webrtc.org Export symbols needed by the Chromium component build (part 4). 2018-10-18 kwiberg@webrtc.org rtc::ZeroOnFreeBuffer: Don't forget to zero memory we free in operator= 2018-10-18 titovartem@webrtc.org Fix: Argv may be corrupted after InitGoogleMock found any related flags 2018-10-18 chromium-webrtc-autoroll@webrtc-ci.iam.gserviceaccount.com Roll chromium_revision c926d3bb2f..fc405b495a (600547:600654) 2018-10-17 chromium-webrtc-autoroll@webrtc-ci.iam.gserviceaccount.com Roll chromium_revision 8bef2e268b..c926d3bb2f (600433:600547) 2018-10-17 shampson@webrtc.org Adds support for "-" to a=ssrc msid lines. 2018-10-17 sukhanov@webrtc.org Reland "Reland "Propagate media transport to media channel."" 2018-10-17 chromium-webrtc-autoroll@webrtc-ci.iam.gserviceaccount.com Roll chromium_revision c5242283d9..8bef2e268b (600305:600433) 2018-10-17 benwright@webrtc.org Adds new CryptoOption crypto_options.frame.require_frame_encryption. 2018-10-17 terelius@webrtc.org Track padding and header size in log event. 2018-10-17 srte@webrtc.org Adds AudioNetworkAdaptation support to Scenario tests. Created with: gclient setdep -r src/third_party/webrtc@78416b6e1851 The AutoRoll server is located here: https://autoroll.skia.org/r/webrtc-chromium-autoroll Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+/master/autoroll/README.md If the roll is causing failures, please contact the current sheriff, who should be CC'd on the roll, and stop the roller if necessary. CQ_INCLUDE_TRYBOTS=luci.chromium.try:linux_chromium_archive_rel_ng;luci.chromium.try:mac_chromium_archive_rel_ng BUG=chromium:none,chromium:895838,chromium:none,chromium:896154,chromium:752720,chromium:None,chromium:None,chromium:None TBR=webrtc-chromium-sheriffs-robots@google.com Change-Id: Id10b9aa1d178aca162bff37878204e3bf770c15a Reviewed-on: https://chromium-review.googlesource.com/c/1287895 Reviewed-by: chromium-autoroll <chromium-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: chromium-autoroll <chromium-autoroll@skia-public.iam.gserviceaccount.com> Cr-Commit-Position: refs/heads/master@{#600807} [modify] https://crrev.com/83a9525bd0a6a0d732539f76ffb4972574dadea7/DEPS
,
Nov 6
The following revision refers to this bug: https://webrtc.googlesource.com/src.git/+/254d3db59ad963f347ebc3123fbb564d2d894af1 commit 254d3db59ad963f347ebc3123fbb564d2d894af1 Author: tzik <tzik@chromium.org> Date: Tue Nov 06 10:57:47 2018 Add missing #include to absl/memory/memory.h from audio_encoder_cng.cc absl::make_unique is used in this file without absl/memory/memory.h #include, that causes a build error on C++17 build of Chromium. Bug: chromium:752720 Change-Id: I78fe9f76a6ea670a4250b4cf25c3c02cf4c4beb6 Reviewed-on: https://webrtc-review.googlesource.com/c/109540 Commit-Queue: Karl Wiberg <kwiberg@webrtc.org> Reviewed-by: Karl Wiberg <kwiberg@webrtc.org> Cr-Commit-Position: refs/heads/master@{#25514} [modify] https://crrev.com/254d3db59ad963f347ebc3123fbb564d2d894af1/modules/audio_coding/BUILD.gn [modify] https://crrev.com/254d3db59ad963f347ebc3123fbb564d2d894af1/modules/audio_coding/codecs/cng/audio_encoder_cng.cc
,
Nov 6
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/e22b4b7de868ded70c41d8fb78a93097d587e740 commit e22b4b7de868ded70c41d8fb78a93097d587e740 Author: chromium-autoroll <chromium-autoroll@skia-public.iam.gserviceaccount.com> Date: Tue Nov 06 14:14:47 2018 Roll src/third_party/webrtc 63ada787b5bc..254d3db59ad9 (3 commits) https://webrtc.googlesource.com/src.git/+log/63ada787b5bc..254d3db59ad9 git log 63ada787b5bc..254d3db59ad9 --date=short --no-merges --format='%ad %ae %s' 2018-11-06 tzik@chromium.org Add missing #include to absl/memory/memory.h from audio_encoder_cng.cc 2018-11-06 kron@webrtc.org Add HdrMetadata to VideoFrame 2018-11-06 eladalon@webrtc.org Remove unused member variable - RTCPSender::using_nack_ Created with: gclient setdep -r src/third_party/webrtc@254d3db59ad9 The AutoRoll server is located here: https://autoroll.skia.org/r/webrtc-chromium-autoroll Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+/master/autoroll/README.md If the roll is causing failures, please contact the current sheriff, who should be CC'd on the roll, and stop the roller if necessary. CQ_INCLUDE_TRYBOTS=luci.chromium.try:linux_chromium_archive_rel_ng;luci.chromium.try:mac_chromium_archive_rel_ng BUG=chromium:752720,chromium:None TBR=webrtc-chromium-sheriffs-robots@google.com Change-Id: I4dce8a21814d711bde82c662ead9f9614ac3269e Reviewed-on: https://chromium-review.googlesource.com/c/1319378 Reviewed-by: chromium-autoroll <chromium-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: chromium-autoroll <chromium-autoroll@skia-public.iam.gserviceaccount.com> Cr-Commit-Position: refs/heads/master@{#605667} [modify] https://crrev.com/e22b4b7de868ded70c41d8fb78a93097d587e740/DEPS
,
Nov 15
The following revision refers to this bug: https://webrtc.googlesource.com/src.git/+/a06bf8506fdfc0aff1098831bfc49bff4436399d commit a06bf8506fdfc0aff1098831bfc49bff4436399d Author: tzik <tzik@chromium.org> Date: Thu Nov 15 12:15:40 2018 Add a presubmit check for absl/memory/memory.h inclusion This adds a presubmit check that warns missing memory.h inclusion when a source file use absl::make_unique. That header tends to be included transitively on pre-C++17 mode, but doesn't on C++17 mode. Bug: chromium:752720 Change-Id: I235287f4f7407d48bfad35da86da47bc602f03ce Reviewed-on: https://webrtc-review.googlesource.com/c/111040 Commit-Queue: Taiju Tsuiki <tzik@chromium.org> Reviewed-by: Karl Wiberg <kwiberg@webrtc.org> Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org> Cr-Commit-Position: refs/heads/master@{#25655} [modify] https://crrev.com/a06bf8506fdfc0aff1098831bfc49bff4436399d/PRESUBMIT.py
,
Nov 15
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/e409d21b7a1ed490c90681d64db8e34cf1126017 commit e409d21b7a1ed490c90681d64db8e34cf1126017 Author: chromium-autoroll <chromium-autoroll@skia-public.iam.gserviceaccount.com> Date: Thu Nov 15 15:36:37 2018 Roll src/third_party/webrtc 95140715009f..a06bf8506fdf (1 commits) https://webrtc.googlesource.com/src.git/+log/95140715009f..a06bf8506fdf git log 95140715009f..a06bf8506fdf --date=short --no-merges --format='%ad %ae %s' 2018-11-15 tzik@chromium.org Add a presubmit check for absl/memory/memory.h inclusion Created with: gclient setdep -r src/third_party/webrtc@a06bf8506fdf The AutoRoll server is located here: https://autoroll.skia.org/r/webrtc-chromium-autoroll Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+/master/autoroll/README.md If the roll is causing failures, please contact the current sheriff, who should be CC'd on the roll, and stop the roller if necessary. CQ_INCLUDE_TRYBOTS=luci.chromium.try:linux_chromium_archive_rel_ng;luci.chromium.try:mac_chromium_archive_rel_ng BUG=chromium:752720 TBR=webrtc-chromium-sheriffs-robots@google.com Change-Id: Iac7aba638ab8133c587b282f40892e534293ad38 Reviewed-on: https://chromium-review.googlesource.com/c/1337481 Reviewed-by: chromium-autoroll <chromium-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: chromium-autoroll <chromium-autoroll@skia-public.iam.gserviceaccount.com> Cr-Commit-Position: refs/heads/master@{#608375} [modify] https://crrev.com/e409d21b7a1ed490c90681d64db8e34cf1126017/DEPS
,
Jan 7
,
Jan 8
The following revision refers to this bug: https://chromium.googlesource.com/v8/v8.git/+/2bcbeeb87d3bf8d9ca989e1206c30aabfdd53d4d commit 2bcbeeb87d3bf8d9ca989e1206c30aabfdd53d4d Author: tzik <tzik@chromium.org> Date: Tue Jan 08 04:36:18 2019 Use V8_NOEXCEPT consistently between decls and impls noexcept keyword needs to be consistent between the declaration and implementation in C++17. Bug: v8:8616, chromium:752720 Change-Id: Iff4022c8c4b861ebdbe8e08995af1bc4da866dae Reviewed-on: https://chromium-review.googlesource.com/c/1396459 Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Taiju Tsuiki <tzik@chromium.org> Cr-Commit-Position: refs/heads/master@{#58609} [modify] https://crrev.com/2bcbeeb87d3bf8d9ca989e1206c30aabfdd53d4d/src/heap/heap.cc [modify] https://crrev.com/2bcbeeb87d3bf8d9ca989e1206c30aabfdd53d4d/src/heap/spaces.cc
,
Jan 9
The following revision refers to this bug: https://chromium.googlesource.com/v8/v8.git/+/d65de040189be8d21be0c7dc7b833f59027df096 commit d65de040189be8d21be0c7dc7b833f59027df096 Author: tzik <tzik@chromium.org> Date: Wed Jan 09 12:39:46 2019 Use V8_NOEXCEPT consistently between decls and impls This is a leftover of the previous CL. https://chromium-review.googlesource.com/c/v8/v8/+/1402305. noexcept keyword needs to be consistent between the declaration and implementation in C++17. Bug: v8:8616, chromium:752720 Change-Id: I8a21426e550d666bd84c1a6e7bc36d1eec495333 Reviewed-on: https://chromium-review.googlesource.com/c/1402305 Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Taiju Tsuiki <tzik@chromium.org> Cr-Commit-Position: refs/heads/master@{#58665} [modify] https://crrev.com/d65de040189be8d21be0c7dc7b833f59027df096/src/heap/spaces.cc
,
Jan 10
,
Jan 14
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/b49e373c0b37240294bb692c9d5b31f358818d22 commit b49e373c0b37240294bb692c9d5b31f358818d22 Author: jdoerrie <jdoerrie@chromium.org> Date: Mon Jan 14 12:51:25 2019 [base] Templatize StringPiece's comparison operators In order to be more compliant with C++17's std::basic_string_view, this change modifies base::BasicStringPiece's comparison operators to be templates, take their arguments by value, and be constexpr and noexcept. Appropriate overloads are introduced to further support implicit conversions to StringPieces, e.g. comparing a raw string literal with a StringPiece continues to work. A side effect of this change is supporting the comparison of WStringPieces on platforms where wchar_t is not 16 bits. Bug: 752720 Change-Id: Ia2a80cf1d9eddb7064601d3e832303f97aed9a9e Reviewed-on: https://chromium-review.googlesource.com/c/1403654 Commit-Queue: Jan Wilken Dörrie <jdoerrie@chromium.org> Reviewed-by: kylechar <kylechar@chromium.org> Cr-Commit-Position: refs/heads/master@{#622432} [modify] https://crrev.com/b49e373c0b37240294bb692c9d5b31f358818d22/base/strings/string_piece.cc [modify] https://crrev.com/b49e373c0b37240294bb692c9d5b31f358818d22/base/strings/string_piece.h [modify] https://crrev.com/b49e373c0b37240294bb692c9d5b31f358818d22/base/strings/string_piece_unittest.cc
Showing comments 7 - 106
of 106
Older ›
|
|||||||||||||||||||
►
Sign in to add a comment |
||||||||||||||||||||||