mirror of
https://github.com/espressif/esp-idf.git
synced 2026-07-23 03:13:01 +03:00
fix(libc): picolibc: workaround wrong pthread_exit declaration for c++
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-FileCopyrightText: 2025 Espressif Systems (Shanghai) CO LTD
|
||||
* SPDX-FileCopyrightText: 2025-2026 Espressif Systems (Shanghai) CO LTD
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*/
|
||||
@@ -10,3 +10,14 @@
|
||||
#include <stdint.h>
|
||||
#include <stddef.h>
|
||||
#endif
|
||||
|
||||
#if CONFIG_LIBC_PICOLIBC // TODO IDF-15569
|
||||
#undef __noreturn
|
||||
#if __has_attribute(__noreturn__)
|
||||
#define __noreturn __attribute__((__noreturn__))
|
||||
#else
|
||||
#define __noreturn
|
||||
#endif
|
||||
#else
|
||||
#define __noreturn
|
||||
#endif
|
||||
|
||||
@@ -12,9 +12,11 @@ extern "C" {
|
||||
#endif
|
||||
|
||||
#if CONFIG_LIBC_PICOLIBC
|
||||
#if defined(__cplusplus) && __cplusplus >= 201103L
|
||||
#define __noreturn [[noreturn]]
|
||||
#elif __has_attribute(__noreturn__)
|
||||
// TODO IDF-15569
|
||||
// #if defined(__cplusplus) && __cplusplus >= 201103L
|
||||
// #define __noreturn [[noreturn]]
|
||||
// #elif __has_attribute(__noreturn__)
|
||||
#if __has_attribute(__noreturn__)
|
||||
#define __noreturn __attribute__((__noreturn__))
|
||||
#else
|
||||
#define __noreturn
|
||||
|
||||
Reference in New Issue
Block a user