rocksdb/memtable
Peter Dillinger 31da5e34c1 C++20 compatibility (#6697)
Summary:
Based on https://github.com/facebook/rocksdb/issues/6648 (CLA Signed), but heavily modified / extended:

* Implicit capture of this via [=] deprecated in C++20, and [=,this] not standard before C++20 -> now using explicit capture lists
* Implicit copy operator deprecated in gcc 9 -> add explicit '= default' definition
* std::random_shuffle deprecated in C++17 and removed in C++20 -> migrated to a replacement in RocksDB random.h API
* Add the ability to build with different std version though -DCMAKE_CXX_STANDARD=11/14/17/20 on the cmake command line
* Minimal rebuild flag of MSVC is deprecated and is forbidden with /std:c++latest (C++20)
* Added MSVC 2019 C++11 & MSVC 2019 C++20 in AppVeyor
* Added GCC 9 C++11 & GCC9 C++20 in Travis
Pull Request resolved: https://github.com/facebook/rocksdb/pull/6697

Test Plan: make check and CI

Reviewed By: cheng-chang

Differential Revision: D21020318

Pulled By: pdillinger

fbshipit-source-id: 12311be5dbd8675a0e2c817f7ec50fa11c18ab91
2020-04-20 13:24:25 -07:00
..
alloc_tracker.cc
hash_linklist_rep.cc
hash_linklist_rep.h
hash_skiplist_rep.cc
hash_skiplist_rep.h
inlineskiplist.h
inlineskiplist_test.cc
memtablerep_bench.cc C++20 compatibility (#6697) 2020-04-20 13:24:25 -07:00
skiplist.h
skiplist_test.cc
skiplistrep.cc
stl_wrappers.h
vectorrep.cc
write_buffer_manager.cc Fix a bug that crashes the service when write buffer manager fails to insert to block cache (#6619) 2020-04-01 11:27:40 -07:00
write_buffer_manager_test.cc Fix a bug that crashes the service when write buffer manager fails to insert to block cache (#6619) 2020-04-01 11:27:40 -07:00