early-access version 3088

This commit is contained in:
pineappleEA
2022-11-05 15:35:56 +01:00
parent 4e4fc25ce3
commit b601909c6d
35519 changed files with 5996896 additions and 860 deletions

View File

@@ -0,0 +1,39 @@
#
# Copyright Andrey Semashev 2020 - 2021.
# Distributed under the Boost Software License, Version 1.0.
# (See accompanying file LICENSE_1_0.txt or copy at
# http://www.boost.org/LICENSE_1_0.txt)
#
obj has_attribute_init_priority : has_attribute_init_priority.cpp : <include>../src ;
explicit has_attribute_init_priority ;
obj has_cxx20_atomic_ref : has_cxx20_atomic_ref.cpp : <include>../src ;
explicit has_cxx20_atomic_ref ;
obj has_stat_st_blksize : has_stat_st_blksize.cpp : <include>../src ;
explicit has_stat_st_blksize ;
obj has_stat_st_mtim : has_stat_st_mtim.cpp : <include>../src ;
explicit has_stat_st_mtim ;
obj has_stat_st_mtimensec : has_stat_st_mtimensec.cpp : <include>../src ;
explicit has_stat_st_mtimensec ;
obj has_stat_st_mtimespec : has_stat_st_mtimespec.cpp : <include>../src ;
explicit has_stat_st_mtimespec ;
obj has_statx : has_statx.cpp : <include>../src ;
explicit has_statx ;
obj has_statx_syscall : has_statx_syscall.cpp : <include>../src ;
explicit has_statx_syscall ;
obj has_stat_st_birthtim : has_stat_st_birthtim.cpp : <include>../src ;
explicit has_stat_st_birthtim ;
obj has_stat_st_birthtimensec : has_stat_st_birthtimensec.cpp : <include>../src ;
explicit has_stat_st_birthtimensec ;
obj has_stat_st_birthtimespec : has_stat_st_birthtimespec.cpp : <include>../src ;
explicit has_stat_st_birthtimespec ;
obj has_fdopendir_nofollow : has_fdopendir_nofollow.cpp : <include>../src ;
explicit has_fdopendir_nofollow ;
lib bcrypt ;
explicit bcrypt ;
exe has_bcrypt : has_bcrypt.cpp : <include>../src <library>bcrypt ;
explicit has_bcrypt ;
obj is_windows_ce : is_windows_ce.cpp ;
explicit is_windows_ce ;

View File

@@ -0,0 +1,20 @@
// Copyright 2021 Andrey Semashev
// Distributed under the Boost Software License, Version 1.0.
// See http://www.boost.org/LICENSE_1_0.txt
// See library home page at http://www.boost.org/libs/filesystem
struct global_class
{
global_class() {}
~global_class() {}
};
__attribute__ ((init_priority(32767)))
global_class g_object;
int main()
{
return 0;
}

View File

@@ -0,0 +1,34 @@
// Copyright 2020 Andrey Semashev
// Distributed under the Boost Software License, Version 1.0.
// See http://www.boost.org/LICENSE_1_0.txt
// See library home page at http://www.boost.org/libs/filesystem
// Include platform_config.hpp first so that windows.h is guaranteed to be not included
#include "platform_config.hpp"
#include <boost/predef/os/windows.h>
#include <boost/predef/os/cygwin.h>
#if !BOOST_OS_WINDOWS && !BOOST_OS_CYGWIN
#error "This config test is for Windows only"
#endif
#include <boost/winapi/config.hpp>
#include <boost/predef/platform.h>
#if !(BOOST_USE_WINAPI_VERSION >= BOOST_WINAPI_VERSION_WIN6 && BOOST_WINAPI_PARTITION_APP_SYSTEM)
#error "No BCrypt API"
#endif
#include <cstddef>
#include <boost/winapi/basic_types.hpp>
#include <boost/winapi/bcrypt.hpp>
int main()
{
unsigned char buf[16] = {};
boost::winapi::BCRYPT_ALG_HANDLE_ handle;
boost::winapi::NTSTATUS_ status = boost::winapi::BCryptOpenAlgorithmProvider(&handle, boost::winapi::BCRYPT_RNG_ALGORITHM_, NULL, 0);
status = boost::winapi::BCryptGenRandom(handle, reinterpret_cast< boost::winapi::PUCHAR_ >(static_cast< unsigned char* >(buf)), static_cast< boost::winapi::ULONG_ >(sizeof(buf)), 0);
boost::winapi::BCryptCloseAlgorithmProvider(handle, 0);
}

View File

@@ -0,0 +1,19 @@
// Copyright 2021 Andrey Semashev
// Distributed under the Boost Software License, Version 1.0.
// See http://www.boost.org/LICENSE_1_0.txt
// See library home page at http://www.boost.org/libs/filesystem
#include <atomic>
typedef void func_t();
int main()
{
func_t* func = 0;
std::atomic_ref< func_t* > ref(func);
ref.load(std::memory_order_relaxed);
ref.store((func_t*)0, std::memory_order_relaxed);
return 0;
}

View File

@@ -0,0 +1,20 @@
// Copyright 2022 Andrey Semashev
// Distributed under the Boost Software License, Version 1.0.
// See http://www.boost.org/LICENSE_1_0.txt
// See library home page at http://www.boost.org/libs/filesystem
#include "platform_config.hpp"
#include <sys/types.h>
#include <sys/stat.h>
#include <dirent.h>
#include <fcntl.h>
int main()
{
int fd = open(".", O_DIRECTORY | O_RDONLY | O_NOFOLLOW);
DIR* dir = fdopendir(fd);
return dir != 0;
}

View File

