I apologize. The POSIX standards do specify the meaning of * in %*s in the printf family of functions ( dprintf , fprintf , printf , snprintf , sprintf , fwprintf , swprintf , and wprintf ) in the format string argument and in the awk printf and sprintf functions format string argument; but it does not specify the meaning of the * in %*s in the printf utility format string operand.
On OS X El Capitan (Version 10.11.5), the ksh and bashprintf built-ins and the /usr/bin/printf stand-alone utility all produce the output:
u1u1.x x
when invoked with the arguments:
printf 'u1u1.x%*sx\n' 7 ""
(which is what would be required by the C and awk printf functions when given those arguments).
Even though it isn't required by the standards, I'm surprised that the AIX printf utility doesn't implement it as a front-end to the C function. Do you get the same results with the stand-alone utility and the shell built-ins on AIX?