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

8 views (last 30 days)
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 Comment
埃博拉酱
埃博拉酱 on 21 Jan 2025
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?

Sign in to comment.

Answers (0)

Categories

Find more on Simulink Coder in Help Center and File Exchange

Products


Release

R2023b

Community Treasure Hunt

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

Start Hunting!