|
Message-ID: <55312A6E.10507@mailbox.org> Date: Fri, 17 Apr 2015 17:44:46 +0200 From: Frank Dittrich <frank.dittrich@...lbox.org> To: john-dev@...ts.openwall.com Subject: Add __attribute__ ((__noreturn__)) to error() and pexit() in misc.h Solar, please consider adding __attribute__ ((__noreturn__)) to error() and pexit() in misc.h. This should help the compiler optimizing the code, and it also avoids false positives in static analysis tools like scan-build. It would also make magnum's task of merging easier, since I changed bleeding-jumbo in the following way: diff --git a/src/misc.h b/src/misc.h index e5653ee..12e22c8 100644 --- a/src/misc.h +++ b/src/misc.h @@ -46,7 +46,13 @@ * Exit on error. Logs the event, closes john.pot and the log file, and * terminates the process with non-zero exit status. */ -extern void real_error(char *file, int line); +extern void real_error(char *file, int line) +#ifdef __GNUC__ + __attribute__ ((__noreturn__)); +#else + ; +#endif + #define error(...) real_error(__FILE__, __LINE__) /* @@ -54,6 +60,7 @@ extern void real_error(char *file, int line); */ extern void real_pexit(char *file, int line, char *format, ...) #ifdef __GNUC__ + __attribute__ ((__noreturn__)) __attribute__ ((format (printf, 3, 4))); #else ; Frank
Powered by blists - more mailing lists
Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.