Windows NT 4.0 source code leak
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

105 lines
2.1 KiB

/*
* Thunk Compiler - Routines to Print Out Error Messages.
*
* ABSTRACT:
* Routines to print out error messages.
* Exports variables;
* errors - the total number of errors encountered
* Exports routines:
* fatal, warn, error, unix_error_string, set_program_name
*
* $Header: error.c,v 1.4 87/08/03 13:13:18 mach Exp $
*
* HISTORY:
* 28-May-87 Rich Draves @ Carnegie Mellon Created.
*
* 07-Oct-88 Kevin Ross @ Microsoft Corp
* Modified to use System V varargs.h routines.
* 17-Oct-90 Kevin Ruddell @ Microsoft Corp
* Modified to use ANSI stdarg.h routines.
*
*/
#include <stdio.h>
#include <stdlib.h>
#include <stdarg.h>
#include "thunk.h"
#include "error.h"
static char *program;
int errors = 0;
/*ARGSUSED*/
/*VARARGS1*/
void fatal( char *format, ...)
{
va_list marker;
va_start( marker, format);
fprintf( stderr, "%s: fatal: ", program);
vfprintf( stderr, format, marker);
fprintf( stderr, "\n\n");
va_end( marker);
exit( 1);
}
/*ARGSUSED*/
/*VARARGS1*/
void warn( char *format, ...)
{
va_list marker;
va_start( marker, format);
if (!BeQuiet && (errors == 0)) {
fprintf( stderr, "%s(%d): warning: ", yyinname, yylineno-1);
vfprintf( stderr, format, marker);
fprintf( stderr, "\n");
}
va_end( marker);
}
/*ARGSUSED*/
/*VARARGS1*/
void error( char *format, ...)
{
va_list marker;
va_start( marker, format);
fprintf( stderr, "%s(%d): error: ", yyinname, yylineno-1);
vfprintf( stderr, format, marker);
fprintf( stderr, "\n");
va_end( marker);
errors++;
}
#if 0
char *
unix_error_string(errno)
int errno;
{
extern int sys_nerr;
extern char *sys_errlist[];
static char buffer[256];
char *error_mess;
if ((0 <= errno) && (errno < sys_nerr))
error_mess = sys_errlist[errno];
else
error_mess = "strange errno";
sprintf(buffer, "%s (%d)", error_mess, errno);
return buffer;
}
#endif
void set_program_name( char *name)
{
program = name;
}