positional arguments with printf

Brent Cook bcook at bpointsys.com
Tue Nov 29 23:06:41 UTC 2005


I just tried using positional arguments with printf in uClibc with interesting 
results. Should the following code in libc/stdio/vfprintf.c have its #ifdef 
check for NL_ARGMAX instead?

#ifdef NL_MAX_ARG
    /* If we have positional args, make sure we know all the types. */
    {
        register int *p = ppfs->argtype;
        r = ppfs->maxposarg;
        while (--r >= 0) {
            if ( *p == __PA_NOARG ) { /* missing arg type!!! */
                return -1;
            }
            ++p;
        }
    }
#endif /* NL_MAX_ARG */



More information about the uClibc mailing list