How to prevent #include "rt_nonfinite.h" with extern "C" in C++ generated Code

Hi everyone
I use the Embedded Coder to generate C++ Code from a Simulink Model. Unfortunately, the generated Code includes some headerfiles as extern "C":
extern "C"
{
#include "rt_nonfinite.h"
}
extern "C"
{
#include "rtGetInf.h"
}
extern "C"
{
#include "rtGetNaN.h"
}
The problem with this is, that some of these headers include other headers themselfes, like in rt_nonfinite.h:
#include <stddef.h>
which I don't want to import as C. Also almost all contents of the headers are enclosed with a
#ifdef __cplusplus
extern "C"
{
#endif
which makes the extern "C" around the include obsolete as I understand it.
Is there a way to prevent embedded Coder from including headerfiles with extern "C"?

1 comentario

Importing standard C library headers with extern "C" usually doesn't cause much of a problem. Is there any particular reason why you don't want to import as C?

Iniciar sesión para comentar.

Respuestas (0)

Categorías

Más información sobre Simulink Coder en Centro de ayuda y File Exchange.

Productos

Versión

R2023b

Preguntada:

el 20 de En. de 2025

Comentada:

el 21 de En. de 2025

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by