diff --git a/doc/core/moving-to-c++.md b/doc/core/moving-to-c++.md index 40701f3fb57..6f454320bf2 100644 --- a/doc/core/moving-to-c++.md +++ b/doc/core/moving-to-c++.md @@ -34,7 +34,19 @@ C++ compatible with You can easily see whether PR is free from this issue by checking the result of `Artifact Build Linux` test. - `thread_local` is not allowed to use on Apple's products because their old OSes - (e.g. ios < 9.0) don't support `thread_local`. + (e.g. ios < 9.0) don't support `thread_local`. Please use `GPR_TLS_DECL` instead. +- gRPC main libraries (grpc, grpc+++, and plugins) cannot use following C++ libraries: + (Test and example codes are relatively free from this constraints) + - ``. Use `grpc_core::Thread`. + - ``. Use `gpr_cv_init`. + - `` + - ``. Use `gpr_mu_init`. + - `` + - `` + - `` + - `` +- `grpc_core::Atomic` is prefered over `std::atomic` in gRPC library because it provides + additional debugging information. ## Roadmap