The implementation of the FMI functions does not use the base types defined in fmi3PlatformTypes.h.
E.g.:
bool instead of fmi3Boolean in setBoolean(ModelInstance* comp, ValueReference vr, const bool values[], size_t nValues, size_t* index).
If an importer uses the source code of the FMU and defines the platform types slightly differently (e.g., typedef unsigned char fmi3Boolean;), some compilers (e.g. GCC 14.2) report an error due to incompatible pointer types.
This could be avoided by using the FMI types (or proper casts) in the FMU.
The implementation of the FMI functions does not use the base types defined in fmi3PlatformTypes.h.
E.g.:
boolinstead offmi3BooleaninsetBoolean(ModelInstance* comp, ValueReference vr, const bool values[], size_t nValues, size_t* index).If an importer uses the source code of the FMU and defines the platform types slightly differently (e.g.,
typedef unsigned char fmi3Boolean;), some compilers (e.g. GCC 14.2) report an error due to incompatible pointer types.This could be avoided by using the FMI types (or proper casts) in the FMU.