Attention
These docs are a bit ambitious. The steps described are accurate but IronPLC cannot yet run programs.
P2021¶
- Code
P2021
- Message
Structure field references undeclared type
Structure field references undeclared type
This error occurs when a structure field declaration references a type that has not been declared or is not available in the current scope.
Example¶
The following code will generate error P2021:
TYPE
MyStruct : STRUCT
field1 : UNKNOWN_TYPE; (* UNKNOWN_TYPE is not declared *)
field2 : INT;
END_STRUCT;
END_TYPE
The error occurs because UNKNOWN_TYPE has not been declared as a valid type in the program.
To fix this error, ensure the field type is properly declared:
TYPE
MyStruct : STRUCT
field1 : INT; (* Use a valid elementary type *)
field2 : INT;
END_STRUCT;
END_TYPE
Or declare the custom type before using it:
TYPE
CustomType : INT(0..100);
MyStruct : STRUCT
field1 : CustomType; (* Now CustomType is declared *)
field2 : INT;
END_STRUCT;
END_TYPE