wangzhi16 opened a new pull request, #18271: URL: https://github.com/apache/nuttx/pull/18271
## Summary This patch fixes a libc++ (`libcxx`) compile error triggered by missing or incorrect TLS/task-local storage configuration. The compile failure originates from `libcxx/libcxx/src/thread.cpp` which requires `CONFIG_TLS_TASK_NELEM` to be enabled and greater than zero; the patch updates board `LIBCXX` configuration to satisfy these requirements so `thread.cpp` can compile and link. ## Why - `libcxx` thread support depends on task-local storage (TLS) helpers (`task_tls_alloc`, `task_tls_get_value`) and a non-zero `CONFIG_TLS_TASK_NELEM` to manage thread-local data. - Without enabling the TLS configuration for the board, `libcxx` fails to compile with explicit `#error` directives in `thread.cpp` and missing references to TLS helper symbols. ## Impact - Build: This change resolves build failures when compiling `libcxx` for the affected board config. It is a board-level configuration fix and should not alter runtime behavior beyond enabling TLS support for thread-local storage. - Runtime: Enabling TLS storage increases kernel-managed per-task TLS slots; ensure available RAM is sufficient for target boards. No functional change to existing application logic is expected aside from enabling thread-local features in `libcxx`. - Compatibility: Backwards compatible at source level; some extremely constrained boards may need review if memory budgets are tight. ## Testing ostest PASS -- 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]
