@jeremy thanks for the clarification. So it seems that you can correctly (in the sense of *syntactically* correct) use a macro call as argument of a widget attribute, but functionally fail to have it work as intended. This shows clearly that TW is way too much stuffed with booby-traps and something must be definitely done to make coding easier and safer for the average user.
We need a stricter syntax, even at the expense of flexibility, to spare the user from these pitfalls, and we need debugging tools to make him easily single out the problem when syntax doesn't help. We cannot go on relying on knowledge of how the parser and 'wikifier' behaves, it simply cannot be viable if TW is to become widely used as is everybody's wish.
I'm not a complete beginner in programming, and as a matter of fact I spend 50% of coding time trying to debug obscure malfunctioning that mostly turns out to require a developer-level knowledge of the parser to be worked out: I dare say that this scares away a lot of would-be users after the first, frustrating attempts.
In the meantime that TW morphs to something less tricky, a huge effort should be done IMHO in bettering the documentation so that the user is aware of the pitfalls left open by its syntax.
Thanks and regards,
CG