Reland "GCC: Fix base::internal::InvokeFuncImpl"
This is a reland of 9293d5c8 Original change's description: > GCC: Fix base::internal::InvokeFuncImpl > > GCC doesn't like that the Value data member has no out-of-line > definition. The problem is triggered specifically only when compiling > > components/services/leveldb/leveldb_database_impl.cc > > which has lambda functions returning locally-defined classes. > > The current code works as-is in C++17 mode which introduces the concept > of inline variables, but in C++14 we need either an explicit out-of-line > definition or a function member instead of a data member. > > Use std::integral_constant for defining the value. > > Bug: 819294 > Change-Id: I5c68e14ce3fa9d8b4d8a2cb42d7f9b53938aabf3 > Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1862451 > Reviewed-by: Jan Wilken Dörrie <jdoerrie@chromium.org> > Reviewed-by: Daniel Cheng <dcheng@chromium.org> > Commit-Queue: Jüri Valdmann <juri.valdmann@qt.io> > Cr-Commit-Position: refs/heads/master@{#706384} Bug: 819294 Change-Id: I3d5a52ddc6815516e2239f9347c60de06bf765a2 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1865212Reviewed-by:Daniel Cheng <dcheng@chromium.org> Commit-Queue: Jan Wilken Dörrie <jdoerrie@chromium.org> Cr-Commit-Position: refs/heads/master@{#707329}
Showing
Please register or sign in to comment