aboutsummaryrefslogtreecommitdiff
path: root/libstdc++-v3
diff options
context:
space:
mode:
authorJonathan Wakely <jwakely@redhat.com>2015-05-20 18:28:04 +0100
committerJonathan Wakely <redi@gcc.gnu.org>2015-05-20 18:28:04 +0100
commit7769c9deffec3ac3fab8d9a67e8de9e69d2cbd6b (patch)
treeaee45845e52d12f3693d3ec159ff127b9c76f6dc /libstdc++-v3
parent793cac74e956117578b38224fbeab6c8621c3de5 (diff)
downloadgcc-7769c9deffec3ac3fab8d9a67e8de9e69d2cbd6b.zip
gcc-7769c9deffec3ac3fab8d9a67e8de9e69d2cbd6b.tar.gz
gcc-7769c9deffec3ac3fab8d9a67e8de9e69d2cbd6b.tar.bz2
* testsuite/util/testsuite_fs.h (nonexistent_path): Don't use tempnam.
From-SVN: r223450
Diffstat (limited to 'libstdc++-v3')
-rw-r--r--libstdc++-v3/ChangeLog2
-rw-r--r--libstdc++-v3/testsuite/util/testsuite_fs.h15
2 files changed, 7 insertions, 10 deletions
diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog
index 50b1626..ce5573c 100644
--- a/libstdc++-v3/ChangeLog
+++ b/libstdc++-v3/ChangeLog
@@ -1,5 +1,7 @@
2015-05-20 Jonathan Wakely <jwakely@redhat.com>
+ * testsuite/util/testsuite_fs.h (nonexistent_path): Don't use tempnam.
+
PR libstdc++/66078
* include/bits/stl_iterator.h (__make_move_if_noexcept_iterator): Add
overload for pointers.
diff --git a/libstdc++-v3/testsuite/util/testsuite_fs.h b/libstdc++-v3/testsuite/util/testsuite_fs.h
index f404a7a..3873a60 100644
--- a/libstdc++-v3/testsuite/util/testsuite_fs.h
+++ b/libstdc++-v3/testsuite/util/testsuite_fs.h
@@ -26,10 +26,8 @@
#include <iostream>
#include <string>
#include <cstdio>
-#if defined(_GNU_SOURCE) || _XOPEN_SOURCE >= 500 || _POSIX_C_SOURCE >= 200112L
-# include <stdlib.h>
-# include <unistd.h>
-#endif
+#include <stdlib.h>
+#include <unistd.h>
namespace __gnu_test
{
@@ -84,12 +82,9 @@ namespace __gnu_test
::close(fd);
p = tmp;
#else
- char* tmp = tempnam(".", "test.");
- if (!tmp)
- throw std::experimental::filesystem::filesystem_error("tempnam failed",
- std::error_code(errno, std::generic_category()));
- p = tmp;
- ::free(tmp);
+ char buf[64];
+ std::sprintf(buf, "test.%lu", (unsigned long)::getpid());
+ p = buf;
#endif
return p;
}