aboutsummaryrefslogtreecommitdiffstats
path: root/googletest/include/gtest/internal/gtest-internal.h
diff options
context:
space:
mode:
authorArthur O'Dwyer <arthur.j.odwyer@gmail.com>2020-04-16 15:52:17 -0400
committerArthur O'Dwyer <arthur.j.odwyer@gmail.com>2020-04-23 22:22:07 -0400
commit766ac2e1a413e87d42d67e3286c70f0af4853679 (patch)
treec9768ae1a96fee8146c0327f90db0ce0be060b8d /googletest/include/gtest/internal/gtest-internal.h
parent4f002f1e236c1a0e7bdb096cd845f1a9c6c129c6 (diff)
downloadgoogletest-766ac2e1a413e87d42d67e3286c70f0af4853679.tar.gz
googletest-766ac2e1a413e87d42d67e3286c70f0af4853679.tar.bz2
googletest-766ac2e1a413e87d42d67e3286c70f0af4853679.zip
Remove all uses of GTEST_DISALLOW_{MOVE_,}ASSIGN_.
None of these are strictly needed for correctness. A large number of them (maybe all of them?) trigger `-Wdeprecated` warnings on Clang trunk as soon as you try to use the implicitly defaulted (but deprecated) copy constructor of a class that has deleted its copy assignment operator. By declaring a deleted copy assignment operator, the old code also caused the move constructor and move assignment operator to be non-declared. This means that the old code never got move semantics -- "move-construction" would simply call the defaulted (but deprecated) copy constructor instead. With the new code, "move-construction" calls the defaulted move constructor, which I believe is what we want to happen. So this is a runtime performance optimization. Unfortunately we can't yet physically remove the definitions of these macros from gtest-port.h, because they are being used by other code internally at Google (according to zhangxy988). But no new uses should be added going forward.
Diffstat (limited to 'googletest/include/gtest/internal/gtest-internal.h')
-rw-r--r--googletest/include/gtest/internal/gtest-internal.h2
1 files changed, 0 insertions, 2 deletions
diff --git a/googletest/include/gtest/internal/gtest-internal.h b/googletest/include/gtest/internal/gtest-internal.h
index 7f1a5b00..fabc8042 100644
--- a/googletest/include/gtest/internal/gtest-internal.h
+++ b/googletest/include/gtest/internal/gtest-internal.h
@@ -1120,8 +1120,6 @@ class NativeArray {
const Element* array_;
size_t size_;
void (NativeArray::*clone_)(const Element*, size_t);
-
- GTEST_DISALLOW_ASSIGN_(NativeArray);
};
// Backport of std::index_sequence.