Please do not rely on generic data types like char or int because the behavior and the width is compiler-specific and platform-specific and use the GOAL basic data types in the source code!
GOAL status
GOAL defines the data type GOAL_STATUS_T most used as function return value. The values of GOAL status are defined in …\goal\goal\goal_types.h. GOAL provides the following macros for the symbolic evaluation:
GOAL_RES_OK():
0: The GOAL status reports an error.
1: The GOAL status reports success.
GOAL_RES_ERR():
0: The GOAL status reports success.
1: The GOAL status reports an error.
Alignment
The alignment can be specified:
for the processor about the compiler-define GOAL_TARGET_MEM_ALIGN_CPU or
for network transfers about the compiler-define GOAL_TARGET_MEM_ALIGN_NET
Only the values 2, 4 and 8 are supported.
Heap memory size
The size of the heap memory must be specified about the compiler-define GOAL_CONFIG_HEAP_SIZE. The heap memory size is determined by the GOAL system according to the following order:
The heap memory size can be specified application-specific. The compiler-define GOAL_CONFIG_HEAP_SIZE must be set in …\goal\appl\...\goal_config.h or in the compiler-project to guarantee that the definition is taken first.
The heap memory size is specified platform-specific in …\goal\plat\arch\...\goal_target.h. This value is valid if there is no application-specific setting.
The heap memory size is specified module-specific in …\goal\goal*.h if necessary. This value is valid if there is no application-specific and no platform-specific setting.