summaryrefslogtreecommitdiffstats
path: root/contrib/restricted/boost
diff options
context:
space:
mode:
authorarcadia-devtools <[email protected]>2022-04-26 11:01:21 +0300
committerarcadia-devtools <[email protected]>2022-04-26 11:01:21 +0300
commitc321d56b715aa8ca196cf373c98b02b83251b8bb (patch)
tree0dedcee57bf1b0d0e26268ad13aa27089dfdc0c6 /contrib/restricted/boost
parent2aee4cdb6025798e3aae85cc1eabe01140ef0d3b (diff)
intermediate changes
ref:f69f306f165759314221f8c42c9dc3748f5ab986
Diffstat (limited to 'contrib/restricted/boost')
-rw-r--r--contrib/restricted/boost/boost/stacktrace/detail/addr2line_impls.hpp226
-rw-r--r--contrib/restricted/boost/boost/stacktrace/detail/collect_noop.ipp25
-rw-r--r--contrib/restricted/boost/boost/stacktrace/detail/frame_noop.ipp44
-rw-r--r--contrib/restricted/boost/boost/stacktrace/detail/safe_dump_noop.ipp37
-rw-r--r--contrib/restricted/boost/boost/stacktrace/detail/try_dec_convert.hpp29
-rw-r--r--contrib/restricted/boost/stacktrace/.yandex_meta/devtools.copyrights.report100
-rw-r--r--contrib/restricted/boost/stacktrace/.yandex_meta/devtools.licenses.report96
-rw-r--r--contrib/restricted/boost/stacktrace/.yandex_meta/licenses.list.txt27
-rw-r--r--contrib/restricted/boost/stacktrace/README.md17
-rw-r--r--contrib/restricted/boost/stacktrace/include/boost/stacktrace.hpp (renamed from contrib/restricted/boost/boost/stacktrace.hpp)0
-rw-r--r--contrib/restricted/boost/stacktrace/include/boost/stacktrace/detail/collect_msvc.ipp (renamed from contrib/restricted/boost/boost/stacktrace/detail/collect_msvc.ipp)0
-rw-r--r--contrib/restricted/boost/stacktrace/include/boost/stacktrace/detail/collect_unwind.ipp (renamed from contrib/restricted/boost/boost/stacktrace/detail/collect_unwind.ipp)0
-rw-r--r--contrib/restricted/boost/stacktrace/include/boost/stacktrace/detail/frame_decl.hpp (renamed from contrib/restricted/boost/boost/stacktrace/detail/frame_decl.hpp)0
-rw-r--r--contrib/restricted/boost/stacktrace/include/boost/stacktrace/detail/frame_msvc.ipp (renamed from contrib/restricted/boost/boost/stacktrace/detail/frame_msvc.ipp)0
-rw-r--r--contrib/restricted/boost/stacktrace/include/boost/stacktrace/detail/frame_unwind.ipp (renamed from contrib/restricted/boost/boost/stacktrace/detail/frame_unwind.ipp)2
-rw-r--r--contrib/restricted/boost/stacktrace/include/boost/stacktrace/detail/libbacktrace_impls.hpp (renamed from contrib/restricted/boost/boost/stacktrace/detail/libbacktrace_impls.hpp)11
-rw-r--r--contrib/restricted/boost/stacktrace/include/boost/stacktrace/detail/location_from_symbol.hpp (renamed from contrib/restricted/boost/boost/stacktrace/detail/location_from_symbol.hpp)0
-rw-r--r--contrib/restricted/boost/stacktrace/include/boost/stacktrace/detail/pop_options.h (renamed from contrib/restricted/boost/boost/stacktrace/detail/pop_options.h)0
-rw-r--r--contrib/restricted/boost/stacktrace/include/boost/stacktrace/detail/push_options.h (renamed from contrib/restricted/boost/boost/stacktrace/detail/push_options.h)0
-rw-r--r--contrib/restricted/boost/stacktrace/include/boost/stacktrace/detail/safe_dump_posix.ipp (renamed from contrib/restricted/boost/boost/stacktrace/detail/safe_dump_posix.ipp)0
-rw-r--r--contrib/restricted/boost/stacktrace/include/boost/stacktrace/detail/safe_dump_win.ipp (renamed from contrib/restricted/boost/boost/stacktrace/detail/safe_dump_win.ipp)0
-rw-r--r--contrib/restricted/boost/stacktrace/include/boost/stacktrace/detail/to_dec_array.hpp (renamed from contrib/restricted/boost/boost/stacktrace/detail/to_dec_array.hpp)0
-rw-r--r--contrib/restricted/boost/stacktrace/include/boost/stacktrace/detail/to_hex_array.hpp (renamed from contrib/restricted/boost/boost/stacktrace/detail/to_hex_array.hpp)0
-rw-r--r--contrib/restricted/boost/stacktrace/include/boost/stacktrace/detail/unwind_base_impls.hpp (renamed from contrib/restricted/boost/boost/stacktrace/detail/unwind_base_impls.hpp)0
-rw-r--r--contrib/restricted/boost/stacktrace/include/boost/stacktrace/detail/void_ptr_cast.hpp (renamed from contrib/restricted/boost/boost/stacktrace/detail/void_ptr_cast.hpp)0
-rw-r--r--contrib/restricted/boost/stacktrace/include/boost/stacktrace/frame.hpp (renamed from contrib/restricted/boost/boost/stacktrace/frame.hpp)2
-rw-r--r--contrib/restricted/boost/stacktrace/include/boost/stacktrace/safe_dump_to.hpp (renamed from contrib/restricted/boost/boost/stacktrace/safe_dump_to.hpp)4
-rw-r--r--contrib/restricted/boost/stacktrace/include/boost/stacktrace/stacktrace.hpp (renamed from contrib/restricted/boost/boost/stacktrace/stacktrace.hpp)0
-rw-r--r--contrib/restricted/boost/stacktrace/include/boost/stacktrace/stacktrace_fwd.hpp (renamed from contrib/restricted/boost/boost/stacktrace/stacktrace_fwd.hpp)0
-rw-r--r--contrib/restricted/boost/stacktrace/src/backtrace.cpp19
-rw-r--r--contrib/restricted/boost/stacktrace/src/basic.cpp18
-rw-r--r--contrib/restricted/boost/stacktrace/src/windbg.cpp10
32 files changed, 296 insertions, 371 deletions
diff --git a/contrib/restricted/boost/boost/stacktrace/detail/addr2line_impls.hpp b/contrib/restricted/boost/boost/stacktrace/detail/addr2line_impls.hpp
deleted file mode 100644
index d54fd8247a1..00000000000
--- a/contrib/restricted/boost/boost/stacktrace/detail/addr2line_impls.hpp
+++ /dev/null
@@ -1,226 +0,0 @@
-// Copyright Antony Polukhin, 2016-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)
-
-#ifndef BOOST_STACKTRACE_DETAIL_ADDR2LINE_IMPLS_HPP
-#define BOOST_STACKTRACE_DETAIL_ADDR2LINE_IMPLS_HPP
-
-#include <boost/config.hpp>
-#ifdef BOOST_HAS_PRAGMA_ONCE
-# pragma once
-#endif
-
-#include <boost/stacktrace/detail/to_hex_array.hpp>
-#include <boost/stacktrace/detail/to_dec_array.hpp>
-#include <boost/stacktrace/detail/try_dec_convert.hpp>
-#include <boost/core/demangle.hpp>
-#include <cstdio>
-
-#include <sys/types.h>
-#include <sys/wait.h>
-#include <signal.h>
-
-
-namespace boost { namespace stacktrace { namespace detail {
-
-
-#if defined(BOOST_STACKTRACE_ADDR2LINE_LOCATION) && !defined(BOOST_NO_CXX11_CONSTEXPR)
-
-constexpr bool is_abs_path(const char* path) BOOST_NOEXCEPT {
- return *path != '\0' && (
- *path == ':' || *path == '/' || is_abs_path(path + 1)
- );
-}
-
-#endif
-
-class addr2line_pipe {
- ::FILE* p;
- ::pid_t pid;
-
-public:
- explicit addr2line_pipe(const char *flag, const char* exec_path, const char* addr) BOOST_NOEXCEPT
- : p(0)
- , pid(0)
- {
- int pdes[2];
- #ifdef BOOST_STACKTRACE_ADDR2LINE_LOCATION
- char prog_name[] = BOOST_STRINGIZE( BOOST_STACKTRACE_ADDR2LINE_LOCATION );
- #if !defined(BOOST_NO_CXX11_CONSTEXPR) && !defined(BOOST_NO_CXX11_STATIC_ASSERT)
- static_assert(
- boost::stacktrace::detail::is_abs_path( BOOST_STRINGIZE( BOOST_STACKTRACE_ADDR2LINE_LOCATION ) ),
- "BOOST_STACKTRACE_ADDR2LINE_LOCATION must be an absolute path"
- );
- #endif
-
- #else
- char prog_name[] = "/usr/bin/addr2line";
- #endif
-
- char* argp[] = {
- prog_name,
- const_cast<char*>(flag),
- const_cast<char*>(exec_path),
- const_cast<char*>(addr),
- 0
- };
-
- if (::pipe(pdes) < 0) {
- return;
- }
-
- pid = ::fork();
- switch (pid) {
- case -1:
- // Failed...
- ::close(pdes[0]);
- ::close(pdes[1]);
- return;
-
- case 0:
- // We are the child.
- ::close(STDERR_FILENO);
- ::close(pdes[0]);
- if (pdes[1] != STDOUT_FILENO) {
- ::dup2(pdes[1], STDOUT_FILENO);
- }
-
- // Do not use `execlp()`, `execvp()`, and `execvpe()` here!
- // `exec*p*` functions are vulnerable to PATH variable evaluation attacks.
- ::execv(prog_name, argp);
- ::_exit(127);
- }
-
- p = ::fdopen(pdes[0], "r");
- ::close(pdes[1]);
- }
-
- operator ::FILE*() const BOOST_NOEXCEPT {
- return p;
- }
-
- ~addr2line_pipe() BOOST_NOEXCEPT {
- if (p) {
- ::fclose(p);
- int pstat = 0;
- ::kill(pid, SIGKILL);
- ::waitpid(pid, &pstat, 0);
- }
- }
-};
-
-inline std::string addr2line(const char* flag, const void* addr) {
- std::string res;
-
- boost::stacktrace::detail::location_from_symbol loc(addr);
- if (!loc.empty()) {
- res = loc.name();
- } else {
- res.resize(16);
- int rlin_size = ::readlink("/proc/self/exe", &res[0], res.size() - 1);
- while (rlin_size == static_cast<int>(res.size() - 1)) {
- res.resize(res.size() * 4);
- rlin_size = ::readlink("/proc/self/exe", &res[0], res.size() - 1);
- }
- if (rlin_size == -1) {
- res.clear();
- return res;
- }
- res.resize(rlin_size);
- }
-
- addr2line_pipe p(flag, res.c_str(), to_hex_array(addr).data());
- res.clear();
-
- if (!p) {
- return res;
- }
-
- char data[32];
- while (!::feof(p)) {
- if (::fgets(data, sizeof(data), p)) {
- res += data;
- } else {
- break;
- }
- }
-
- // Trimming
- while (!res.empty() && (res[res.size() - 1] == '\n' || res[res.size() - 1] == '\r')) {
- res.erase(res.size() - 1);
- }
-
- return res;
-}
-
-
-struct to_string_using_addr2line {
- std::string res;
- void prepare_function_name(const void* addr) {
- res = boost::stacktrace::frame(addr).name();
- }
-
- bool prepare_source_location(const void* addr) {
- //return addr2line("-Cfipe", addr); // Does not seem to work in all cases
- std::string source_line = boost::stacktrace::detail::addr2line("-Cpe", addr);
- if (!source_line.empty() && source_line[0] != '?') {
- res += " at ";
- res += source_line;
- return true;
- }
-
- return false;
- }
-};
-
-template <class Base> class to_string_impl_base;
-typedef to_string_impl_base<to_string_using_addr2line> to_string_impl;
-
-inline std::string name_impl(const void* addr) {
- std::string res = boost::stacktrace::detail::addr2line("-fe", addr);
- res = res.substr(0, res.find_last_of('\n'));
- res = boost::core::demangle(res.c_str());
-
- if (res == "??") {
- res.clear();
- }
-
- return res;
-}
-
-} // namespace detail
-
-std::string frame::source_file() const {
- std::string res;
- res = boost::stacktrace::detail::addr2line("-e", addr_);
- res = res.substr(0, res.find_last_of(':'));
- if (res == "??") {
- res.clear();
- }
-
- return res;
-}
-
-
-std::size_t frame::source_line() const {
- std::size_t line_num = 0;
- std::string res = boost::stacktrace::detail::addr2line("-e", addr_);
- const std::size_t last = res.find_last_of(':');
- if (last == std::string::npos) {
- return 0;
- }
- res = res.substr(last + 1);
-
- if (!boost::stacktrace::detail::try_dec_convert(res.c_str(), line_num)) {
- return 0;
- }
-
- return line_num;
-}
-
-
-}} // namespace boost::stacktrace
-
-#endif // BOOST_STACKTRACE_DETAIL_ADDR2LINE_IMPLS_HPP
diff --git a/contrib/restricted/boost/boost/stacktrace/detail/collect_noop.ipp b/contrib/restricted/boost/boost/stacktrace/detail/collect_noop.ipp
deleted file mode 100644
index ca251c393f9..00000000000
--- a/contrib/restricted/boost/boost/stacktrace/detail/collect_noop.ipp
+++ /dev/null
@@ -1,25 +0,0 @@
-// Copyright Antony Polukhin, 2016-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)
-
-#ifndef BOOST_STACKTRACE_DETAIL_COLLECT_NOOP_IPP
-#define BOOST_STACKTRACE_DETAIL_COLLECT_NOOP_IPP
-
-#include <boost/config.hpp>
-#ifdef BOOST_HAS_PRAGMA_ONCE
-# pragma once
-#endif
-
-#include <boost/stacktrace/safe_dump_to.hpp>
-
-namespace boost { namespace stacktrace { namespace detail {
-
-std::size_t this_thread_frames::collect(native_frame_ptr_t* /*out_frames*/, std::size_t /*max_frames_count*/, std::size_t /*skip*/) BOOST_NOEXCEPT {
- return 0;
-}
-
-}}} // namespace boost::stacktrace::detail
-
-#endif // BOOST_STACKTRACE_DETAIL_COLLECT_NOOP_IPP
diff --git a/contrib/restricted/boost/boost/stacktrace/detail/frame_noop.ipp b/contrib/restricted/boost/boost/stacktrace/detail/frame_noop.ipp
deleted file mode 100644
index 7bac4c22447..00000000000
--- a/contrib/restricted/boost/boost/stacktrace/detail/frame_noop.ipp
+++ /dev/null
@@ -1,44 +0,0 @@
-// Copyright Antony Polukhin, 2016-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)
-
-#ifndef BOOST_STACKTRACE_DETAIL_FRAME_NOOP_IPP
-#define BOOST_STACKTRACE_DETAIL_FRAME_NOOP_IPP
-
-#include <boost/config.hpp>
-#ifdef BOOST_HAS_PRAGMA_ONCE
-# pragma once
-#endif
-
-#include <boost/stacktrace/frame.hpp>
-
-namespace boost { namespace stacktrace { namespace detail {
-
-std::string to_string(const frame* /*frames*/, std::size_t /*count*/) {
- return std::string();
-}
-
-} // namespace detail
-
-std::string frame::name() const {
- return std::string();
-}
-
-std::string frame::source_file() const {
- return std::string();
-}
-
-std::size_t frame::source_line() const {
- return 0;
-}
-
-std::string to_string(const frame& /*f*/) {
- return std::string();
-}
-
-
-}} // namespace boost::stacktrace
-
-#endif // BOOST_STACKTRACE_DETAIL_FRAME_NOOP_IPP
diff --git a/contrib/restricted/boost/boost/stacktrace/detail/safe_dump_noop.ipp b/contrib/restricted/boost/boost/stacktrace/detail/safe_dump_noop.ipp
deleted file mode 100644
index 2bda3c92f90..00000000000
--- a/contrib/restricted/boost/boost/stacktrace/detail/safe_dump_noop.ipp
+++ /dev/null
@@ -1,37 +0,0 @@
-// Copyright Antony Polukhin, 2016-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)
-
-#ifndef BOOST_STACKTRACE_DETAIL_SAFE_DUMP_NOOP_IPP
-#define BOOST_STACKTRACE_DETAIL_SAFE_DUMP_NOOP_IPP
-
-#include <boost/config.hpp>
-#ifdef BOOST_HAS_PRAGMA_ONCE
-# pragma once
-#endif
-
-#include <boost/stacktrace/safe_dump_to.hpp>
-
-namespace boost { namespace stacktrace { namespace detail {
-
-
-#if defined(BOOST_WINDOWS)
-std::size_t dump(void* /*fd*/, const native_frame_ptr_t* /*frames*/, std::size_t /*frames_count*/) BOOST_NOEXCEPT {
- return 0;
-}
-#else
-std::size_t dump(int /*fd*/, const native_frame_ptr_t* /*frames*/, std::size_t /*frames_count*/) BOOST_NOEXCEPT {
- return 0;
-}
-#endif
-
-
-std::size_t dump(const char* /*file*/, const native_frame_ptr_t* /*frames*/, std::size_t /*frames_count*/) BOOST_NOEXCEPT {
- return 0;
-}
-
-}}} // namespace boost::stacktrace::detail
-
-#endif // BOOST_STACKTRACE_DETAIL_SAFE_DUMP_NOOP_IPP
diff --git a/contrib/restricted/boost/boost/stacktrace/detail/try_dec_convert.hpp b/contrib/restricted/boost/boost/stacktrace/detail/try_dec_convert.hpp
deleted file mode 100644
index 46d811edb1a..00000000000
--- a/contrib/restricted/boost/boost/stacktrace/detail/try_dec_convert.hpp
+++ /dev/null
@@ -1,29 +0,0 @@
-// Copyright Antony Polukhin, 2016-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)
-
-#ifndef BOOST_STACKTRACE_DETAIL_TRY_DEC_CONVERT_HPP
-#define BOOST_STACKTRACE_DETAIL_TRY_DEC_CONVERT_HPP
-
-#include <boost/config.hpp>
-#ifdef BOOST_HAS_PRAGMA_ONCE
-# pragma once
-#endif
-
-#include <cstdlib>
-
-namespace boost { namespace stacktrace { namespace detail {
-
-// We do not use boost::lexical_cast in this function to reduce module dependencies
-inline bool try_dec_convert(const char* s, std::size_t& res) BOOST_NOEXCEPT {
- char* end_ptr = 0;
- res = std::strtoul(s, &end_ptr, 10);
- return *end_ptr == '\0';
-}
-
-
-}}} // namespace boost::stacktrace::detail
-
-#endif // BOOST_STACKTRACE_DETAIL_TRY_DEC_CONVERT_HPP
diff --git a/contrib/restricted/boost/stacktrace/.yandex_meta/devtools.copyrights.report b/contrib/restricted/boost/stacktrace/.yandex_meta/devtools.copyrights.report
new file mode 100644
index 00000000000..2c54eb6f164
--- /dev/null
+++ b/contrib/restricted/boost/stacktrace/.yandex_meta/devtools.copyrights.report
@@ -0,0 +1,100 @@
+# File format ($ symbol means the beginning of a line):
+#
+# $ # this message
+# $ # =======================
+# $ # comments (all commentaries should starts with some number of spaces and # symbol)
+# $ IGNORE_FILES {file1.ext1} {file2.ext2} - (optional) ignore listed files when generating license macro and credits
+# $ RENAME {original license id} TO {new license id} # user comments - (optional) use {new license id} instead {original license id} in ya.make files
+# $ # user comments
+# $
+# ${action} {license id} {license text hash}
+# $BELONGS ./ya/make/file/relative/path/1/ya.make ./ya/make/2/ya.make
+# ${all_file_action} filename
+# $ # user commentaries (many lines)
+# $ generated description - files with this license, license text... (some number of lines that starts with some number of spaces, do not modify)
+# ${action} {license spdx} {license text hash}
+# $BELONGS ./ya/make/file/relative/path/3/ya.make
+# ${all_file_action} filename
+# $ # user commentaries
+# $ generated description
+# $ ...
+#
+# You can modify action, all_file_action and add commentaries
+# Available actions:
+# keep - keep license in contrib and use in credits
+# skip - skip license
+# remove - remove all files with this license
+# rename - save license text/links into licenses texts file, but not store SPDX into LINCENSE macro. You should store correct license id into devtools.license.spdx.txt file
+#
+# {all file action} records will be generated when license text contains filename that exists on filesystem (in contrib directory)
+# We suppose that that files can contain some license info
+# Available all file actions:
+# FILE_IGNORE - ignore file (do nothing)
+# FILE_INCLUDE - include all file data into licenses text file
+# =======================
+
+KEEP COPYRIGHT_SERVICE_LABEL 2090c22b730be1f2aadcd050860177fe
+BELONGS ya.make
+ License text:
+ // Copyright 2014 Renato Tegon Forti, Antony Polukhin.
+ // Copyright 2015-2021 Antony Polukhin.
+ Scancode info:
+ Original SPDX id: COPYRIGHT_SERVICE_LABEL
+ Score : 100.00
+ Match type : COPYRIGHT
+ Files with this license:
+ include/boost/stacktrace/detail/void_ptr_cast.hpp [1:2]
+
+KEEP COPYRIGHT_SERVICE_LABEL 43184d74bb6f0a9ca9f5562808734277
+BELONGS ya.make
+ License text:
+ // Copyright 2014 Renato Tegon Forti, Antony Polukhin.
+ // Copyright 2015-2021 Antony Polukhin.
+ Scancode info:
+ Original SPDX id: COPYRIGHT_SERVICE_LABEL
+ Score : 100.00
+ Match type : COPYRIGHT
+ Files with this license:
+ include/boost/stacktrace/detail/void_ptr_cast.hpp [1:2]
+
+KEEP COPYRIGHT_SERVICE_LABEL 56e1fa406fd925d2911213854bb27237
+BELONGS ya.make
+ License text:
+ // Copyright Antony Polukhin, 2016-2021.
+ Scancode info:
+ Original SPDX id: COPYRIGHT_SERVICE_LABEL
+ Score : 100.00
+ Match type : COPYRIGHT
+ Files with this license:
+ include/boost/stacktrace.hpp [1:1]
+ include/boost/stacktrace/detail/collect_msvc.ipp [1:1]
+ include/boost/stacktrace/detail/collect_unwind.ipp [1:1]
+ include/boost/stacktrace/detail/frame_decl.hpp [1:1]
+ include/boost/stacktrace/detail/frame_msvc.ipp [1:1]
+ include/boost/stacktrace/detail/frame_unwind.ipp [1:1]
+ include/boost/stacktrace/detail/libbacktrace_impls.hpp [1:1]
+ include/boost/stacktrace/detail/location_from_symbol.hpp [1:1]
+ include/boost/stacktrace/detail/pop_options.h [1:1]
+ include/boost/stacktrace/detail/push_options.h [1:1]
+ include/boost/stacktrace/detail/safe_dump_posix.ipp [1:1]
+ include/boost/stacktrace/detail/safe_dump_win.ipp [1:1]
+ include/boost/stacktrace/detail/to_dec_array.hpp [1:1]
+ include/boost/stacktrace/detail/to_hex_array.hpp [1:1]
+ include/boost/stacktrace/detail/unwind_base_impls.hpp [1:1]
+ include/boost/stacktrace/frame.hpp [1:1]
+ include/boost/stacktrace/safe_dump_to.hpp [1:1]
+ include/boost/stacktrace/stacktrace.hpp [1:1]
+ include/boost/stacktrace/stacktrace_fwd.hpp [1:1]
+
+KEEP COPYRIGHT_SERVICE_LABEL e8010e4e32ce75b509416875de06cd1c
+BELONGS ya.make
+ License text:
+ // Copyright Antony Polukhin, 2016-2020.
+ Scancode info:
+ Original SPDX id: COPYRIGHT_SERVICE_LABEL
+ Score : 100.00
+ Match type : COPYRIGHT
+ Files with this license:
+ src/backtrace.cpp [1:1]
+ src/basic.cpp [1:1]
+ src/windbg.cpp [1:1]
diff --git a/contrib/restricted/boost/stacktrace/.yandex_meta/devtools.licenses.report b/contrib/restricted/boost/stacktrace/.yandex_meta/devtools.licenses.report
new file mode 100644
index 00000000000..f713c2a78c1
--- /dev/null
+++ b/contrib/restricted/boost/stacktrace/.yandex_meta/devtools.licenses.report
@@ -0,0 +1,96 @@
+# File format ($ symbol means the beginning of a line):
+#
+# $ # this message
+# $ # =======================
+# $ # comments (all commentaries should starts with some number of spaces and # symbol)
+# $ IGNORE_FILES {file1.ext1} {file2.ext2} - (optional) ignore listed files when generating license macro and credits
+# $ RENAME {original license id} TO {new license id} # user comments - (optional) use {new license id} instead {original license id} in ya.make files
+# $ # user comments
+# $
+# ${action} {license id} {license text hash}
+# $BELONGS ./ya/make/file/relative/path/1/ya.make ./ya/make/2/ya.make
+# ${all_file_action} filename
+# $ # user commentaries (many lines)
+# $ generated description - files with this license, license text... (some number of lines that starts with some number of spaces, do not modify)
+# ${action} {license spdx} {license text hash}
+# $BELONGS ./ya/make/file/relative/path/3/ya.make
+# ${all_file_action} filename
+# $ # user commentaries
+# $ generated description
+# $ ...
+#
+# You can modify action, all_file_action and add commentaries
+# Available actions:
+# keep - keep license in contrib and use in credits
+# skip - skip license
+# remove - remove all files with this license
+# rename - save license text/links into licenses texts file, but not store SPDX into LINCENSE macro. You should store correct license id into devtools.license.spdx.txt file
+#
+# {all file action} records will be generated when license text contains filename that exists on filesystem (in contrib directory)
+# We suppose that that files can contain some license info
+# Available all file actions:
+# FILE_IGNORE - ignore file (do nothing)
+# FILE_INCLUDE - include all file data into licenses text file
+# =======================
+
+KEEP BSL-1.0 1e1b35c3ae13c65f63b2c7467cce8a87
+BELONGS ya.make
+ License text:
+ // 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)
+ Scancode info:
+ Original SPDX id: BSL-1.0
+ Score : 100.00
+ Match type : NOTICE
+ Links : http://www.boost.org/LICENSE_1_0.txt, http://www.boost.org/users/license.html, https://spdx.org/licenses/BSL-1.0
+ Files with this license:
+ include/boost/stacktrace/detail/void_ptr_cast.hpp [4:6]
+
+KEEP BSL-1.0 47a0454637d4fa45d78eb2557ccd70c4
+BELONGS ya.make
+ License text:
+ // 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)
+ Scancode info:
+ Original SPDX id: BSL-1.0
+ Score : 100.00
+ Match type : NOTICE
+ Links : http://www.boost.org/LICENSE_1_0.txt, http://www.boost.org/users/license.html, https://spdx.org/licenses/BSL-1.0
+ Files with this license:
+ include/boost/stacktrace.hpp [3:5]
+ include/boost/stacktrace/detail/collect_msvc.ipp [3:5]
+ include/boost/stacktrace/detail/collect_unwind.ipp [3:5]
+ include/boost/stacktrace/detail/frame_decl.hpp [3:5]
+ include/boost/stacktrace/detail/frame_msvc.ipp [3:5]
+ include/boost/stacktrace/detail/frame_unwind.ipp [3:5]
+ include/boost/stacktrace/detail/libbacktrace_impls.hpp [3:5]
+ include/boost/stacktrace/detail/location_from_symbol.hpp [3:5]
+ include/boost/stacktrace/detail/pop_options.h [3:5]
+ include/boost/stacktrace/detail/push_options.h [3:5]
+ include/boost/stacktrace/detail/safe_dump_posix.ipp [3:5]
+ include/boost/stacktrace/detail/safe_dump_win.ipp [3:5]
+ include/boost/stacktrace/detail/to_dec_array.hpp [3:5]
+ include/boost/stacktrace/detail/to_hex_array.hpp [3:5]
+ include/boost/stacktrace/detail/unwind_base_impls.hpp [3:5]
+ include/boost/stacktrace/frame.hpp [3:5]
+ include/boost/stacktrace/safe_dump_to.hpp [3:5]
+ include/boost/stacktrace/stacktrace.hpp [3:5]
+ include/boost/stacktrace/stacktrace_fwd.hpp [3:5]
+ src/backtrace.cpp [3:5]
+ src/basic.cpp [3:5]
+ src/windbg.cpp [3:5]
+
+KEEP BSL-1.0 49405d2ecd7026743895d965f0f645ef
+BELONGS ya.make
+ License text:
+ License
+ Distributed under the [Boost Software License, Version 1.0](https://boost.org/LICENSE_1_0.txt).
+ Scancode info:
+ Original SPDX id: BSL-1.0
+ Score : 50.00
+ Match type : NOTICE
+ Links : http://www.boost.org/LICENSE_1_0.txt, http://www.boost.org/users/license.html, https://spdx.org/licenses/BSL-1.0
+ Files with this license:
+ README.md [16:17]
diff --git a/contrib/restricted/boost/stacktrace/.yandex_meta/licenses.list.txt b/contrib/restricted/boost/stacktrace/.yandex_meta/licenses.list.txt
new file mode 100644
index 00000000000..c60781ea463
--- /dev/null
+++ b/contrib/restricted/boost/stacktrace/.yandex_meta/licenses.list.txt
@@ -0,0 +1,27 @@
+====================BSL-1.0====================
+// 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)
+
+
+====================BSL-1.0====================
+// 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)
+
+
+====================BSL-1.0====================
+License
+Distributed under the [Boost Software License, Version 1.0](https://boost.org/LICENSE_1_0.txt).
+
+====================COPYRIGHT====================
+// Copyright 2014 Renato Tegon Forti, Antony Polukhin.
+// Copyright 2015-2021 Antony Polukhin.
+
+
+====================COPYRIGHT====================
+// Copyright Antony Polukhin, 2016-2020.
+
+
+====================COPYRIGHT====================
+// Copyright Antony Polukhin, 2016-2021.
diff --git a/contrib/restricted/boost/stacktrace/README.md b/contrib/restricted/boost/stacktrace/README.md
new file mode 100644
index 00000000000..d129e8467e4
--- /dev/null
+++ b/contrib/restricted/boost/stacktrace/README.md
@@ -0,0 +1,17 @@
+# [Boost.Stacktrace](https://boost.org/libs/stacktrace)
+
+Library for storing and printing backtraces.
+
+Boost.Stacktrace is a part of the [Boost C++ Libraries](https://github.com/boostorg).
+
+
+### Test results
+@ | Build | Tests coverage | More info
+----------------|-------------- | -------------- |-----------
+Develop branch: | [![CI](https://github.com/boostorg/stacktrace/actions/workflows/ci.yml/badge.svg?branch=develop)](https://github.com/boostorg/stacktrace/actions/workflows/ci.yml) [![Build status](https://ci.appveyor.com/api/projects/status/l3aak4j8k39rx08t/branch/develop?svg=true)](https://ci.appveyor.com/project/apolukhin/stacktrace/branch/develop) | [![Coverage Status](https://coveralls.io/repos/github/boostorg/stacktrace/badge.svg?branch=develop)](https://coveralls.io/github/boostorg/stacktrace?branch=develop) | [details...](https://www.boost.org/development/tests/develop/developer/stacktrace.html)
+Master branch: | [![CI](https://github.com/boostorg/stacktrace/actions/workflows/ci.yml/badge.svg?branch=master)](https://github.com/boostorg/stacktrace/actions/workflows/ci.yml) [![Build status](https://ci.appveyor.com/api/projects/status/l3aak4j8k39rx08t/branch/master?svg=true)](https://ci.appveyor.com/project/apolukhin/stacktrace/branch/master) | [![Coverage Status](https://coveralls.io/repos/github/boostorg/stacktrace/badge.svg?branch=master)](https://coveralls.io/github/boostorg/stacktrace?branch=master) | [details...](https://www.boost.org/development/tests/master/developer/stacktrace.html)
+
+[Latest developer documentation](https://www.boost.org/doc/libs/develop/doc/html/stacktrace.html)
+
+### License
+Distributed under the [Boost Software License, Version 1.0](https://boost.org/LICENSE_1_0.txt).
diff --git a/contrib/restricted/boost/boost/stacktrace.hpp b/contrib/restricted/boost/stacktrace/include/boost/stacktrace.hpp
index b458e3ad12c..b458e3ad12c 100644
--- a/contrib/restricted/boost/boost/stacktrace.hpp
+++ b/contrib/restricted/boost/stacktrace/include/boost/stacktrace.hpp
diff --git a/contrib/restricted/boost/boost/stacktrace/detail/collect_msvc.ipp b/contrib/restricted/boost/stacktrace/include/boost/stacktrace/detail/collect_msvc.ipp
index 7d41eb3515c..7d41eb3515c 100644
--- a/contrib/restricted/boost/boost/stacktrace/detail/collect_msvc.ipp
+++ b/contrib/restricted/boost/stacktrace/include/boost/stacktrace/detail/collect_msvc.ipp
diff --git a/contrib/restricted/boost/boost/stacktrace/detail/collect_unwind.ipp b/contrib/restricted/boost/stacktrace/include/boost/stacktrace/detail/collect_unwind.ipp
index 6f99d4ad111..6f99d4ad111 100644
--- a/contrib/restricted/boost/boost/stacktrace/detail/collect_unwind.ipp
+++ b/contrib/restricted/boost/stacktrace/include/boost/stacktrace/detail/collect_unwind.ipp
diff --git a/contrib/restricted/boost/boost/stacktrace/detail/frame_decl.hpp b/contrib/restricted/boost/stacktrace/include/boost/stacktrace/detail/frame_decl.hpp
index 6248757ecb6..6248757ecb6 100644
--- a/contrib/restricted/boost/boost/stacktrace/detail/frame_decl.hpp
+++ b/contrib/restricted/boost/stacktrace/include/boost/stacktrace/detail/frame_decl.hpp
diff --git a/contrib/restricted/boost/boost/stacktrace/detail/frame_msvc.ipp b/contrib/restricted/boost/stacktrace/include/boost/stacktrace/detail/frame_msvc.ipp
index 2e7a3af6e1e..2e7a3af6e1e 100644
--- a/contrib/restricted/boost/boost/stacktrace/detail/frame_msvc.ipp
+++ b/contrib/restricted/boost/stacktrace/include/boost/stacktrace/detail/frame_msvc.ipp
diff --git a/contrib/restricted/boost/boost/stacktrace/detail/frame_unwind.ipp b/contrib/restricted/boost/stacktrace/include/boost/stacktrace/detail/frame_unwind.ipp
index a5e21029f74..d3e26377fa6 100644
--- a/contrib/restricted/boost/boost/stacktrace/detail/frame_unwind.ipp
+++ b/contrib/restricted/boost/stacktrace/include/boost/stacktrace/detail/frame_unwind.ipp
@@ -24,7 +24,7 @@
#ifdef BOOST_STACKTRACE_USE_BACKTRACE
# include <boost/stacktrace/detail/libbacktrace_impls.hpp>
#elif defined(BOOST_STACKTRACE_USE_ADDR2LINE)
-# include <boost/stacktrace/detail/addr2line_impls.hpp>
+# error #include <boost/stacktrace/detail/addr2line_impls.hpp>
#else
# include <boost/stacktrace/detail/unwind_base_impls.hpp>
#endif
diff --git a/contrib/restricted/boost/boost/stacktrace/detail/libbacktrace_impls.hpp b/contrib/restricted/boost/stacktrace/include/boost/stacktrace/detail/libbacktrace_impls.hpp
index 593133c3c61..dda168e58aa 100644
--- a/contrib/restricted/boost/boost/stacktrace/detail/libbacktrace_impls.hpp
+++ b/contrib/restricted/boost/stacktrace/include/boost/stacktrace/detail/libbacktrace_impls.hpp
@@ -74,17 +74,16 @@ BOOST_SYMBOL_VISIBLE inline ::backtrace_state* construct_state(const program_loc
// TODO: The most obvious solution:
//
static ::backtrace_state* state = ::backtrace_create_state(
- prog_location.name(),
- 1, // allow safe concurrent usage of the same state
- boost::stacktrace::detail::libbacktrace_error_callback,
- 0 // pointer to data that will be passed to callback
+ prog_location.name(),
+ 1, // allow safe concurrent usage of the same state
+ boost::stacktrace::detail::libbacktrace_error_callback,
+ 0 // pointer to data that will be passed to callback
);
//
//
// Unfortunately, that solution segfaults when `construct_state()` function is in .so file
// and multiple threads concurrently work with state.
-// Code from TODO works fine in Arcadia (with statically linked libbacktrace) -- bugaevskiy@
#if 0
#ifndef BOOST_HAS_THREADS
static
@@ -128,7 +127,7 @@ struct to_string_using_backtrace {
boost::stacktrace::detail::libbacktrace_full_callback,
boost::stacktrace::detail::libbacktrace_error_callback,
&data
- )
+ )
||
::backtrace_syminfo(
state,
diff --git a/contrib/restricted/boost/boost/stacktrace/detail/location_from_symbol.hpp b/contrib/restricted/boost/stacktrace/include/boost/stacktrace/detail/location_from_symbol.hpp
index 5d6e2f19f70..5d6e2f19f70 100644
--- a/contrib/restricted/boost/boost/stacktrace/detail/location_from_symbol.hpp
+++ b/contrib/restricted/boost/stacktrace/include/boost/stacktrace/detail/location_from_symbol.hpp
diff --git a/contrib/restricted/boost/boost/stacktrace/detail/pop_options.h b/contrib/restricted/boost/stacktrace/include/boost/stacktrace/detail/pop_options.h
index 5ab5fc6a213..5ab5fc6a213 100644
--- a/contrib/restricted/boost/boost/stacktrace/detail/pop_options.h
+++ b/contrib/restricted/boost/stacktrace/include/boost/stacktrace/detail/pop_options.h
diff --git a/contrib/restricted/boost/boost/stacktrace/detail/push_options.h b/contrib/restricted/boost/stacktrace/include/boost/stacktrace/detail/push_options.h
index 6d7e46b7ae9..6d7e46b7ae9 100644
--- a/contrib/restricted/boost/boost/stacktrace/detail/push_options.h
+++ b/contrib/restricted/boost/stacktrace/include/boost/stacktrace/detail/push_options.h
diff --git a/contrib/restricted/boost/boost/stacktrace/detail/safe_dump_posix.ipp b/contrib/restricted/boost/stacktrace/include/boost/stacktrace/detail/safe_dump_posix.ipp
index bc79d5c8d84..bc79d5c8d84 100644
--- a/contrib/restricted/boost/boost/stacktrace/detail/safe_dump_posix.ipp
+++ b/contrib/restricted/boost/stacktrace/include/boost/stacktrace/detail/safe_dump_posix.ipp
diff --git a/contrib/restricted/boost/boost/stacktrace/detail/safe_dump_win.ipp b/contrib/restricted/boost/stacktrace/include/boost/stacktrace/detail/safe_dump_win.ipp
index ab5445a8aa0..ab5445a8aa0 100644
--- a/contrib/restricted/boost/boost/stacktrace/detail/safe_dump_win.ipp
+++ b/contrib/restricted/boost/stacktrace/include/boost/stacktrace/detail/safe_dump_win.ipp
diff --git a/contrib/restricted/boost/boost/stacktrace/detail/to_dec_array.hpp b/contrib/restricted/boost/stacktrace/include/boost/stacktrace/detail/to_dec_array.hpp
index 8cdcdfcf88d..8cdcdfcf88d 100644
--- a/contrib/restricted/boost/boost/stacktrace/detail/to_dec_array.hpp
+++ b/contrib/restricted/boost/stacktrace/include/boost/stacktrace/detail/to_dec_array.hpp
diff --git a/contrib/restricted/boost/boost/stacktrace/detail/to_hex_array.hpp b/contrib/restricted/boost/stacktrace/include/boost/stacktrace/detail/to_hex_array.hpp
index 84d88bff9ba..84d88bff9ba 100644
--- a/contrib/restricted/boost/boost/stacktrace/detail/to_hex_array.hpp
+++ b/contrib/restricted/boost/stacktrace/include/boost/stacktrace/detail/to_hex_array.hpp
diff --git a/contrib/restricted/boost/boost/stacktrace/detail/unwind_base_impls.hpp b/contrib/restricted/boost/stacktrace/include/boost/stacktrace/detail/unwind_base_impls.hpp
index 9a4566a4c2c..9a4566a4c2c 100644
--- a/contrib/restricted/boost/boost/stacktrace/detail/unwind_base_impls.hpp
+++ b/contrib/restricted/boost/stacktrace/include/boost/stacktrace/detail/unwind_base_impls.hpp
diff --git a/contrib/restricted/boost/boost/stacktrace/detail/void_ptr_cast.hpp b/contrib/restricted/boost/stacktrace/include/boost/stacktrace/detail/void_ptr_cast.hpp
index 3247aab933f..3247aab933f 100644
--- a/contrib/restricted/boost/boost/stacktrace/detail/void_ptr_cast.hpp
+++ b/contrib/restricted/boost/stacktrace/include/boost/stacktrace/detail/void_ptr_cast.hpp
diff --git a/contrib/restricted/boost/boost/stacktrace/frame.hpp b/contrib/restricted/boost/stacktrace/include/boost/stacktrace/frame.hpp
index 6873dd0c02e..370f356f6ab 100644
--- a/contrib/restricted/boost/boost/stacktrace/frame.hpp
+++ b/contrib/restricted/boost/stacktrace/include/boost/stacktrace/frame.hpp
@@ -54,7 +54,7 @@ std::basic_ostream<CharT, TraitsT>& operator<<(std::basic_ostream<CharT, TraitsT
#ifndef BOOST_STACKTRACE_LINK
# if defined(BOOST_STACKTRACE_USE_NOOP)
-# include <boost/stacktrace/detail/frame_noop.ipp>
+# error #include <boost/stacktrace/detail/frame_noop.ipp>
# elif defined(BOOST_MSVC) || defined(BOOST_STACKTRACE_USE_WINDBG) || defined(BOOST_STACKTRACE_USE_WINDBG_CACHED)
# include <boost/stacktrace/detail/frame_msvc.ipp>
# else
diff --git a/contrib/restricted/boost/boost/stacktrace/safe_dump_to.hpp b/contrib/restricted/boost/stacktrace/include/boost/stacktrace/safe_dump_to.hpp
index f2301e6cb81..a4f08f19855 100644
--- a/contrib/restricted/boost/boost/stacktrace/safe_dump_to.hpp
+++ b/contrib/restricted/boost/stacktrace/include/boost/stacktrace/safe_dump_to.hpp
@@ -203,8 +203,8 @@ BOOST_FORCEINLINE std::size_t safe_dump_to(std::size_t skip, std::size_t max_dep
#if !defined(BOOST_STACKTRACE_LINK) || defined(BOOST_STACKTRACE_INTERNAL_BUILD_LIBS)
# if defined(BOOST_STACKTRACE_USE_NOOP)
-# include <boost/stacktrace/detail/safe_dump_noop.ipp>
-# include <boost/stacktrace/detail/collect_noop.ipp>
+# error #include <boost/stacktrace/detail/safe_dump_noop.ipp>
+# error #include <boost/stacktrace/detail/collect_noop.ipp>
# else
# if defined(BOOST_WINDOWS)
# include <boost/stacktrace/detail/safe_dump_win.ipp>
diff --git a/contrib/restricted/boost/boost/stacktrace/stacktrace.hpp b/contrib/restricted/boost/stacktrace/include/boost/stacktrace/stacktrace.hpp
index 243b0551994..243b0551994 100644
--- a/contrib/restricted/boost/boost/stacktrace/stacktrace.hpp
+++ b/contrib/restricted/boost/stacktrace/include/boost/stacktrace/stacktrace.hpp
diff --git a/contrib/restricted/boost/boost/stacktrace/stacktrace_fwd.hpp b/contrib/restricted/boost/stacktrace/include/boost/stacktrace/stacktrace_fwd.hpp
index d54a6369468..d54a6369468 100644
--- a/contrib/restricted/boost/boost/stacktrace/stacktrace_fwd.hpp
+++ b/contrib/restricted/boost/stacktrace/include/boost/stacktrace/stacktrace_fwd.hpp
diff --git a/contrib/restricted/boost/stacktrace/src/backtrace.cpp b/contrib/restricted/boost/stacktrace/src/backtrace.cpp
new file mode 100644
index 00000000000..00d440ff68d
--- /dev/null
+++ b/contrib/restricted/boost/stacktrace/src/backtrace.cpp
@@ -0,0 +1,19 @@
+// Copyright Antony Polukhin, 2016-2020.
+//
+// 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)
+
+#define BOOST_STACKTRACE_INTERNAL_BUILD_LIBS
+#define BOOST_STACKTRACE_USE_BACKTRACE
+
+#ifndef BOOST_STACKTRACE_LINK
+#error BOOST_STACKTRACE_LINK must be defined
+#endif
+
+#ifndef _GNU_SOURCE
+# define _GNU_SOURCE
+#endif
+
+#include <boost/stacktrace/detail/frame_unwind.ipp>
+#include <boost/stacktrace/safe_dump_to.hpp>
diff --git a/contrib/restricted/boost/stacktrace/src/basic.cpp b/contrib/restricted/boost/stacktrace/src/basic.cpp
new file mode 100644
index 00000000000..f21cc4fca92
--- /dev/null
+++ b/contrib/restricted/boost/stacktrace/src/basic.cpp
@@ -0,0 +1,18 @@
+// Copyright Antony Polukhin, 2016-2020.
+//
+// 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)
+
+#define BOOST_STACKTRACE_INTERNAL_BUILD_LIBS
+
+#ifndef BOOST_STACKTRACE_LINK
+#error BOOST_STACKTRACE_LINK must be defined
+#endif
+
+#ifndef _GNU_SOURCE
+# define _GNU_SOURCE
+#endif
+
+#include <boost/stacktrace/detail/frame_unwind.ipp>
+#include <boost/stacktrace/safe_dump_to.hpp>
diff --git a/contrib/restricted/boost/stacktrace/src/windbg.cpp b/contrib/restricted/boost/stacktrace/src/windbg.cpp
new file mode 100644
index 00000000000..b58b3ea0f33
--- /dev/null
+++ b/contrib/restricted/boost/stacktrace/src/windbg.cpp
@@ -0,0 +1,10 @@
+// Copyright Antony Polukhin, 2016-2020.
+//
+// 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)
+
+#define BOOST_STACKTRACE_INTERNAL_BUILD_LIBS
+#define BOOST_STACKTRACE_LINK
+#include <boost/stacktrace/detail/frame_msvc.ipp>
+#include <boost/stacktrace/safe_dump_to.hpp>