E0029: a short name that two USINGs both bring in
USING A, B; brings in the elements of both namespaces by their short
names. When both have one of the name a POU uses, which one is meant is
not said, and iecf does not guess: name the one meant in full. As in C#,
whose using directives Ed.3 6.9.4 follows, it is an error only where the
name is used, and a namespace’s own element hides one a USING brings in
(NAMESPACES.md D2).
NAMESPACE A FUNCTION f : INT f := 1; END_FUNCTION END_NAMESPACE
NAMESPACE B FUNCTION f : INT f := 2; END_FUNCTION END_NAMESPACE
FUNCTION_BLOCK user
USING A, B;
VAR n : INT; END_VAR
n := f(); (* E0029: A.f or B.f *)
n := A.f(); (* fine *)
END_FUNCTION_BLOCK