PageRenderTime 51ms CodeModel.GetById 25ms RepoModel.GetById 1ms app.codeStats 0ms

/tools/cc65-2.13.2/src/co65/error.c

https://github.com/gilligan/snesdev
C | 94 lines | 34 code | 20 blank | 40 comment | 0 complexity | e296220b2996d6e4c118e6cf54bd4b0c MD5 | raw file
  1. /*****************************************************************************/
  2. /* */
  3. /* error.c */
  4. /* */
  5. /* Error handling for the co65 object file converter */
  6. /* */
  7. /* */
  8. /* */
  9. /* (C) 1998-2003 Ullrich von Bassewitz */
  10. /* Römerstrasse 52 */
  11. /* D-70794 Filderstadt */
  12. /* EMail: uz@cc65.org */
  13. /* */
  14. /* */
  15. /* This software is provided 'as-is', without any expressed or implied */
  16. /* warranty. In no event will the authors be held liable for any damages */
  17. /* arising from the use of this software. */
  18. /* */
  19. /* Permission is granted to anyone to use this software for any purpose, */
  20. /* including commercial applications, and to alter it and redistribute it */
  21. /* freely, subject to the following restrictions: */
  22. /* */
  23. /* 1. The origin of this software must not be misrepresented; you must not */
  24. /* claim that you wrote the original software. If you use this software */
  25. /* in a product, an acknowledgment in the product documentation would be */
  26. /* appreciated but is not required. */
  27. /* 2. Altered source versions must be plainly marked as such, and must not */
  28. /* be misrepresented as being the original software. */
  29. /* 3. This notice may not be removed or altered from any source */
  30. /* distribution. */
  31. /* */
  32. /*****************************************************************************/
  33. #include <stdio.h>
  34. #include <stdlib.h>
  35. #include <stdarg.h>
  36. /* common */
  37. #include "cmdline.h"
  38. /* co65 */
  39. #include "error.h"
  40. /*****************************************************************************/
  41. /* Code */
  42. /*****************************************************************************/
  43. void Warning (const char* Format, ...)
  44. /* Print a warning message */
  45. {
  46. va_list ap;
  47. va_start (ap, Format);
  48. fprintf (stderr, "%s: Warning: ", ProgName);
  49. vfprintf (stderr, Format, ap);
  50. putc ('\n', stderr);
  51. va_end (ap);
  52. }
  53. void Error (const char* Format, ...)
  54. /* Print an error message and die */
  55. {
  56. va_list ap;
  57. va_start (ap, Format);
  58. fprintf (stderr, "%s: Error: ", ProgName);
  59. vfprintf (stderr, Format, ap);
  60. putc ('\n', stderr);
  61. va_end (ap);
  62. exit (EXIT_FAILURE);
  63. }
  64. void Internal (const char* Format, ...)
  65. /* Print an internal error message and die */
  66. {
  67. va_list ap;
  68. va_start (ap, Format);
  69. fprintf (stderr, "%s: Internal error: ", ProgName);
  70. vfprintf (stderr, Format, ap);
  71. putc ('\n', stderr);
  72. va_end (ap);
  73. exit (EXIT_FAILURE);
  74. }