| OLD | NEW |
| 1 #include <err.h> | 1 #include <err.h> |
| 2 #include <stdio.h> | 2 #include <stdio.h> |
| 3 #include <stdarg.h> | 3 #include <stdarg.h> |
| 4 #include <stdlib.h> | 4 #include <stdlib.h> |
| 5 | 5 |
| 6 extern char *__progname; | 6 extern char* __progname; |
| 7 | 7 |
| 8 void vwarn(const char *fmt, va_list ap) | 8 void vwarn(const char* fmt, va_list ap) { |
| 9 { | 9 fprintf(stderr, "%s: ", __progname); |
| 10 » fprintf (stderr, "%s: ", __progname); | 10 if (fmt) { |
| 11 » if (fmt) { | 11 vfprintf(stderr, fmt, ap); |
| 12 » » vfprintf(stderr, fmt, ap); | 12 fputs(": ", stderr); |
| 13 » » fputs (": ", stderr); | 13 } |
| 14 » } | 14 perror(0); |
| 15 » perror(0); | |
| 16 } | 15 } |
| 17 | 16 |
| 18 void vwarnx(const char *fmt, va_list ap) | 17 void vwarnx(const char* fmt, va_list ap) { |
| 19 { | 18 fprintf(stderr, "%s: ", __progname); |
| 20 » fprintf (stderr, "%s: ", __progname); | 19 if (fmt) |
| 21 » if (fmt) vfprintf(stderr, fmt, ap); | 20 vfprintf(stderr, fmt, ap); |
| 22 » putc('\n', stderr); | 21 putc('\n', stderr); |
| 23 } | 22 } |
| 24 | 23 |
| 25 _Noreturn void verr(int status, const char *fmt, va_list ap) | 24 _Noreturn void verr(int status, const char* fmt, va_list ap) { |
| 26 { | 25 vwarn(fmt, ap); |
| 27 » vwarn(fmt, ap); | 26 exit(status); |
| 28 » exit(status); | |
| 29 } | 27 } |
| 30 | 28 |
| 31 _Noreturn void verrx(int status, const char *fmt, va_list ap) | 29 _Noreturn void verrx(int status, const char* fmt, va_list ap) { |
| 32 { | 30 vwarnx(fmt, ap); |
| 33 » vwarnx(fmt, ap); | 31 exit(status); |
| 34 » exit(status); | |
| 35 } | 32 } |
| 36 | 33 |
| 37 void warn(const char *fmt, ...) | 34 void warn(const char* fmt, ...) { |
| 38 { | 35 va_list ap; |
| 39 » va_list ap; | 36 va_start(ap, fmt); |
| 40 » va_start(ap, fmt); | 37 vwarn(fmt, ap); |
| 41 » vwarn(fmt, ap); | 38 va_end(ap); |
| 42 » va_end(ap); | |
| 43 } | 39 } |
| 44 | 40 |
| 45 void warnx(const char *fmt, ...) | 41 void warnx(const char* fmt, ...) { |
| 46 { | 42 va_list ap; |
| 47 » va_list ap; | 43 va_start(ap, fmt); |
| 48 » va_start(ap, fmt); | 44 vwarnx(fmt, ap); |
| 49 » vwarnx(fmt, ap); | 45 va_end(ap); |
| 50 » va_end(ap); | |
| 51 } | 46 } |
| 52 | 47 |
| 53 _Noreturn void err(int status, const char *fmt, ...) | 48 _Noreturn void err(int status, const char* fmt, ...) { |
| 54 { | 49 va_list ap; |
| 55 » va_list ap; | 50 va_start(ap, fmt); |
| 56 » va_start(ap, fmt); | 51 verr(status, fmt, ap); |
| 57 » verr(status, fmt, ap); | 52 va_end(ap); |
| 58 » va_end(ap); | |
| 59 } | 53 } |
| 60 | 54 |
| 61 _Noreturn void errx(int status, const char *fmt, ...) | 55 _Noreturn void errx(int status, const char* fmt, ...) { |
| 62 { | 56 va_list ap; |
| 63 » va_list ap; | 57 va_start(ap, fmt); |
| 64 » va_start(ap, fmt); | 58 verrx(status, fmt, ap); |
| 65 » verrx(status, fmt, ap); | 59 va_end(ap); |
| 66 » va_end(ap); | |
| 67 } | 60 } |
| OLD | NEW |