14#include <util/pragma_push.def>
16#pragma warning(disable:4668)
18#pragma warning(disable : 5039)
30#include <util/pragma_pop.def>
40#if defined(__linux__) || \
41 defined(__FreeBSD_kernel__) || \
43 defined(__unix__) || \
44 defined(__CYGWIN__) || \
52#define mkstemps my_mkstemps
72 "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
81 for(
unsigned i=0; i<6; i++)
100 const std::string &prefix,
101 const std::string &suffix)
118 std::to_string(
getpid())+
".XXXXXX"+suffix;
120 std::string
dir=
"/tmp/";
124 if(*
dir.rbegin()!=
'/')
128 dir+prefix+std::to_string(
getpid())+
".XXXXXX"+suffix;
140 std::string result=std::string(
t_ptr);
148 std::filesystem::remove(
name);
ait supplies three of the four components needed: an abstract interpreter (in this case handling func...
Thrown when some external system fails unexpectedly.
int open(const char *pathname, int flags,...)
char * getenv(const char *name)
int strncmp(const char *s1, const char *s2, size_t n)
size_t strlen(const char *s)
char * strdup(const char *str)
std::string get_temporary_file(const std::string &prefix, const std::string &suffix)
Substitute for mkstemps (OpenBSD standard) for Windows, where it is unavailable.