diff options
-rw-r--r-- | Firestore/core/src/firebase/firestore/local/leveldb_transaction.cc | 3 | ||||
-rw-r--r-- | scripts/cpplint.py | 11 |
2 files changed, 13 insertions, 1 deletions
diff --git a/Firestore/core/src/firebase/firestore/local/leveldb_transaction.cc b/Firestore/core/src/firebase/firestore/local/leveldb_transaction.cc index 966ccf2..f034b19 100644 --- a/Firestore/core/src/firebase/firestore/local/leveldb_transaction.cc +++ b/Firestore/core/src/firebase/firestore/local/leveldb_transaction.cc @@ -21,6 +21,7 @@ #include "Firestore/core/src/firebase/firestore/local/leveldb_key.h" #include "Firestore/core/src/firebase/firestore/util/firebase_assert.h" #include "Firestore/core/src/firebase/firestore/util/log.h" +#include "absl/memory/memory.h" using leveldb::DB; using leveldb::ReadOptions; @@ -177,7 +178,7 @@ void LevelDbTransaction::Put(const absl::string_view& key, std::unique_ptr<LevelDbTransaction::Iterator> LevelDbTransaction::NewIterator() { - return std::make_unique<LevelDbTransaction::Iterator>(this); + return absl::make_unique<LevelDbTransaction::Iterator>(this); } Status LevelDbTransaction::Get(const absl::string_view& key, diff --git a/scripts/cpplint.py b/scripts/cpplint.py index 53dbe81..d1c80b3 100644 --- a/scripts/cpplint.py +++ b/scripts/cpplint.py @@ -5875,6 +5875,16 @@ def FlagCxx14Features(filename, clean_lines, linenum, error): error(filename, linenum, 'build/c++14', 5, ('<%s> is an unapproved C++14 header.') % include.group(1)) + # These are classes and free functions with abeil equivalents + for top_name in ( + # memory + 'make_unique', + ): + if Search(r'\bstd::%s\b' % top_name, line): + error(filename, linenum, 'build/c++14', 5, + 'std::%s does not exist in C++11. Use absl::%s instead.' % + (top_name, top_name)) + def ProcessFileData(filename, file_extension, lines, error, extra_check_functions=[]): @@ -5913,6 +5923,7 @@ def ProcessFileData(filename, file_extension, lines, error, include_state, function_state, nesting_state, error, extra_check_functions) FlagCxx11Features(filename, clean_lines, line, error) + FlagCxx14Features(filename, clean_lines, line, error) nesting_state.CheckCompletedBlocks(filename, error) CheckForIncludeWhatYouUse(filename, clean_lines, include_state, error) |