/* * EFerr.c - * * Contains only the routine efReadError(). This used to be in EFread.c, * but including Tcl/Tk stuff caused definition conflicts. So now it * gets its own file. Note that *printf routines have been changed to * the Tx* print routines for compatibility with the Tcl-based version. * Note also that the standalone executables ext2sim and ext2spice get * the Tx* functions from utils/LIBtextio.c, whereas the built-in * "extract" function gets them from textio/txOutput.c. In the Tcl * version, all these functions are built in, so utils/LIBtextio.c is * not compiled or linked. * * ********************************************************************* * * Copyright (C) 1985, 1990 Regents of the University of California. * * * Permission to use, copy, modify, and distribute this * * * software and its documentation for any purpose and without * * * fee is hereby granted, provided that the above copyright * * * notice appear in all copies. The University of California * * * makes no representations about the suitability of this * * * software for any purpose. It is provided "as is" without * * * express or implied warranty. Export of this software outside * * * of the United States of America may require an export license. * * ********************************************************************* */ #ifndef lint static char rcsid[] __attribute__ ((unused)) = "$Header: /usr/cvsroot/magic-8.0/extflat/EFerr.c,v 1.1.1.1 2008/02/03 20:43:50 tim Exp $"; #endif /* not lint */ #include #include #include #include #include "utils/magic.h" #include "utils/geometry.h" #include "textio/textio.h" extern char *efReadFileName; extern int efReadLineNum; #ifdef MAGIC_WRAPPER extern int Tcl_printf(); #endif /* * ---------------------------------------------------------------------------- * * efReadError -- * * Complain about an error encountered while reading an .ext file. * Called with a variable number of arguments. * * Results: * None. * * Side effects: * Prints an error message to stderr, complete with offending * filename and line number. * * ---------------------------------------------------------------------------- */ void efReadError(const char *fmt, ...) { va_list args; TxError("%s, line %d: ", efReadFileName, efReadLineNum); va_start(args, fmt); #ifdef MAGIC_WRAPPER Tcl_printf(stderr, fmt, args); #else vfprintf(stderr, fmt, args); #endif va_end(args); TxFlushErr(); }