X-Git-Url: https://codewiz.org/gitweb?a=blobdiff_plain;f=compiler.h;h=e15059e229c35ecc670e06a87de2972dfeebb5b3;hb=c273ae81bac91c7eaaecb71482992803539dd0eb;hp=7b09e1fd25aacfe3dc91fa7262d5d07f7ac1be61;hpb=de23a249f2fb8bfd495c24753a9977880ff35add;p=bertos.git diff --git a/compiler.h b/compiler.h index 7b09e1fd..e15059e2 100755 --- a/compiler.h +++ b/compiler.h @@ -15,8 +15,18 @@ /* * $Log$ + * Revision 1.9 2004/07/29 22:57:09 bernie + * vsprintf(): Remove prototype for backwards compatibility with GCC 3.4; ssize_t: Add definition for inferior compilers. + * + * Revision 1.8 2004/07/20 23:43:39 bernie + * Use attribute((always_inline)) to force inlining. This fixes the much + * hated need of redundant prototypes for inline functions. + * + * Revision 1.7 2004/07/20 23:26:48 bernie + * Fix two errors introduced by previous commit. + * * Revision 1.6 2004/07/20 23:12:43 bernie - * Reverse the logic to provide defaults for undefined macros. + * *** empty log message *** * * Revision 1.5 2004/07/20 17:08:03 bernie * Cleanup documentation @@ -110,9 +120,9 @@ #define FORMAT(type,fmt,first) __attribute__((__format__(type, fmt, first))) #define NORETURN __attribute__((__noreturn__)) #define UNUSED(type,arg) __attribute__((__unused__)) type arg - #define INLINE extern inline + #define INLINE static inline __attribute__((__always_inline__)) #if GNUC_PREREQ(3,1) - #define DEPRECATED __attribute__((__deprecated__)) + #define DEPRECATED __attribute__((__deprecated__)) #endif #if defined(__i386__) @@ -132,9 +142,6 @@ /* Missing printf-family functions in avr-libc/stdio.h */ #include #include - #if !GNUC_PREREQ(3,4) - int vsprintf(char *buf, const char *fmt, va_list ap); - #endif int vsprintf_P(char *buf, const char * PROGMEM fmt, va_list ap); /* Support for harvard architectures */ @@ -168,10 +175,10 @@ #ifndef FORMAT #define FORMAT(type,fmt,first) /* nothing */ #endif -#ifndef +#ifndef DEPRECATED #define DEPRECATED /* nothing */ #endif -#ifndef +#ifndef UNUSED #define UNUSED(type,arg) type arg #endif #ifndef REGISTER @@ -267,7 +274,8 @@ * These should be in , but many compilers lack them. */ #if !(defined(size_t) || defined(_SIZE_T_DEFINED)) - #define size_t unsigned int + typedef unsigned int size_t; + typedef int ssize_t; #endif #if !(defined(_TIME_T_DEFINED) || defined(__time_t_defined)) typedef long time_t;