Generator keywords are reserved for internal use. Do not use them in models as identifiers or function names. Also avoid using C reserved keywords in models as identifiers or function names. If your model contains reserved keywords, code generation does not complete and an error message appears. To address the error, modify your model to use identifiers or names that are not reserved.
You can register additional reserved identifiers in the Simulink® environment. For more information, see Specify Reserved Names for Generated Identifiers.
C Reserved Keywords
C++ Reserved Keywords
Reserved Keywords for Code Generation
|*Not reserved if you specify a replacement identifier.|
Code Generation Code Replacement Library Keywords
The list of code replacement library reserved keywords for your development environment varies depending on which libraries are registered. The list of available code replacement libraries varies depending on other installed products (for example, a target product), or if you used Embedded Coder® to create and register custom code replacement libraries.
To generate a list of reserved keywords for libraries currently registered in your environment, use the following MATLAB® function:
lib_ids = RTW.TargetRegistry.getInstance.getTflReservedIdentifiers()
This function returns an array of library keywords. Specifying the input argument is optional.
To list the libraries currently registered in your environment, use the
To generate a list of reserved keywords for a specific library that you are using to generate code, call the function passing the name of the library as displayed in the Code replacement library menu on the Code Generation > Interface pane of the Configuration Parameters dialog box. For example,
lib_ids = RTW.TargetRegistry.getInstance.getTflReservedIdentifiers('GNU C99 extensions')
Here is a partial example of the function output:
>> lib_ids = ... RTW.TargetRegistry.getInstance.getTflReservedIdentifiers('GNU C99 extensions') lib_ids = 'exp10' 'exp10f' 'acosf' 'acoshf' 'asinf' 'asinhf' 'atanf' 'atanhf' ... 'rt_lu_cplx' 'rt_lu_cplx_sgl' 'rt_lu_real' 'rt_lu_real_sgl' 'rt_mod_boolean' 'rt_rem_boolean' 'strcpy' 'utAssert'
Some of the returned keywords appear with the suffix
$N expands into
_snf only if nonfinite numbers are supported. For
'rt_atan2_snf' if nonfinite numbers are supported and
'rt_atan2' if nonfinite numbers are not supported. As a
precaution, you should treat both forms of the keyword as reserved.