Yup, the thing with g vs gn is that g reflects whether ':' is there or not, and
gn reflects whether there's something after it: macros that do not accept
arguments must not have g, and macros that do need to have both (but non-zero
gn implies non-NULL g).
And yeah, ```%{echo:%{nil}}``` would work and that's perfectly fine. Which is
exactly the reason that makes me wonder if empty argument should be permitted
for echo, warn and error.
Good point on doFoo() expansion, but note that doFoo() is not the only function
of that kind. Perhaps the central check should be only for g (ie ':') and only
check for the non-empty argument in the places that actually care. Which
probably would leave doOutput() naturally out of the argument checking - making
output of empty string does feel kinda wrong.
I'll change that at least to see how it'd look like. Thanks for reviewing!
--
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/rpm-software-management/rpm/pull/853#issuecomment-534410176
_______________________________________________
Rpm-maint mailing list
Rpm-maint@lists.rpm.org
http://lists.rpm.org/mailman/listinfo/rpm-maint