@@ -0,0 +1,19 @@
// Copyright 2020 Andrey Semashev
// Distributed under the Boost Software License, Version 1.0.
// See http://www.boost.org/LICENSE_1_0.txt
// See library home page at http://www.boost.org/libs/filesystem
#include "platform_config.hpp"
#include <sys/types.h>
#include <sys/stat.h>
#include <unistd.h>
int main()
{
struct stat st;
st.st_birthtim.tv_sec = 1;
st.st_birthtim.tv_nsec = 10;
}

View File

@@ -0,0 +1,19 @@
// Copyright 2020 Andrey Semashev
// Distributed under the Boost Software License, Version 1.0.
// See http://www.boost.org/LICENSE_1_0.txt
// See library home page at http://www.boost.org/libs/filesystem
#include "platform_config.hpp"
#include <sys/types.h>
#include <sys/stat.h>
#include <unistd.h>
int main()
{
struct stat st;
st.st_birthtime = 1;
st.st_birthtimensec = 10;
}

View File

@@ -0,0 +1,19 @@
// Copyright 2020 Andrey Semashev
// Distributed under the Boost Software License, Version 1.0.
// See http://www.boost.org/LICENSE_1_0.txt
// See library home page at http://www.boost.org/libs/filesystem
#include "platform_config.hpp"
#include <sys/types.h>
#include <sys/stat.h>
#include <unistd.h>
int main()
{
struct stat st;
st.st_birthtimespec.tv_sec = 1;
st.st_birthtimespec.tv_nsec = 10;
}

View File

@@ -0,0 +1,18 @@
// Copyright 2021 Andrey Semashev
// Distributed under the Boost Software License, Version 1.0.
// See http://www.boost.org/LICENSE_1_0.txt
// See library home page at http://www.boost.org/libs/filesystem
#include "platform_config.hpp"
#include <sys/types.h>
#include <sys/stat.h>
#include <unistd.h>
int main()
{
struct stat st;
st.st_blksize = 10;
}

View File

@@ -0,0 +1,18 @@
// Copyright 2020 Andrey Semashev
// Distributed under the Boost Software License, Version 1.0.
// See http://www.boost.org/LICENSE_1_0.txt
// See library home page at http://www.boost.org/libs/filesystem
#include "platform_config.hpp"
#include <sys/types.h>
#include <sys/stat.h>
#include <unistd.h>
int main()
{
struct stat st;
st.st_mtim.tv_nsec = 10;
}

View File

@@ -0,0 +1,18 @@
// Copyright 2020 Andrey Semashev
// Distributed under the Boost Software License, Version 1.0.
// See http://www.boost.org/LICENSE_1_0.txt
// See library home page at http://www.boost.org/libs/filesystem
#include "platform_config.hpp"
#include <sys/types.h>
#include <sys/stat.h>
#include <unistd.h>
int main()
{
struct stat st;
st.st_mtimensec = 10;
}

View File

@@ -0,0 +1,18 @@
// Copyright 2020 Andrey Semashev
// Distributed under the Boost Software License, Version 1.0.
// See http://www.boost.org/LICENSE_1_0.txt
// See library home page at http://www.boost.org/libs/filesystem
#include "platform_config.hpp"
#include <sys/types.h>
#include <sys/stat.h>
#include <unistd.h>
int main()
{
struct stat st;
st.st_mtimespec.tv_nsec = 10;
}

View File

@@ -0,0 +1,21 @@
// Copyright 2020 Andrey Semashev
// Distributed under the Boost Software License, Version 1.0.
// See http://www.boost.org/LICENSE_1_0.txt
// See library home page at http://www.boost.org/libs/filesystem
#include "platform_config.hpp"
#include <sys/types.h>
#include <sys/stat.h>
#include <unistd.h>
#include <fcntl.h>
int main()
{
struct statx st;
int res = statx(AT_FDCWD, ".", AT_SYMLINK_NOFOLLOW | AT_NO_AUTOMOUNT, STATX_BTIME, &st);
st.stx_btime.tv_sec = 1;
st.stx_btime.tv_nsec = 10;
}

View File

@@ -0,0 +1,35 @@
// Copyright 2020 Andrey Semashev
// Distributed under the Boost Software License, Version 1.0.
// See http://www.boost.org/LICENSE_1_0.txt
// See library home page at http://www.boost.org/libs/filesystem
#include "platform_config.hpp"
#include <sys/syscall.h>
#include <linux/stat.h>
// Note: Include other libc headers for stat() as well to ensure there is no conflict between
// Linux kernel headers and libc headers.
#include <sys/types.h>
#include <sys/stat.h>
#include <unistd.h>
#include <fcntl.h>
#if defined(__ANDROID__) && (__ANDROID_API__ < 30)
// Even though statx syscall number is defined, it is blacklisted by seccomp in runtime until Android 11
#error "statx syscall is not supported until Android 11"
#endif
#if !defined(__NR_statx)
#error "No statx syscall"
#endif
int main()
{
struct statx st;
int res = syscall(__NR_statx, AT_FDCWD, ".", AT_SYMLINK_NOFOLLOW | AT_NO_AUTOMOUNT, STATX_BTIME, &st);
st.stx_btime.tv_sec = 1;
st.stx_btime.tv_nsec = 10;
}

View File

@@ -0,0 +1,14 @@
// Copyright 2020 Andrey Semashev
// Distributed under the Boost Software License, Version 1.0.
// See http://www.boost.org/LICENSE_1_0.txt
// See library home page at http://www.boost.org/libs/filesystem
#if !defined(_WIN32_WCE)
#error "This is not Windows CE"
#endif
int main()
{
}