| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
platform
При сборке проектов с ```--sanitize=thread``` под **darwin**, по умолчанию попадет ```util``` и его часть ```system/context.h```, где в случае ```thread_sanitizer_enabled``` выставляется ```USE_UCONTEXT_CONT```, что приводит к использованию [депрекейтнутного](https://opensource.apple.com/source/libplatform/libplatform-125/include/ucontext.h.auto.html) ```<ucontext.h>``` из [macos_sdk](https://a.yandex-team.ru/arcadia/build/platform/macos_sdk/ya.make?rev=rXXXXXX#L6).
Без должных изменений, сборка падает с ошибкой.
```In file included from /Users/hiddenpath/.ya/build/build_root/fnjm/000128/util/all_system_1.cpp:13:
In file included from /Users/hiddenpath/arcadia/util/system/context.cpp:31:
In file included from /Users/hiddenpath/arcadia/util/system/context.h:46:
/Users/hiddenpath/.ya/tools/v4/2088833948/usr/include/ucontext.h:51:2: error: The deprecated ucontext routines require _XOPEN_SOURCE to be defined
#error The deprecated ucontext routines require _XOPEN_SOURCE to be defined
^
In file included from /Users/hiddenpath/.ya/build/build_root/fnjm/000128/util/all_system_1.cpp:13:
In file included from /Users/hiddenpath/arcadia/util/system/context.cpp:31:
/Users/hiddenpath/arcadia/util/system/context.h:68:9: error: use of undeclared identifier 'getcontext'
getcontext(&Ctx_);
^
/Users/hiddenpath/arcadia/util/system/context.h:72:9: error: use of undeclared identifier 'getcontext'
getcontext(&Ctx_);
^
/Users/hiddenpath/arcadia/util/system/context.h:80:9: error: use of undeclared identifier 'makecontext'
makecontext(&Ctx_, (ucontext_func_t)ContextTrampoLine, 1, c.TrampoLine);
^
/Users/hiddenpath/arcadia/util/system/context.h:87:9: error: use of undeclared identifier 'swapcontext'
swapcontext(&Ctx_, &next->Ctx_);
^
5 errors generated.
Failed
|
| |
|
|
|
| |
There is no reason now to hide include behind macro: we have sysincls properly working for years
|
|
|
|
| |
directory does not exist.
|
| |
|
| |
|
| |
|
|
|
| |
К сожалению, люди успели наплодить переменных и методов c именами i64(), ui64(), поэтому для генеренного кода проще всего оказалось завести несколько type alias arc_ui64 -> ui64, и так далее.
|
| |
|
| |
|
|
|
|
| |
returning double value
|
| |
|
| |
|
| |
|
|
|
| |
`#define noexcept throw()` is a questionable idea, since replacing `noexcept` with `throw()` in expressions such as `noexcept(true)` results in spectacular compiler errors. We stopped supporting CUDA 8 (and even CUDA 9) long ago, which means we can just get rid of the problematic define.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
nvcc10.1 is unable to compile `[[clang::reinitializes]]` and issues warning as follows:
```
util/generic/ptr.h(194): warning: attribute namespace "clang" is unrecognized
util/generic/ptr.h(201): warning: attribute namespace "clang" is unrecognized
[...]
```
nvcc11 compiles this code without any warnings.
This PRs disable `[[clang::reinitialized]]` when compiling with nvcc10.
|
| |
|
|
|
| |
https://clubs.at.yandex-team.ru/arcadia/8450/8489#reply-arcadia-8489
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
For example, https://github.com/google/sanitizers/issues/1352 - tsan is not working well with std::atomic_thread_fence
Minimal reproducible example (and one that bothers most in every fiber-aware service):
```
auto threadPool = NYT::New<NYT::NConcurrency::TThreadPool>(2, "thread");
TVector<NYT::TFuture<void>> futures;
for (size_t i = 0; i < 100000; ++i) {
futures.emplace_back(BIND([]() {
}).AsyncVia(threadPool->GetInvoker()).Run());
}
for (auto& future : futures) {
future.Get().ThrowOnError();
}
```
|
| |
|
|
|
| |
Если мы сдвигаем addr в меньшую сторону, то len мы должны увеличить на столько же. В противном случае, мы можем залочить меньше, чем нужно.
|
|
|
|
|
| |
This means, that moved-from object can be safely used after the call of such method.
This attribute is used by clang-tidy which checks that moved-from objects are not used
unless a reinitialization method is called first.
|
| |
|
|
|
|
| |
ref:53c837a1fa0289db60812b95b6ac96be23ae018d
|
|
|
|
| |
ref:0c3b0edd3284567c45ec77e57166274f3cfed8c7
|
|
|
|
| |
ref:7427208d08ebeb9e88247fb7dac6445bc814d756
|
|
|
|
| |
ref:788357fd9a851f54e97a8e0f133dcb3c3e275f92
|
|
|
|
| |
ref:c74bffae7e90dee515f5089979fc050d20a34e4e
|
|
|
|
| |
ref:f4d9cf527b4f26efcc95307ca7b07d1c42ebd11b
|
|
|
|
| |
ref:dca14f354fc9b9698f83663ceb0e62e797fe98c5
|
|
|
|
| |
ref:f8c119cf3a796a59ab5be4424e5364ba6a201d40
|
|
|
|
| |
ref:0186c219d9c56c8f183ce0236e33f6d647fe5fa0
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
codesearch shows [114 usages](https://a.yandex-team.ru/search?search=%5CbSIZEOF_SIZE_T%5Cb,,jC,arcadia,,500) of this macro outside of contrib.
None of these usages looks as being util-dependent.
Defining this in util triggers `-Wmacro-redefined` whenever `` gets included after our ``.
UPD:
It turns out that our curl was using this define for a reason,
so I have implemented an util-independent solution instead.
ref:c80e45c42a9c0ec76eda33e63b560b285e1ee502
|
|
|
|
|
|
|
|
|
|
| |
Current behavior of RemoveDirWithContents does not allow removing
directories if any of files in this directory is read-only. This
behavior, however, does not allow, for example, to remove temporary
directory, in which git repository was created (on *nix systems,
however, this problem was not noticed). This PR overrides this behavior.
ref:1faf91e233008b4aece4f2b953884b52346ce2be
|
|
|
|
| |
ref:ca7a95e8c9a9d780f96497136a152091d54e61b5
|
|
|
|
|
|
|
|
|
|
| |
`#include ` and `#include ` modify current `#pragma pack` value and thus trigger `-Wpragma-pack` under clang-cl.
As there is no way to implement packed structs via attributes,
introduce proper compiler-specific variables in ``
and use them to check whether we are compiling with MSVC.
ref:e47cdb9c38eb305b9c5bcc5ad719e21ec52eb14c
|
|
|
|
| |
ref:b9f56a64ccc7a4f4980fa176af362932c04214b3
|
|
|
|
| |
ref:fdd92250532d24eebbf27cb8f8369eeb88e17df9
|
|
|
|
| |
ref:11bbdd83544b9579747dd12d51395840bda86faf
|
|
|
|
|
|
| |
noexcept + pass some args by reference
ref:5da43163e6b3c2499597234dc80ad47042259013
|