in reply to Useless use of string eq

To summarize some of the answers above:

1. Why is this a useless use?
Because eq is used to compare things. You are trying to use it to assign a value. You muse use = for that.

2. What is a void context?
{$cust eq "SMC";} is a void context, because you are performing a comparison (see 1.) but not doing anything with the result. There is not context for the compare, hence it is a void (empty) context.

3. What can I do to do this better?
The first reply Re: Useless use of string eq to your post by Fletch (++) explains best how to rewrite your code.

Perhaps you should ask him about the whole children bearing thing...