extern void
uInformation(const char * /* s */ , ...
- )
-#if defined(__GNUC__) && \
- ((__GNUC__ > 2) || ((__GNUC__ == 2) && (__GNUC_MINOR__ >= 6)))
- __attribute__ ((format(printf, 1, 2)))
-#endif
- ;
+ ) _X_ATTRIBUTE_PRINTF(1, 2);
#define ACTION6 uAction
#define ACTION5 uAction
#define ACTION uAction
extern void uAction(const char * /* s */ , ...
- )
-#if defined(__GNUC__) && \
- ((__GNUC__ > 2) || ((__GNUC__ == 2) && (__GNUC_MINOR__ >= 6)))
- __attribute__ ((format(printf, 1, 2)))
-#endif
- ;
+ ) _X_ATTRIBUTE_PRINTF(1, 2);
#define WARN6 uWarning
#define WARN5 uWarning
#define WARN uWarning
extern void uWarning(const char * /* s */ , ...
- )
-#if defined(__GNUC__) && \
- ((__GNUC__ > 2) || ((__GNUC__ == 2) && (__GNUC_MINOR__ >= 6)))
- __attribute__ ((format(printf, 1, 2)))
-#endif
- ;
+ ) _X_ATTRIBUTE_PRINTF(1, 2);
#define ERROR6 uError
#define ERROR5 uError
#define ERROR uError
extern void uError(const char * /* s */ , ...
- )
-#if defined(__GNUC__) && \
- ((__GNUC__ > 2) || ((__GNUC__ == 2) && (__GNUC_MINOR__ >= 6)))
- __attribute__ ((format(printf, 1, 2)))
-#endif
- ;
+ ) _X_ATTRIBUTE_PRINTF(1, 2);
#define FATAL6 uFatalError
#define FATAL5 uFatalError
#define FATAL uFatalError
extern void uFatalError(const char * /* s */ , ...
- )
-#if defined(__GNUC__) && \
- ((__GNUC__ > 2) || ((__GNUC__ == 2) && (__GNUC_MINOR__ >= 6)))
- __attribute__ ((format(printf, 1, 2)))
-#endif
- ;
+ ) _X_ATTRIBUTE_PRINTF(1, 2) _X_NORETURN;
/* WSGO stands for "Weird Stuff Going On" */
#define WSGO6 uInternalError
#define WSGO uInternalError
extern void uInternalError(const char * /* s */ , ...
- )
-#if defined(__GNUC__) && \
- ((__GNUC__ > 2) || ((__GNUC__ == 2) && (__GNUC_MINOR__ >= 6)))
- __attribute__ ((format(printf, 1, 2)))
-#endif
- ;
+ ) _X_ATTRIBUTE_PRINTF(1, 2);
extern void uSetPreErrorMessage(char * /* msg */
);
(s1)!=(s2):strcmp(s1,s2))
#define uStrCaseEqual(s1,s2) (uStrCaseCmp(s1,s2)==0)
#ifdef HAVE_STRCASECMP
+#include <strings.h>
#define uStrCaseCmp(s1,s2) (strcasecmp(s1,s2))
#define uStrCasePrefix(p,s) (strncasecmp(p,s,strlen(p))==0)
#else
);
#endif
#ifdef HAVE_STRDUP
+#include <string.h>
#define uStringDup(s1) ((s1) ? strdup(s1) : NULL)
#else
extern char *uStringDup(const char * /* s1 */
unsigned int DEBUG_VAR;
extern void uDebug(char * /* s */ , ...
- )
-#if defined(__GNUC__) && \
- ((__GNUC__ > 2) || ((__GNUC__ == 2) && (__GNUC_MINOR__ >= 6)))
- __attribute__ ((format(printf, 1, 2)))
-#endif
- ;
+ ) _X_ATTRIBUTE_PRINTF(1, 2);
extern void uDebugNOI( /* no indent */
char * /* s */ , ...
- )
-#if defined(__GNUC__) && \
- ((__GNUC__ > 2) || ((__GNUC__ == 2) && (__GNUC_MINOR__ >= 6)))
- __attribute__ ((format(printf, 1, 2)))
-#endif
- ;
+ ) _X_ATTRIBUTE_PRINTF(1, 2);
extern Boolean uSetDebugFile(char *name);
extern Boolean uSetEntryFile(char *name);
extern void uEntry(int /* l */ ,
char * /* s */ , ...
- )
-#if defined(__GNUC__) && \
- ((__GNUC__ > 2) || ((__GNUC__ == 2) && (__GNUC_MINOR__ >= 6)))
- __attribute__ ((format(printf, 2, 3)))
-#endif
- ;
+ ) _X_ATTRIBUTE_PRINTF(2, 3);
extern void uExit(int l, char *rtVal);
#ifdef ENTRY_TRACKING_ON