Commit 00382e8b authored by Paul Eggert's avatar Paul Eggert

A simpler, centralized INLINE.

* lib-src/profile.c (INLINE): New macro.
(SYSTIME_INLINE): Remove.
* src/conf_post.h (INLINE): Define only if not already defined.
This allows us to use a single INLINE, defined by one file
per executable.
* src/emacs.c (INLINE): Define it.
Also, include category.h, charset.h, composite.h, dispextern.h,
syntax.h, systime.h, so that their INLINE definitions are expanded
properly for Emacs.
* src/blockinput.h, src/keyboard.c (BLOCKINPUT_INLINE):
* src/buffer.h, src/buffer.c (BUFFER_INLINE):
* src/category.h, src/category.c (CATEGORY_INLINE):
* src/character.h, src/character.c (CHARACTER_INLINE):
* src/charset.h, src/charset.c (CHARSET_INLINE):
* src/composite.h, src/composite.c (COMPOSITE_INLINE):
* src/dispextern.h, src/dispnew.c (DISPEXTERN_INLINE):
* src/frame.h, src/frame.c (FRAME_INLINE):
* src/intervals.h, src/intervals.c (INTERVALS_INLINE):
* src/keyboard.h, src/keyboard.c (KEYBOARD_INLINE):
* src/lisp.h, src/alloc.c (LISP_INLINE):
* src/process.h, src/process.c (PROCESS_INLINE):
* src/syntax.h, src/syntax.c (SYNTAX_INLINE):
* src/systime.h, src/sysdep.c (SYSTIME_INLINE):
* src/termhooks.h, src/terminal.h (TERMHOOKS_INLINE):
* src/window.h, src/window.c (WINDOW_INLINE):
Remove.  All uses replaced with INLINE.
parent 2fd3a9f7
2013-09-20 Paul Eggert <eggert@cs.ucla.edu>
A simpler, centralized INLINE.
* profile.c (INLINE): New macro.
(SYSTIME_INLINE): Remove.
2013-08-28 Paul Eggert <eggert@cs.ucla.edu>
* Makefile.in (SHELL): Now @SHELL@, not /bin/sh,
......
......@@ -29,9 +29,9 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
** abstraction : a stopwatch
** operations: reset_watch, get_time
*/
#include <config.h>
#define SYSTIME_INLINE EXTERN_INLINE
#define INLINE EXTERN_INLINE
#include <config.h>
#include <inttypes.h>
#include <stdio.h>
......
2013-09-20 Paul Eggert <eggert@cs.ucla.edu>
A simpler, centralized INLINE.
* conf_post.h (INLINE): Define only if not already defined.
This allows us to use a single INLINE, defined by one file
per executable.
* emacs.c (INLINE): Define it.
Also, include category.h, charset.h, composite.h, dispextern.h,
syntax.h, systime.h, so that their INLINE definitions are expanded
properly for Emacs.
* blockinput.h, keyboard.c (BLOCKINPUT_INLINE):
* buffer.h, buffer.c (BUFFER_INLINE):
* category.h, category.c (CATEGORY_INLINE):
* character.h, character.c (CHARACTER_INLINE):
* charset.h, charset.c (CHARSET_INLINE):
* composite.h, composite.c (COMPOSITE_INLINE):
* dispextern.h, dispnew.c (DISPEXTERN_INLINE):
* frame.h, frame.c (FRAME_INLINE):
* intervals.h, intervals.c (INTERVALS_INLINE):
* keyboard.h, keyboard.c (KEYBOARD_INLINE):
* lisp.h, alloc.c (LISP_INLINE):
* process.h, process.c (PROCESS_INLINE):
* syntax.h, syntax.c (SYNTAX_INLINE):
* systime.h, sysdep.c (SYSTIME_INLINE):
* termhooks.h, terminal.h (TERMHOOKS_INLINE):
* window.h, window.c (WINDOW_INLINE):
Remove. All uses replaced with INLINE.
2013-09-20 Dmitry Antipov <dmantipov@yandex.ru>
* xterm.c (handle_one_xevent): Revert part of 2013-09-17 change
......
......@@ -20,8 +20,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
#include <config.h>
#define LISP_INLINE EXTERN_INLINE
#include <stdio.h>
#include <limits.h> /* For CHAR_BIT. */
......
......@@ -20,9 +20,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
#define EMACS_BLOCKINPUT_H
INLINE_HEADER_BEGIN
#ifndef BLOCKINPUT_INLINE
# define BLOCKINPUT_INLINE INLINE
#endif
/* Emacs should avoid doing anything hairy in a signal handler, because
so many system functions are non-reentrant. For example, malloc
......@@ -52,7 +49,7 @@ extern volatile int interrupt_input_blocked;
/* Begin critical section. */
BLOCKINPUT_INLINE void
INLINE void
block_input (void)
{
interrupt_input_blocked++;
......@@ -64,7 +61,7 @@ extern void unblock_input_to (int);
/* In critical section ? */
BLOCKINPUT_INLINE bool
INLINE bool
input_blocked_p (void)
{
return interrupt_input_blocked > 0;
......
......@@ -20,8 +20,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
#include <config.h>
#define BUFFER_INLINE EXTERN_INLINE
#include <sys/types.h>
#include <sys/stat.h>
#include <sys/param.h>
......
......@@ -22,9 +22,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
#include <time.h>
INLINE_HEADER_BEGIN
#ifndef BUFFER_INLINE
# define BUFFER_INLINE INLINE
#endif
/* Accessing the parameters of the current buffer. */
......@@ -875,97 +872,97 @@ struct buffer
/* Most code should use these functions to set Lisp fields in struct
buffer. */
BUFFER_INLINE void
INLINE void
bset_bidi_paragraph_direction (struct buffer *b, Lisp_Object val)
{
b->INTERNAL_FIELD (bidi_paragraph_direction) = val;
}
BUFFER_INLINE void
INLINE void
bset_case_canon_table (struct buffer *b, Lisp_Object val)
{
b->INTERNAL_FIELD (case_canon_table) = val;
}
BUFFER_INLINE void
INLINE void
bset_case_eqv_table (struct buffer *b, Lisp_Object val)
{
b->INTERNAL_FIELD (case_eqv_table) = val;
}
BUFFER_INLINE void
INLINE void
bset_directory (struct buffer *b, Lisp_Object val)
{
b->INTERNAL_FIELD (directory) = val;
}
BUFFER_INLINE void
INLINE void
bset_display_count (struct buffer *b, Lisp_Object val)
{
b->INTERNAL_FIELD (display_count) = val;
}
BUFFER_INLINE void
INLINE void
bset_display_time (struct buffer *b, Lisp_Object val)
{
b->INTERNAL_FIELD (display_time) = val;
}
BUFFER_INLINE void
INLINE void
bset_downcase_table (struct buffer *b, Lisp_Object val)
{
b->INTERNAL_FIELD (downcase_table) = val;
}
BUFFER_INLINE void
INLINE void
bset_enable_multibyte_characters (struct buffer *b, Lisp_Object val)
{
b->INTERNAL_FIELD (enable_multibyte_characters) = val;
}
BUFFER_INLINE void
INLINE void
bset_filename (struct buffer *b, Lisp_Object val)
{
b->INTERNAL_FIELD (filename) = val;
}
BUFFER_INLINE void
INLINE void
bset_keymap (struct buffer *b, Lisp_Object val)
{
b->INTERNAL_FIELD (keymap) = val;
}
BUFFER_INLINE void
INLINE void
bset_last_selected_window (struct buffer *b, Lisp_Object val)
{
b->INTERNAL_FIELD (last_selected_window) = val;
}
BUFFER_INLINE void
INLINE void
bset_local_var_alist (struct buffer *b, Lisp_Object val)
{
b->INTERNAL_FIELD (local_var_alist) = val;
}
BUFFER_INLINE void
INLINE void
bset_mark_active (struct buffer *b, Lisp_Object val)
{
b->INTERNAL_FIELD (mark_active) = val;
}
BUFFER_INLINE void
INLINE void
bset_point_before_scroll (struct buffer *b, Lisp_Object val)
{
b->INTERNAL_FIELD (point_before_scroll) = val;
}
BUFFER_INLINE void
INLINE void
bset_read_only (struct buffer *b, Lisp_Object val)
{
b->INTERNAL_FIELD (read_only) = val;
}
BUFFER_INLINE void
INLINE void
bset_truncate_lines (struct buffer *b, Lisp_Object val)
{
b->INTERNAL_FIELD (truncate_lines) = val;
}
BUFFER_INLINE void
INLINE void
bset_undo_list (struct buffer *b, Lisp_Object val)
{
b->INTERNAL_FIELD (undo_list) = val;
}
BUFFER_INLINE void
INLINE void
bset_upcase_table (struct buffer *b, Lisp_Object val)
{
b->INTERNAL_FIELD (upcase_table) = val;
}
BUFFER_INLINE void
INLINE void
bset_width_table (struct buffer *b, Lisp_Object val)
{
b->INTERNAL_FIELD (width_table) = val;
......@@ -1089,7 +1086,7 @@ extern void set_buffer_if_live (Lisp_Object);
windows than the selected one requires a select_window at some
time, and that increments windows_or_buffers_changed. */
BUFFER_INLINE void
INLINE void
set_buffer_internal (struct buffer *b)
{
if (current_buffer != b)
......@@ -1099,7 +1096,7 @@ set_buffer_internal (struct buffer *b)
/* Arrange to go back to the original buffer after the next
call to unbind_to if the original buffer is still alive. */
BUFFER_INLINE void
INLINE void
record_unwind_current_buffer (void)
{
record_unwind_protect (set_buffer_if_live, Fcurrent_buffer ());
......@@ -1138,7 +1135,7 @@ extern Lisp_Object Qpriority, Qbefore_string, Qafter_string;
/* Get text properties of B. */
BUFFER_INLINE INTERVAL
INLINE INTERVAL
buffer_intervals (struct buffer *b)
{
eassert (b->text != NULL);
......@@ -1147,7 +1144,7 @@ buffer_intervals (struct buffer *b)
/* Set text properties of B to I. */
BUFFER_INLINE void
INLINE void
set_buffer_intervals (struct buffer *b, INTERVAL i)
{
eassert (b->text != NULL);
......@@ -1156,7 +1153,7 @@ set_buffer_intervals (struct buffer *b, INTERVAL i)
/* Non-zero if current buffer has overlays. */
BUFFER_INLINE bool
INLINE bool
buffer_has_overlays (void)
{
return current_buffer->overlays_before || current_buffer->overlays_after;
......@@ -1176,7 +1173,7 @@ buffer_has_overlays (void)
the buffer to the next character after fetching this one. Instead,
use either FETCH_CHAR_ADVANCE or STRING_CHAR_AND_LENGTH. */
BUFFER_INLINE int
INLINE int
FETCH_MULTIBYTE_CHAR (ptrdiff_t pos)
{
unsigned char *p = ((pos >= GPT_BYTE ? GAP_SIZE : 0)
......@@ -1188,7 +1185,7 @@ FETCH_MULTIBYTE_CHAR (ptrdiff_t pos)
If POS doesn't point the head of valid multi-byte form, only the byte at
POS is returned. No range checking. */
BUFFER_INLINE int
INLINE int
BUF_FETCH_MULTIBYTE_CHAR (struct buffer *buf, ptrdiff_t pos)
{
unsigned char *p
......@@ -1199,7 +1196,7 @@ BUF_FETCH_MULTIBYTE_CHAR (struct buffer *buf, ptrdiff_t pos)
/* Return number of windows showing B. */
BUFFER_INLINE int
INLINE int
buffer_window_count (struct buffer *b)
{
if (b->base_buffer)
......@@ -1306,13 +1303,13 @@ extern int last_per_buffer_idx;
/* Functions to get and set default value of the per-buffer
variable at offset OFFSET in the buffer structure. */
BUFFER_INLINE Lisp_Object
INLINE Lisp_Object
per_buffer_default (int offset)
{
return *(Lisp_Object *)(offset + (char *) &buffer_defaults);
}
BUFFER_INLINE void
INLINE void
set_per_buffer_default (int offset, Lisp_Object value)
{
*(Lisp_Object *)(offset + (char *) &buffer_defaults) = value;
......@@ -1321,20 +1318,20 @@ set_per_buffer_default (int offset, Lisp_Object value)
/* Functions to get and set buffer-local value of the per-buffer
variable at offset OFFSET in the buffer structure. */
BUFFER_INLINE Lisp_Object
INLINE Lisp_Object
per_buffer_value (struct buffer *b, int offset)
{
return *(Lisp_Object *)(offset + (char *) b);
}
BUFFER_INLINE void
INLINE void
set_per_buffer_value (struct buffer *b, int offset, Lisp_Object value)
{
*(Lisp_Object *)(offset + (char *) b) = value;
}
/* Downcase a character C, or make no change if that cannot be done. */
BUFFER_INLINE int
INLINE int
downcase (int c)
{
Lisp_Object downcase_table = BVAR (current_buffer, downcase_table);
......@@ -1343,10 +1340,10 @@ downcase (int c)
}
/* 1 if C is upper case. */
BUFFER_INLINE bool uppercasep (int c) { return downcase (c) != c; }
INLINE bool uppercasep (int c) { return downcase (c) != c; }
/* Upcase a character C known to be not upper case. */
BUFFER_INLINE int
INLINE int
upcase1 (int c)
{
Lisp_Object upcase_table = BVAR (current_buffer, upcase_table);
......@@ -1355,13 +1352,13 @@ upcase1 (int c)
}
/* 1 if C is lower case. */
BUFFER_INLINE bool
INLINE bool
lowercasep (int c)
{
return !uppercasep (c) && upcase1 (c) != c;
}
/* Upcase a character C, or make no change if that cannot be done. */
BUFFER_INLINE int upcase (int c) { return uppercasep (c) ? c : upcase1 (c); }
INLINE int upcase (int c) { return uppercasep (c) ? c : upcase1 (c); }
INLINE_HEADER_END
......@@ -30,8 +30,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
#include <config.h>
#define CATEGORY_INLINE EXTERN_INLINE
#include "lisp.h"
#include "character.h"
#include "buffer.h"
......
......@@ -54,9 +54,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
But, for the moment, we are not using this slot. */
INLINE_HEADER_BEGIN
#ifndef CATEGORY_INLINE
# define CATEGORY_INLINE INLINE
#endif
#define CATEGORYP(x) RANGED_INTEGERP (0x20, x, 0x7E)
......@@ -84,7 +81,7 @@ INLINE_HEADER_BEGIN
>> ((category) % 8)) & 1)
/* Return true if category set of CH contains CATEGORY. */
CATEGORY_INLINE bool
INLINE bool
CHAR_HAS_CATEGORY (int ch, int category)
{
Lisp_Object category_set = CATEGORY_SET (ch);
......
......@@ -29,8 +29,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
#include <config.h>
#endif
#define CHARACTER_INLINE EXTERN_INLINE
#include <stdio.h>
#ifdef emacs
......
......@@ -26,9 +26,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
#include <verify.h>
INLINE_HEADER_BEGIN
#ifndef CHARACTER_INLINE
# define CHARACTER_INLINE INLINE
#endif
/* character code 1st byte byte sequence
-------------- -------- -------------
......@@ -558,7 +555,7 @@ INLINE_HEADER_BEGIN
#define SANE_TAB_WIDTH(buf) \
sanitize_tab_width (XFASTINT (BVAR (buf, tab_width)))
CHARACTER_INLINE int
INLINE int
sanitize_tab_width (EMACS_INT width)
{
return 0 < width && width <= 1000 ? width : 8;
......@@ -579,7 +576,7 @@ sanitize_tab_width (EMACS_INT width)
/* Return a non-outlandish value for a character width. */
CHARACTER_INLINE int
INLINE int
sanitize_char_width (EMACS_INT width)
{
return 0 <= width && width <= 1000 ? width : 1000;
......
......@@ -26,8 +26,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
#include <config.h>
#define CHARSET_INLINE EXTERN_INLINE
#include <errno.h>
#include <stdio.h>
#include <unistd.h>
......
......@@ -30,9 +30,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
#include <verify.h>
INLINE_HEADER_BEGIN
#ifndef CHARSET_INLINE
# define CHARSET_INLINE INLINE
#endif
/* Index to arguments of Fdefine_charset_internal. */
......@@ -331,7 +328,7 @@ extern int emacs_mule_charset[256];
#define CHARSET_DEUNIFIER(charset) \
(CHARSET_ATTR_DEUNIFIER (CHARSET_ATTRIBUTES (charset)))
CHARSET_INLINE void
INLINE void
set_charset_attr (struct charset *charset, enum charset_attr_index idx,
Lisp_Object val)
{
......
......@@ -24,8 +24,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
#include <config.h>
#define COMPOSITE_INLINE EXTERN_INLINE
#include "lisp.h"
#include "character.h"
#include "buffer.h"
......
......@@ -28,9 +28,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
#include "font.h"
INLINE_HEADER_BEGIN
#ifndef COMPOSITE_INLINE
# define COMPOSITE_INLINE INLINE
#endif
/* Methods to display a sequence of components of a composition. */
enum composition_method {
......@@ -59,7 +56,7 @@ enum composition_method {
They don't check validity of PROP. */
/* Return true if PROP is already registered. */
COMPOSITE_INLINE bool
INLINE bool
composition_registered_p (Lisp_Object prop)
{
return INTEGERP (XCAR (prop));
......@@ -207,7 +204,7 @@ extern void compose_text (ptrdiff_t, ptrdiff_t, Lisp_Object, Lisp_Object,
/* Return the method of a composition with property PROP. */
COMPOSITE_INLINE enum composition_method
INLINE enum composition_method
composition_method (Lisp_Object prop)
{
if (composition_registered_p (prop))
......@@ -226,7 +223,7 @@ composition_method (Lisp_Object prop)
/* Given offsets START and END, return true if PROP is a valid composition
property with length END - START. */
COMPOSITE_INLINE bool
INLINE bool
composition_valid_p (ptrdiff_t start, ptrdiff_t end, Lisp_Object prop)
{
return (CONSP (prop)
......@@ -262,7 +259,7 @@ composition_valid_p (ptrdiff_t start, ptrdiff_t end, Lisp_Object prop)
#define LGSTRING_GLYPH_LEN(lgs) (ASIZE ((lgs)) - 2)
#define LGSTRING_GLYPH(lgs, idx) AREF ((lgs), (idx) + 2)
#define LGSTRING_SET_GLYPH(lgs, idx, val) ASET ((lgs), (idx) + 2, (val))
COMPOSITE_INLINE Lisp_Object *
INLINE Lisp_Object *
lgstring_glyph_addr (Lisp_Object lgs, ptrdiff_t idx)
{
return aref_addr (lgs, idx + 2);
......
......@@ -208,11 +208,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 +217,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
......
......@@ -49,12 +49,9 @@ typedef struct {
#endif
INLINE_HEADER_BEGIN
#ifndef DISPEXTERN_INLINE
# define DISPEXTERN_INLINE INLINE
#endif
#include <c-strcase.h>
DISPEXTERN_INLINE int
INLINE int
xstrcasecmp (char const *a, char const *b)
{
return c_strcasecmp (a, b);
......@@ -289,10 +286,10 @@ typedef struct {
} GLYPH;
/* Return a glyph's character code. */
DISPEXTERN_INLINE int GLYPH_CHAR (GLYPH glyph) { return glyph.ch; }
INLINE int GLYPH_CHAR (GLYPH glyph) { return glyph.ch; }
/* Return a glyph's face ID. */
DISPEXTERN_INLINE int GLYPH_FACE (GLYPH glyph) { return glyph.face_id; }
INLINE int GLYPH_FACE (GLYPH glyph) { return glyph.face_id; }
#define SET_GLYPH_CHAR(glyph, char) ((glyph).ch = (char))
#define SET_GLYPH_FACE(glyph, face) ((glyph).face_id = (face))
......@@ -301,7 +298,7 @@ DISPEXTERN_INLINE int GLYPH_FACE (GLYPH glyph) { return glyph.face_id; }
/* The following are valid only if GLYPH_CODE_P (gc). */
DISPEXTERN_INLINE int
INLINE int
GLYPH_CODE_CHAR (Lisp_Object gc)
{
return (CONSP (gc)
......@@ -309,7 +306,7 @@ GLYPH_CODE_CHAR (Lisp_Object gc)
: XINT (gc) & MAX_CHAR);
}
DISPEXTERN_INLINE int
INLINE int
GLYPH_CODE_FACE (Lisp_Object gc)
{
return CONSP (gc) ? XINT (XCDR (gc)) : XINT (gc) >> CHARACTERBITS;
......@@ -1824,7 +1821,7 @@ struct face_cache
#endif /* not HAVE_WINDOW_SYSTEM */
/* Return true if G contains a valid character code. */
DISPEXTERN_INLINE bool
INLINE bool
GLYPH_CHAR_VALID_P (GLYPH g)
{
return CHAR_VALID_P (GLYPH_CHAR (g));
......@@ -1834,7 +1831,7 @@ GLYPH_CHAR_VALID_P (GLYPH g)
encodes a char code in the lower CHARACTERBITS bits and a (very small)
face-id in the upper bits, or it may be a cons (CHAR . FACE-ID). */
DISPEXTERN_INLINE bool
INLINE bool
GLYPH_CODE_P (Lisp_Object gc)
{
return (CONSP (gc)
......@@ -2705,7 +2702,7 @@ typedef struct {
unsigned mouse_face_hidden : 1;
} Mouse_HLInfo;
DISPEXTERN_INLINE void
INLINE void
reset_mouse_highlight (Mouse_HLInfo *hlinfo)
{
......
......@@ -20,8 +20,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
#include <config.h>
#define DISPEXTERN_INLINE EXTERN_INLINE
#include "sysstdio.h"
#include <unistd.h>
......
......@@ -18,8 +18,9 @@ GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
#define INLINE EXTERN_INLINE
#include <config.h>
#include <errno.h>
#include <stdio.h>
......@@ -72,6 +73,12 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
#include "termhooks.h"
#include "keyboard.h"
#include "keymap.h"
#include "category.h"
#include "charset.h"
#include "composite.h"
#include "dispextern.h"
#include "syntax.h"
#include "systime.h"
#ifdef HAVE_GNUTLS
#include "gnutls.h"
......
......@@ -19,8 +19,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
#include <config.h>
#define FRAME_INLINE EXTERN_INLINE
#include <stdio.h>
#include <errno.h>
#include <limits.h>
......
......@@ -27,9 +27,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
#include "termhooks.h"
INLINE_HEADER_BEGIN
#ifndef FRAME_INLINE
# define FRAME_INLINE INLINE
#endif
enum vertical_scroll_bar_type
{
......@@ -448,105 +445,105 @@ struct frame
/* Most code should use these functions to set Lisp fields in struct frame. */
FRAME_INLINE void
INLINE void
fset_buffer_list (struct frame *f, Lisp_Object val)
{
f->buffer_list = val;
}
FRAME_INLINE void
INLINE void
fset_buried_buffer_list (struct frame *f, Lisp_Object val)
{
f->buried_buffer_list = val;
}
FRAME_INLINE void
INLINE void
fset_condemned_scroll_bars (struct frame *f, Lisp_Object val)
{
f->condemned_scroll_bars = val;
}
FRAME_INLINE void
INLINE void
fset_face_alist (struct frame *f, Lisp_Object val)
{
f->face_alist = val;
}
FRAME_INLINE void
INLINE void
fset_focus_frame (struct frame *f, Lisp_Object val)
{
f->focus_frame = val;
}
FRAME_INLINE void
INLINE void
fset_icon_name (struct frame *f, Lisp_Object val)
{
f->icon_name = val;
}
FRAME_INLINE void
INLINE void