Ejemplo n.º 1
0
void
gram_trace2(void *garbage, char *s, ...)
{
    va_list         ap;
    string_ty       *buffer;
    char            *cp;
    static char     line[1024];

    va_start(ap, s);
    buffer = str_vformat(s, ap);
    va_end(ap);
    cp = line + strlen(line);
    cp = strendcpy(cp, buffer->str_text, line + sizeof(line));
    str_free(buffer);
    if (cp > line && cp[-1] == '\n')
    {
        --cp;
        *cp = 0;
        trace_printf
        (
            "%s: %ld: %s\n",
            input_filename(input)->str_text,
            line_number,
            line
        );
        line[0] = 0;
    }
}
Ejemplo n.º 2
0
std::string str_format( const char* format, ... )
{
	va_list ap;
	va_start( ap, format );
	return str_vformat( format, ap );
}