Attribute pragmas
Attribute pragmas are used to influence compilation and precompilation.
TwinCAT supports a number of predefined attribute pragmas. In addition, you can use custom pragmas, which you can query by using conditional pragmas before compiling the project.
If you define your own attributes, make sure they are unambiguous. You can achieve this by assigning a prefix to the attribute name, for example. |
Attributes are defined in the declaration part. Exception: You can only use attributes in Action or Transition objects if the implementation language of the action or transition is “Structured Text (ST)”. Since actions and transitions do not have a declaration part, you define attributes at the start of the implementation part.
Further Information
- User-defined attributes
- Attribute 'c++_compatible'
- Attribute 'call_after_global_init_slot'
- Attribute 'call_after_init'
- Attribute 'call_after_online_change_slot'
- Attribute 'call_on_type_change'
- Attribute 'conditionalshow'
- Attribute 'conditionalshow_all_locals'
- Attribute 'const_replaced', attribute 'const_non_replaced'
- Attribute 'dataflow'
- Attribute 'displaymode'
- Attribute 'enable_dynamic_creation'
- Attribute 'estimated-stack-usage'
- Attribute 'ExpandFully'
- Attribute 'global_init_slot'
- Attribute 'hide'
- Attribute 'hide_all_locals'
- Attribute 'init_namespace'
- Attribute 'init_on_onlchange'
- Attribute 'initialize_on_call'
- Attribute 'instance-path'
- Attribute 'is_connected'
- Attribute 'linkalways'
- memory_check attribute
- Attribute 'minimal_input_size'
- Attribute 'monitoring'
- Attribute 'no_assign', Attribute 'no_assign_warning'
- Attribute 'no_check'
- Attribute 'no_copy'
- Attribute 'no_explicit_call'
- Attribute 'no_virtual_actions'
- Attribute 'no-exit'
- Attribute 'noflow' / 'flow'
- Attribute 'noinit'
- Attribute 'obsolete'
- Attribute 'pack_mode'
- Attribute 'parameterstringof'
- Attribute 'pin_presentation_order_inputs/outputs'
- Attribute 'pingroup'
- Attribute 'qualified_only'
- Attribute 'reflection'
- Attribute 'strict'
- Attribute 'subsequent'
- Attribute 'Tc2GvlVarNames'
- Attribute 'TcCallAfterOutputUpdate'
- Attribute 'TcContextId'
- Attribute 'TcContextName'
- Attribute 'TcDisplayScale'
- Attribute 'TcEncoding'
- Attribute 'TcHideSubItems'
- Attribute 'TcIgnorePersistent'
- Attribute 'TcInitOnReset'
- Attribute 'TcInitSymbol'
- Attribute 'TcLinkTo' / 'TcLinkToOSO'
- Attribute 'TcNcAxis'
- Attribute 'TcNoSymbol' / 'tc_no_symbol'
- Attribute 'TcRpcEnable'
- Attribute 'TcRetain'
- Attribute 'TcSwapDWord'
- Attribute 'TcSwapWord'
- Attribute 'to_string'
- 'TcPersistent' attribute