Main Content

Identifier Format Control Parameters Limitations

The following limitations apply to the Identifier format control parameters:

  • The following autogenerated identifiers currently do not fully comply with the setting of the Maximum identifier length parameter on the Code Generation > Identifiers pane of the Configuration Parameters dialog box.

    • Model methods

      • The applicable format scheme is $R$F, and the longest $F is _derivatives, which is 12 characters long. The model name can be up to 19 characters without exceeding the default Maximum identifier length of 31.

    • Local functions generated by S-functions or by add-on products such as DSP System Toolbox™ that rely on S-functions

    • Local variables generated by S-functions or by add-on products such as DSP System Toolbox that rely on S-functions

    • DW identifiers generated by S-functions in referenced models

    • Fixed-point shared utility macros or shared utility functions

    • Simulink® rtm macros

      • Most are within the default Maximum identifier length of 31, but some exceed the limit. Examples are RTMSpecAccsGetStopRequestedValStoredAsPtr, RTMSpecAccsGetErrorStatusPointer, and RTMSpecAccsGetErrorStatusPointerPointer.

    • Define protection guard macros

      • Header file guards, such as _RTW_HEADER_$(filename)_h_, which can exceed the default Maximum identifier length of 31 given a filename such as $R_private.h.

      • Include file guards, such as _$R_COMMON_INCLUDES_.

      • typedef guards, such as _CSCI_$R_CHARTSTRUCT_.

  • In some situations, the following identifiers potentially can conflict with others.

    • Model methods

    • Reentrant model function arguments

    • Local functions generated by S-functions or by add-on products such as DSP System Toolbox that rely on S-functions

    • Local variables generated by S-functions or by add-on products such as DSP System Toolbox that rely on S-functions

    • Fixed-point shared utility macros or shared utility functions

    • Include header guard macros

  • The following external identifiers that are unknown to the Simulink software might conflict with autogenerated identifiers.

    • Identifiers defined in custom code

    • Identifiers defined in custom header files

    • Identifiers introduced through a non-ANSI® C standard library

    • Identifiers defined by custom TLC code

  • Identifiers generated for simulation targets might exceed the Maximum identifier length. Simulation targets include the model reference simulation target, the accelerated simulation target, the RSim target, and the S-function target.

  • Identifiers generated using a model name and bus object data type name, which are both long names, might exceed the Maximum identifier length. For example, a ground value variable name is generated as <model_name>_rtZ<bus_name>. If the model_name and bus_name are close to the maximum identifier length, the name exceeds the maximum identifier length.