Source-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[src/trunk]: src/external/bsd/kyua-cli kyua-cli: convert auto_ptr to unique_ptr
details: https://anonhg.NetBSD.org/src/rev/4860b66b2e52
branches: trunk
changeset: 935424:4860b66b2e52
user: lukem <lukem%NetBSD.org@localhost>
date: Thu Jul 02 14:04:00 2020 +0000
description:
kyua-cli: convert auto_ptr to unique_ptr
Update kyua-cli to C++11 and use unique_ptr instead of auto_ptr,
(with std::move() where appropriate), to avoid deprecated warning by g++ 8.
(I didn't change some of the code that could arguably be refactored
to use unique_ptr or shared_ptr instead of raw pointers
and therefore remove the special case destructor handling).
diffstat:
external/bsd/kyua-cli/Makefile.inc | 5 +-
external/bsd/kyua-cli/dist/cli/cmd_report.hpp | 2 +-
external/bsd/kyua-cli/dist/cli/common.hpp | 2 +-
external/bsd/kyua-cli/dist/cli/main.cpp | 4 +-
external/bsd/kyua-cli/dist/engine/config.cpp | 2 +-
external/bsd/kyua-cli/dist/engine/metadata.cpp | 8 +-
external/bsd/kyua-cli/dist/engine/metadata.hpp | 2 +-
external/bsd/kyua-cli/dist/engine/testers.cpp | 4 +-
external/bsd/kyua-cli/dist/utils/cmdline/commands_map.hpp | 2 +-
external/bsd/kyua-cli/dist/utils/config/lua_module_test.cpp | 2 +-
external/bsd/kyua-cli/dist/utils/config/nodes.cpp | 12 ++--
external/bsd/kyua-cli/dist/utils/config/parser.hpp | 2 +-
external/bsd/kyua-cli/dist/utils/config/tree_test.cpp | 2 +-
external/bsd/kyua-cli/dist/utils/format/formatter.cpp | 2 +-
external/bsd/kyua-cli/dist/utils/logging/operations.cpp | 2 +-
external/bsd/kyua-cli/dist/utils/process/child.cpp | 26 ++++----
external/bsd/kyua-cli/dist/utils/process/child.hpp | 14 ++--
external/bsd/kyua-cli/dist/utils/process/child.ipp | 8 +-
external/bsd/kyua-cli/dist/utils/process/child_test.cpp | 36 ++++++------
external/bsd/kyua-cli/dist/utils/process/fdstream.hpp | 2 +-
external/bsd/kyua-cli/dist/utils/process/systembuf.hpp | 2 +-
external/bsd/kyua-cli/dist/utils/signals/interrupts.cpp | 18 +++---
external/bsd/kyua-cli/dist/utils/signals/interrupts_test.cpp | 4 +-
external/bsd/kyua-cli/dist/utils/signals/misc_test.cpp | 2 +-
external/bsd/kyua-cli/dist/utils/signals/programmer.hpp | 2 +-
25 files changed, 82 insertions(+), 85 deletions(-)
diffs (truncated from 723 to 300 lines):
diff -r 37910ed9327d -r 4860b66b2e52 external/bsd/kyua-cli/Makefile.inc
--- a/external/bsd/kyua-cli/Makefile.inc Thu Jul 02 14:02:04 2020 +0000
+++ b/external/bsd/kyua-cli/Makefile.inc Thu Jul 02 14:04:00 2020 +0000
@@ -1,13 +1,10 @@
-# $NetBSD: Makefile.inc,v 1.5 2020/06/21 14:26:16 lukem Exp $
+# $NetBSD: Makefile.inc,v 1.6 2020/07/02 14:04:00 lukem Exp $
.include <bsd.own.mk>
TOPDIR= ${NETBSDSRCDIR}/external/bsd/kyua-cli
SRCDIR= ${TOPDIR}/dist
-# Kyua uses auto_ptr; g++ 8 complains about it
-CXXFLAGS+= -Wno-deprecated-declarations
-
# Name of the private libraries (without their lib prefix) to depend on.
KYUA_LIBS?=
diff -r 37910ed9327d -r 4860b66b2e52 external/bsd/kyua-cli/dist/cli/cmd_report.hpp
--- a/external/bsd/kyua-cli/dist/cli/cmd_report.hpp Thu Jul 02 14:02:04 2020 +0000
+++ b/external/bsd/kyua-cli/dist/cli/cmd_report.hpp Thu Jul 02 14:04:00 2020 +0000
@@ -63,7 +63,7 @@
const utils::fs::path _output_path;
/// The output file, if not stdout nor stderr.
- std::auto_ptr< std::ofstream > _output_file;
+ std::unique_ptr< std::ofstream > _output_file;
/// Constant that represents the path to stdout.
static const utils::fs::path _stdout_path;
diff -r 37910ed9327d -r 4860b66b2e52 external/bsd/kyua-cli/dist/cli/common.hpp
--- a/external/bsd/kyua-cli/dist/cli/common.hpp Thu Jul 02 14:02:04 2020 +0000
+++ b/external/bsd/kyua-cli/dist/cli/common.hpp Thu Jul 02 14:04:00 2020 +0000
@@ -76,7 +76,7 @@
/// Scoped, strictly owned pointer to a cli_command.
-typedef std::auto_ptr< cli_command > cli_command_ptr;
+typedef std::unique_ptr< cli_command > cli_command_ptr;
/// Collection of result types.
diff -r 37910ed9327d -r 4860b66b2e52 external/bsd/kyua-cli/dist/cli/main.cpp
--- a/external/bsd/kyua-cli/dist/cli/main.cpp Thu Jul 02 14:02:04 2020 +0000
+++ b/external/bsd/kyua-cli/dist/cli/main.cpp Thu Jul 02 14:04:00 2020 +0000
@@ -171,7 +171,7 @@
commands.insert(new cli::cmd_report_html(), "Reporting");
if (mock_command.get() != NULL)
- commands.insert(mock_command);
+ commands.insert(std::move(mock_command));
const cmdline::parsed_cmdline cmdline = cmdline::parse(argc, argv, options);
@@ -249,7 +249,7 @@
cli_command_ptr mock_command)
{
try {
- const int exit_code = safe_main(ui, argc, argv, mock_command);
+ const int exit_code = safe_main(ui, argc, argv, std::move(mock_command));
// Codes above 1 are reserved to report conditions captured as
// exceptions below.
diff -r 37910ed9327d -r 4860b66b2e52 external/bsd/kyua-cli/dist/engine/config.cpp
--- a/external/bsd/kyua-cli/dist/engine/config.cpp Thu Jul 02 14:02:04 2020 +0000
+++ b/external/bsd/kyua-cli/dist/engine/config.cpp Thu Jul 02 14:04:00 2020 +0000
@@ -125,7 +125,7 @@
config::detail::base_node*
engine::user_node::deep_copy(void) const
{
- std::auto_ptr< user_node > new_node(new user_node());
+ std::unique_ptr< user_node > new_node(new user_node());
new_node->_value = _value;
return new_node.release();
}
diff -r 37910ed9327d -r 4860b66b2e52 external/bsd/kyua-cli/dist/engine/metadata.cpp
--- a/external/bsd/kyua-cli/dist/engine/metadata.cpp Thu Jul 02 14:02:04 2020 +0000
+++ b/external/bsd/kyua-cli/dist/engine/metadata.cpp Thu Jul 02 14:04:00 2020 +0000
@@ -72,7 +72,7 @@
virtual base_node*
deep_copy(void) const
{
- std::auto_ptr< bytes_node > new_node(new bytes_node());
+ std::unique_ptr< bytes_node > new_node(new bytes_node());
new_node->_value = _value;
return new_node.release();
}
@@ -108,7 +108,7 @@
virtual base_node*
deep_copy(void) const
{
- std::auto_ptr< delta_node > new_node(new delta_node());
+ std::unique_ptr< delta_node > new_node(new delta_node());
new_node->_value = _value;
return new_node.release();
}
@@ -174,7 +174,7 @@
virtual base_node*
deep_copy(void) const
{
- std::auto_ptr< user_node > new_node(new user_node());
+ std::unique_ptr< user_node > new_node(new user_node());
new_node->_value = _value;
return new_node.release();
}
@@ -205,7 +205,7 @@
virtual base_node*
deep_copy(void) const
{
- std::auto_ptr< paths_set_node > new_node(new paths_set_node());
+ std::unique_ptr< paths_set_node > new_node(new paths_set_node());
new_node->_value = _value;
return new_node.release();
}
diff -r 37910ed9327d -r 4860b66b2e52 external/bsd/kyua-cli/dist/engine/metadata.hpp
--- a/external/bsd/kyua-cli/dist/engine/metadata.hpp Thu Jul 02 14:02:04 2020 +0000
+++ b/external/bsd/kyua-cli/dist/engine/metadata.hpp Thu Jul 02 14:04:00 2020 +0000
@@ -107,7 +107,7 @@
struct impl;
/// Pointer to the shared internal implementation.
- std::auto_ptr< impl > _pimpl;
+ std::unique_ptr< impl > _pimpl;
public:
metadata_builder(void);
diff -r 37910ed9327d -r 4860b66b2e52 external/bsd/kyua-cli/dist/engine/testers.cpp
--- a/external/bsd/kyua-cli/dist/engine/testers.cpp Thu Jul 02 14:02:04 2020 +0000
+++ b/external/bsd/kyua-cli/dist/engine/testers.cpp Thu Jul 02 14:04:00 2020 +0000
@@ -247,7 +247,7 @@
args.push_back(program.str());
const fs::path tester_path = engine::tester_path(_interface);
- std::auto_ptr< process::child > child = process::child::spawn_capture(
+ std::unique_ptr< process::child > child = process::child::spawn_capture(
tester_path, args);
const std::string output = utils::read_stream(child->output());
@@ -288,7 +288,7 @@
args.push_back(result_file.str());
const fs::path tester_path = engine::tester_path(_interface);
- std::auto_ptr< process::child > child = process::child::spawn_files(
+ std::unique_ptr< process::child > child = process::child::spawn_files(
tester_path, args, stdout_file, stderr_file);
const process::status status = child->wait();
diff -r 37910ed9327d -r 4860b66b2e52 external/bsd/kyua-cli/dist/utils/cmdline/commands_map.hpp
--- a/external/bsd/kyua-cli/dist/utils/cmdline/commands_map.hpp Thu Jul 02 14:02:04 2020 +0000
+++ b/external/bsd/kyua-cli/dist/utils/cmdline/commands_map.hpp Thu Jul 02 14:04:00 2020 +0000
@@ -70,7 +70,7 @@
~commands_map(void);
/// Scoped, strictly-owned pointer to a command from this map.
- typedef typename std::auto_ptr< BaseCommand > command_ptr;
+ typedef typename std::unique_ptr< BaseCommand > command_ptr;
void insert(command_ptr, const std::string& = "");
void insert(BaseCommand*, const std::string& = "");
diff -r 37910ed9327d -r 4860b66b2e52 external/bsd/kyua-cli/dist/utils/config/lua_module_test.cpp
--- a/external/bsd/kyua-cli/dist/utils/config/lua_module_test.cpp Thu Jul 02 14:02:04 2020 +0000
+++ b/external/bsd/kyua-cli/dist/utils/config/lua_module_test.cpp Thu Jul 02 14:04:00 2020 +0000
@@ -67,7 +67,7 @@
virtual base_node*
deep_copy(void) const
{
- std::auto_ptr< custom_node > new_node(new custom_node());
+ std::unique_ptr< custom_node > new_node(new custom_node());
new_node->_value = _value;
return new_node.release();
}
diff -r 37910ed9327d -r 4860b66b2e52 external/bsd/kyua-cli/dist/utils/config/nodes.cpp
--- a/external/bsd/kyua-cli/dist/utils/config/nodes.cpp Thu Jul 02 14:02:04 2020 +0000
+++ b/external/bsd/kyua-cli/dist/utils/config/nodes.cpp Thu Jul 02 14:04:00 2020 +0000
@@ -223,7 +223,7 @@
config::detail::base_node*
config::detail::static_inner_node::deep_copy(void) const
{
- std::auto_ptr< inner_node > new_node(new static_inner_node());
+ std::unique_ptr< inner_node > new_node(new static_inner_node());
copy_into(new_node.get());
return new_node.release();
}
@@ -286,7 +286,7 @@
config::detail::base_node*
config::detail::dynamic_inner_node::deep_copy(void) const
{
- std::auto_ptr< inner_node > new_node(new dynamic_inner_node());
+ std::unique_ptr< inner_node > new_node(new dynamic_inner_node());
copy_into(new_node.get());
return new_node.release();
}
@@ -304,7 +304,7 @@
config::detail::base_node*
config::bool_node::deep_copy(void) const
{
- std::auto_ptr< bool_node > new_node(new bool_node());
+ std::unique_ptr< bool_node > new_node(new bool_node());
new_node->_value = _value;
return new_node.release();
}
@@ -343,7 +343,7 @@
config::detail::base_node*
config::int_node::deep_copy(void) const
{
- std::auto_ptr< int_node > new_node(new int_node());
+ std::unique_ptr< int_node > new_node(new int_node());
new_node->_value = _value;
return new_node.release();
}
@@ -382,7 +382,7 @@
config::detail::base_node*
config::string_node::deep_copy(void) const
{
- std::auto_ptr< string_node > new_node(new string_node());
+ std::unique_ptr< string_node > new_node(new string_node());
new_node->_value = _value;
return new_node.release();
}
@@ -421,7 +421,7 @@
config::detail::base_node*
config::strings_set_node::deep_copy(void) const
{
- std::auto_ptr< strings_set_node > new_node(new strings_set_node());
+ std::unique_ptr< strings_set_node > new_node(new strings_set_node());
new_node->_value = _value;
return new_node.release();
}
diff -r 37910ed9327d -r 4860b66b2e52 external/bsd/kyua-cli/dist/utils/config/parser.hpp
--- a/external/bsd/kyua-cli/dist/utils/config/parser.hpp Thu Jul 02 14:02:04 2020 +0000
+++ b/external/bsd/kyua-cli/dist/utils/config/parser.hpp Thu Jul 02 14:04:00 2020 +0000
@@ -66,7 +66,7 @@
private:
/// Pointer to the internal implementation.
- std::auto_ptr< impl > _pimpl;
+ std::unique_ptr< impl > _pimpl;
/// Hook to initialize the tree keys before reading the file.
///
diff -r 37910ed9327d -r 4860b66b2e52 external/bsd/kyua-cli/dist/utils/config/tree_test.cpp
--- a/external/bsd/kyua-cli/dist/utils/config/tree_test.cpp Thu Jul 02 14:02:04 2020 +0000
+++ b/external/bsd/kyua-cli/dist/utils/config/tree_test.cpp Thu Jul 02 14:04:00 2020 +0000
@@ -76,7 +76,7 @@
virtual base_node*
deep_copy(void) const
{
- std::auto_ptr< wrapped_int_node > new_node(new wrapped_int_node());
+ std::unique_ptr< wrapped_int_node > new_node(new wrapped_int_node());
new_node->_value = _value;
return new_node.release();
}
diff -r 37910ed9327d -r 4860b66b2e52 external/bsd/kyua-cli/dist/utils/format/formatter.cpp
--- a/external/bsd/kyua-cli/dist/utils/format/formatter.cpp Thu Jul 02 14:02:04 2020 +0000
+++ b/external/bsd/kyua-cli/dist/utils/format/formatter.cpp Thu Jul 02 14:04:00 2020 +0000
@@ -118,7 +118,7 @@
static std::ostringstream*
new_ostringstream(const std::string& format)
{
- std::auto_ptr< std::ostringstream > output(new std::ostringstream());
+ std::unique_ptr< std::ostringstream > output(new std::ostringstream());
if (format.length() <= 2) {
// If the format is empty, we create a new stream so that we don't have
diff -r 37910ed9327d -r 4860b66b2e52 external/bsd/kyua-cli/dist/utils/logging/operations.cpp
--- a/external/bsd/kyua-cli/dist/utils/logging/operations.cpp Thu Jul 02 14:02:04 2020 +0000
+++ b/external/bsd/kyua-cli/dist/utils/logging/operations.cpp Thu Jul 02 14:04:00 2020 +0000
@@ -96,7 +96,7 @@
/// Stream to the currently open log file.
-static std::auto_ptr< std::ofstream > logfile;
+static std::unique_ptr< std::ofstream > logfile;
/// Constant string to strftime to format timestamps.
diff -r 37910ed9327d -r 4860b66b2e52 external/bsd/kyua-cli/dist/utils/process/child.cpp
--- a/external/bsd/kyua-cli/dist/utils/process/child.cpp Thu Jul 02 14:02:04 2020 +0000
+++ b/external/bsd/kyua-cli/dist/utils/process/child.cpp Thu Jul 02 14:04:00 2020 +0000
@@ -65,7 +65,7 @@
pid_t _pid;
/// The input stream for the process' stdout and stderr. May be NULL.
- std::auto_ptr< process::ifdstream > _output;
+ std::unique_ptr< process::ifdstream > _output;
/// Initializes private implementation data.
///
@@ -252,7 +252,7 @@
/// noncopyable. In the case of the child, a NULL pointer.
///
/// \throw process::system_error If the calls to pipe(2) or fork(2) fail.
-std::auto_ptr< process::child >
+std::unique_ptr< process::child >
process::child::fork_capture_aux(void)
{
std::cout.flush();
@@ -262,7 +262,7 @@
if (detail::syscall_pipe(fds) == -1)
throw process::system_error("pipe(2) failed", errno);
Home |
Main Index |
Thread Index |
Old Index