aboutsummaryrefslogtreecommitdiff
path: root/gcc/system.h
diff options
context:
space:
mode:
authorJonathan Wakely <jwakely@redhat.com>2021-11-09 12:56:43 +0000
committerJonathan Wakely <jwakely@redhat.com>2021-12-12 22:51:12 +0000
commitb8f7ff76d6f0b7fdffc314a19425423606b5e296 (patch)
treef19438f2a2a95503d4336e9c74de3912f6c896c4 /gcc/system.h
parent0b52083ea2c2dd9897031fdc3802a68fd4aa45ef (diff)
downloadgcc-b8f7ff76d6f0b7fdffc314a19425423606b5e296.zip
gcc-b8f7ff76d6f0b7fdffc314a19425423606b5e296.tar.gz
gcc-b8f7ff76d6f0b7fdffc314a19425423606b5e296.tar.bz2
Replace gnu::unique_ptr with std::unique_ptr
Now that GCC is compiled as C++11 there is no need to keep the C++03 implementation of gnu::unique_ptr. This removes the unique-ptr.h header and replaces it with <memory> in system.h, and changes the INCLUDE_UNIQUE_PTR macro to INCLUDE_MEMORY. Uses of gnu::unique_ptr and gnu::move can be replaced with std::unique_ptr and std::move. There are no uses of unique_xmalloc_ptr or xmalloc_deleter in GCC. gcc/analyzer/ChangeLog: * engine.cc: Define INCLUDE_MEMORY instead of INCLUDE_UNIQUE_PTR. gcc/c-family/ChangeLog: * known-headers.cc: Define INCLUDE_MEMORY instead of INCLUDE_UNIQUE_PTR. * name-hint.h: Likewise. (class name_hint): Use std::unique_ptr instead of gnu::unique_ptr. gcc/c/ChangeLog: * c-decl.c: Define INCLUDE_MEMORY instead of INCLUDE_UNIQUE_PTR. * c-parser.c: Likewise. gcc/cp/ChangeLog: * error.c: Define INCLUDE_MEMORY instead of INCLUDE_UNIQUE_PTR. * lex.c: Likewise. * name-lookup.c: Likewise. (class namespace_limit_reached): Use std::unique_ptr instead of gnu::unique_ptr. (suggest_alternatives_for): Use std::move instead of gnu::move. (suggest_alternatives_in_other_namespaces): Likewise. * parser.c: Define INCLUDE_MEMORY instead of INCLUDE_UNIQUE_PTR. gcc/ChangeLog: * Makefile.in: Remove unique-ptr-tests.o. * selftest-run-tests.c (selftest::run_tests): Remove unique_ptr_tests_cc_tests. * selftest.h (unique_ptr_tests_cc_tests): Remove. * system.h: Check INCLUDE_MEMORY instead of INCLUDE_UNIQUE_PTR and include <memory> instead of "unique-ptr.h". * unique-ptr-tests.cc: Removed. include/ChangeLog: * unique-ptr.h: Removed.
Diffstat (limited to 'gcc/system.h')
-rw-r--r--gcc/system.h8
1 files changed, 3 insertions, 5 deletions
diff --git a/gcc/system.h b/gcc/system.h
index 4ac656c..2cd2017 100644
--- a/gcc/system.h
+++ b/gcc/system.h
@@ -737,12 +737,10 @@ extern int vsnprintf (char *, size_t, const char *, va_list);
/* Some of the headers included by <memory> can use "abort" within a
namespace, e.g. "_VSTD::abort();", which fails after we use the
- preprocessor to redefine "abort" as "fancy_abort" below.
- Given that unique-ptr.h can use "free", we need to do this after "free"
- is declared but before "abort" is overridden. */
+ preprocessor to redefine "abort" as "fancy_abort" below. */
-#ifdef INCLUDE_UNIQUE_PTR
-# include "unique-ptr.h"
+#ifdef INCLUDE_MEMORY
+# include <memory>
#endif
#ifdef INCLUDE_MALLOC_H