Skip to content

PLCgen TwinCAT self-certification: build error on `SEL_LREAL`

Test report

Tool Version
ESCET nightly-20241023-115319
TwinCAT v3.1 build 4020.56
Test suite v27

Setup of TwinCAT as described here: https://cstweb.wtb.tue.nl/4tc00/twincat/setup.html#twincat-install. Project generated as described here: https://eclipse.dev/escet/cif/tools/plcgen/twincat.html#twincat-usage.

Test case: timers.cif

Encountered errors

The usage of SEL_LREAL causes build errors

  • Cannot convert type 'Unknown type: 'SEL_LREAL(timeOut, MAX((LINT_TO_LREAL(TIME_TO_LINT((preset_example_t - curValue))) / 1000.0), 0.0), 0.0)'' to type 'LREAL' in \Untitled1\POUs\MAIN.TcPOU line 459

The issue seems to be resolved once you change SEL_LREAL to SEL.

Related to #1036 (closed). Addresses #1020 (closed) #679