X-Git-Url: https://code.delx.au/gnu-emacs/blobdiff_plain/7e67809332c7ac0c798eb13d5573a5804db8134e..51caf50203be08ba6f15e0d72b777f036d6bee72:/src/conf_post.h diff --git a/src/conf_post.h b/src/conf_post.h index 16714076f6..2d967c0fef 100644 --- a/src/conf_post.h +++ b/src/conf_post.h @@ -49,8 +49,6 @@ along with GNU Emacs. If not, see . */ #define malloc unexec_malloc #define realloc unexec_realloc #define free unexec_free -/* Don't use posix_memalign because it is not compatible with unexmacosx.c. */ -#undef HAVE_POSIX_MEMALIGN #endif /* The following solves the problem that Emacs hangs when evaluating (make-comint "test0" "/nodir/nofile" nil "") when /nodir/nofile @@ -208,11 +206,8 @@ extern void _DebPrint (const char *fmt, ...); [#include any other .h files first.] ... INLINE_HEADER_BEGIN - #ifndef FOO_INLINE - # define FOO_INLINE INLINE - #endif ... - FOO_INLINE int + INLINE int incr (int i) { return i + 1; @@ -220,19 +215,22 @@ extern void _DebPrint (const char *fmt, ...); ... INLINE_HEADER_END - The corresponding foo.c file should do this: + For every executable, exactly one file that includes the header + should do this: - #define FOO_INLINE EXTERN_INLINE + #define INLINE EXTERN_INLINE - before including any .h file other than config.h. - Other .c files should not define FOO_INLINE. + before including config.h or any other .h file. + Other .c files should not define INLINE. C99 compilers compile functions like 'incr' as C99-style extern inline functions. Pre-C99 GCCs do something similar with GNU-specific keywords. Pre-C99 non-GCC compilers use static functions, which bloats the code but is good enough. */ -#define INLINE _GL_INLINE +#ifndef INLINE +# define INLINE _GL_INLINE +#endif #define EXTERN_INLINE _GL_EXTERN_INLINE #define INLINE_HEADER_BEGIN _GL_INLINE_HEADER_BEGIN #define INLINE_HEADER_END _GL_INLINE_HEADER_END @@ -252,12 +250,8 @@ extern void _DebPrint (const char *fmt, ...); #ifdef lint /* Use CODE only if lint checking is in effect. */ # define IF_LINT(Code) Code -/* Assume that the expression COND is true. This differs in intent - from 'assert', as it is a message from the programmer to the compiler. */ -# define lint_assume(cond) ((cond) ? (void) 0 : abort ()) #else # define IF_LINT(Code) /* empty */ -# define lint_assume(cond) ((void) (0 && (cond))) #endif /* conf_post.h ends here */