Subversion Repositories PlanixRsrch.SVN

Rev

Rev 191 | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
133 7u83 1
/*
2
 * Copyright 2019,2020, The PLANIX Project
3
 *
4
 * Redistribution and use in source and binary forms, with or without
5
 * modification, are permitted provided that the following conditions are
6
 * met:
7
 *
8
 * 1. Redistributions of source code must retain the above copyright notice,
9
 * this list of conditions and the following disclaimer.
10
 *
11
 * 2. Redistributions in binary form must reproduce the above copyright
12
 * notice, this list of conditions and the following disclaimer in the
13
 * documentation and/or other materials provided with the distribution.
14
 *
15
 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
16
 * IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
17
 * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
18
 * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR
19
 * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
20
 * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
21
 * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
22
 * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
23
 * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
24
 * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
25
 * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
26
 */
27
 
28
#include <stdio.h>
29
#include <stdarg.h>
30
 
31
#include "mgen.h"
32
 
33
void
191 7u83 34
mgen_perror(struct mgen_stream *mf, char *msg, ...)
133 7u83 35
{
36
	va_list argp;
37
	va_start(argp, msg);
38
 
39
	if (mf->filename){
40
		(void)fprintf(stderr,"\"%s\",",mf->filename);
41
	}
42
 
43
	(void)fprintf(stderr, "line %d, col %d: error: ",
44
				mf->line, mf->col);
45
 
46
	(void)vfprintf(stderr,msg,argp);
47
	(void)fprintf(stderr,"\n");
48
	va_end(argp);		
49
}