ssSetLocalErrorStatus

Report an error in a thread-safe manner

Syntax

void ssSetLocalErrorStatus(SimStruct *S, const char_T *msg)

Arguments

S

SimStruct representing an S-Function block or a Simulink® model.

msg

Error message.

Description

Use this function for thread-safe reporting of errors that occur in your S-function. For example:

ssSetLocalErrorStatus(S, "error message");
return;

Note

The error message character vector must be in persistent memory; it cannot be a local variable. If you use sprintf to format the error message, you must allocate memory for the message. For example:

static char msg[35];
sprintf(msg,"Expected number of parameters: %d",ssGetNumSFcnParams(S));
ssSetLocalErrorStatus(S,msg);

This function causes the Simulink engine to stop and display the specified error message, therefore it is followed by a return statement. The function does not generate an exception. Thus you can use it in your S-function to avoid creating exceptions when reporting errors.

Use this function for applications to run on R2019a or later for thread safety. For earlier releases, use ssSetErrorStatus instead.

Languages

C, C++

Introduced in R2019a