# HG changeset patch # User Edouard Tisserant # Date 1569319111 -7200 # Node ID 35eeb1ed105f9e9b6267b548b7b58099fc502a9b # Parent 5ee6967f721d92cadebc39edfe6a135cbd3c21d1# Parent 39d78c530cbbc9724154d9cea7ab7b5394e76f00 Merge default in SVGHMI branch diff -r 5ee6967f721d -r 35eeb1ed105f plcopen/instances_path.xslt --- a/plcopen/instances_path.xslt Fri Sep 20 13:38:58 2019 +0200 +++ b/plcopen/instances_path.xslt Tue Sep 24 11:58:31 2019 +0200 @@ -62,9 +62,9 @@ - + - + @@ -108,12 +108,12 @@ . + + + + + - - - - - diff -r 5ee6967f721d -r 35eeb1ed105f plcopen/instances_path.ysl2 --- a/plcopen/instances_path.ysl2 Fri Sep 20 13:38:58 2019 +0200 +++ b/plcopen/instances_path.ysl2 Tue Sep 24 11:58:31 2019 +0200 @@ -60,9 +60,9 @@ } template "ppx:dataType" { - param "instance_path"; + param "instance_path","concat('#',@name)"; apply "ppx:baseType/*[self::ppx:derived or self::ppx:struct or self::ppx:array]" { - with "parent_path" > «$instance_path» + with "variable_path" > «$instance_path» } } @@ -94,9 +94,9 @@ param "variable_path"; foreach "ppx:variable[ppx:type/ppx:derived or ppx:type/ppx:struct or ppx:type/ppx:array]" { variable "element_path" > «$variable_path».«@name» - } - apply "ppx:type/*[self::ppx:derived or self::ppx:struct or self::ppx:array]" { - with "variable_path" > «$element_path» + apply "ppx:type/*[self::ppx:derived or self::ppx:struct or self::ppx:array]" { + with "variable_path" > «$element_path» + } } } diff -r 5ee6967f721d -r 35eeb1ed105f tests/python/plc.xml --- a/tests/python/plc.xml Fri Sep 20 13:38:58 2019 +0200 +++ b/tests/python/plc.xml Tue Sep 24 11:58:31 2019 +0200 @@ -1,7 +1,7 @@ - + @@ -49,6 +49,16 @@ + + + + + + + + + + @@ -61,6 +71,9 @@ + + + @@ -1351,6 +1364,11 @@ + + + + + @@ -1372,6 +1390,9 @@ }} (* If you do not use GetFbVar and SetFbVar macros, expect unexpected behaviour*) Global_RS(); + +(* testing access to global struct array *) +Dudiduda[2].FIRSTBYTE := 0; ]]> @@ -1442,6 +1463,11 @@ + + + + +