diff options
| author | Paul Eggert | 2012-06-24 10:39:14 -0700 |
|---|---|---|
| committer | Paul Eggert | 2012-06-24 10:39:14 -0700 |
| commit | 845ca893904e4664063cb5c121b34925386849f7 (patch) | |
| tree | 6d9798a0d167f9e6bb5a2a6dae21c83ad9eb9a74 /src | |
| parent | 696056c280e0e4a03e12d8d53f692c015ff19217 (diff) | |
| download | emacs-845ca893904e4664063cb5c121b34925386849f7.tar.gz emacs-845ca893904e4664063cb5c121b34925386849f7.zip | |
Switch from NO_RETURN to C11's _Noreturn.
Fixes: debbugs:11750
Diffstat (limited to 'src')
| -rw-r--r-- | src/ChangeLog | 32 | ||||
| -rw-r--r-- | src/buffer.h | 2 | ||||
| -rw-r--r-- | src/data.c | 3 | ||||
| -rw-r--r-- | src/eval.c | 5 | ||||
| -rw-r--r-- | src/image.c | 6 | ||||
| -rw-r--r-- | src/keyboard.c | 10 | ||||
| -rw-r--r-- | src/lisp.h | 60 | ||||
| -rw-r--r-- | src/lread.c | 8 | ||||
| -rw-r--r-- | src/process.c | 2 | ||||
| -rw-r--r-- | src/puresize.h | 2 | ||||
| -rw-r--r-- | src/search.c | 3 | ||||
| -rw-r--r-- | src/sound.c | 11 | ||||
| -rw-r--r-- | src/sysdep.c | 2 | ||||
| -rw-r--r-- | src/syssignal.h | 2 | ||||
| -rw-r--r-- | src/term.c | 10 | ||||
| -rw-r--r-- | src/textprop.c | 3 | ||||
| -rw-r--r-- | src/undo.c | 4 | ||||
| -rw-r--r-- | src/unexmacosx.c | 4 | ||||
| -rw-r--r-- | src/xterm.c | 6 |
19 files changed, 94 insertions, 81 deletions
diff --git a/src/ChangeLog b/src/ChangeLog index 3f799b9d377..9b383b5243c 100644 --- a/src/ChangeLog +++ b/src/ChangeLog | |||
| @@ -10,6 +10,38 @@ | |||
| 10 | 10 | ||
| 11 | 2012-06-24 Paul Eggert <eggert@cs.ucla.edu> | 11 | 2012-06-24 Paul Eggert <eggert@cs.ucla.edu> |
| 12 | 12 | ||
| 13 | Switch from NO_RETURN to C11's _Noreturn (Bug#11750). | ||
| 14 | * buffer.h (buffer_slot_type_mismatch): | ||
| 15 | * data.c (arith_error) [!FORWARD_SIGNAL_TO_MAIN_THREAD]: | ||
| 16 | * eval.c (unwind_to_catch): | ||
| 17 | * image.c (my_png_error, my_error_exit): | ||
| 18 | * keyboard.c (quit_throw_to_read_char, user_error) | ||
| 19 | (Fexit_recursive_edit, Fabort_recursive_edit): | ||
| 20 | * lisp.h (die, args_out_of_range, args_out_of_range_3) | ||
| 21 | (wrong_type_argument, buffer_overflow, __executable_start) | ||
| 22 | (memory_full, buffer_memory_full, string_overflow, Fthrow) | ||
| 23 | (xsignal, xsignal0, xsignal1, xsignal2, xsignal3, signal_error) | ||
| 24 | (error, verror, nsberror, report_file_error, Ftop_level, Fkill_emacs) | ||
| 25 | (fatal): | ||
| 26 | (child_setup) [!DOS_NT]: | ||
| 27 | * lread.c (end_of_file_error, invalid_syntax): | ||
| 28 | * process.c (send_process_trap) [!FORWARD_SIGNAL_TO_MAIN_THREAD]: | ||
| 29 | * puresize.h (pure_write_error): | ||
| 30 | * search.c (matcher_overflow): | ||
| 31 | * sound.c (sound_perror, alsa_sound_perror): | ||
| 32 | * sysdep.c, syssignal.h (croak): | ||
| 33 | * term.c (maybe_fatal, vfatal): | ||
| 34 | * textprop.c (text_read_only): | ||
| 35 | * undo.c (user_error): | ||
| 36 | * unexmacosx.c (unexec_error): | ||
| 37 | * xterm.c (x_ins_del_lines, x_delete_glyphs): | ||
| 38 | Use _Noreturn rather than NO_RETURN. | ||
| 39 | No need for separate decl merely because of _Noreturn. | ||
| 40 | * sound.c (sound_warning, parse_sound): | ||
| 41 | Remove unnecessary forward decls. | ||
| 42 | |||
| 43 | 2012-06-24 Paul Eggert <eggert@cs.ucla.edu> | ||
| 44 | |||
| 13 | Fix bug when time_t is unsigned and as wide as intmax_t (Bug#9000). | 45 | Fix bug when time_t is unsigned and as wide as intmax_t (Bug#9000). |
| 14 | * lisp.h (WAIT_READING_MAX): New macro. | 46 | * lisp.h (WAIT_READING_MAX): New macro. |
| 15 | * dispnew.c (Fsleep_for, sit_for): | 47 | * dispnew.c (Fsleep_for, sit_for): |
diff --git a/src/buffer.h b/src/buffer.h index 97b45e15387..b1ace4663cf 100644 --- a/src/buffer.h +++ b/src/buffer.h | |||
| @@ -886,7 +886,7 @@ extern void set_buffer_internal_1 (struct buffer *); | |||
| 886 | extern void set_buffer_temp (struct buffer *); | 886 | extern void set_buffer_temp (struct buffer *); |
| 887 | extern Lisp_Object buffer_local_value_1 (Lisp_Object, Lisp_Object); | 887 | extern Lisp_Object buffer_local_value_1 (Lisp_Object, Lisp_Object); |
| 888 | extern void record_buffer (Lisp_Object); | 888 | extern void record_buffer (Lisp_Object); |
| 889 | extern void buffer_slot_type_mismatch (Lisp_Object, int) NO_RETURN; | 889 | extern _Noreturn void buffer_slot_type_mismatch (Lisp_Object, int); |
| 890 | extern void fix_overlays_before (struct buffer *, ptrdiff_t, ptrdiff_t); | 890 | extern void fix_overlays_before (struct buffer *, ptrdiff_t, ptrdiff_t); |
| 891 | extern void mmap_set_vars (int); | 891 | extern void mmap_set_vars (int); |
| 892 | 892 | ||
diff --git a/src/data.c b/src/data.c index ee43b98e6ed..cd4b14a9f9d 100644 --- a/src/data.c +++ b/src/data.c | |||
| @@ -3213,9 +3213,8 @@ syms_of_data (void) | |||
| 3213 | } | 3213 | } |
| 3214 | 3214 | ||
| 3215 | #ifndef FORWARD_SIGNAL_TO_MAIN_THREAD | 3215 | #ifndef FORWARD_SIGNAL_TO_MAIN_THREAD |
| 3216 | static void arith_error (int) NO_RETURN; | 3216 | _Noreturn |
| 3217 | #endif | 3217 | #endif |
| 3218 | |||
| 3219 | static void | 3218 | static void |
| 3220 | arith_error (int signo) | 3219 | arith_error (int signo) |
| 3221 | { | 3220 | { |
diff --git a/src/eval.c b/src/eval.c index 5a9327a99d8..3360a6b9a56 100644 --- a/src/eval.c +++ b/src/eval.c | |||
| @@ -131,7 +131,6 @@ int handling_signal; | |||
| 131 | Lisp_Object inhibit_lisp_code; | 131 | Lisp_Object inhibit_lisp_code; |
| 132 | 132 | ||
| 133 | static Lisp_Object funcall_lambda (Lisp_Object, ptrdiff_t, Lisp_Object *); | 133 | static Lisp_Object funcall_lambda (Lisp_Object, ptrdiff_t, Lisp_Object *); |
| 134 | static void unwind_to_catch (struct catchtag *, Lisp_Object) NO_RETURN; | ||
| 135 | static int interactive_p (int); | 134 | static int interactive_p (int); |
| 136 | static Lisp_Object apply_lambda (Lisp_Object fun, Lisp_Object args); | 135 | static Lisp_Object apply_lambda (Lisp_Object fun, Lisp_Object args); |
| 137 | static Lisp_Object Ffetch_bytecode (Lisp_Object); | 136 | static Lisp_Object Ffetch_bytecode (Lisp_Object); |
| @@ -1111,10 +1110,10 @@ internal_catch (Lisp_Object tag, Lisp_Object (*func) (Lisp_Object), Lisp_Object | |||
| 1111 | 1110 | ||
| 1112 | This is used for correct unwinding in Fthrow and Fsignal. */ | 1111 | This is used for correct unwinding in Fthrow and Fsignal. */ |
| 1113 | 1112 | ||
| 1114 | static void | 1113 | static _Noreturn void |
| 1115 | unwind_to_catch (struct catchtag *catch, Lisp_Object value) | 1114 | unwind_to_catch (struct catchtag *catch, Lisp_Object value) |
| 1116 | { | 1115 | { |
| 1117 | register int last_time; | 1116 | int last_time; |
| 1118 | 1117 | ||
| 1119 | /* Save the value in the tag. */ | 1118 | /* Save the value in the tag. */ |
| 1120 | catch->val = value; | 1119 | catch->val = value; |
diff --git a/src/image.c b/src/image.c index 47b14a333e9..c5f7be3e750 100644 --- a/src/image.c +++ b/src/image.c | |||
| @@ -5548,8 +5548,7 @@ init_png_functions (Lisp_Object libraries) | |||
| 5548 | /* Error and warning handlers installed when the PNG library | 5548 | /* Error and warning handlers installed when the PNG library |
| 5549 | is initialized. */ | 5549 | is initialized. */ |
| 5550 | 5550 | ||
| 5551 | static void my_png_error (png_struct *, const char *) NO_RETURN; | 5551 | static _Noreturn void |
| 5552 | static void | ||
| 5553 | my_png_error (png_struct *png_ptr, const char *msg) | 5552 | my_png_error (png_struct *png_ptr, const char *msg) |
| 5554 | { | 5553 | { |
| 5555 | xassert (png_ptr != NULL); | 5554 | xassert (png_ptr != NULL); |
| @@ -6130,8 +6129,7 @@ struct my_jpeg_error_mgr | |||
| 6130 | }; | 6129 | }; |
| 6131 | 6130 | ||
| 6132 | 6131 | ||
| 6133 | static void my_error_exit (j_common_ptr) NO_RETURN; | 6132 | static _Noreturn void |
| 6134 | static void | ||
| 6135 | my_error_exit (j_common_ptr cinfo) | 6133 | my_error_exit (j_common_ptr cinfo) |
| 6136 | { | 6134 | { |
| 6137 | struct my_jpeg_error_mgr *mgr = (struct my_jpeg_error_mgr *) cinfo->err; | 6135 | struct my_jpeg_error_mgr *mgr = (struct my_jpeg_error_mgr *) cinfo->err; |
diff --git a/src/keyboard.c b/src/keyboard.c index a39be2b859c..ae27920b181 100644 --- a/src/keyboard.c +++ b/src/keyboard.c | |||
| @@ -462,7 +462,7 @@ static void input_available_signal (int signo); | |||
| 462 | static Lisp_Object (Fcommand_execute) (Lisp_Object, Lisp_Object, Lisp_Object, | 462 | static Lisp_Object (Fcommand_execute) (Lisp_Object, Lisp_Object, Lisp_Object, |
| 463 | Lisp_Object); | 463 | Lisp_Object); |
| 464 | static void handle_interrupt (void); | 464 | static void handle_interrupt (void); |
| 465 | static void quit_throw_to_read_char (int) NO_RETURN; | 465 | static _Noreturn void quit_throw_to_read_char (int); |
| 466 | static void process_special_events (void); | 466 | static void process_special_events (void); |
| 467 | static void timer_start_idle (void); | 467 | static void timer_start_idle (void); |
| 468 | static void timer_stop_idle (void); | 468 | static void timer_stop_idle (void); |
| @@ -1195,13 +1195,13 @@ This also exits all active minibuffers. */) | |||
| 1195 | Fthrow (Qtop_level, Qnil); | 1195 | Fthrow (Qtop_level, Qnil); |
| 1196 | } | 1196 | } |
| 1197 | 1197 | ||
| 1198 | static void user_error (const char*) NO_RETURN; | 1198 | static _Noreturn void |
| 1199 | static void user_error (const char *msg) | 1199 | user_error (const char *msg) |
| 1200 | { | 1200 | { |
| 1201 | xsignal1 (Quser_error, build_string (msg)); | 1201 | xsignal1 (Quser_error, build_string (msg)); |
| 1202 | } | 1202 | } |
| 1203 | 1203 | ||
| 1204 | static Lisp_Object Fexit_recursive_edit (void) NO_RETURN; | 1204 | _Noreturn |
| 1205 | DEFUN ("exit-recursive-edit", Fexit_recursive_edit, Sexit_recursive_edit, 0, 0, "", | 1205 | DEFUN ("exit-recursive-edit", Fexit_recursive_edit, Sexit_recursive_edit, 0, 0, "", |
| 1206 | doc: /* Exit from the innermost recursive edit or minibuffer. */) | 1206 | doc: /* Exit from the innermost recursive edit or minibuffer. */) |
| 1207 | (void) | 1207 | (void) |
| @@ -1212,7 +1212,7 @@ DEFUN ("exit-recursive-edit", Fexit_recursive_edit, Sexit_recursive_edit, 0, 0, | |||
| 1212 | user_error ("No recursive edit is in progress"); | 1212 | user_error ("No recursive edit is in progress"); |
| 1213 | } | 1213 | } |
| 1214 | 1214 | ||
| 1215 | static Lisp_Object Fabort_recursive_edit (void) NO_RETURN; | 1215 | _Noreturn |
| 1216 | DEFUN ("abort-recursive-edit", Fabort_recursive_edit, Sabort_recursive_edit, 0, 0, "", | 1216 | DEFUN ("abort-recursive-edit", Fabort_recursive_edit, Sabort_recursive_edit, 0, 0, "", |
| 1217 | doc: /* Abort the command that requested this recursive edit or minibuffer input. */) | 1217 | doc: /* Abort the command that requested this recursive edit or minibuffer input. */) |
| 1218 | (void) | 1218 | (void) |
diff --git a/src/lisp.h b/src/lisp.h index 275761b0e94..f7ec612ac5e 100644 --- a/src/lisp.h +++ b/src/lisp.h | |||
| @@ -113,7 +113,7 @@ typedef EMACS_UINT uprintmax_t; | |||
| 113 | # define eassert(X) ((void) (0 && (X))) /* Check that X compiles. */ | 113 | # define eassert(X) ((void) (0 && (X))) /* Check that X compiles. */ |
| 114 | #else /* ENABLE_CHECKING */ | 114 | #else /* ENABLE_CHECKING */ |
| 115 | 115 | ||
| 116 | extern void die (const char *, const char *, int) NO_RETURN; | 116 | extern _Noreturn void die (const char *, const char *, int); |
| 117 | 117 | ||
| 118 | /* The suppress_checking variable is initialized to 0 in alloc.c. Set | 118 | /* The suppress_checking variable is initialized to 0 in alloc.c. Set |
| 119 | it to 1 using a debugger to temporarily disable aborting on | 119 | it to 1 using a debugger to temporarily disable aborting on |
| @@ -2388,10 +2388,10 @@ extern intmax_t cons_to_signed (Lisp_Object, intmax_t, intmax_t); | |||
| 2388 | extern uintmax_t cons_to_unsigned (Lisp_Object, uintmax_t); | 2388 | extern uintmax_t cons_to_unsigned (Lisp_Object, uintmax_t); |
| 2389 | 2389 | ||
| 2390 | extern struct Lisp_Symbol *indirect_variable (struct Lisp_Symbol *); | 2390 | extern struct Lisp_Symbol *indirect_variable (struct Lisp_Symbol *); |
| 2391 | extern void args_out_of_range (Lisp_Object, Lisp_Object) NO_RETURN; | 2391 | extern _Noreturn void args_out_of_range (Lisp_Object, Lisp_Object); |
| 2392 | extern void args_out_of_range_3 (Lisp_Object, Lisp_Object, | 2392 | extern _Noreturn void args_out_of_range_3 (Lisp_Object, Lisp_Object, |
| 2393 | Lisp_Object) NO_RETURN; | 2393 | Lisp_Object); |
| 2394 | extern Lisp_Object wrong_type_argument (Lisp_Object, Lisp_Object) NO_RETURN; | 2394 | extern _Noreturn Lisp_Object wrong_type_argument (Lisp_Object, Lisp_Object); |
| 2395 | extern Lisp_Object do_symval_forwarding (union Lisp_Fwd *); | 2395 | extern Lisp_Object do_symval_forwarding (union Lisp_Fwd *); |
| 2396 | extern void set_internal (Lisp_Object, Lisp_Object, Lisp_Object, int); | 2396 | extern void set_internal (Lisp_Object, Lisp_Object, Lisp_Object, int); |
| 2397 | extern void syms_of_data (void); | 2397 | extern void syms_of_data (void); |
| @@ -2554,7 +2554,7 @@ extern void init_image (void); | |||
| 2554 | extern Lisp_Object Qinhibit_modification_hooks; | 2554 | extern Lisp_Object Qinhibit_modification_hooks; |
| 2555 | extern void move_gap (ptrdiff_t); | 2555 | extern void move_gap (ptrdiff_t); |
| 2556 | extern void move_gap_both (ptrdiff_t, ptrdiff_t); | 2556 | extern void move_gap_both (ptrdiff_t, ptrdiff_t); |
| 2557 | extern void buffer_overflow (void) NO_RETURN; | 2557 | extern _Noreturn void buffer_overflow (void); |
| 2558 | extern void make_gap (ptrdiff_t); | 2558 | extern void make_gap (ptrdiff_t); |
| 2559 | extern ptrdiff_t copy_text (const unsigned char *, unsigned char *, | 2559 | extern ptrdiff_t copy_text (const unsigned char *, unsigned char *, |
| 2560 | ptrdiff_t, int, int); | 2560 | ptrdiff_t, int, int); |
| @@ -2599,7 +2599,7 @@ extern void syms_of_insdel (void); | |||
| 2599 | /* Defined in dispnew.c */ | 2599 | /* Defined in dispnew.c */ |
| 2600 | #if (defined PROFILING \ | 2600 | #if (defined PROFILING \ |
| 2601 | && (defined __FreeBSD__ || defined GNU_LINUX || defined __MINGW32__)) | 2601 | && (defined __FreeBSD__ || defined GNU_LINUX || defined __MINGW32__)) |
| 2602 | void __executable_start (void) NO_RETURN; | 2602 | _Noreturn void __executable_start (void); |
| 2603 | #endif | 2603 | #endif |
| 2604 | extern Lisp_Object selected_frame; | 2604 | extern Lisp_Object selected_frame; |
| 2605 | extern Lisp_Object Vwindow_system; | 2605 | extern Lisp_Object Vwindow_system; |
| @@ -2675,8 +2675,8 @@ extern void allocate_string_data (struct Lisp_String *, EMACS_INT, EMACS_INT); | |||
| 2675 | extern void reset_malloc_hooks (void); | 2675 | extern void reset_malloc_hooks (void); |
| 2676 | extern void uninterrupt_malloc (void); | 2676 | extern void uninterrupt_malloc (void); |
| 2677 | extern void malloc_warning (const char *); | 2677 | extern void malloc_warning (const char *); |
| 2678 | extern void memory_full (size_t) NO_RETURN; | 2678 | extern _Noreturn void memory_full (size_t); |
| 2679 | extern void buffer_memory_full (ptrdiff_t) NO_RETURN; | 2679 | extern _Noreturn void buffer_memory_full (ptrdiff_t); |
| 2680 | extern int survives_gc_p (Lisp_Object); | 2680 | extern int survives_gc_p (Lisp_Object); |
| 2681 | extern void mark_object (Lisp_Object); | 2681 | extern void mark_object (Lisp_Object); |
| 2682 | #if defined REL_ALLOC && !defined SYSTEM_MALLOC | 2682 | #if defined REL_ALLOC && !defined SYSTEM_MALLOC |
| @@ -2698,7 +2698,7 @@ EXFUN (Fmake_vector, 2); | |||
| 2698 | EXFUN (Fvector, MANY); | 2698 | EXFUN (Fvector, MANY); |
| 2699 | EXFUN (Fmake_symbol, 1); | 2699 | EXFUN (Fmake_symbol, 1); |
| 2700 | EXFUN (Fmake_marker, 0); | 2700 | EXFUN (Fmake_marker, 0); |
| 2701 | extern void string_overflow (void) NO_RETURN; | 2701 | extern _Noreturn void string_overflow (void); |
| 2702 | EXFUN (Fmake_string, 2); | 2702 | EXFUN (Fmake_string, 2); |
| 2703 | extern Lisp_Object build_string (const char *); | 2703 | extern Lisp_Object build_string (const char *); |
| 2704 | extern Lisp_Object make_string (const char *, ptrdiff_t); | 2704 | extern Lisp_Object make_string (const char *, ptrdiff_t); |
| @@ -2872,14 +2872,15 @@ extern Lisp_Object run_hook_with_args (ptrdiff_t nargs, Lisp_Object *args, | |||
| 2872 | (ptrdiff_t nargs, Lisp_Object *args)); | 2872 | (ptrdiff_t nargs, Lisp_Object *args)); |
| 2873 | EXFUN (Fprogn, UNEVALLED); | 2873 | EXFUN (Fprogn, UNEVALLED); |
| 2874 | EXFUN (Finteractive_p, 0); | 2874 | EXFUN (Finteractive_p, 0); |
| 2875 | EXFUN (Fthrow, 2) NO_RETURN; | 2875 | _Noreturn EXFUN (Fthrow, 2); |
| 2876 | EXFUN (Fsignal, 2); | 2876 | EXFUN (Fsignal, 2); |
| 2877 | extern void xsignal (Lisp_Object, Lisp_Object) NO_RETURN; | 2877 | extern _Noreturn void xsignal (Lisp_Object, Lisp_Object); |
| 2878 | extern void xsignal0 (Lisp_Object) NO_RETURN; | 2878 | extern _Noreturn void xsignal0 (Lisp_Object); |
| 2879 | extern void xsignal1 (Lisp_Object, Lisp_Object) NO_RETURN; | 2879 | extern _Noreturn void xsignal1 (Lisp_Object, Lisp_Object); |
| 2880 | extern void xsignal2 (Lisp_Object, Lisp_Object, Lisp_Object) NO_RETURN; | 2880 | extern _Noreturn void xsignal2 (Lisp_Object, Lisp_Object, Lisp_Object); |
| 2881 | extern void xsignal3 (Lisp_Object, Lisp_Object, Lisp_Object, Lisp_Object) NO_RETURN; | 2881 | extern _Noreturn void xsignal3 (Lisp_Object, Lisp_Object, Lisp_Object, |
| 2882 | extern void signal_error (const char *, Lisp_Object) NO_RETURN; | 2882 | Lisp_Object); |
| 2883 | extern _Noreturn void signal_error (const char *, Lisp_Object); | ||
| 2883 | EXFUN (Fcommandp, 2); | 2884 | EXFUN (Fcommandp, 2); |
| 2884 | EXFUN (Ffunctionp, 1); | 2885 | EXFUN (Ffunctionp, 1); |
| 2885 | EXFUN (Feval, 2); | 2886 | EXFUN (Feval, 2); |
| @@ -2905,9 +2906,9 @@ extern Lisp_Object internal_condition_case_n (Lisp_Object (*) (ptrdiff_t, Lisp_O | |||
| 2905 | extern void specbind (Lisp_Object, Lisp_Object); | 2906 | extern void specbind (Lisp_Object, Lisp_Object); |
| 2906 | extern void record_unwind_protect (Lisp_Object (*) (Lisp_Object), Lisp_Object); | 2907 | extern void record_unwind_protect (Lisp_Object (*) (Lisp_Object), Lisp_Object); |
| 2907 | extern Lisp_Object unbind_to (ptrdiff_t, Lisp_Object); | 2908 | extern Lisp_Object unbind_to (ptrdiff_t, Lisp_Object); |
| 2908 | extern void error (const char *, ...) NO_RETURN ATTRIBUTE_FORMAT_PRINTF (1, 2); | 2909 | extern _Noreturn void error (const char *, ...) ATTRIBUTE_FORMAT_PRINTF (1, 2); |
| 2909 | extern void verror (const char *, va_list) | 2910 | extern _Noreturn void verror (const char *, va_list) |
| 2910 | NO_RETURN ATTRIBUTE_FORMAT_PRINTF (1, 0); | 2911 | ATTRIBUTE_FORMAT_PRINTF (1, 0); |
| 2911 | extern void do_autoload (Lisp_Object, Lisp_Object); | 2912 | extern void do_autoload (Lisp_Object, Lisp_Object); |
| 2912 | extern Lisp_Object un_autoload (Lisp_Object); | 2913 | extern Lisp_Object un_autoload (Lisp_Object); |
| 2913 | extern void init_eval_once (void); | 2914 | extern void init_eval_once (void); |
| @@ -2954,7 +2955,7 @@ EXFUN (Fnarrow_to_region, 2); | |||
| 2954 | EXFUN (Fwiden, 0); | 2955 | EXFUN (Fwiden, 0); |
| 2955 | EXFUN (Fuser_login_name, 1); | 2956 | EXFUN (Fuser_login_name, 1); |
| 2956 | EXFUN (Fsystem_name, 0); | 2957 | EXFUN (Fsystem_name, 0); |
| 2957 | extern void time_overflow (void) NO_RETURN; | 2958 | extern _Noreturn void time_overflow (void); |
| 2958 | EXFUN (Fcurrent_time, 0); | 2959 | EXFUN (Fcurrent_time, 0); |
| 2959 | EXFUN (Fget_internal_run_time, 0); | 2960 | EXFUN (Fget_internal_run_time, 0); |
| 2960 | extern Lisp_Object make_buffer_string (ptrdiff_t, ptrdiff_t, int); | 2961 | extern Lisp_Object make_buffer_string (ptrdiff_t, ptrdiff_t, int); |
| @@ -2969,7 +2970,7 @@ extern void set_time_zone_rule (const char *); | |||
| 2969 | 2970 | ||
| 2970 | /* Defined in buffer.c */ | 2971 | /* Defined in buffer.c */ |
| 2971 | extern int mouse_face_overlay_overlaps (Lisp_Object); | 2972 | extern int mouse_face_overlay_overlaps (Lisp_Object); |
| 2972 | extern void nsberror (Lisp_Object) NO_RETURN; | 2973 | extern _Noreturn void nsberror (Lisp_Object); |
| 2973 | EXFUN (Fset_buffer_multibyte, 1); | 2974 | EXFUN (Fset_buffer_multibyte, 1); |
| 2974 | EXFUN (Foverlay_start, 1); | 2975 | EXFUN (Foverlay_start, 1); |
| 2975 | EXFUN (Foverlay_end, 1); | 2976 | EXFUN (Foverlay_end, 1); |
| @@ -3052,7 +3053,7 @@ EXFUN (Ffile_readable_p, 1); | |||
| 3052 | EXFUN (Fread_file_name, 6); | 3053 | EXFUN (Fread_file_name, 6); |
| 3053 | extern Lisp_Object close_file_unwind (Lisp_Object); | 3054 | extern Lisp_Object close_file_unwind (Lisp_Object); |
| 3054 | extern Lisp_Object restore_point_unwind (Lisp_Object); | 3055 | extern Lisp_Object restore_point_unwind (Lisp_Object); |
| 3055 | extern void report_file_error (const char *, Lisp_Object) NO_RETURN; | 3056 | extern _Noreturn void report_file_error (const char *, Lisp_Object); |
| 3056 | extern int internal_delete_file (Lisp_Object); | 3057 | extern int internal_delete_file (Lisp_Object); |
| 3057 | extern void syms_of_fileio (void); | 3058 | extern void syms_of_fileio (void); |
| 3058 | extern Lisp_Object make_temp_name (Lisp_Object, int); | 3059 | extern Lisp_Object make_temp_name (Lisp_Object, int); |
| @@ -3140,7 +3141,7 @@ extern Lisp_Object Qtop; | |||
| 3140 | extern int input_pending; | 3141 | extern int input_pending; |
| 3141 | EXFUN (Fdiscard_input, 0); | 3142 | EXFUN (Fdiscard_input, 0); |
| 3142 | EXFUN (Frecursive_edit, 0); | 3143 | EXFUN (Frecursive_edit, 0); |
| 3143 | EXFUN (Ftop_level, 0) NO_RETURN; | 3144 | _Noreturn EXFUN (Ftop_level, 0); |
| 3144 | extern Lisp_Object menu_bar_items (Lisp_Object); | 3145 | extern Lisp_Object menu_bar_items (Lisp_Object); |
| 3145 | extern Lisp_Object tool_bar_items (Lisp_Object, int *); | 3146 | extern Lisp_Object tool_bar_items (Lisp_Object, int *); |
| 3146 | extern void discard_mouse_events (void); | 3147 | extern void discard_mouse_events (void); |
| @@ -3209,7 +3210,7 @@ extern Lisp_Object Qfile_name_handler_alist; | |||
| 3209 | extern void fatal_error_signal (int); | 3210 | extern void fatal_error_signal (int); |
| 3210 | #endif | 3211 | #endif |
| 3211 | extern Lisp_Object Qkill_emacs; | 3212 | extern Lisp_Object Qkill_emacs; |
| 3212 | EXFUN (Fkill_emacs, 1) NO_RETURN; | 3213 | _Noreturn EXFUN (Fkill_emacs, 1); |
| 3213 | #if HAVE_SETLOCALE | 3214 | #if HAVE_SETLOCALE |
| 3214 | void fixup_locale (void); | 3215 | void fixup_locale (void); |
| 3215 | void synchronize_system_messages_locale (void); | 3216 | void synchronize_system_messages_locale (void); |
| @@ -3269,11 +3270,10 @@ extern void syms_of_process (void); | |||
| 3269 | extern void setup_process_coding_systems (Lisp_Object); | 3270 | extern void setup_process_coding_systems (Lisp_Object); |
| 3270 | 3271 | ||
| 3271 | EXFUN (Fcall_process, MANY); | 3272 | EXFUN (Fcall_process, MANY); |
| 3272 | extern int child_setup (int, int, int, char **, int, Lisp_Object) | ||
| 3273 | #ifndef DOS_NT | 3273 | #ifndef DOS_NT |
| 3274 | NO_RETURN | 3274 | _Noreturn |
| 3275 | #endif | 3275 | #endif |
| 3276 | ; | 3276 | extern int child_setup (int, int, int, char **, int, Lisp_Object); |
| 3277 | extern void init_callproc_1 (void); | 3277 | extern void init_callproc_1 (void); |
| 3278 | extern void init_callproc (void); | 3278 | extern void init_callproc (void); |
| 3279 | extern void set_initial_environment (void); | 3279 | extern void set_initial_environment (void); |
| @@ -3406,8 +3406,8 @@ extern Lisp_Object directory_files_internal (Lisp_Object, Lisp_Object, | |||
| 3406 | extern int *char_ins_del_vector; | 3406 | extern int *char_ins_del_vector; |
| 3407 | extern void mark_ttys (void); | 3407 | extern void mark_ttys (void); |
| 3408 | extern void syms_of_term (void); | 3408 | extern void syms_of_term (void); |
| 3409 | extern void fatal (const char *msgid, ...) | 3409 | extern _Noreturn void fatal (const char *msgid, ...) |
| 3410 | NO_RETURN ATTRIBUTE_FORMAT_PRINTF (1, 2); | 3410 | ATTRIBUTE_FORMAT_PRINTF (1, 2); |
| 3411 | 3411 | ||
| 3412 | /* Defined in terminal.c */ | 3412 | /* Defined in terminal.c */ |
| 3413 | EXFUN (Fframe_terminal, 1); | 3413 | EXFUN (Fframe_terminal, 1); |
diff --git a/src/lread.c b/src/lread.c index fee97044a73..2cd203da5b9 100644 --- a/src/lread.c +++ b/src/lread.c | |||
| @@ -154,10 +154,6 @@ static void readevalloop (Lisp_Object, FILE*, Lisp_Object, int, | |||
| 154 | Lisp_Object, Lisp_Object); | 154 | Lisp_Object, Lisp_Object); |
| 155 | static Lisp_Object load_unwind (Lisp_Object); | 155 | static Lisp_Object load_unwind (Lisp_Object); |
| 156 | static Lisp_Object load_descriptor_unwind (Lisp_Object); | 156 | static Lisp_Object load_descriptor_unwind (Lisp_Object); |
| 157 | |||
| 158 | static void invalid_syntax (const char *) NO_RETURN; | ||
| 159 | static void end_of_file_error (void) NO_RETURN; | ||
| 160 | |||
| 161 | 157 | ||
| 162 | /* Functions that read one byte from the current source READCHARFUN | 158 | /* Functions that read one byte from the current source READCHARFUN |
| 163 | or unreads one byte. If the integer argument C is -1, it returns | 159 | or unreads one byte. If the integer argument C is -1, it returns |
| @@ -1656,7 +1652,7 @@ readevalloop_1 (Lisp_Object old) | |||
| 1656 | /* Signal an `end-of-file' error, if possible with file name | 1652 | /* Signal an `end-of-file' error, if possible with file name |
| 1657 | information. */ | 1653 | information. */ |
| 1658 | 1654 | ||
| 1659 | static void | 1655 | static _Noreturn void |
| 1660 | end_of_file_error (void) | 1656 | end_of_file_error (void) |
| 1661 | { | 1657 | { |
| 1662 | if (STRINGP (Vload_file_name)) | 1658 | if (STRINGP (Vload_file_name)) |
| @@ -2024,7 +2020,7 @@ read_internal_start (Lisp_Object stream, Lisp_Object start, Lisp_Object end) | |||
| 2024 | /* Signal Qinvalid_read_syntax error. | 2020 | /* Signal Qinvalid_read_syntax error. |
| 2025 | S is error string of length N (if > 0) */ | 2021 | S is error string of length N (if > 0) */ |
| 2026 | 2022 | ||
| 2027 | static void | 2023 | static _Noreturn void |
| 2028 | invalid_syntax (const char *s) | 2024 | invalid_syntax (const char *s) |
| 2029 | { | 2025 | { |
| 2030 | xsignal1 (Qinvalid_read_syntax, build_string (s)); | 2026 | xsignal1 (Qinvalid_read_syntax, build_string (s)); |
diff --git a/src/process.c b/src/process.c index 457a1a9c7ea..aaf8693a62c 100644 --- a/src/process.c +++ b/src/process.c | |||
| @@ -5372,7 +5372,7 @@ static jmp_buf send_process_frame; | |||
| 5372 | static Lisp_Object process_sent_to; | 5372 | static Lisp_Object process_sent_to; |
| 5373 | 5373 | ||
| 5374 | #ifndef FORWARD_SIGNAL_TO_MAIN_THREAD | 5374 | #ifndef FORWARD_SIGNAL_TO_MAIN_THREAD |
| 5375 | static void send_process_trap (int) NO_RETURN; | 5375 | static _Noreturn void send_process_trap (int); |
| 5376 | #endif | 5376 | #endif |
| 5377 | 5377 | ||
| 5378 | static void | 5378 | static void |
diff --git a/src/puresize.h b/src/puresize.h index bee82d1e783..7f8f279f568 100644 --- a/src/puresize.h +++ b/src/puresize.h | |||
| @@ -75,7 +75,7 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ | |||
| 75 | { if (PURE_P (obj)) \ | 75 | { if (PURE_P (obj)) \ |
| 76 | pure_write_error (); } | 76 | pure_write_error (); } |
| 77 | 77 | ||
| 78 | extern void pure_write_error (void) NO_RETURN; | 78 | extern _Noreturn void pure_write_error (void); |
| 79 | 79 | ||
| 80 | /* Define PURE_P. */ | 80 | /* Define PURE_P. */ |
| 81 | 81 | ||
diff --git a/src/search.c b/src/search.c index 71ab60d9f85..4912c0f23ec 100644 --- a/src/search.c +++ b/src/search.c | |||
| @@ -101,9 +101,8 @@ static EMACS_INT boyer_moore (EMACS_INT, unsigned char *, ptrdiff_t, | |||
| 101 | static EMACS_INT search_buffer (Lisp_Object, ptrdiff_t, ptrdiff_t, | 101 | static EMACS_INT search_buffer (Lisp_Object, ptrdiff_t, ptrdiff_t, |
| 102 | ptrdiff_t, ptrdiff_t, EMACS_INT, int, | 102 | ptrdiff_t, ptrdiff_t, EMACS_INT, int, |
| 103 | Lisp_Object, Lisp_Object, int); | 103 | Lisp_Object, Lisp_Object, int); |
| 104 | static void matcher_overflow (void) NO_RETURN; | ||
| 105 | 104 | ||
| 106 | static void | 105 | static _Noreturn void |
| 107 | matcher_overflow (void) | 106 | matcher_overflow (void) |
| 108 | { | 107 | { |
| 109 | error ("Stack overflow in regexp matcher"); | 108 | error ("Stack overflow in regexp matcher"); |
diff --git a/src/sound.c b/src/sound.c index 143653e48e4..65e7af70c5d 100644 --- a/src/sound.c +++ b/src/sound.c | |||
| @@ -109,13 +109,6 @@ enum sound_attr | |||
| 109 | SOUND_ATTR_SENTINEL | 109 | SOUND_ATTR_SENTINEL |
| 110 | }; | 110 | }; |
| 111 | 111 | ||
| 112 | #ifdef HAVE_ALSA | ||
| 113 | static void alsa_sound_perror (const char *, int) NO_RETURN; | ||
| 114 | #endif | ||
| 115 | static void sound_perror (const char *) NO_RETURN; | ||
| 116 | static void sound_warning (const char *); | ||
| 117 | static int parse_sound (Lisp_Object, Lisp_Object *); | ||
| 118 | |||
| 119 | /* END: Common Definitions */ | 112 | /* END: Common Definitions */ |
| 120 | 113 | ||
| 121 | /* BEGIN: Non Windows Definitions */ | 114 | /* BEGIN: Non Windows Definitions */ |
| @@ -320,7 +313,7 @@ static int do_play_sound (const char *, unsigned long); | |||
| 320 | 313 | ||
| 321 | /* Like perror, but signals an error. */ | 314 | /* Like perror, but signals an error. */ |
| 322 | 315 | ||
| 323 | static void | 316 | static _Noreturn void |
| 324 | sound_perror (const char *msg) | 317 | sound_perror (const char *msg) |
| 325 | { | 318 | { |
| 326 | int saved_errno = errno; | 319 | int saved_errno = errno; |
| @@ -909,7 +902,7 @@ vox_write (struct sound_device *sd, const char *buffer, ptrdiff_t nbytes) | |||
| 909 | #define DEFAULT_ALSA_SOUND_DEVICE "default" | 902 | #define DEFAULT_ALSA_SOUND_DEVICE "default" |
| 910 | #endif | 903 | #endif |
| 911 | 904 | ||
| 912 | static void | 905 | static _Noreturn void |
| 913 | alsa_sound_perror (const char *msg, int err) | 906 | alsa_sound_perror (const char *msg, int err) |
| 914 | { | 907 | { |
| 915 | error ("%s: %s", msg, snd_strerror (err)); | 908 | error ("%s: %s", msg, snd_strerror (err)); |
diff --git a/src/sysdep.c b/src/sysdep.c index 42f53a75e9d..9994f312f45 100644 --- a/src/sysdep.c +++ b/src/sysdep.c | |||
| @@ -114,7 +114,7 @@ extern char *getwd (char *); | |||
| 114 | static int emacs_get_tty (int, struct emacs_tty *); | 114 | static int emacs_get_tty (int, struct emacs_tty *); |
| 115 | static int emacs_set_tty (int, struct emacs_tty *, int); | 115 | static int emacs_set_tty (int, struct emacs_tty *, int); |
| 116 | #if defined TIOCNOTTY || defined USG5 || defined CYGWIN | 116 | #if defined TIOCNOTTY || defined USG5 || defined CYGWIN |
| 117 | static void croak (char *) NO_RETURN; | 117 | static _Noreturn void croak (char *); |
| 118 | #endif | 118 | #endif |
| 119 | 119 | ||
| 120 | /* Declare here, including term.h is problematic on some systems. */ | 120 | /* Declare here, including term.h is problematic on some systems. */ |
diff --git a/src/syssignal.h b/src/syssignal.h index a2522f24429..5c3683423be 100644 --- a/src/syssignal.h +++ b/src/syssignal.h | |||
| @@ -76,7 +76,7 @@ sigset_t sys_sigblock (sigset_t new_mask); | |||
| 76 | sigset_t sys_sigunblock (sigset_t new_mask); | 76 | sigset_t sys_sigunblock (sigset_t new_mask); |
| 77 | sigset_t sys_sigsetmask (sigset_t new_mask); | 77 | sigset_t sys_sigsetmask (sigset_t new_mask); |
| 78 | #if ! (defined TIOCNOTTY || defined USG5 || defined CYGWIN) | 78 | #if ! (defined TIOCNOTTY || defined USG5 || defined CYGWIN) |
| 79 | void croak (char *) NO_RETURN; | 79 | _Noreturn void croak (char *); |
| 80 | #endif | 80 | #endif |
| 81 | 81 | ||
| 82 | #define sys_sigdel(MASK,SIG) sigdelset (&MASK,SIG) | 82 | #define sys_sigdel(MASK,SIG) sigdelset (&MASK,SIG) |
diff --git a/src/term.c b/src/term.c index 1a2524fd297..d58dc2ba878 100644 --- a/src/term.c +++ b/src/term.c | |||
| @@ -86,11 +86,11 @@ static void clear_tty_hooks (struct terminal *terminal); | |||
| 86 | static void set_tty_hooks (struct terminal *terminal); | 86 | static void set_tty_hooks (struct terminal *terminal); |
| 87 | static void dissociate_if_controlling_tty (int fd); | 87 | static void dissociate_if_controlling_tty (int fd); |
| 88 | static void delete_tty (struct terminal *); | 88 | static void delete_tty (struct terminal *); |
| 89 | static void maybe_fatal (int must_succeed, struct terminal *terminal, | 89 | static _Noreturn void maybe_fatal (int must_succeed, struct terminal *terminal, |
| 90 | const char *str1, const char *str2, ...) | 90 | const char *str1, const char *str2, ...) |
| 91 | NO_RETURN ATTRIBUTE_FORMAT_PRINTF (3, 5) ATTRIBUTE_FORMAT_PRINTF (4, 5); | 91 | ATTRIBUTE_FORMAT_PRINTF (3, 5) ATTRIBUTE_FORMAT_PRINTF (4, 5); |
| 92 | static void vfatal (const char *str, va_list ap) | 92 | static _Noreturn void vfatal (const char *str, va_list ap) |
| 93 | NO_RETURN ATTRIBUTE_FORMAT_PRINTF (1, 0); | 93 | ATTRIBUTE_FORMAT_PRINTF (1, 0); |
| 94 | 94 | ||
| 95 | 95 | ||
| 96 | #define OUTPUT(tty, a) \ | 96 | #define OUTPUT(tty, a) \ |
diff --git a/src/textprop.c b/src/textprop.c index afeb0339d5c..fb58f8e0808 100644 --- a/src/textprop.c +++ b/src/textprop.c | |||
| @@ -72,7 +72,6 @@ Lisp_Object Qfront_sticky, Qrear_nonsticky; | |||
| 72 | static Lisp_Object interval_insert_behind_hooks; | 72 | static Lisp_Object interval_insert_behind_hooks; |
| 73 | static Lisp_Object interval_insert_in_front_hooks; | 73 | static Lisp_Object interval_insert_in_front_hooks; |
| 74 | 74 | ||
| 75 | static void text_read_only (Lisp_Object) NO_RETURN; | ||
| 76 | static Lisp_Object Fprevious_property_change (Lisp_Object, Lisp_Object, | 75 | static Lisp_Object Fprevious_property_change (Lisp_Object, Lisp_Object, |
| 77 | Lisp_Object); | 76 | Lisp_Object); |
| 78 | 77 | ||
| @@ -80,7 +79,7 @@ static Lisp_Object Fprevious_property_change (Lisp_Object, Lisp_Object, | |||
| 80 | /* Signal a `text-read-only' error. This function makes it easier | 79 | /* Signal a `text-read-only' error. This function makes it easier |
| 81 | to capture that error in GDB by putting a breakpoint on it. */ | 80 | to capture that error in GDB by putting a breakpoint on it. */ |
| 82 | 81 | ||
| 83 | static void | 82 | static _Noreturn void |
| 84 | text_read_only (Lisp_Object propval) | 83 | text_read_only (Lisp_Object propval) |
| 85 | { | 84 | { |
| 86 | if (STRINGP (propval)) | 85 | if (STRINGP (propval)) |
diff --git a/src/undo.c b/src/undo.c index ae9025c298e..c4ef557a221 100644 --- a/src/undo.c +++ b/src/undo.c | |||
| @@ -438,8 +438,8 @@ truncate_undo_list (struct buffer *b) | |||
| 438 | unbind_to (count, Qnil); | 438 | unbind_to (count, Qnil); |
| 439 | } | 439 | } |
| 440 | 440 | ||
| 441 | static void user_error (const char*) NO_RETURN; | 441 | static _Noreturn void |
| 442 | static void user_error (const char *msg) | 442 | user_error (const char *msg) |
| 443 | { | 443 | { |
| 444 | xsignal1 (Quser_error, build_string (msg)); | 444 | xsignal1 (Quser_error, build_string (msg)); |
| 445 | } | 445 | } |
diff --git a/src/unexmacosx.c b/src/unexmacosx.c index a61bbd8eb86..47efe41fdd9 100644 --- a/src/unexmacosx.c +++ b/src/unexmacosx.c | |||
| @@ -197,8 +197,6 @@ static off_t data_segment_old_fileoff = 0; | |||
| 197 | 197 | ||
| 198 | static struct segment_command *data_segment_scp; | 198 | static struct segment_command *data_segment_scp; |
| 199 | 199 | ||
| 200 | static void unexec_error (const char *format, ...) NO_RETURN; | ||
| 201 | |||
| 202 | /* Read N bytes from infd into memory starting at address DEST. | 200 | /* Read N bytes from infd into memory starting at address DEST. |
| 203 | Return true if successful, false otherwise. */ | 201 | Return true if successful, false otherwise. */ |
| 204 | static int | 202 | static int |
| @@ -275,7 +273,7 @@ unexec_copy (off_t dest, off_t src, ssize_t count) | |||
| 275 | 273 | ||
| 276 | /* Debugging and informational messages routines. */ | 274 | /* Debugging and informational messages routines. */ |
| 277 | 275 | ||
| 278 | static void | 276 | static _Noreturn void |
| 279 | unexec_error (const char *format, ...) | 277 | unexec_error (const char *format, ...) |
| 280 | { | 278 | { |
| 281 | va_list ap; | 279 | va_list ap; |
diff --git a/src/xterm.c b/src/xterm.c index cb7aac2838c..9587a47f9bb 100644 --- a/src/xterm.c +++ b/src/xterm.c | |||
| @@ -316,7 +316,7 @@ static void XTframe_up_to_date (struct frame *); | |||
| 316 | static void XTset_terminal_modes (struct terminal *); | 316 | static void XTset_terminal_modes (struct terminal *); |
| 317 | static void XTreset_terminal_modes (struct terminal *); | 317 | static void XTreset_terminal_modes (struct terminal *); |
| 318 | static void x_clear_frame (struct frame *); | 318 | static void x_clear_frame (struct frame *); |
| 319 | static void x_ins_del_lines (struct frame *, int, int) NO_RETURN; | 319 | static _Noreturn void x_ins_del_lines (struct frame *, int, int); |
| 320 | static void frame_highlight (struct frame *); | 320 | static void frame_highlight (struct frame *); |
| 321 | static void frame_unhighlight (struct frame *); | 321 | static void frame_unhighlight (struct frame *); |
| 322 | static void x_new_focus_frame (struct x_display_info *, struct frame *); | 322 | static void x_new_focus_frame (struct x_display_info *, struct frame *); |
| @@ -349,7 +349,7 @@ static int handle_one_xevent (struct x_display_info *, XEvent *, | |||
| 349 | #ifdef USE_GTK | 349 | #ifdef USE_GTK |
| 350 | static int x_dispatch_event (XEvent *, Display *); | 350 | static int x_dispatch_event (XEvent *, Display *); |
| 351 | #endif | 351 | #endif |
| 352 | /* Don't declare this NO_RETURN because we want no | 352 | /* Don't declare this _Noreturn because we want no |
| 353 | interference with debugging failing X calls. */ | 353 | interference with debugging failing X calls. */ |
| 354 | static void x_connection_closed (Display *, const char *); | 354 | static void x_connection_closed (Display *, const char *); |
| 355 | static void x_wm_set_window_state (struct frame *, int); | 355 | static void x_wm_set_window_state (struct frame *, int); |
| @@ -908,7 +908,7 @@ static void x_draw_glyph_string_foreground (struct glyph_string *); | |||
| 908 | static void x_draw_composite_glyph_string_foreground (struct glyph_string *); | 908 | static void x_draw_composite_glyph_string_foreground (struct glyph_string *); |
| 909 | static void x_draw_glyph_string_box (struct glyph_string *); | 909 | static void x_draw_glyph_string_box (struct glyph_string *); |
| 910 | static void x_draw_glyph_string (struct glyph_string *); | 910 | static void x_draw_glyph_string (struct glyph_string *); |
| 911 | static void x_delete_glyphs (struct frame *, int) NO_RETURN; | 911 | static _Noreturn void x_delete_glyphs (struct frame *, int); |
| 912 | static void x_compute_glyph_string_overhangs (struct glyph_string *); | 912 | static void x_compute_glyph_string_overhangs (struct glyph_string *); |
| 913 | static void x_set_cursor_gc (struct glyph_string *); | 913 | static void x_set_cursor_gc (struct glyph_string *); |
| 914 | static void x_set_mode_line_face_gc (struct glyph_string *); | 914 | static void x_set_mode_line_face_gc (struct glyph_string *); |