wasphin commented on PR #3583: URL: https://github.com/apache/brpc/pull/3583#issuecomment-6008381862
Could we simply remove the explicit `__STRICT_ANSI__` definition instead of adding a configure-time probe? We should let the compiler define this macro according to the selected language mode. Neither the Make nor Bazel build explicitly defines it; their `-std=c++14`/`-std=c++17` options let the compiler set it automatically. Manually defining it in GNU mode can make standard-library headers see a mode that does not match the compiler settings. I traced the CMake definition to commit 9b6b004fe (2017), whose main change was to avoid compiling sources twice. It did not document a specific requirement for this macro, and I found no brpc source code checking it directly. Removing the manual definition would avoid the reported libstdc++ 16 conflict without introducing another configuration check. If strict ISO mode is intended, it should be selected through CMake language-mode settings rather than by forcing the macro. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
