Modified the code that parses the --cflags and --ldflags options to support parameter...
[bpt/emacs.git] / src / ChangeLog
CommitLineData
4170f62f 12011-04-15 Paul Eggert <eggert@cs.ucla.edu>
3e047f51 2
71b41406
PE
3 * sysdep.c (emacs_read): Remove unnecessary check vs MAX_RW_COUNT.
4
9587a89d
PE
5 emacs_write: Accept and return EMACS_INT for sizes.
6 See http://lists.gnu.org/archive/html/emacs-devel/2011-04/msg00514.html
7 et seq.
8 * gnutls.c, gnutls.h (emacs_gnutls_read, emacs_gnutls_write):
9 Accept and return EMACS_INT.
10 (emacs_gnutls_write): Return the number of bytes written on
11 partial writes.
12 * sysdep.c, lisp.h (emacs_read, emacs_write): Likewise.
273a5f82
PE
13 (emacs_read, emacs_write): Remove check for negative size, as the
14 Emacs source code has been audited now.
9587a89d
PE
15 * sysdep.c (MAX_RW_COUNT): New macro, to work around kernel bugs.
16 (emacs_read, emacs_write): Use it.
273a5f82
PE
17 * process.c (send_process): Adjust to the new signatures of
18 emacs_write and emacs_gnutls_write. Do not attempt to store
19 a byte offset into an 'int'; it might overflow.
9587a89d 20 See http://lists.gnu.org/archive/html/emacs-devel/2011-04/msg00483.html
273a5f82 21
3e047f51
PE
22 * sound.c: Don't assume sizes fit in 'int'.
23 (struct sound_device.period_size, alsa_period_size):
9c3c56a7 24 Return EMACS_INT, not int.
3e047f51 25 (struct sound_device.write, vox_write, alsa_write):
9c3c56a7
PE
26 Accept EMACS_INT, not int.
27 (wav_play, au_play): Use EMACS_INT to store sizes and to
3e047f51
PE
28 record read return values.
29
cc39a9db
BK
302011-04-15 Ben Key <bkey76@gmail.com>
31
32 * keyboard.c (Qundefined): Don't declare static since it is
33 used in nsfns.m.
34 * xfaces.c (Qbold, Qexpanded, Qitalic, Qcondensed): Don't
35 declare static since they are used in nsfont.m.
36
6c60eb9f
SM
372011-04-15 Stefan Monnier <monnier@iro.umontreal.ca>
38
39 * process.c (Qprocessp): Don't declare static.
40 * lisp.h (Qprocessp): Declare again.
41
7990b61a
JB
422011-04-15 Juanma Barranquero <lekktu@gmail.com>
43
44 * font.c (Qopentype): Don't make static (used from w32uniscribe.c).
45
5d4cb038
PE
462011-04-14 Paul Eggert <eggert@cs.ucla.edu>
47
8bd7b830 48 Improve C-level modularity by making more things 'static'.
cd64ea1d 49
e3b27b31
PE
50 Don't publish debugger-only interfaces to other modules.
51 * lisp.h (safe_debug_print, debug_output_compilation_hack):
52 (verify_bytepos, count_markers): Move decls to the only modules
53 that need them.
54 * region-cache.h (pp_cache): Likewise.
55 * window.h (check_all_windows): Likewise.
56 * marker.c, print.c, region-cache.c, window.c: Decls moved here.
57
5d4cb038
PE
58 * sysdep.c (croak): Now static, if
59 defined TIOCNOTTY || defined USG5 || defined CYGWIN.
60 * syssignal.h (croak): Declare only if not static.
69003fd8
PE
61
62 * alloc.c (refill_memory_reserve): Now static if
63 !defined REL_ALLOC || defined SYSTEM_MALLOC.
64 * lisp.h (refill_memory_reserve): Declare only if not static.
93ea6e8f 65
e87b6180
PE
66 * xsettings.c, xsettings.h (xsettings_get_system_normal_font):
67 Define only if USE_LUCID.
68
ac64929e
PE
69 * xrdb.c (x_customization_string, x_rm_string): Now static.
70
6f37259d
PE
71 * xmenu.c (x_menu_wait_for_event): Export only if USE_MOTIF.
72 * xterm.h (x_menu_wait_for_event): Declare only if USE_MOTIF.
73
1683e3ab
PE
74 * xdisp.c (draw_row_with_mouse_face): Now static.
75 * dispextern.h (draw_row_with_mouse_fave): Remove decl.
76
de9c2632
PE
77 * window.h (check_all_windows): Mark externally visible.
78
2b96acb7
PE
79 * window.c (window_deletion_count): Now static.
80
81 * undo.c: Make symbols static if they're not exported.
82 (last_undo_buffer, last_boundary_position, pending_boundary):
83 Now static.
84
50436f33
PE
85 * textprop.c (interval_insert_behind_hooks): Now static.
86 (interval_insert_in_front_hooks): Likewise.
87
64520e5c
PE
88 * term.c: Make symbols static if they're not exported.
89 (tty_turn_off_highlight, get_tty_terminal, max_frame_cols):
90 (max_frame_lines, tty_set_terminal_modes):
91 (tty_reset_terminal_modes, tty_turn_off_highlight):
92 (get_tty_terminal): Now static.
93 (term_mouse_moveto): Do not define if HAVE_WINDOW_SYSTEM.
94 * termhooks.h (term_mouse_moveto): Do not declare if
8bd7b830 95 HAVE_WINDOW_SYSTEM.
64520e5c
PE
96 * dispextern.h (tty_set_terminal_modes, tty_reset_terminal_modes):
97 (tty_turn_off_highlight, get_tty_terminal): Remove decls.
98
1fa53021
PE
99 * sysdep.c: Make symbols static if they're not exported.
100 (emacs_get_tty, emacs_set_tty, old_fcntl_flags, old_fcntl_owner):
101 Now static.
102 (sigprocmask_set, full_mask): Remove; unused.
103 (wait_debugging): Mark as visible.
104 * syssignal.h (SIGFULLMASK, full_mask): Remove decls.
105 * systty.h (emacs_get_tty, emacs_set_tty): Remove decls.
106
d4b43b22
PE
107 * syntax.c (syntax_temp): Define only if !__GNUC__.
108
b7c513d0
PE
109 * sound.c (current_sound_device, current_sound): Now static.
110
989b29ad
PE
111 * search.c (searchbufs, searchbuf_head): Now static.
112
13a55a78
PE
113 * scroll.c (scroll_cost): Remove; unused.
114 * dispextern.h (scroll_cost): Remove decl.
115
de68a1fc
PE
116 * region-cache.h (pp_cache): Mark as externally visible.
117
40ccffa6
PE
118 * process.c: Make symbols static if they're not exported.
119 (process_tick, update_tick, create_process, chan_process):
120 (Vprocess_alist, proc_buffered_char, datagram_access):
121 (fd_callback_data, send_process_frame, process_sent_to): Now static.
122 (deactivate_process): Mark defn as static, as well as decl.
123 * lisp.h (create_process): Remove decl.
124 * process.h (chan_process, Vprocess_alist): Remove decls.
125
ad64fc97
PE
126 * print.c: Make symbols static if they're not exported.
127 (print_depth, new_backquote_output, being_printed, print_buffer):
128 (print_buffer_size, print_buffer_pos, print_buffer_pos_byte):
129 (print_interval, print_number_index, initial_stderr_stream):
130 Now static.
131 * lisp.h (Fprinc): Remove decl.
132 (debug_output_compilation_hack): Mark as externally visible.
133
adddb265
PE
134 * sysdep.c (croak): Move decl from here to syssignal.h.
135 * syssignal.h (croak): Put it here, so the API can be checked when
136 'croak' is called from dissociate_if_controlling_tty.
137
1717ede2
PE
138 * minibuf.c: Make symbols static if they're not exported.
139 (minibuf_save_list, choose_minibuf_frame): Now static.
140 * lisp.h (choose_minibuf_frame): Remove decl.
141
fa5fb2bc
PE
142 * lisp.h (verify_bytepos, count_markers): Mark as externally visible.
143
1e3890d1
PE
144 * lread.c: Make symbols static if they're not exported.
145 (read_objects, initial_obarray, oblookup_last_bucket_number):
146 Now static.
147 (make_symbol): Remove; unused.
148 * lisp.h (initial_obarray, make_symbol): Remove decls.
149
8a1414fa
PE
150 * keyboard.c: Make symbols static if they're not exported.
151 (single_kboard, recent_keys_index, total_keys, recent_keys):
152 (this_command_key_count_reset, raw_keybuf, raw_keybuf_count):
153 (this_single_command_key_start, echoing, last_auto_save):
154 (read_key_sequence_cmd, dribble, recursive_edit_unwind):
155 (command_loop, echo_now, keyboard_init_hook, help_char_p):
156 (quit_throw_to_read_char, command_loop_2, top_level_1, poll_timer):
157 (Vlispy_mouse_stem, double_click_count):
158 Now static.
159 (force_auto_save_soon): Define only if SIGDANGER.
160 (ignore_mouse_drag_p): Now static if
161 !defined HAVE_WINDOW_SYSTEM || defined USE_GTK || defined HAVE_NS.
162 (print_help): Remove; unused.
163 (stop_character, last_timer_event): Mark as externally visible.
164 * keyboard.h (ignore_mouse_drag_p): Declare only if
165 defined HAVE_WINDOW_SYSTEM && !defined USE_GTK && !defined HAVE_NS.
166 (echo_now, help_char_p, quit_throw_to_read_char): Remove decls.
167 * lisp.h (echoing): Remove decl.
168 (force_auto_save_soon): Declare only if SIGDANGER.
169 * xdisp.c (redisplay_window): Simplify code, to make it more
170 obvious that ignore_mouse_drag_p is not accessed if !defined
171 USE_GTK && !defined HAVE_NS.
172
93ea6e8f
PE
173 * intervals.c: Make symbols static if they're not exported.
174 (merge_properties_sticky, merge_interval_right, delete_interval):
175 Now static.
176 * intervals.h (merge_interval_right, delete_interval): Remove decls.
177
77382fcc
PE
178 * insdel.c: Make symbols static if they're not exported.
179 However, leave prepare_to_modify_buffer alone. It's never
180 called from outside this function, but that appears to be a bug.
181 (combine_after_change_list, combine_after_change_buffer):
4889fc82 182 (adjust_after_replace, signal_before_change): Now static.
77382fcc
PE
183 (adjust_after_replace_noundo): Remove; unused.
184 * lisp.h (adjust_after_replace, adjust_after_replace_noundo):
4889fc82 185 (signal_before_change): Remove decls.
77382fcc 186
9306c32e
PE
187 * indent.c (val_compute_motion, val_vmotion): Now static.
188
cd44d2eb
PE
189 * image.c: Make symbols static if they're not exported.
190 * dispextern.h (x_create_bitmap_from_xpm_data): Do not declare
191 if USE_GTK.
192 * image.c (x_create_bitmap_from_xpm_data): Do not define if USE_GTK.
193 (xpm_color_cache, ct_table, ct_colors_allocated): Now static.
194
ad9a7a06
PE
195 * fringe.c (standard_bitmaps): Now static.
196 (max_used_fringe_bitmap): Now static, unless HAVE_NS.
197
81626931
PE
198 * frame.c: Make symbols static if they're not exported.
199 (x_report_frame_params, make_terminal_frame): Now static.
200 (get_frame_param): Now static, unless HAVE_NS.
201 (x_fullscreen_adjust): Define if WINDOWSNT, not if HAVE_WINDOW_SYSTEM.
202 (x_get_resource_string): Remove; not used.
203 * frame.h (make_terminal_frame, x_report_frame_params):
204 (x_get_resource_string); Remove decls.
205 (x_fullscreen_adjust): Declare only if WINDOWSNT.
206 * lisp.h (get_frame_param): Declare only if HAVE_NS.
207
239f9db9
PE
208 * font.c, fontset.c: Make symbols static if they're not exported.
209 * dispextern.h (FACE_SUITABLE_FOR_ASCII_CHAR_P): New macro.
210 (FACE_SUITABLE_FOR_CHAR_P): Use it.
211 * font.c (font_close_object): Now static.
212 * font.h (font_close_object): Remove.
213 * fontset.c (FONTSET_OBJLIST): Remove.
214 (free_realized_fontset) #if-0 the body, which does nothing.
215 (face_suitable_for_char_p): #if-0, as it's never called.
216 * fontset.h (face_suitable_for_char_p): Remove decl.
217 * xfaces.c (face_at_string_position): Use
218 FACE_SUITABLE_FOR_ASCII_CHAR_P, not FACE_SUITABLE_FOR_CHAR_P,
219 since 0 is always ASCII.
220
dfcf3579
PE
221 * fns.c (weak_hash_tables): Now static.
222
5045092b
PE
223 * fileio.c: Make symbols static if they're not exported.
224 (auto_saving, auto_save_mode_bits, auto_save_error_occurred):
225 (Vwrite_region_annotation_buffers): Now static.
226
57a96f5c
PE
227 * eval.c: Make symbols static if they're not exported.
228 (backtrace_list, lisp_eval_depth, when_entered_debugger): Now static.
229 * lisp.h (backtrace_list): Remove decl.
230
35f08c38
PE
231 * emacs.c: Make symbols static if they're not exported.
232 (malloc_state_ptr, malloc_using_checking, syms_of_emacs):
233 (fatal_error_code, fatal_error_signal_hook, standard_args):
234 Now static.
235 (fatal_error_signal): Now static, unless FLOAT_CATCH_SIGKILL.
236 (DEFINE_DUMMY_FUNCTION): Mark function as externally visible.
237 (__CTOR_LIST__, __DTOR_LIST__): Now externally visible.
238 * lisp.h (fatal_error_signal_hook): Remove decl.
239 (fatal_error_signal): Declare only if FLOAT_CATCH_SIGKILL.
240
f44bd759
PE
241 * editfns.c: Move a (normally-unused) function to its only use.
242 * editfns.c, lisp.h (get_operating_system_release): Remove.
243 * process.c (init_process) [DARWIN_OS]: Do it inline, as it is not
244 worth the hassle of breaking this out.
245
b532497d
PE
246 * xterm.c: Make symbols static if they're not exported.
247 (x_raise_frame, x_lower_frame, x_wm_set_window_state):
248 (x_wm_set_icon_pixmap, x_initialize, XTread_socket_fake_io_error):
249 (x_destroy_window, x_delete_display):
250 Now static.
251 (x_dispatch_event): Now static if ! (USE_MOTIF || USE_X_TOOLKIT).
252 (x_mouse_leave): Remove; unused.
253 * xterm.h (x_display_info_for_name, x_raise_frame, x_lower_frame):
254 (x_destroy_window, x_wm_set_window_state, x_wm_set_icon_pixmap):
255 (x_delete_display, x_initialize, x_set_border_pixel, x_screen_planes):
256 Remove decls.
257 (x_mouse_leave): Declare only if WINDOWSNT.
258 (x_dispatch_event): Declare only if USE_MOTIF or USE_X_TOOLKIT.
259 (xic_create_fontsetname): Declare only if HAVE_X_WINDOWS &&
260 USE_X_TOOLKIT.
261
1675728f
PE
262 * ftxfont.c: Make symbols static if they're not exported.
263 (ftxfont_driver): Export only if !defined HAVE_XFT && def8ined
264 HAVE_FREETYPE.
265 * font.h (ftxfont_driver): Likewise.
266
e4cebfca
PE
267 * xfns.c: Make symbols static if they're not exported.
268 (x_last_font_name, x_display_info_for_name):
269 (x_set_foreground_color, x_set_background_color, x_set_mouse_color):
270 (x_set_cursor_color, x_set_border_pixel, x_set_border_color):
271 (x_set_cursor_type, x_set_icon_type, x_set_icon_name):
272 (x_set_scroll_bar_foreground, x_set_scroll_bar_background):
273 (x_explicitly_set_name, x_set_title, xic_defaut_fontset, tip_timer):
274 (last_show_tip_args): Now static.
275 (xic_defaut_fontset, xic_create_fontsetname): Define only if
276 defined HAVE_X_WINDOWS && defined USE_X_TOOLKIT
277 (x_screen_planes): Remove; unused.
278 * dispextern.h (x_screen_planes): Remove decl.
279
5bf46f05
PE
280 * dispnew.c: Make symbols static if they're not exported.
281 * dispextern.h (redraw_garbaged_frames, scrolling):
282 (increment_row_positions): Remove.
283 * dispnew.c (new_glyph_matrix, increment_row_positions, scrolling):
284 (delayed_size_change, glyph_matrix_count, glyph_pool_count):
285 Now static.
286 (redraw_garbaged_frames): Remove; unused.
287
435f4c28
PE
288 * xfaces.c: Make symbols static if they're not exported.
289 * dispextern.h (ascii_face_of_lisp_face, free_realized_face):
290 Remove decls.
291 * xterm.h (defined_color): Remove decls.
292 (x_free_dpy_colors): Declare only if USE_X_TOOLKIT.
293 * xfaces.c (tty_suppress_bold_inverse_default_colors_p):
294 (menu_face_changed_default, defined_color, free_realized_face):
295 (x_free_dpy_colors): Define only if USE_X_TOOLKIT.
296 (ascii_face_of_lisp_face): Remove; unused.
297
8524aef3
PE
298 * xdisp.c: Make symbols static if they're not exported.
299 * dispextern.h (scratch_glyph_row, window_box_edges):
300 (glyph_to_pixel_coords, set_cursor_from_row):
301 (get_next_display_element, set_iterator_to_next):
302 (highlight_trailing_whitespace, frame_to_window_pixel_xy):
303 (show_mouse_face): Remove decls
304 * frame.h (message_buf_print): Likewise.
305 * lisp.h (pop_message, set_message, check_point_in_composition):
306 Likewise.
307 * xterm.h (set_vertical_scroll_bar): Likewise.
308 * xdisp.c (list_of_error, Vmessage_stack, line_number_displayed):
309 (message_buf_print, scratch_glyph_row, displayed_buffer):
310 (set_iterator_to_next, pop_message, set_message, set_cursor_from_row):
311 (get_next_display_element, show_mouse_face, window_box_edges):
312 (frame_to_window_pixel_xy, check_point_in_composition):
313 (set_vertical_scroll_bar, highlight_trailing_whitespace): Now static.
314 (glyph_to_pixel_coords): Remove; unused.
315
16390cd2
PE
316 * dired.c (file_name_completion): Now static.
317
318 * dbusbind.c (xd_in_read_queued_messages): Now static.
319
a25f4dfa
PE
320 * lisp.h (circular_list_error, FOREACH): Remove; unused.
321 * data.c (circular_list_error): Remove.
322
14a9c8df
PE
323 * commands.h (last_point_position, last_point_position_buffer):
324 (last_point_position_window): Remove decls.
325 * keyboard.c: Make these variables static.
326
74ab6df5
PE
327 * coding.h (coding, code_convert_region, encode_coding_gap): Remove
328 decls.
329 * coding.c (Vsjis_coding_system, Vbig5_coding_system):
330 (iso_code_class, detect_coding, code_convert_region): Now static.
331 (encode_coding_gap): Remove; unused.
332
38dfbee1
PE
333 * chartab.c (chartab_chars, chartab_bits): Now static.
334
a2cb4e63
PE
335 * charset.h (charset_iso_8859_1): Remove decl.
336 * charset.c (charset_iso_8859_1, charset_emacs, map_charset_for_dump):
337 Now static.
338
127198fd
PE
339 * ccl.h (check_ccl_update, Vccl_program_table): Remove decls.
340 * ccl.c (Vccl_program_table): Now static.
341 (check_ccl_update): Remove; unused.
342
d85b608f
PE
343 * category.c (SET_CATEGORY_SET, set_category_set): Move here.
344 * category.h: ... from here.
345 * category.c (check_category_table, set_category_set): Now static.
346
31cd66f3
PE
347 * casetab.c (Vascii_upcase_table, Vascii_eqv_table): Now static.
348 * lisp.h: Remove these decls.
349
c358e587
PE
350 * buffer.c (buffer_count): Remove unused var.
351
e78aecca
PE
352 * bidi.c (bidi_dump_cached_states): Mark as externally visible,
353 so that it's not optimized away.
354 (bidi_ignore_explicit_marks_for_paragraph_level): Likewise.
355 * dispextern.h (bidi_dump_cached_states): Remove, since it's
356 exported only to the debugger.
357
e192d7d3
PE
358 * atimer.c (alarm_signal_handler, run_all_atimers): Now static.
359 * atimer.h (run_all_atimers): Removed; not exported.
360
92470028
PE
361 font.c: Make copy_font_spec and merge_font_spec ordinary C functions.
362 * font.c (copy_font_spec): Rename from Fcopy_font_spec, since it
363 was inaccessible from Lisp.
364 (merge_font_spec): Likewise, renaming from Fmerge_font_spec.
365 * font.c, font.h, fontset.c, xfaces.c, xfont.c: Change all uses.
366
244ed907
PE
367 alloc.c: Import and export fewer symbols, and remove unused items.
368 * lisp.h (suppress_checking, die): Declare only if ENABLE_CHECKING
369 is defined.
370 (suppress_checking): Add EXTERNALLY_VISIBLE attribute, so that
371 it's not optimized away by whole-program optimization.
372 (message_enable_multibyte, free_misc): Remove.
373 (catchlist, handlerlist, mark_backtrace):
374 Declare only if BYTE_MARK_STACK.
375 (mark_byte_stack): Likewise, fixing a ifdef-vs-if typo.
376 * alloc.c (pure): Export only if VIRT_ADDR_VARIES is defined.
377 (message_enable_multibyte): Remove decl.
378 (free_misc, interval_free_list, float_block, float_block_index):
379 (n_float_blocks, float_free_list, cons_block, cons_block_index):
380 (cons_free_list, last_marked_index):
381 Now static.
382 (suppress_checking, die): Define only if ENABLE_CHECKING is defined.
383 * eval.c (catchlist, handlerlist): Export only if BYTE_MARK_STACK.
384 (mark_backtrace): Define only if BYTE_MARK_STACK.
385 * xdisp.c (message_enable_multibyte): Now static.
386
955cbe7b
PE
387 Declare Lisp_Object Q* variables to be 'static' if not exproted.
388 This makes it easier for human readers (and static analyzers)
389 to see whether these variables are used from other modules.
390 * alloc.c, buffer.c, bytecode.c, callint.c, casetab.c, category.c:
391 * ccl.c, character.c, charset.c, cmds.c, coding.c, composite.c:
392 * data.c, dbusbind.c, dired.c, editfns.c, eval.c, fileio.c, fns.c:
393 * font.c, frame.c, fringe.c, ftfont.c, image.c, keyboard.c, keymap.c:
394 * lread.c, macros.c, minibuf.c, print.c, process.c, search.c:
395 * sound.c, syntax.c, textprop.c, window.c, xdisp.c, xfaces.c, xfns.c:
396 * xmenu.c, xselect.c:
397 Declare Q* vars static if they are not used in other modules.
398 * ccl.h, character.h, charset.h, coding.h, composite.h, font.h:
399 * frame.h, intervals.h, keyboard.h, lisp.h, process.h, syntax.h:
400 Remove decls of unexported vars.
401 * keyboard.h (EVENT_HEAD_UNMODIFIED): Remove now-unused macro.
402
95c82688
PE
403 * lisp.h (DEFINE_FUNC): Make sname 'static'.
404
16a97296
PE
405 Make Emacs functions such as Fatom 'static' by default.
406 This makes it easier for human readers (and static analyzers)
407 to see whether these functions can be called from other modules.
408 DEFUN now defines a static function. To make the function external
409 so that it can be used in other C modules, use the new macro DEFUE.
8bd7b830
PE
410 * lisp.h (Funibyte_char_to_multibyte, Fsyntax_table_p):
411 (Finit_image_library):
16a97296
PE
412 (Feval_region, Fbacktrace, Ffetch_bytecode, Fswitch_to_buffer):
413 (Ffile_executable_p, Fmake_symbolic_link, Fcommand_execute):
414 (Fget_process, Fdocumentation_property, Fbyte_code, Ffile_attributes):
415 Remove decls, since these functions are now static.
416 (Funintern, Fget_internal_run_time): New decls, since these functions
417 were already external.
95c82688 418
16a97296
PE
419 * alloc.c, buffer.c, callint.c, callproc.c, casefiddle.c, casetab.c:
420 * ccl.c, character.c, chartab.c, cmds.c, coding.c, data.c, dispnew.c:
421 * doc.c, editfns.c, emacs.c, eval.c, fileio.c, filelock.c, floatfns.c:
422 * fns.c, font.c, fontset.c, frame.c, image.c, indent.c:
423 * keyboard.c, keymap.c, lread.c:
424 * macros.c, marker.c, menu.c, minibuf.c, print.c, process.c, search.c:
425 * syntax.c, term.c, terminal.c, textprop.c, undo.c:
426 * window.c, xdisp.c, xfaces.c, xfns.c, xmenu.c, xsettings.c:
427 Mark functions with DEFUE instead of DEFUN,
428 if they are used in other modules.
429 * buffer.c (Fset_buffer_major_mode, Fdelete_overlay): New forward
430 decls for now-static functions.
431 * buffer.h (Fdelete_overlay): Remove decl.
432 * callproc.c (Fgetenv_internal): Mark as internal.
433 * composite.c (Fremove_list_of_text_properties): Remove decl.
434 (Fcomposition_get_gstring): New forward static decl.
435 * composite.h (Fcomposite_get_gstring): Remove decl.
436 * dired.c (Ffile_attributes): New forward static decl.
437 * doc.c (Fdocumntation_property): New forward static decl.
438 * eval.c (Ffetch_bytecode): New forward static decl.
439 (Funintern): Remove extern decl; now in .h file where it belongs.
440 * fileio.c (Fmake_symbolic_link): New forward static decl.
441 * image.c (Finit_image_library): New forward static decl.
442 * insdel.c (Fcombine_after_change_execute): Make forward decl static.
443 * intervals.h (Fprevious_property_change):
444 (Fremove_list_of_text_properties): Remove decls.
445 * keyboard.c (Fthis_command_keys): Remove decl.
446 (Fcommand_execute): New forward static decl.
447 * keymap.c (Flookup_key): New forward static decl.
448 (Fcopy_keymap): Now static.
449 * keymap.h (Flookup_key): Remove decl.
450 * process.c (Fget_process): New forward static decl.
451 (Fprocess_datagram_address): Mark as internal.
452 * syntax.c (Fsyntax_table_p): New forward static decl.
453 (skip_chars): Remove duplicate decl.
454 * textprop.c (Fprevious_property_change): New forward static decl.
455 * window.c (Fset_window_fringes, Fset_window_scroll_bars):
456 Now internal.
457 (Fset_window_margins, Fset_window_vscroll): New forward static decls.
458 * window.h (Fset_window_vscroll, Fset_window_margins): Remove decls.
459
785bbd42
PE
460 * editfns.c (Fformat): Remove unreachable code.
461
8b913b57
AS
4622011-04-14 Andreas Schwab <schwab@linux-m68k.org>
463
464 * fileio.c (Finsert_file_contents): Fix typo in 2005-05-13
465 change. (Bug#8496)
466
a6744a35
EZ
4672011-04-13 Eli Zaretskii <eliz@gnu.org>
468
469 * xdisp.c (handle_invisible_prop): Don't call bidi_paragraph_init
470 when at ZV. (Bug#8487)
471
e7974947
AS
4722011-04-12 Andreas Schwab <schwab@linux-m68k.org>
473
baad03f0
AS
474 * charset.c (Fclear_charset_maps): Use xfree instead of free.
475 (Bug#8437)
476 * keyboard.c (parse_tool_bar_item): Likewise.
477 * sound.c (sound_cleanup, alsa_close): Likewise.
478 * termcap.c (tgetent): Likewise.
479 * xfns.c (x_default_font_parameter): Likewise.
480 * xsettings.c (read_and_apply_settings): Likewise.
481
e7974947
AS
482 * alloc.c (overrun_check_malloc, overrun_check_realloc)
483 (overrun_check_free): Protoize.
484
28272684
PE
4852011-04-12 Paul Eggert <eggert@cs.ucla.edu>
486
487 * sysdep.c (emacs_read, emacs_write): Check for negative sizes
488 since callers should never pass a negative size.
489 Change the signature to match that of plain 'read' and 'write'; see
490 <http://lists.gnu.org/archive/html/emacs-devel/2011-04/msg00397.html>.
491 * lisp.h: Update prototypes of emacs_write and emacs_read.
492
11997c76
EZ
4932011-04-11 Eli Zaretskii <eliz@gnu.org>
494
495 * xdisp.c (redisplay_window): Don't try to determine the character
496 position of the scroll margin if the window start point w->startp
e896f03c 497 is outside the buffer's accessible region. (Bug#8468)
11997c76 498
8a2cbd72
EZ
4992011-04-10 Eli Zaretskii <eliz@gnu.org>
500
501 Fix write-region and its subroutines for buffers > 2GB.
502 * fileio.c (a_write, e_write): Modify declaration of arguments and
503 local variables to support buffers larger than 2GB.
504 (Fcopy_file): Use EMACS_INT for return value of emacs_read.
505
506 * sysdep.c (emacs_write, emacs_read): Use ssize_t for last
507 argument, local variables, and return value.
508
509 * lisp.h: Update prototypes of emacs_write and emacs_read.
510
511 * sound.c (vox_write): Use ssize_t for return value of emacs_write.
512
4073e537 5132011-04-10 Paul Eggert <eggert@cs.ucla.edu>
eb3f1cc8 514
1ebfdcb6
PE
515 * xdisp.c (vmessage): Use memchr, not strnlen, which some hosts lack.
516
b2ded58d
PE
517 Fix more problems found by GCC 4.6.0's static checks.
518
7d66342c
PE
519 * xdisp.c (vmessage): Use a better test for character truncation.
520
bbf47d44
PE
521 * charset.c (load_charset_map): <, not <=, for optimization,
522 and to avoid potential problems with integer overflow.
9248994d 523 * chartab.c (sub_char_table_set_range, char_table_set_range): Likewise.
f9a68bc5 524 * casetab.c (set_identity, shuffle): Likewise.
3ab1c7ce 525 * editfns.c (Fformat): Likewise.
1e69125e 526 * syntax.c (skip_chars): Likewise.
3befa583 527
e3019616
PE
528 * xmenu.c (set_frame_menubar): Allocate smaller local vectors.
529 This also lets GCC 4.6.0 generate slightly better loop code.
530
becfa255
PE
531 * callint.c (Fcall_interactively): <, not <=, for optimization.
532 (Fcall_interactively): Count the number of arguments produced,
533 not the number of arguments given. This is simpler and lets GCC
534 4.6.0 generate slightly better code.
535
dae0cd48
PE
536 * ftfont.c: Distingish more carefully between FcChar8 and char.
537 The previous code passed unsigned char * to a functions like
538 strlen and xstrcasecmp that expect char *, which does not
539 conform to the C standard.
540 (get_adstyle_property, ftfont_pattern_entity): Use FcChar8 for
541 arguments to FcPatternGetString, and explicitly cast FcChar8 * to
542 char * when the C standard requires it.
543
76032d70
PE
544 * keyboard.c (read_char): Remove unused var.
545
eb3f1cc8
PE
546 * eval.c: Port to Windows vsnprintf (Bug#8435).
547 Include <limits.h>.
548 (SIZE_MAX): Define if the headers do not.
549 (verror): Do not give up if vsnprintf returns a negative count.
550 Instead, grow the buffer. This ports to Windows vsnprintf, which
551 does not conform to C99. Problem reported by Eli Zaretskii.
552 Also, simplify the allocation scheme, by avoiding the need for
553 calling realloc, and removing the ALLOCATED variable.
554
70476b54
PE
555 * eval.c (verror): Initial buffer size is 4000 (not 200) bytes.
556
12020a9e
PE
557 Remove invocations of doprnt, as Emacs now uses vsnprintf.
558 But keep the doprint source code for now, as we might revamp it
559 and use it again (Bug#8435).
ea6c7ae6
PE
560 * lisp.h (doprnt): Remove.
561 * Makefile.in (base_obj): Remove doprnt.o.
562 * deps.mk (doprnt.o): Remove.
563
5fdb398c
PE
564 error: Print 32- and 64-bit integers portably (Bug#8435).
565 Without this change, on typical 64-bit hosts error ("...%d...", N)
566 was used to print both 32- and 64-bit integers N, which relied on
567 undefined behavior.
568 * lisp.h, src/m/amdx86-64.h, src/m/ia64.h, src/m/ibms390x.h (pEd):
569 New macro.
570 * lisp.h (error, verror): Mark as printf-like functions.
571 * eval.c (verror): Use vsnprintf, not doprnt, to do the real work.
572 Report overflow in size calculations when allocating printf buffer.
573 Do not truncate output string at its first null byte.
574 * xdisp.c (vmessage): Use vsnprintf, not doprnt, to do the real work.
575 Truncate the output at a character boundary, since vsnprintf does not
576 do that.
577 * charset.c (check_iso_charset_parameter): Convert internal
578 character to string before calling 'error', since %c now has the
579 printf meaning.
580 * coding.c (Fdecode_sjis_char, Fdecode_big5_char): Avoid int
581 overflow when computing char to be passed to 'error'. Do not
582 pass Lisp_Object to 'error'; pass the integer instead.
583 * nsfns.m (Fns_do_applescript): Use int, not long, since it's
584 formatted with plain %d.
585
b189fa66
PE
586 * eval.c (internal_lisp_condition_case): Don't pass spurious arg.
587
bff87ef0
PE
588 * keyboard.c (access_keymap_keyremap): Print func name, not garbage.
589
7e2cac20
PE
590 * coding.c (Fdecode_sjis_char): Don't assume CODE fits in int.
591
ce4d90b5
PE
592 * xterm.c (x_catch_errors): Remove duplicate declaration.
593
266c9547
PE
594 * term.c (maybe_fatal): Mark its 3rd arg as a printf format, too.
595
79c49ad2
PE
596 * xdisp.c, lisp.h (message_nolog): Remove; unused.
597
368f4090
JM
5982011-04-10 Jim Meyering <meyering@redhat.com>
599
600 use ssize_t and size_t for read- and write-like emacs_gnutls_* functions
601 * gnutls.c (emacs_gnutls_read): Adjust signature to be more read-like:
602 return ssize_t not "int", and use size_t as the buffer length.
603 (emacs_gnutls_write): Likewise, and make the buffer pointer "const".
604 * gnutls.h: Update declarations.
605 * process.c (read_process_output): Use ssize_t, to match.
606 (send_process): Likewise.
607
a32d4040
CY
6082011-04-09 Chong Yidong <cyd@stupidchicken.com>
609
610 * image.c (Fimagemagick_types): Doc fix, and comment cleanup.
611
8546720e 6122011-04-09 Chong Yidong <cyd@stupidchicken.com>
aac0c6e3 613
8546720e
GM
614 * ftfont.c (get_adstyle_property, ftfont_pattern_entity): Use
615 unsigned char, to match FcChar8 type definition.
aac0c6e3 616
8546720e
GM
617 * xterm.c (handle_one_xevent):
618 * xmenu.c (create_and_show_popup_menu):
619 * xselect.c (x_decline_selection_request)
620 (x_reply_selection_request): Avoid type-punned deref of X events.
aac0c6e3 621
0a2f5c1a 6222011-04-09 Eli Zaretskii <eliz@gnu.org>
a53e2e89
EZ
623
624 Fix some uses of `int' instead of EMACS_INT.
625 * search.c (string_match_1, fast_string_match)
626 (fast_c_string_match_ignore_case, fast_string_match_ignore_case)
627 (scan_buffer, find_next_newline_no_quit)
628 (find_before_next_newline, search_command, Freplace_match)
629 (Fmatch_data): Make some `int' variables be EMACS_INT.
630
631 * xdisp.c (display_count_lines): 3rd argument and return value now
632 EMACS_INT. All callers changed.
633 (pint2hrstr): Last argument is now EMACS_INT.
634
635 * coding.c (detect_coding_utf_8, detect_coding_emacs_mule)
636 (detect_coding_iso_2022, detect_coding_sjis, detect_coding_big5)
637 (detect_coding_ccl, detect_coding_charset, decode_coding_utf_8)
638 (decode_coding_utf_16, decode_coding_emacs_mule)
639 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
640 (decode_coding_ccl, decode_coding_charset)
641 <consumed_chars, consumed_chars_base>: Declare EMACS_INT.
642 (decode_coding_iso_2022, decode_coding_emacs_mule)
643 (decode_coding_sjis, decode_coding_big5, decode_coding_charset)
644 <char_offset, last_offset>: Declare EMACS_INT.
645 (encode_coding_utf_8, encode_coding_utf_16)
646 (encode_coding_emacs_mule, encode_invocation_designation)
647 (encode_designation_at_bol, encode_coding_iso_2022)
648 (encode_coding_sjis, encode_coding_big5, encode_coding_ccl)
649 (encode_coding_raw_text, encode_coding_charset) <produced_chars>:
650 Declare EMACS_INT.
651 (ASSURE_DESTINATION): Declare more_bytes EMACS_INT.
652 (encode_invocation_designation): Last argument P_NCHARS is now
653 EMACS_INT.
654 (decode_eol): Declare pos_byte, pos, and pos_end EMACS_INT.
655 (produce_chars): from_nchars and to_nchars are now EMACS_INT.
656
657 * coding.h (struct coding_system) <head_ascii>: Declare EMACS_INT.
658 All users changed.
659
660 * ccl.c (Fccl_execute_on_string): Declare some variables
661 EMACS_INT.
662
8546720e 6632011-04-08 Samuel Thibault <sthibault@debian.org> (tiny change)
0080dc6b
SS
664
665 * term.c (init_tty): Fix incorrect ifdef placement (Bug#8450).
666
4e19a977
CS
6672011-03-19 Christoph Scholtes <cschol2112@googlemail.com>
668
669 * process.c (Fformat_network_address): Doc fix.
670
87302331
R
6712011-04-08 T.V. Raman <tv.raman.tv@gmail.com> (tiny change)
672
673 * xml.c (parse_region): Avoid creating spurious whiespace nodes.
674
cbb59342
CY
6752011-04-08 Chong Yidong <cyd@stupidchicken.com>
676
677 * keyboard.c (read_char): Call Lisp function help-form-show,
678 instead of using internal_with_output_to_temp_buffer.
679 (Qhelp_form_show): New var.
e0d38eeb 680 (syms_of_keyboard): Use DEFSYM macro.
cbb59342
CY
681
682 * print.c (internal_with_output_to_temp_buffer): Function deleted.
683
684 * lisp.h (internal_with_output_to_temp_buffer): Remove prototype.
685
e67a13ab
CY
6862011-04-06 Chong Yidong <cyd@stupidchicken.com>
687
688 * process.c (Flist_processes): Removed to Lisp.
689 (list_processes_1): Deleted.
690
973f782d
EZ
6912011-04-06 Eli Zaretskii <eliz@gnu.org>
692
7c106b1e
EZ
693 * msdos.c (careadlinkat, careadlinkatcwd): MS-DOS replacements.
694
973f782d
EZ
695 * w32.c (careadlinkat, careadlinkatcwd): New always-fail stubs.
696
41cf7d1a 6972011-04-06 Paul Eggert <eggert@cs.ucla.edu>
27ccc379 698
ca23cc88
PE
699 Fix more problems found by GCC 4.6.0's static checks.
700
f390e2d5
PE
701 * xmenu.c (Fx_popup_dialog): Don't assume string is free of formats.
702
42eea0d0
PE
703 * menu.c (Fx_popup_menu): Don't assume error_name lacks printf formats.
704
b69769da 705 * lisp.h (message, message_nolog, fatal): Mark as printf-like.
1e973bc7 706
f9541e84
PE
707 * xdisp.c (vmessage): Mark as a printf-like function.
708
13841b55
PE
709 * term.c (vfatal, maybe_fatal): Mark as printf-like functions.
710
c136c10f
PE
711 * sound.c (sound_warning): Don't crash if arg contains a printf format.
712
5e2d4a30
PE
713 * image.c (tiff_error_handler, tiff_warning_handler): Mark as
714 printf-like functions.
715 (tiff_load): Add casts to remove these marks before passing them
716 to system-supplied API.
717
583f48b9
PE
718 * eval.c (Fsignal): Remove excess argument to 'fatal'.
719
b25d760e
PE
720 * coding.c (EMIT_ONE_BYTE, EMIT_TWO_BYTES): Use unsigned, not int.
721 This avoids several warnings with gcc -Wstrict-overflow.
d5efd1d1
PE
722 (DECODE_COMPOSITION_RULE): If the rule is invalid, goto invalid_code
723 directly, rather than having caller test rule sign. This avoids
724 some unnecessary tests.
725 * composite.h (COMPOSITION_ENCODE_RULE_VALID): New macro.
726 (COMPOSITION_ENCODE_RULE): Arguments now must be valid. This
727 affects only one use, in DECODE_COMPOSITION_RULE, which is changed.
b25d760e 728
bc7b6697 729 * xfont.c (xfont_text_extents): Remove var that was set but not used.
625a3eb1 730 (xfont_open): Avoid unnecessary tests.
bc7b6697 731
27ccc379
PE
732 * composite.c (composition_gstring_put_cache): Use unsigned integer.
733
dcd5c89a
PE
734 * composite.h, composite.c (composition_gstring_put_cache):
735 Use EMACS_INT, not int, for length.
736
b13a45c6
PE
737 * composite.h (COMPOSITION_DECODE_REFS): New macro,
738 breaking out part of COMPOSITION_DECODE_RULE.
739 (COMPOSITION_DECODE_RULE): Use it.
740 * composite.c (get_composition_id): Remove unused local vars,
741 by using the new macro.
742
1e792e4d
PE
743 * textprop.c (set_text_properties_1): Change while to do-while,
744 since the condition is always true at first.
745
dc6c6455 746 * intervals.c (graft_intervals_into_buffer): Mark var as used.
aa86731f
PE
747 (interval_deletion_adjustment): Return unsigned value.
748 All uses changed.
dc6c6455 749
aba7731a
PE
750 * process.c (list_processes_1, create_pty, read_process_output):
751 (exec_sentinel): Remove vars that were set but not used.
afd4052b 752 (create_pty): Remove unnecessary "volatile"s.
bc57d757 753 (Fnetwork_interface_info): Avoid possibility of int overflow.
82eaa333 754 (read_process_output): Do adaptive read buffering even if carryover.
fe07cdfa 755 (read_process_output): Simplify nbytes computation if buffered.
aba7731a 756
fdfc4bf3
PE
757 * bytecode.c (exec_byte_code): Rename local to avoid shadowing.
758
fca8fe46 759 * syntax.c (scan_words): Remove var that was set but not used.
12cbf13f 760 (update_syntax_table): Use unsigned instead of int.
fca8fe46 761
06a0259a 762 * lread.c (lisp_file_lexically_bound_p): Use ints rather than endptrs.
3c346cc3 763 (lisp_file_lexically_bound_p, read1): Use unsigned instead of int.
e6eb4e9e 764 (safe_to_load_p): Make the end-of-loop test the inverse of the in-loop.
06a0259a 765
e7b9e80f
PE
766 * print.c (print_error_message): Avoid int overflow.
767
56201685
PE
768 * font.c (font_list_entities): Redo for clarity,
769 so that reader need not know FONT_DPI_INDEX + 1 == FONT_SPACING_INDEX.
770
78834453 771 * font.c (font_find_for_lface, Ffont_get_glyphs): Remove unused vars.
790771b1 772 (font_score): Avoid potential overflow in diff calculation.
78834453 773
0bc0b309 774 * fns.c (substring_both): Remove var that is set but not used.
8cd55cb4 775 (sxhash): Redo loop for clarity and to avoid wraparound warning.
0bc0b309 776
e610eaca
PE
777 * eval.c (funcall_lambda): Rename local to avoid shadowing.
778
b895abce
PE
779 * alloc.c (mark_object_loop_halt, mark_object): Use size_t, not int.
780 Otherwise, GCC 4.6.0 optimizes the loop check away since the check
781 can always succeed if overflow has undefined behavior.
782
1f1d9321 783 * search.c (boyer_moore, wordify): Remove vars set but not used.
6f076cc7 784 (wordify): Omit three unnecessary tests.
1f1d9321 785
c59478bc
PE
786 * indent.c (MULTIBYTE_BYTES_WIDTH): Don't compute wide_column.
787 All callers changed. This avoids the need for an unused var.
788
79b73827
PE
789 * casefiddle.c (casify_region): Remove var that is set but not used.
790
a4db5dfe
PE
791 * dired.c (file_name_completion): Remove var that is set but not used.
792
43aae36e
PE
793 * fileio.c (Finsert_file_contents): Make EOF condition clearer.
794
2a47c44d 795 * fileio.c (Finsert_file_contents): Avoid signed integer overflow.
163c5f32 796 (Finsert_file_contents): Remove unnecessary code checking fd.
2a47c44d 797
a37c69bf
PE
798 * minibuf.c (read_minibuf_noninteractive): Use size_t for sizes.
799 Check for integer overflow on size calculations.
800
328ab8e7
PE
801 * buffer.c (Fprevious_overlay_change): Remove var that is set
802 but not used.
803
e5a2a5cb
PE
804 * keyboard.c (menu_bar_items, read_char_minibuf_menu_prompt):
805 Remove vars that are set but not used.
8d84a6eb 806 (timer_check_2): Don't assume timer-list and idle-timer-list are lists.
6b043475 807 (timer_check_2): Mark vars as initialized.
e5a2a5cb 808
a60e5f68
PE
809 * gtkutil.c (xg_get_file_with_chooser): Mark var as initialized.
810
f661cb61 811 * image.c (lookup_image): Remove var that is set but not used.
35fa624f 812 (xbm_load): Use parse_p, for gcc -Werror=unused-but-set-variable.
f661cb61 813
f0397f5a
PE
814 * fontset.c (Finternal_char_font, Ffontset_info): Remove vars
815 that are set but not used.
816
8664db06 817 * xfns.c (make_invisible_cursor): Don't return garbage
03733ee7 818 if XCreateBitmapFromData fails (Bug#8410).
8664db06 819
6abdaa4a
PE
820 * xselect.c (x_get_local_selection, x_handle_property_notify):
821 Remove vars that are set but not used.
822
0ce7538d 823 * xfns.c (x_create_tip_frame): Remove var that is set but not used.
6abdaa4a 824 (make_invisible_cursor): Initialize a possibly-uninitialized variable.
0ce7538d 825
9ae848fc
PE
826 * xterm.c (x_scroll_bar_to_input_event) [!USE_GTK]:
827 Remove var that is set but not used.
0b918413
PE
828 (scroll_bar_windows_size): Now size_t, not int.
829 (x_send_scroll_bar_event): Use size_t, not int, for sizes.
830 Check for overflow.
9ae848fc 831
a5a62657
PE
832 * xfaces.c (realize_named_face): Remove vars that are set but not used.
833 (map_tty_color) [!defined MSDOS]: Likewise.
834
5c5cdd39
PE
835 * term.c (tty_write_glyphs): Use size_t; this avoids overflow warning.
836
66ebf983
PE
837 * coding.c: Remove vars that are set but not used.
838 (DECODE_COMPOSITION_RULE): Remove 2nd arg, which is unused.
839 All callers changed.
840 (decode_coding_utf_8, decode_coding_utf_16 decode_coding_emacs_mule):
841 (decode_coding_iso_2022, encode_coding_sjis, encode_coding_big5):
842 (decode_coding_charset): Remove vars that are set but not used.
843
1be4d761
PE
844 * bytecode.c (Fbyte_code) [!defined BYTE_CODE_SAFE]: Remove var
845 that is set but not used.
846
47553fa8
PE
847 * print.c (print_object): Remove var that is set but not used.
848
1f7196bf 849 Replace 2 copies of readlink code with 1 gnulib version (Bug#8401).
d1fdcab7
PE
850 The gnulib version avoids calling malloc in the usual case,
851 and on 64-bit hosts doesn't have some arbitrary 32-bit limits.
852 * fileio.c (Ffile_symlink_p): Use emacs_readlink.
853 * filelock.c (current_lock_owner): Likewise.
854 * lisp.h (READLINK_BUFSIZE, emacs_readlink): New function.
855 * sysdep.c: Include allocator.h, careadlinkat.h.
856 (emacs_no_realloc_allocator): New static constant.
857 (emacs_readlink): New function.
fdb61804
PE
858 * deps.mk (sysdep.o): Depend on ../lib/allocator.h and on
859 ../lib/careadlinkat.h.
d1fdcab7 860
f84c17c7
SM
8612011-04-04 Stefan Monnier <monnier@iro.umontreal.ca>
862
863 * keyboard.c (safe_run_hook_funcall): Fix last change (don't stop at the
864 first non-nil return value).
865
ef3862ad
JD
8662011-04-03 Jan Djärv <jan.h.d@swipnet.se>
867
868 * nsterm.m (ns_update_auto_hide_menu_bar): Define MAC_OS_X_VERSION_10_6
869 if not defined (Bug#8403).
870
376a7006
JB
8712011-04-02 Juanma Barranquero <lekktu@gmail.com>
872
873 * xdisp.c (display_count_lines): Remove parameter `start',
874 unused since 1998-01-01T02:27:27Z!rms@gnu.org. All callers changed.
875 (get_char_face_and_encoding): Remove parameter `multibyte_p',
876 unused since 2008-05-14T01:40:23Z!handa@m17n.org. All callers changed.
877 (fill_stretch_glyph_string): Remove parameters `row' and `area',
878 unused at least since Kim's GUI unification at 2003-03-16T20:45:46Z!storm@cua.dk
879 and thereabouts. All callers changed.
880 (get_per_char_metric): Remove parameter `f', unused since
881 2008-05-14T01:40:23Z!handa@m17n.org. All callers changed.
882
6ca3801d
JM
8832011-04-02 Jim Meyering <meyering@redhat.com>
884
885 do not dereference NULL upon failed strdup
886 * nsfont.m (ns_descriptor_to_entity): Use xstrdup, not strdup.
887 (ns_get_family): Likewise.
888
d8e2b5ba
JB
8892011-04-02 Juanma Barranquero <lekktu@gmail.com>
890
891 * eval.c (unwind_to_catch) [DEBUG_GCPRO]: Remove redundant assignment.
892
8c74fcbd
JD
8932011-04-02 Jan Djärv <jan.h.d@swipnet.se>
894
895 * nsterm.m (ns_update_auto_hide_menu_bar): Only for OSX 10.6 or
896 later (Bug#8403).
897
7200d79c
SM
8982011-04-01 Stefan Monnier <monnier@iro.umontreal.ca>
899
03408648 900 Add lexical binding.
7200d79c 901
03408648
SM
902 * window.c (Ftemp_output_buffer_show): New fun.
903 (Fsave_window_excursion):
904 * print.c (Fwith_output_to_temp_buffer): Move to subr.el.
905
906 * lread.c (lisp_file_lexically_bound_p): New function.
907 (Fload): Bind Qlexical_binding.
908 (readevalloop): Remove `evalfun' arg.
909 Bind Qinternal_interpreter_environment.
910 (Feval_buffer): Bind Qlexical_binding.
911 (defvar_int, defvar_bool, defvar_lisp_nopro, defvar_kboard):
912 Mark as dynamic.
913 (syms_of_lread): Declare `lexical-binding'.
914
915 * lisp.h (struct Lisp_Symbol): New field `declared_special'.
916
917 * keyboard.c (eval_dyn): New fun.
918 (menu_item_eval_property): Use it.
ca105506
SM
919
920 * image.c (parse_image_spec): Use Ffunctionp.
ca105506 921
03408648
SM
922 * fns.c (concat, mapcar1): Accept byte-code-functions.
923
924 * eval.c (Fsetq): Handle lexical vars.
925 (Fdefun, Fdefmacro, Ffunction): Make closures when needed.
926 (Fdefconst, Fdefvaralias, Fdefvar): Mark as dynamic.
927 (FletX, Flet): Obey lexical binding.
928 (Fcommandp): Handle closures.
929 (Feval): New `lexical' arg.
930 (eval_sub): New function extracted from Feval. Use it almost
931 everywhere where Feval was used. Look up vars in lexical env.
932 Handle closures.
933 (Ffunctionp): Move from subr.el.
934 (Ffuncall): Handle closures.
935 (apply_lambda): Remove `eval_flags'.
936 (funcall_lambda): Handle closures and new byte-code-functions.
937 (Fspecial_variable_p): New function.
938 (syms_of_eval): Initialize the Vinternal_interpreter_environment var,
939 but without exporting it to Lisp.
23aba0ea 940
23aba0ea 941 * doc.c (Fdocumentation, store_function_docstring):
03408648 942 * data.c (Finteractive_form): Handle closures.
23aba0ea 943
03408648
SM
944 * callint.c (Fcall_interactively): Preserve lexical-binding mode for
945 interactive spec.
ba83908c 946
03408648
SM
947 * bytecode.c (Bstack_ref, Bstack_set, Bstack_set2, BdiscardN): New
948 byte-codes.
949 (exec_byte_code): New function extracted from Fbyte_code to handle new
950 calling convention for byte-code-functions. Add new byte-codes.
ba83908c 951
03408648 952 * buffer.c (defvar_per_buffer): Set new `declared_special' field.
e2abe5a1 953
03408648 954 * alloc.c (Fmake_symbol): Init new `declared_special' field.
e2abe5a1 955
e2abce01
JB
9562011-03-31 Juanma Barranquero <lekktu@gmail.com>
957
958 * xdisp.c (redisplay_internal): Fix prototype.
959
63696a73 9602011-03-31 Eli Zaretskii <eliz@gnu.org>
09725d26 961
63696a73
EZ
962 * xdisp.c (SCROLL_LIMIT): New macro.
963 (try_scrolling): Use it when setting scroll_limit. Limit
964 scrolling to 100 screen lines.
965 (redisplay_window): Even when falling back on "recentering",
966 position point in the window according to scroll-conservatively,
967 scroll-margin, and scroll-*-aggressively variables. (Bug#6671)
968
969 (try_scrolling): When point is above the window, allow searching
970 as far as scroll_max, or one screenful, to compute vertical
971 distance from PT to the scroll margin position. This prevents
972 try_scrolling from unnecessarily failing when
973 scroll-conservatively is set to a value slightly larger than the
974 window height. Clean up the case of PT below the margin at bottom
975 of window: scroll_max can no longer be INT_MAX. When aggressive
976 scrolling is in use, don't let point enter the opposite scroll
977 margin as result of the scroll.
978 (syms_of_xdisp) <scroll-conservatively>: Document the
09725d26
EZ
979 threshold of 100 lines for never-recentering scrolling.
980
e4cc2dfc
JB
9812011-03-31 Juanma Barranquero <lekktu@gmail.com>
982
983 * dispextern.h (move_it_by_lines):
984 * xdisp.c (move_it_by_lines): Remove parameter `need_y_p', unused
985 since 2000-12-29T14:24:09Z!gerd@gnu.org. All callers changed.
986 (message_log_check_duplicate): Remove parameters `prev_bol' and
987 `this_bol', unused since 1998-01-01T02:27:27Z!rms@gnu.org. All callers changed.
988 (redisplay_internal): Remove parameter `preserve_echo_area',
989 unused since 1999-07-21T21:43:52Z!gerd@gnu.org. All callers changed.
990
991 * indent.c (Fvertical_motion):
992 * window.c (window_scroll_pixel_based, Frecenter):
993 Don't pass `need_y_p' to `move_it_by_lines'.
994
1c470562
SM
9952011-03-30 Stefan Monnier <monnier@iro.umontreal.ca>
996
44f230aa
SM
997 * eval.c (struct backtrace): Don't cheat with negative numbers, but do
998 steal a few bits to be more compact.
999 (interactive_p, Fbacktrace, Fbacktrace_frame, mark_backtrace):
1000 Remove unneeded casts.
1001
1c470562
SM
1002 * bytecode.c (Fbyte_code): CAR and CDR can GC.
1003
888adce9
ZK
10042011-03-30 Zachary Kanfer <zkanfer@gmail.com> (tiny change)
1005
1006 * keyboard.c (Fexecute_extended_command): Do log the "suggest key
1007 binding" message (bug#7967).
1008
f838ed7b
PE
10092011-03-30 Paul Eggert <eggert@cs.ucla.edu>
1010
77861b95
PE
1011 Fix more problems found by GCC 4.6.0's static checks.
1012
de6dbc14
PE
1013 * unexelf.c (unexec) [! (defined _SYSTYPE_SYSV || defined __sgi)]:
1014 Remove unused local var.
1015
f838ed7b
PE
1016 * editfns.c (Fmessage_box): Remove unused local var.
1017
792c7b2b
PE
1018 * xdisp.c (try_window_reusing_current_matrix, x_produce_glyphs):
1019 (note_mode_line_or_margin_highlight, note_mouse_highlight):
1020 Omit unused local vars.
c499e557 1021 * window.c (shrink_windows): Omit unused local var.
b01a1c29 1022 * menu.c (digest_single_submenu): Omit unused local var.
0bc32927
PE
1023 * dispnew.c (update_window) [PERIODIC_PREEMPTION_CHECKING]:
1024 Omit unused local var.
1025
ba0165e1
PE
1026 * keyboard.c (parse_modifiers_uncached, parse_modifiers):
1027 Don't assume string length fits in int.
32ad8845 1028 (keyremap_step, read_key_sequence): Use size_t for sizes.
48011560 1029 (read_key_sequence): Don't check last_real_key_start redundantly.
ba0165e1 1030
3c59b4c9
PE
1031 * callproc.c (Fcall_process, Fcall_process_region): Use SAFE_ALLOCA
1032 instead of alloca (Bug#8344).
1033
a3eed478 1034 * eval.c (Fbacktrace): Don't assume nargs fits in int.
5d5d959d 1035 (Fbacktrace_frame): Don't assume nframes fits in int.
a3eed478 1036
eb4d412d
PE
1037 * syntax.c (scan_sexps_forward): Avoid pointer wraparound.
1038
1658b401
PE
1039 * xterm.c (x_make_frame_visible, same_x_server): Redo to avoid overflow
1040 concerns.
1041
1042 * term.c (produce_glyphless_glyph): Remove unnecessary test.
1043
1044 * cm.c (calccost): Turn while-do into do-while, for clarity.
44f730c8 1045
9a2c6e05
PE
1046 * keyboard.c (syms_of_keyboard): Use the same style as later
1047 in this function when indexing through an array. This also
1048 works around GCC bug 48267.
1049
03d0a109
PE
1050 * image.c (tiff_load): Fix off-by-one image count (Bug#8336).
1051
44f730c8
PE
1052 * xselect.c (x_check_property_data): Return correct size (Bug#8335).
1053
fe75f926
PE
1054 * chartab.c (sub_char_table_ref_and_range): Redo for slight
1055 efficiency gain, and to bypass a gcc -Wstrict-overflow warning.
1056
ffa8c828
PE
1057 * keyboard.c, keyboard.h (num_input_events): Now size_t.
1058 This avoids undefined behavior on integer overflow, and is a bit
1059 more convenient anyway since it is compared to a size_t variable.
1060
c5101a77
PE
1061 Variadic C functions now count arguments with size_t, not int.
1062 This avoids an unnecessary limitation on 64-bit machines, which
1063 caused (substring ...) to crash on large vectors (Bug#8344).
1064 * lisp.h (struct Lisp_Subr.function.aMANY): Now takes size_t, not int.
1065 (DEFUN_ARGS_MANY, internal_condition_case_n, safe_call): Likewise.
77861b95 1066 All variadic functions and their callers changed accordingly.
c5101a77
PE
1067 (struct gcpro.nvars): Now size_t, not int. All uses changed.
1068 * data.c (arith_driver, float_arith_driver): Likewise.
1069 * editfns.c (general_insert_function): Likewise.
1070 * eval.c (struct backtrace.nargs, interactive_p)
1071 (internal_condition_case_n, run_hook_with_args, apply_lambda)
1072 (funcall_lambda, mark_backtrace): Likewise.
1073 * fns.c (concat): Likewise.
1074 * frame.c (x_set_frame_parameters): Likewise.
1075 * fns.c (get_key_arg): Now accepts and returns size_t, and returns
1076 0 if not found, not -1. All callers changed.
1077
dd3f25f7
PE
1078 * alloc.c (garbage_collect): Don't assume stack size fits in int.
1079 (stack_copy_size): Now size_t, not int.
1080 (stack_copy, stack_copy_size): Define only if MAX_SAVE_STACK > 0.
1081
461c2ab9
JB
10822011-03-28 Juanma Barranquero <lekktu@gmail.com>
1083
1084 * coding.c (encode_designation_at_bol): Remove parameter `charbuf_end',
1085 unused since 2002-03-01T01:17:24Z!handa@m17n.org and 2008-02-01T16:01:31Z!miles@gnu.org.
1086 All callers changed.
1087
1088 * lisp.h (multibyte_char_to_unibyte):
1089 * character.c (multibyte_char_to_unibyte): Remove parameter `rev_tbl',
1090 unused since 2002-03-01T01:16:34Z!handa@m17n.org and 2008-02-01T16:01:31Z!miles@gnu.org.
1091 * character.h (CHAR_TO_BYTE8):
1092 * cmds.c (internal_self_insert):
1093 * editfns.c (general_insert_function):
1094 * keymap.c (push_key_description):
1095 * search.c (Freplace_match):
1096 * xdisp.c (message_dolog, set_message_1): All callers changed.
1097
f6d62986
SM
10982011-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
1099
1100 * keyboard.c (safe_run_hook_funcall): New function.
1101 (safe_run_hooks_1, safe_run_hooks_error, safe_run_hooks): On error,
1102 don't set the hook to nil, but remove the offending function instead.
1103 (Qcommand_hook_internal): Remove, unused.
1104 (syms_of_keyboard): Don't initialize Qcommand_hook_internal nor define
1105 Vcommand_hook_internal.
1106
1107 * eval.c (enum run_hooks_condition): Remove.
1108 (funcall_nil, funcall_not): New functions.
1109 (run_hook_with_args): Call each function through a `funcall' argument.
1110 Remove `cond' argument, now redundant.
1111 (Frun_hooks, Frun_hook_with_args, Frun_hook_with_args_until_success)
1112 (Frun_hook_with_args_until_failure): Adjust accordingly.
1113 (run_hook_wrapped_funcall, Frun_hook_wrapped): New functions.
1114
1db5b1ad
JB
11152011-03-28 Juanma Barranquero <lekktu@gmail.com>
1116
1117 * dispextern.h (string_buffer_position): Remove declaration.
1118
1119 * print.c (strout): Remove parameter `multibyte', unused since
1120 1999-08-21T19:30:21Z!gerd@gnu.org. All callers changed.
1121
1122 * search.c (boyer_moore): Remove parameters `len', `pos' and `lim',
1123 never used since function introduction in 1998-02-08T21:33:56Z!rms@gnu.org.
1124 All callers changed.
1125
1126 * w32.c (_wsa_errlist): Use braces for struct initializers.
1127
1128 * xdisp.c (string_buffer_position_lim): Remove parameter `w',
1129 never used since function introduction in 2001-03-09T18:41:50Z!gerd@gnu.org.
1130 All callers changed.
1131 (string_buffer_position): Likewise. Also, make static (it's never
1132 used outside xdisp.c).
1133 (cursor_row_p): Remove parameter `w', unused since
1134 2000-10-17T16:08:57Z!gerd@gnu.org. All callers changed.
1135 (decode_mode_spec): Remove parameter `precision', introduced during
1136 Gerd Moellmann's rewrite at 1999-07-21T21:43:52Z!gerd@gnu.org, but never used.
1137 All callers changed.
1138
5ffb62aa
JD
11392011-03-27 Jan Djärv <jan.h.d@swipnet.se>
1140
1141 * nsterm.m (syms_of_nsterm): Use doc: for ns-auto-hide-menu-bar.
1142
461c2ab9 11432011-03-27 Anders Lindgren <andlind@gmail.com>
f0a1382a
JD
1144
1145 * nsterm.m (ns_menu_bar_is_hidden): New variable.
1146 (ns_constrain_all_frames, ns_menu_bar_should_be_hidden)
1147 (ns_update_auto_hide_menu_bar): New functions.
1148 (ns_update_begin): Call ns_update_auto_hide_menu_bar.
1149 (applicationDidBecomeActive): Call ns_update_auto_hide_menu_bar and
1150 ns_constrain_all_frames.
1151 (constrainFrameRect): Return at once if ns_menu_bar_should_be_hidden.
1152 (syms_of_nsterm): DEFVAR ns-auto-hide-menu-bar, init to Qnil.
1153
5c380ffb
JD
11542011-03-27 Jan Djärv <jan.h.d@swipnet.se>
1155
1156 * nsmenu.m (runDialogAt): Remove argument to timer_check.
1157
9af30bdf
GM
11582011-03-27 Glenn Morris <rgm@gnu.org>
1159
1160 * syssignal.h: Replace RETSIGTYPE with void.
1161 * atimer.c, data.c, dispnew.c, emacs.c, floatfns.c, keyboard.c:
1162 * keyboard.h, lisp.h, process.c, sysdep.c, xterm.c:
1163 Replace SIGTYPE with void everywhere.
1164 * s/usg5-4-common.h (SIGTYPE): Remove definition.
1165 * s/template.h (SIGTYPE): Remove commented out definition.
1166
e2abce01
JB
11672011-03-26 Eli Zaretskii <eliz@gnu.org>
1168
1169 * xdisp.c (redisplay_window): Don't check buffer's clip_changed
1170 flag as a prerequisite for invoking try_scrolling. (Bug#6671)
1171
f868cd8a
JB
11722011-03-26 Juanma Barranquero <lekktu@gmail.com>
1173
59eb0929
JB
1174 * w32.c (read_unc_volume): Use parameter `henum', instead of
1175 global variable `wget_enum_handle'.
1176
1177 * keymap.c (describe_vector): Remove parameters `indices' and
1178 `char_table_depth', unused since 2002-03-01T01:43:26Z!handa@m17n.org.
1179 (describe_map, Fdescribe_vector): Adjust calls to `describe_vector'.
1180
f868cd8a
JB
1181 * keyboard.h (timer_check, show_help_echo): Remove unused parameters.
1182
1183 * keyboard.c (timer_check): Remove parameter `do_it_now',
1184 unused since 1996-04-12T06:01:29Z!rms@gnu.org.
1185 (show_help_echo): Remove parameter `ok_to_overwrite_keystroke_echo',
1186 unused since 2008-04-19T19:30:53Z!monnier@iro.umontreal.ca.
1187
1188 * keyboard.c (read_char):
1189 * w32menu.c (w32_menu_display_help):
1190 * xmenu.c (show_help_event, menu_help_callback):
1191 Adjust calls to `show_help_echo'.
1192
1193 * gtkutil.c (xg_maybe_add_timer):
1194 * keyboard.c (readable_events):
1195 * process.c (wait_reading_process_output):
1196 * xmenu.c (x_menu_wait_for_event): Adjust calls to `timer_check'.
1197
1198 * insdel.c (adjust_markers_gap_motion):
1199 Remove; no-op since 1998-01-02T21:29:48Z!rms@gnu.org.
1200 (gap_left, gap_right): Don't call it.
1201
2ecf6fdb
CY
12022011-03-25 Chong Yidong <cyd@stupidchicken.com>
1203
1204 * xdisp.c (handle_fontified_prop): Discard changes to clip_changed
1205 incurred during fontification.
1206
6b1f9ba4
JB
12072011-03-25 Juanma Barranquero <lekktu@gmail.com>
1208
1209 * buffer.c (defvar_per_buffer): Remove unused parameter `doc'.
1210 (DEFVAR_PER_BUFFER): Don't pass it.
1211
1212 * dispnew.c (row_equal_p, add_row_entry): Remove unused parameter `w'.
1213 (scrolling_window): Don't pass it.
1214
0f4a96b5
JB
12152011-03-25 Juanma Barranquero <lekktu@gmail.com>
1216
1217 * dispextern.h (glyph_matric): Use #if GLYPH_DEBUG, not #ifdef.
1218
1219 * fileio.c (check_executable) [DOS_NT]: Remove unused variables `len'
1220 and `suffix'.
1221 (Fset_file_selinux_context) [HAVE_LIBSELINUX]: Move here declaration
1222 of variables specific to SELinux and computation of `encoded_absname'.
1223
1224 * image.c (XPutPixel): Remove unused variable `height'.
1225
1226 * keyboard.c (make_lispy_event): Remove unused variable `hpos'.
1227
1228 * unexw32.c (get_section_info): Remove unused variable `section'.
1229
1230 * w32.c (stat): Remove unused variables `drive_root' and `devtype'.
1231 (system_process_attributes): Remove unused variable `sess'.
1232 (sys_read): Remove unused variable `err'.
1233
1234 * w32fns.c (top): Wrap variables with #if GLYPH_DEBUG, not #ifdef.
1235 (w32_wnd_proc): Remove unused variable `isdead'.
1236 (unwind_create_frame): Use #if GLYPH_DEBUG, not #ifdef.
1237 (Fx_server_max_request_size): Remove unused variable `dpyinfo'.
1238 (x_create_tip_frame): Remove unused variable `tem'.
1239
1240 * w32inevt.c (w32_console_read_socket):
1241 Remove unused variable `no_events'.
1242
1243 * w32term.c (x_draw_composite_glyph_string_foreground):
1244 Remove unused variable `width'.
1245
1149507c
JB
12462011-03-24 Juanma Barranquero <lekktu@gmail.com>
1247
1248 * w32term.c (x_set_glyph_string_clipping):
1249 Don't pass uninitialized region to CombineRgn.
1250
9c88f339
JB
12512011-03-23 Juanma Barranquero <lekktu@gmail.com>
1252
1253 * w32fns.c (x_set_menu_bar_lines): Remove unused variable `olines'.
1254 (w32_wnd_proc): Pass NULL to Windows API, not uninitialized buffer.
1255 (Fx_close_connection): Remove unused variable `i'.
1256
1257 * w32font.c (w32font_draw): Return number of glyphs.
1258 (w32font_open_internal): Remove unused variable `i'.
1259 (w32font_driver): Add missing initializer.
1260
1261 * w32menu.c (utf8to16): Remove unused variable `utf16'.
1262 (fill_in_menu): Remove unused variable `items_added'.
1263
1264 * w32term.c (last_mouse_press_frame): Remove static global variable.
1265 (w32_clip_to_row): Remove unused variable `f'.
1266 (x_delete_terminal): Remove unused variable `i'.
1267
1268 * w32uniscribe.c (uniscribe_shape): Remove unused variable `nclusters'.
1269 (NOTHING): Remove unused static global variable.
1270 (uniscribe_check_otf): Remove unused variable `table'.
1271 (uniscribe_font_driver): Add missing initializers.
1272
dee091a3
JD
12732011-03-23 Julien Danjou <julien@danjou.info>
1274
1275 * term.c (Fsuspend_tty, Fresume_tty):
1276 * minibuf.c (read_minibuf, run_exit_minibuf_hook):
1277 * window.c (temp_output_buffer_show):
1278 * insdel.c (signal_before_change):
1279 * frame.c (Fhandle_switch_frame):
1280 * fileio.c (Fdo_auto_save):
1281 * emacs.c (Fkill_emacs):
1282 * editfns.c (save_excursion_restore):
1283 * cmds.c (internal_self_insert):
1284 * callint.c (Fcall_interactively):
1285 * buffer.c (Fkill_all_local_variables):
1286 * keyboard.c (Fcommand_execute, Fsuspend_emacs, safe_run_hooks_1):
1287 Use Frun_hooks.
0f4a96b5 1288 (command_loop_1): Use Frun_hooks. Call safe_run_hooks
dee091a3
JD
1289 unconditionnaly since it does the check itself.
1290
2c520ab5 12912011-03-23 Paul Eggert <eggert@cs.ucla.edu>
f0641eff 1292
c9c49752
PE
1293 Fix more problems found by GCC 4.5.2's static checks.
1294
8abc3f12
PE
1295 * coding.c (encode_coding_raw_text): Avoid unnecessary test
1296 the first time through the loop, since we know p0 < p1 then.
1297 This also avoids a gcc -Wstrict-overflow warning.
1298
a2d26660
PE
1299 * lisp.h (SAFE_ALLOCA, SAFE_ALLOCA_LISP): Avoid 'int' overflow
1300 leading to a memory leak, possible in functions like
1301 load_charset_map_from_file that can allocate an unbounded number
b12ef411 1302 of objects (Bug#8318).
a2d26660 1303
916c72e9
PE
1304 * xmenu.c (set_frame_menubar): Use EMACS_UINT, not int, for indexes
1305 that could (at least in theory) be that large.
1306
19ab8a18
PE
1307 * xdisp.c (message_log_check_duplicate): Return unsigned long, not int.
1308 This is less likely to overflow, and avoids undefined behavior if
1309 overflow does occur. All callers changed. Use strtoul to scan
1310 for the unsigned long integer.
b7cbbd6f
PE
1311 (pint2hrstr): Simplify and tune code slightly.
1312 This also avoids a (bogus) GCC warning with gcc -Wstrict-overflow.
19ab8a18 1313
f0641eff
PE
1314 * scroll.c (do_scrolling): Work around GCC bug 48228.
1315 See <http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48228>.
1316
7f650bb9
PE
1317 * frame.c (Fmodify_frame_parameters): Simplify loop counter.
1318 This also avoids a warning with gcc -Wstrict-overflow.
39f5e519
PE
1319 (validate_x_resource_name): Simplify count usage.
1320 This also avoids a warning with gcc -Wstrict-overflow.
7f650bb9 1321
37dd57d1
PE
1322 * fileio.c (Fcopy_file): Report error if fchown or fchmod
1323 fail (Bug#8306).
81e56e61 1324
699979fc 1325 * emacs.c (Fdaemon_initialized): Do not ignore I/O errors (Bug#8303).
dc1ca6a8 1326
401bf9b4
PE
1327 * process.c (Fmake_network_process): Use socklen_t, not int,
1328 where POSIX says socklen_t is required in portable programs.
1329 This fixes a porting bug on hosts like 64-bit HP-UX, where
591b2973 1330 socklen_t is wider than int (Bug#8277).
401bf9b4
PE
1331 (Fmake_network_process, server_accept_connection):
1332 (wait_reading_process_output, read_process_output):
1333 Likewise.
1334
b93aacde
PE
1335 * process.c: Rename or move locals to avoid shadowing.
1336 (list_processes_1, Fmake_network_process):
1337 (read_process_output_error_handler, exec_sentinel_error_handler):
1338 Rename or move locals.
4dc343ee 1339 (Fmake_network_process): Define label "retry_connect" only if needed.
0da49335 1340 (Fnetwork_interface_info): Fix pointer signedness.
f990b4e5 1341 (process_send_signal): Add cast to avoid pointer signedness problem.
7b808126 1342 (FIRST_PROC_DESC, IF_NON_BLOCKING_CONNECT): Remove unused macros.
c939f91b 1343 (create_process): Use 'volatile' to avoid vfork clobbering (Bug#8298).
b93aacde 1344
af8a867c 1345 Make tparam.h and terminfo.c consistent.
44f230aa
SM
1346 * cm.c (tputs, tgoto, BC, UP): Remove extern decls.
1347 Include tparam.h instead, since it declares them.
af8a867c
PE
1348 * cm.h (PC): Remove extern decl; tparam.h now does this.
1349 * deps.mk (cm.o, terminfo.o): Depend on tparam.h.
1350 * terminfo.c: Include tparam.h, to check interfaces.
1351 (tparm): Make 1st arg a const pointer in decl. Put it at top level.
1352 (tparam): Adjust signature to match interface in tparam.h;
1353 this removes some undefined behavior. Check that outstring and len
1354 are zero, which they always are with Emacs.
1355 * tparam.h (PC, BC, UP): New extern decls.
1356
0248044d 1357 * xftfont.c (xftfont_shape): Now static, and defined only if needed.
001a7ab4 1358 (xftfont_open): Rename locals to avoid shadowing.
0248044d 1359
8ff096c1 1360 * ftfont.c (ftfont_resolve_generic_family): Fix pointer signedness.
a00924bb
PE
1361 (ftfont_otf_capability, ftfont_shape): Omit decls if not needed.
1362 (OTF_TAG_SYM): Omit macro if not needed.
e932860f 1363 (ftfont_list): Remove unused local.
49eaafba
PE
1364 (get_adstyle_property, ftfont_pattern_entity):
1365 (ftfont_lookup_cache, ftfont_open, ftfont_anchor_point):
1366 Rename locals to avoid shadowing.
8ff096c1 1367
e2be39f6
PE
1368 * xfont.c (xfont_list_family): Mark var as initialized.
1369
c9735e30
PE
1370 * xml.c (make_dom): Now static.
1371
8f5201ae
PE
1372 * composite.c (composition_compute_stop_pos): Rename local to
1373 avoid shadowing.
b246f932
PE
1374 (composition_reseat_it): Remove unused locals.
1375 (find_automatic_composition, composition_adjust_point): Likewise.
80e079b2 1376 (composition_update_it): Mark var as initialized.
11b61122
PE
1377 (find_automatic_composition): Mark vars as initialized,
1378 with a FIXME (Bug#8290).
8f5201ae 1379
760fbc2c
PE
1380 character.h: Rename locals to avoid shadowing.
1381 * character.h (PREV_CHAR_BOUNDARY, FETCH_STRING_CHAR_ADVANCE):
1382 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE, FETCH_CHAR_ADVANCE):
1383 (FETCH_CHAR_ADVANCE_NO_CHECK, INC_POS, DEC_POS, BUF_INC_POS):
1384 (BUF_DEC_POS): Be more systematic about renaming local temporaries
1385 to avoid shadowing.
1386
ff08eb85
PE
1387 * textprop.c (property_change_between_p): Remove; unused.
1388
fc7bf025
PE
1389 * intervals.c (interval_start_pos): Now static.
1390
235d7abc
PE
1391 * intervals.h (CHECK_TOTAL_LENGTH): Avoid empty "else".
1392
44f230aa
SM
1393 * atimer.c (start_atimer, append_atimer_lists, set_alarm):
1394 Rename locals to avoid shadowing.
3e7d6594 1395
50060332
PE
1396 * sound.c (wav_play, au_play, Fplay_sound_internal):
1397 Fix pointer signedness.
d01f234b 1398 (alsa_choose_format): Remove unused local var.
c83b8872
PE
1399 (wav_play): Initialize a variable to 0, to prevent undefined
1400 behavior (Bug#8278).
50060332 1401
c4fc4e30
PE
1402 * region-cache.c (insert_cache_boundary): Redo var to avoid shadowing.
1403
918436ed
PE
1404 * region-cache.h (pp_cache): New decl, for gcc -Wmissing-prototypes.
1405
c939f91b
PE
1406 * callproc.c (Fcall_process): Use 'volatile' to avoid vfork
1407 clobbering (Bug#8298).
b9c7f648
PE
1408 * sysdep.c (sys_subshell): Likewise.
1409 Previously, the sys_subshell 'volatile' was incorrectly IF_LINTted out.
7e9123a2 1410
6bd8c144
PE
1411 * lisp.h (child_setup): Now NO_RETURN unless DOS_NT.
1412 This should get cleaned up, so that child_setup has the
1413 same signature on all platforms.
1414
7710357c 1415 * callproc.c (call_process_cleanup): Now static.
cb1d0ef7 1416 (relocate_fd): Rename locals to avoid shadowing.
7710357c 1417
c59da222
CY
14182011-03-22 Chong Yidong <cyd@stupidchicken.com>
1419
1420 * xterm.c (x_clear_frame): Remove XClearWindow call. This appears
1421 not to be necessary, and produces flickering.
1422
66b87493
GM
14232011-03-20 Glenn Morris <rgm@gnu.org>
1424
1425 * config.in: Remove file.
1426
45b6f6d5
JB
14272011-03-20 Juanma Barranquero <lekktu@gmail.com>
1428
1429 * minibuf.c (Vcompleting_read_function): Don't declare, global variables
1430 are now in src/globals.h.
1431 (syms_of_minibuf): Remove spurious & from previous change.
1432
3ec03f7e
LL
14332011-03-20 Leo <sdl.web@gmail.com>
1434
1435 * minibuf.c (completing-read-function): New variable.
1436 (completing-read-default): Rename from completing-read.
1437 (completing-read): Call completing-read-function.
1438
b14e3e21
CY
14392011-03-19 Juanma Barranquero <lekktu@gmail.com>
1440
1441 * xfaces.c (Fx_load_color_file):
1442 Read color file from absolute filename (bug#8250).
1443
f2b726e6
JB
14442011-03-19 Juanma Barranquero <lekktu@gmail.com>
1445
1446 * makefile.w32-in: Update dependencies.
1447
09f6ff02
EZ
14482011-03-17 Eli Zaretskii <eliz@gnu.org>
1449
1450 * makefile.w32-in ($(BLD)/unexw32.$(O)): Depend on $(SRC)/unexec.h.
1451
29a6015a
PE
14522011-03-17 Paul Eggert <eggert@cs.ucla.edu>
1453
a3a6c54e
PE
1454 Fix more problems found by GCC 4.5.2's static checks.
1455
b766f867
PE
1456 * process.c (make_serial_process_unwind, send_process_trap):
1457 (sigchld_handler): Now static.
1458
be02381c
PE
1459 * process.c (allocate_pty): Let PTY_ITERATION declare iteration vars.
1460 That way, the code declares only the vars that it needs.
1461 * s/aix4-2.h (PTY_ITERATION): Declare iteration vars.
1462 * s/cygwin.h (PTY_ITERATION): Likewise.
1463 * s/darwin.h (PTY_ITERATION): Likewise.
1464 * s/gnu-linux.h (PTY_ITERATION): Likewise.
1465
57048744
PE
1466 * s/irix6-5.h (PTY_OPEN): Declare stb, to loosen coupling.
1467 * process.c (allocate_pty): Don't declare stb unless it's needed.
1468
7914961c 1469 * bytecode.c (MAYBE_GC): Rewrite so as not to use empty "else".
615f2d59
PE
1470 (CONSTANTLIM): Remove; unused.
1471 (METER_CODE, Bscan_buffer, Bread_char, Bset_mark):
1472 Define only if needed.
7914961c 1473
b3967b18
PE
1474 * unexelf.c (unexec): Name an expression,
1475 to avoid gcc -Wbad-function-cast warning.
9ae71512
PE
1476 Use a different way to cause a compilation error if anyone uses
1477 n rather than nn, a way that does not involve shadowing.
73366a00 1478 (ELF_BSS_SECTION_NAME, OLD_PROGRAM_H): Remove; unused.
b3967b18 1479
29a6015a
PE
1480 * deps.mk (unexalpha.o): Remove; unused.
1481
43cfc33e 1482 New file unexec.h, the (simple) interface for unexec (Bug#8267).
7feda0d2 1483 * unexec.h: New file.
ce701a33
PE
1484 * deps.mk (emacs.o, unexaix.o, unexcw.o, unexcoff.o, unexelf.o):
1485 (unexhp9k800.o, unexmacosx.o, unexsol.o, unexw32.o):
1486 Depend on unexec.h.
1487 * emacs.c [!defined CANNOT_DUMP]: Include unexec.h.
1488 * unexaix.c, unexcoff.c, unexcw.c, unexelf.c, unexhp9k800.c:
1489 * unexmacosx.c, unexsol.c, unexw32.c: Include unexec.h.
381259ef 1490 Change as necessary to match prototype in unexec.h.
ce701a33 1491
01f44d5a
PE
1492 * syntax.c (Fforward_comment, scan_lists): Rename locals to avoid
1493 shadowing.
4f63c6bb 1494 (back_comment, skip_chars): Mark vars as initialized.
01f44d5a 1495
a6670b0b
PE
1496 * character.h (FETCH_STRING_CHAR_ADVANCE_NO_CHECK, BUF_INC_POS):
1497 Rename locals to avoid shadowing.
1498
cef2010d 1499 * lread.c (read1): Rewrite so as not to use empty "else".
0902fe45 1500 (Fload, readevalloop, read1): Rename locals to avoid shadowing.
cef2010d 1501
d4d7173a
PE
1502 * print.c (Fredirect_debugging_output): Fix pointer signedess.
1503
f08b802a
PE
1504 * lisp.h (debug_output_compilation_hack): Add decl here, to avoid
1505 warning when compiling print.c.
1506
3ddb0639
PE
1507 * font.c (font_unparse_fcname): Abort in an "impossible" situation
1508 instead of using an uninitialized var.
5ad03b97 1509 (font_sort_entities): Mark var as initialized.
3ddb0639 1510
170a2692
PE
1511 * character.h (FETCH_CHAR_ADVANCE): Rename locals to avoid shadowing.
1512
e663c700
PE
1513 * font.c (font_unparse_xlfd): Don't mix pointers to variables with
1514 pointers to constants.
89bc529a 1515 (font_parse_fcname): Remove unused vars.
7b81e2d0 1516 (font_delete_unmatched): Now static.
ea838e10 1517 (font_get_spec): Remove; unused.
13a547c6
PE
1518 (font_style_to_value, font_prop_validate_style, font_unparse_fcname):
1519 (font_update_drivers, Ffont_get_glyphs, font_add_log):
1520 Rename or move locals to avoid shadowing.
e663c700 1521
2a80c887 1522 * fns.c (require_nesting_list, require_unwind): Now static.
612f56df 1523 (Ffillarray): Rename locals to avoid shadowing.
2a80c887 1524
1384fa33 1525 * floatfns.c (domain_error2): Define only if needed.
a885e2ed 1526 (Ffrexp, Fldexp): Rename locals to avoid shadowing.
1384fa33 1527
8b2c52e9
PE
1528 * alloc.c (mark_backtrace): Move decl from here ...
1529 * lisp.h: ... to here, so that it can be checked.
1530
475545b5 1531 * eval.c (call_debugger, do_debug_on_call, grow_specpdl): Now static.
d28a2170 1532 (Fdefvar): Rewrite so as not to use empty "else".
cfcbfb1a
PE
1533 (lisp_indirect_variable): Name an expression,
1534 to avoid gcc -Wbad-function-cast warning.
1faed8ae 1535 (Fdefvar): Rename locals to avoid shadowing.
475545b5 1536
b1349114 1537 * callint.c (quotify_arg, quotify_args): Now static.
a3e8cbda 1538 (Fcall_interactively): Rename locals to avoid shadowing.
b0e80955 1539 Use const pointer when appropriate.
b1349114 1540
a2928364
PE
1541 * lisp.h (get_system_name, get_operating_system_release):
1542 Move decls here, to check interfaces.
1543 * process.c (get_operating_system_release): Move decl to lisp.h.
1544 * xrdb.c (get_system_name): Likewise.
63c5d10b
PE
1545 * editfns.c (init_editfns, Fuser_login_name, Fuser_uid):
1546 (Fuser_real_uid, Fuser_full_name): Remove unnecessary casts,
1547 some of which prompt warnings from gcc -Wbad-function-cast.
545b49b4
PE
1548 (Fformat_time_string, Fencode_time, Finsert_char):
1549 (Ftranslate_region_internal, Fformat):
1550 Rename or remove local vars to avoid shadowing.
9710023e 1551 (Ftranslate_region_internal): Mark var as initialized.
63c5d10b 1552
a415e694
PE
1553 * doc.c (Fdocumentation, Fsnarf_documentation): Move locals to
1554 avoid shadowing.
1555
8ef4622d
PE
1556 * lisp.h (eassert): Check that the argument compiles, even if
1557 ENABLE_CHECKING is not defined.
1558
946f9a5b
PE
1559 * data.c (Findirect_variable): Name an expression, to avoid
1560 gcc -Wbad-function-cast warning.
112396d6 1561 (default_value, arithcompare, arith_driver, arith_error): Now static.
b9b84fa9 1562 (store_symval_forwarding): Rename local to avoid shadowing.
44f230aa
SM
1563 (Fmake_variable_buffer_local, Fmake_local_variable):
1564 Mark variables as initialized.
52746918 1565 (do_blv_forwarding, do_symval_forwarding): Remove; unused.
946f9a5b 1566
e5aab7e7 1567 * alloc.c (check_cons_list): Do not define unless GC_CHECK_CONS_LIST.
ae35e756
PE
1568 (Fmake_vector, Fvector, Fmake_byte_code, Fgarbage_collect):
1569 Rename locals to avoid shadowing.
dff45157
PE
1570 (mark_stack): Move local variables into the #ifdef region where
1571 they're used.
7bc26fdb
PE
1572 (BLOCK_INPUT_ALLOC, UNBLOCK_INPUT_ALLOC): Define only if
1573 ! defined SYSTEM_MALLOC && ! defined SYNC_INPUT, as they are not
1574 needed otherwise.
1575 (CHECK_ALLOCATED): Define only if GC_CHECK_MARKED_OBJECTS.
1576 (GC_STRING_CHARS): Remove; not used.
d40d4be1 1577 (Fmemory_limit): Cast sbrk's returned value to char *.
ae35e756 1578
e5aab7e7
PE
1579 * lisp.h (check_cons_list): Declare if GC_CHECK_CONS_LIST; this
1580 avoids undefined behavior in theory.
1581
4da60324
PE
1582 * regex.c (IF_LINT): Add defn, for benefit of ../lib-src.
1583
88043301
PE
1584 Use functions, not macros, for up- and down-casing (Bug#8254).
1585 * buffer.h (DOWNCASE_TABLE, UPCASE_TABLE, DOWNCASE, UPPERCASEP):
1586 (NOCASEP, LOWERCASEP, UPCASE, UPCASE1): Remove. All callers changed
1587 to use the following functions instead of these macros.
1588 (downcase): Adjust to lack of DOWNCASE_TABLE. Return int, not
1589 EMACS_INT, since callers assume the returned value fits in int.
1590 (upcase1): Likewise, for UPCASE_TABLE.
1591 (uppercasep, lowercasep, upcase): New static inline functions.
0da09c43 1592 * editfns.c (Fchar_equal): Remove no-longer-needed workaround for
db69b0cd 1593 the race-condition problem in the old DOWNCASE.
88043301 1594
19ed5445
PE
1595 * regex.c (CHARSET_LOOKUP_RANGE_TABLE_RAW, POP_FAILURE_REG_OR_COUNT):
1596 Rename locals to avoid shadowing.
1597 (regex_compile, re_match_2_internal): Move locals to avoid shadowing.
abbd1bcf
PE
1598 (regex_compile, re_search_2, re_match_2_internal):
1599 Remove unused local vars.
952db0d7
PE
1600 (FREE_VAR): Rewrite so as not to use empty "else",
1601 which gcc can warn about.
da053e48 1602 (regex_compile, re_match_2_internal): Mark locals as initialized.
b313f9d8
PE
1603 (RETALLOC_IF): Define only if needed.
1604 (WORDCHAR_P): Likewise. This one is never needed, but is used
1605 only in a comment talking about a compiler bug, so put inside
1606 the #if 0 of that comment.
1607 (CHARSET_LOOKUP_BITMAP, FAIL_STACK_FULL, RESET_FAIL_STACK):
1608 (PUSH_FAILURE_ELT, BUF_PUSH_3, STOP_ADDR_VSTRING):
1609 Remove; unused.
19ed5445 1610
1f3561e4 1611 * search.c (boyer_moore): Rename locals to avoid shadowing.
76ef09b7
PE
1612 * character.h (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE):
1613 (PREV_CHAR_BOUNDARY): Likewise.
1f3561e4 1614
ded6f8f7
PE
1615 * search.c (simple_search): Remove unused var.
1616
dbd37a95
PE
1617 * dired.c (compile_pattern): Move decl from here ...
1618 * lisp.h: ... to here, so that it can be checked.
1619 (struct re_registers): New forward decl.
1620
7e47afad
PE
1621 * character.h (INC_POS, DEC_POS): Rename locals to avoid shadowing.
1622
85f24f61
PE
1623 * indent.c (MULTIBYTE_BYTES_WIDTH): New args bytes, width.
1624 All uses changed.
1625 (MULTIBYTE_BYTES_WIDTH, scan_for_column, compute_motion):
1626 Rename locals to avoid shadowing.
5671df8f 1627 (Fvertical_motion): Mark locals as initialized.
85f24f61 1628
181aa2be 1629 * casefiddle.c (casify_object, casify_region): Now static.
e45a141a 1630 (casify_region): Mark local as initialized.
181aa2be 1631
930d429c
PE
1632 * cmds.c (internal_self_insert): Rename local to avoid shadowing.
1633
7082eac6
PE
1634 * lisp.h (GCPRO2_VAR, GCPRO3_VAR, GCPRO4_VAR, GCPRO5_VAR, GCPRO6_VAR):
1635 New macros, so that the caller can use some names other than
1636 gcpro1, gcpro2, etc.
1637 (GCPRO2, GCPRO3, GCPRO4, GCPRO5, GCPRO6): Reimplement in terms
1638 of the new macros.
1639 (GCPRO1_VAR, UNGCPRO_VAR): Change the meaning of the second
1640 argument, for consistency with GCPRO2_VAR, etc: it is now the
1641 prefix of the variable, not the variable itself. All uses
1642 changed.
38b2c076
PE
1643 * dired.c (directory_files_internal, file_name_completion):
1644 Rename locals to avoid shadowing.
1645
15206ed9
PE
1646 Fix a race condition diagnosed by gcc -Wsequence-point (Bug#8254).
1647 An expression of the form (DOWNCASE (x) == DOWNCASE (y)), found in
1648 dired.c's scmp function, had undefined behavior.
1649 * lisp.h (DOWNCASE_TABLE, UPCASE_TABLE, DOWNCASE, UPPERCASEP):
1650 (NOCASEP, LOWERCASEP, UPCASE, UPCASE1): Move from here ...
1651 * buffer.h: ... to here, because these macros use current_buffer,
1652 and the new implementation with inline functions needs to have
1653 current_buffer in scope now, rather than later when the macros
1654 are used.
1655 (downcase, upcase1): New static inline functions.
1656 (DOWNCASE, UPCASE1): Reimplement using these functions.
1657 This avoids undefined behavior in expressions like
1658 DOWNCASE (x) == DOWNCASE (y), which previously suffered
1659 from race conditions in accessing the global variables
1660 case_temp1 and case_temp2.
1661 * casetab.c (case_temp1, case_temp2): Remove; no longer needed.
1662 * lisp.h (case_temp1, case_temp2): Remove their decls.
1663 * character.h (ASCII_CHAR_P): Move from here ...
1664 * lisp.h: ... to here, so that the inline functions mentioned
1665 above can use them.
1666
4a6bea26
PE
1667 * dired.c (directory_files_internal_unwind): Now static.
1668
f14b7e14
PE
1669 * fileio.c (file_name_as_directory, directory_file_name):
1670 (barf_or_query_if_file_exists, auto_save_error, auto_save_1):
1671 Now static.
2893f146
PE
1672 (file_name_as_directory): Use const pointers when appropriate.
1673 (Fexpand_file_name): Likewise. In particular, newdir might
1674 point at constant storage, so make it a const pointer.
fd4ead52 1675 (Fmake_directory_internal, Fread_file_name): Remove unused vars.
b14aac08
PE
1676 (Ffile_selinux_context, Fset_file_selinux_context): Fix pointer
1677 signedness issues.
f839df0c
PE
1678 (Fset_file_times, Finsert_file_contents, auto_save_error):
1679 Rename locals to avoid shadowing.
f14b7e14 1680
5716756e 1681 * minibuf.c (choose_minibuf_frame_1): Now static.
62137a95
PE
1682 (Ftry_completion, Fall_completions): Rename or remove locals
1683 to avoid shadowing.
5716756e 1684
b4c3046a
PE
1685 * marker.c (bytepos_to_charpos): Remove; unused.
1686
b45db522
PE
1687 * lisp.h (verify_bytepos, count_markers): New decls,
1688 so that gcc does not warn that these functions aren't declared.
1689
85876d07
PE
1690 * insdel.c (check_markers, make_gap_larger, make_gap_smaller):
1691 (reset_var_on_error, Fcombine_after_change_execute_1): Now static.
f0cb4a60 1692 (CHECK_MARKERS): Redo to avoid gcc -Wempty-body diagnostic.
40ef059e 1693 (copy_text): Remove unused local var.
85876d07 1694
03d78a21 1695 * filelock.c (within_one_second): Now static.
b3dd38ab 1696 (lock_file_1): Rename local to avoid shadowing.
03d78a21 1697
5df8f01b
PE
1698 * buffer.c (fix_overlays_before): Mark locals as initialized.
1699 (fix_start_end_in_overlays): Likewise. This function should be
1700 simplified by using pointers-to-pointers, but that's a different
1701 matter.
b1d876f1 1702 (switch_to_buffer_1): Now static.
8f54f30a
PE
1703 (Fkill_buffer, record_buffer, Fbury_buffer, Fset_buffer_multibyte):
1704 (report_overlay_modification): Rename locals to avoid shadowing.
c3bd59b5 1705
a70072c9 1706 * sysdep.c (system_process_attributes): Rename vars to avoid shadowing.
fbd02d7b 1707 Fix pointer signedness issue.
edced198
PE
1708 (sys_subshell): Mark local as volatile if checking for lint,
1709 to suppress a gcc -Wclobbered warning that does not seem to be right.
15dfd3d9 1710 (MAXPATHLEN): Define only if needed.
a70072c9 1711
a0977c44
PE
1712 * process.c (serial_open, serial_configure): Move decls from here ...
1713 * systty.h: ... to here, so that they can be checked.
1714
a884fdcc
PE
1715 * fns.c (get_random, seed_random): Move extern decls from here ...
1716 * lisp.h: ... to here, so that they can be checked.
1717
604efe86 1718 * sysdep.c (reset_io): Now static.
b8950c94 1719 (wait_for_termination_signal): Remove; unused.
604efe86 1720
38fc62d9
PE
1721 * keymap.c (keymap_parent, keymap_memberp, map_keymap_internal):
1722 (copy_keymap_item, append_key, push_text_char_description):
1723 Now static.
1004a21a 1724 (Fwhere_is_internal): Don't test CONSP (sequences) unnecessarily.
dbbb8427 1725 (DENSE_TABLE_SIZE): Remove; unused.
c1141155
PE
1726 (get_keymap, access_keymap, Fdefine_key, Fwhere_is_internal):
1727 (describe_map_tree):
1728 Rename locals to avoid shadowing.
38fc62d9 1729
2f2650da
PE
1730 * keyboard.c: Declare functions static if they are not used elsewhere.
1731 (echo_char, echo_dash, cmd_error, top_level_2):
1732 (poll_for_input, handle_async_input): Now static.
69a058fa
PE
1733 (read_char, kbd_buffer_get_event, make_lispy_position):
1734 (make_lispy_event, make_lispy_movement, apply_modifiers):
1735 (decode_keyboard_code, tty_read_avail_input, menu_bar_items):
1736 (parse_tool_bar_item, read_key_sequence, Fread_key_sequence):
1737 (Fread_key_sequence_vector): Rename locals to avoid shadowing.
c8a06054 1738 (read_key_sequence, read_char): Mark locals as initialized.
3ac94672 1739 (Fexit_recursive_edit, Fabort_recursive_edit): Mark with NO_RETURN.
2f2650da 1740
a053e86c 1741 * keyboard.h (make_ctrl_char): New decl.
da2f2dd9
PE
1742 (mark_kboards): Move decl here ...
1743 * alloc.c (mark_kboards): ... from here.
a053e86c 1744
4752793e
PE
1745 * lisp.h (force_auto_save_soon): New decl.
1746
74f10ca7 1747 * emacs.c (init_cmdargs): Rename local to avoid shadowing.
244fc23d
PE
1748 (DEFINE_DUMMY_FUNCTION): New macro.
1749 (__do_global_ctors, __do_global_ctors_aux, __do_global_dtors, __main):
1750 Use it.
c03cd23f
PE
1751 (main): Add casts to avoid warnings
1752 if GCC considers string literals to be constants.
74f10ca7 1753
022e70d4
PE
1754 * lisp.h (fatal_error_signal): Add decl, since it's exported.
1755
59d6fe83
PE
1756 * dbusbind.c: Pointer signedness fixes.
1757 (xd_signature, xd_append_arg, xd_initialize):
1758 (Fdbus_call_method, Fdbus_call_method_asynchronously):
1759 (Fdbus_method_return_internal, Fdbus_method_error_internal):
1760 (Fdbus_send_signal, xd_read_message_1, Fdbus_register_service):
1761 (Fdbus_register_signal): Use SSDATA when the context wants char *.
1762
78320123
PE
1763 * dbusbind.c (Fdbus_init_bus): Add cast to avoid warning
1764 if GCC considers string literals to be constants.
49cebcca 1765 (Fdbus_register_service, Fdbus_register_method): Remove unused vars.
78320123 1766
35ac2a97
SM
17672011-03-16 Stefan Monnier <monnier@iro.umontreal.ca>
1768
fb103ca9
SM
1769 * print.c (PRINT_CIRCLE_CANDIDATE_P): New macro.
1770 (print_preprocess, print_object): New macro to fix last change.
1771
35ac2a97
SM
1772 * print.c (print_preprocess): Don't forget font objects.
1773
62973b41
JB
17742011-03-16 Juanma Barranquero <lekktu@gmail.com>
1775
1776 * emacs.c (USAGE3): Doc fixes.
1777
0e48bb22
AS
17782011-03-15 Andreas Schwab <schwab@linux-m68k.org>
1779
1780 * coding.c (detect_coding_iso_2022): Reorganize code to clarify
1781 structure.
1782
7684e57b
JB
17832011-03-14 Juanma Barranquero <lekktu@gmail.com>
1784
1785 * lisp.h (VWindow_system, Qfile_name_history):
1786 * keyboard.h (lispy_function_keys) [WINDOWSNT]:
1787 * w32term.h (w32_system_caret_hwnd, w32_system_caret_height)
1788 (w32_system_caret_x, w32_system_caret_y): Declare extern.
1789
1790 * w32select.c: Don't #include "keyboard.h".
c96bbc66 1791 (run_protected): Add extern declaration for waiting_for_input.
7684e57b
JB
1792
1793 * w32.c (Qlocal, noninteractive1, inhibit_window_system):
1794 * w32console.c (detect_input_pending, read_input_pending)
1795 (encode_terminal_code):
1796 * w32fns.c (quit_char, lispy_function_keys, Qtooltip)
1797 (w32_system_caret_hwnd, w32_system_caret_height, w32_system_caret_x)
1798 (w32_system_caret_y, Qfile_name_history):
1799 * w32font.c (w32font_driver, QCantialias, QCotf, QClang):
1800 * w32inevt.c (reinvoke_input_signal, lispy_function_keys):
1801 * w32menu.c (Qmenu_bar, QCtoggle, QCradio, Qoverriding_local_map)
1802 (Qoverriding_terminal_local_map, Qmenu_bar_update_hook):
1803 * w32proc.c (Qlocal, report_file_error):
1804 * w32term.c (Vwindow_system, updating_frame):
1805 * w32uniscribe.c (initialized, uniscribe_font_driver):
1806 Remove unneeded extern declarations.
1807
2aa46d6c
CY
18082011-03-14 Chong Yidong <cyd@stupidchicken.com>
1809
c96bbc66 1810 * buffer.c (Fmake_indirect_buffer): Fix incorrect assertions.
2aa46d6c 1811
cffc6f3b
CY
18122011-03-13 Chong Yidong <cyd@stupidchicken.com>
1813
1814 * buffer.h (BUF_BEGV, BUF_BEGV_BYTE, BUF_ZV, BUF_ZV_BYTE, BUF_PT)
1815 (BUF_PT_BYTE): Rewrite to handle indirect buffers (Bug#8219).
1816 These macros can no longer be used for assignment.
1817
44f230aa
SM
1818 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer):
1819 Assign struct members directly, instead of using BUF_BEGV etc.
cffc6f3b
CY
1820 (record_buffer_markers, fetch_buffer_markers): New functions for
1821 recording and fetching special buffer markers.
1822 (set_buffer_internal_1, set_buffer_temp): Use them.
1823
1824 * lread.c (unreadchar): Use SET_BUF_PT_BOTH.
1825
1826 * insdel.c (adjust_point): Use SET_BUF_PT_BOTH.
1827
1828 * intervals.c (temp_set_point_both): Use SET_BUF_PT_BOTH.
1829 (get_local_map): Use SET_BUF_BEGV_BOTH and SET_BUF_ZV_BOTH.
1830
1831 * xdisp.c (hscroll_window_tree):
1832 (reconsider_clip_changes): Use PT instead of BUF_PT.
1833
d251f04b
EZ
18342011-03-13 Eli Zaretskii <eliz@gnu.org>
1835
1836 * makefile.w32-in ($(BLD)/editfns.$(O)): Depend on
1837 $(EMACS_ROOT)/lib/intprops.h.
1838
f0c77cd1
PE
18392011-03-13 Paul Eggert <eggert@cs.ucla.edu>
1840
3eca4629
PE
1841 Fix more problems found by GCC 4.5.2's static checks.
1842
7c86ee98
PE
1843 * gtkutil.c (xg_get_pixbuf_from_pixmap): Add cast from char *
1844 to unsigned char * to avoid compiler diagnostic.
b0afc268
PE
1845 (xg_free_frame_widgets): Make it clear that a local variable is
1846 needed only if USE_GTK_TOOLTIP.
01e0b5ad
PE
1847 (gdk_window_get_screen): Make it clear that this macro is needed
1848 only if USE_GTK_TOOLTIP.
1e5524e7
PE
1849 (int_gtk_range_get_value): New function, which avoids a diagnostic
1850 from gcc -Wbad-function-cast.
1851 (xg_set_toolkit_scroll_bar_thumb): Use it.
1852 (xg_tool_bar_callback, xg_tool_item_stale_p): Rewrite to avoid
1853 diagnostic from gcc -Wbad-function-cast.
65dc836c
PE
1854 (get_utf8_string, xg_get_file_with_chooser):
1855 Rename locals to avoid shadowing.
1856 (create_dialog): Move locals to avoid shadowing.
7c86ee98 1857
41729b81
PE
1858 * xgselect.c (xg_select): Remove unused var.
1859
f0c77cd1
PE
1860 * image.c (four_corners_best): Mark locals as initialized.
1861 (gif_load): Initialize transparent_p to zero (Bug#8238).
1862 Mark another local as initialized.
ec6cf4c6 1863 (my_png_error, my_error_exit): Mark with NO_RETURN.
f0c77cd1 1864
ce0ad53d 1865 * image.c (clear_image_cache): Now static.
d5d5a617 1866 (DIM, HAVE_STDLIB_H_1): Remove unused macros.
e22cffbc 1867 (xpm_load): Redo to avoid "discards qualifiers" gcc warning.
77a765fd
PE
1868 (x_edge_detection): Remove unnecessary cast that
1869 gcc -Wbad-function-cast diagnoses.
2037898d 1870 (gif_load): Fix pointer signedness.
6ae141d6
PE
1871 (clear_image_cache, xbm_read_bitmap_data, x_detect_edges):
1872 (jpeg_load, gif_load): Rename locals to avoid shadowing.
ce0ad53d 1873
33383987 18742011-03-12 Paul Eggert <eggert@cs.ucla.edu>
3eca4629 1875
d32df629
PE
1876 Improve quality of tests for time stamp overflow.
1877 For example, without this patch (encode-time 0 0 0 1 1
1878 1152921504606846976) returns the obviously-bogus value (-948597
1879 62170) on my RHEL 5.5 x86-64 host. With the patch, it correctly
1880 reports time overflow. See
1881 <http://lists.gnu.org/archive/html/emacs-devel/2011-03/msg00470.html>.
b8d9bd41
PE
1882 * deps.mk (editfns.o): Depend on ../lib/intprops.h.
1883 * editfns.c: Include limits.h and intprops.h.
1884 (TIME_T_MIN, TIME_T_MAX): New macros.
1885 (time_overflow): Move earlier, to before first use.
1886 (hi_time, lo_time): New functions, for an accurate test for
1887 out-of-range times.
1888 (Fcurrent_time, Fget_internal_run_time, make_time): Use them.
1889 (Fget_internal_run_time): Don't assume time_t fits in int.
1890 (make_time): Use list2 instead of Fcons twice.
1891 (Fdecode_time): More accurate test for out-of-range times.
1892 (check_tm_member): New function.
1893 (Fencode_time): Use it, to test for out-of-range times.
d32df629
PE
1894 (lisp_time_argument): Don't rely on undefined left-shift and
1895 right-shift behavior when checking for time stamp overflow.
8be6f318 1896
fe31d94c
PE
1897 * editfns.c (time_overflow): New function, refactoring common code.
1898 (Fformat_time_string, Fdecode_time, Fencode_time):
1899 (Fcurrent_time_string): Use it.
1900
8be6f318
PE
1901 Move 'make_time' to be next to its inverse 'lisp_time_argument'.
1902 * dired.c (make_time): Move to ...
1903 * editfns.c (make_time): ... here.
1904 * systime.h: Note the move.
1905
09d9db2c 19062011-03-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
c47cbdfd 1907
126bc0dc
YM
1908 * fringe.c (update_window_fringes): Remove unused variables.
1909
c47cbdfd
YM
1910 * unexmacosx.c (copy_data_segment): Also copy __got section.
1911 (Bug#8223)
1912
7ac80be9
EZ
19132011-03-12 Eli Zaretskii <eliz@gnu.org>
1914
c96bbc66 1915 * termcap.c [MSDOS]: Include "msdos.h".
058e5dad
EZ
1916 (find_capability, tgetnum, tgetflag, tgetstr, tputs, tgetent):
1917 Constify `char *' arguments and their references according to
1918 prototypes in tparam.h.
1919
ecb0f94d 1920 * deps.mk (termcap.o): Depend on tparam.h and msdos.h.
058e5dad 1921
7ac80be9
EZ
1922 * msdos.c (XMenuAddPane): 3rd argument is `const char *' now.
1923 Adapt all references accordingly.
1924
1925 * msdos.h (XMenuAddPane): 3rd argument is `const char *' now.
1926
ef1fd07e
TT
19272011-03-11 Tom Tromey <tromey@redhat.com>
1928
1929 * buffer.c (syms_of_buffer): Remove obsolete comment.
1930
7ef4b50c
EZ
19312011-03-11 Eli Zaretskii <eliz@gnu.org>
1932
1933 * termhooks.h (encode_terminal_code): Declare prototype.
1934
1935 * msdos.c (encode_terminal_code): Don't declare prototype.
1936
1937 * term.c (encode_terminal_code): Now external again, used by
1938 w32console.c and msdos.c.
1939
44f230aa
SM
1940 * makefile.w32-in ($(BLD)/term.$(O), ($(BLD)/tparam.$(O)):
1941 Depend on $(SRC)/tparam.h, see 2011-03-11T07:24:21Z!eggert@cs.ucla.edu.
7ef4b50c 1942
4b1ec863 19432011-03-11 Paul Eggert <eggert@cs.ucla.edu>
f78faa98 1944
1714f52b 1945 Fix some minor problems found by GCC 4.5.2's static checks.
83316bf4 1946
4b1ec863
PE
1947 * fringe.c (update_window_fringes): Mark locals as initialized
1948 (Bug#8227).
1949 (destroy_fringe_bitmap, init_fringe_bitmap): Now static.
bf60f616 1950
524c7aa6
PE
1951 * alloc.c (mark_fringe_data): Move decl from here ...
1952 * lisp.h (mark_fringe_data) [HAVE_WINDOW_SYSTEM]: ... to here,
1953 to check its interface.
1954 (init_fringe_once): Do not declare unless HAVE_WINDOW_SYSTEM.
1955
a5c0af81 1956 * fontset.c (free_realized_fontset): Now static.
7519b8cd 1957 (Fset_fontset_font): Rename local to avoid shadowing.
cc6e5db1 1958 (fontset_font): Mark local as initialized.
a9a06e0b 1959 (FONTSET_SPEC, FONTSET_REPERTORY, RFONT_DEF_REPERTORY): Remove; unused.
a5c0af81 1960
b4716021
PE
1961 * xrdb.c: Include "xterm.h", to check x_load_resources's interface.
1962
811e9bac 1963 * xselect.c (x_disown_buffer_selections): Remove; not used.
7b83e2f1 1964 (TRACE3) [!defined TRACE_SELECTION]: Remove; not used.
aa0daa9f
PE
1965 (x_own_selection, Fx_disown_selection_internal): Rename locals
1966 to avoid shadowing.
1967 (x_handle_dnd_message): Remove local to avoid shadowing.
811e9bac 1968
7e3ab302
PE
1969 * lisp.h (GCPRO1_VAR, UNGCPRO_VAR): New macros,
1970 so that the caller can use some name other than gcpro1.
1971 (GCPRO1, UNGCPRO): Reimplement in terms of the new macros.
58d2d479
PE
1972 * xfns.c (Fx_create_frame, x_create_tip_frame, Fx_show_tip):
1973 (Fx_backspace_delete_keys_p):
1974 Use them to avoid shadowing, and rename vars to avoid shadowing.
1975 (x_decode_color, x_set_name, x_window): Now static.
6b437900 1976 (Fx_create_frame): Add braces to silence GCC warning.
c0951e53 1977 (Fx_file_dialog, Fx_select_font): Fix pointer signedness.
06b0c8a0
PE
1978 (x_real_positions, xg_set_icon_from_xpm_data, x_create_tip_frame):
1979 Remove unused locals.
7e3ab302
PE
1980 (Fx_create_frame, x_create_tip_frame, Fx_show_tip):
1981 (Fx_backspace_delete_keys_p): Rename locals to avoid shadowing.
1982 Some of these renamings use the new GCPRO1_VAR and UNGCPRO_VAR
1983 macros.
f78faa98 1984
e2b13473
PE
1985 * xterm.h (x_mouse_leave): New decl.
1986
77f23912
PE
1987 * xterm.c (x_copy_dpy_color, x_focus_on_frame, x_unfocus_frame):
1988 Remove unused functions.
cdf4ba58
PE
1989 (x_shift_glyphs_for_insert, XTflash, XTring_bell):
1990 (x_calc_absolute_position): Now static.
7411c686 1991 (XTread_socket): Don't define label "out" unless it's used.
2b07bcff 1992 Don't declare local "event" unless it's used.
ed7bf3a5
PE
1993 (x_iconify_frame, x_free_frame_resources): Don't declare locals
1994 unless they are used.
38d0b34a
PE
1995 (XEMBED_VERSION, xembed_set_info): Don't define unless needed.
1996 (x_fatal_error_signal): Remove; not used.
a6067996
PE
1997 (x_draw_image_foreground, redo_mouse_highlight, XTmouse_position):
1998 (x_scroll_bar_report_motion, handle_one_xevent, x_draw_bar_cursor):
1999 (x_error_catcher, x_connection_closed, x_error_handler):
2000 (x_error_quitter, xembed_send_message, x_iconify_frame):
2001 (my_log_handler): Rename locals to avoid shadowing.
28f1c698 2002 (x_delete_glyphs, x_ins_del_lines): Mark with NO_RETURN.
2a8fade0 2003 (x_connection_closed): Tell GCC not to suggest NO_RETURN.
77f23912 2004
44f230aa
SM
2005 * xfaces.c (clear_face_cache, Fx_list_fonts, Fface_font):
2006 Rename or move locals to avoid shadowing.
6b463e58 2007 (tty_defined_color, merge_face_heights): Now static.
5967d051 2008 (free_realized_faces_for_fontset): Remove; not used.
1e9966ea
PE
2009 (Fx_list_fonts): Mark variable that gcc -Wuninitialized
2010 does not deduce is never used uninitialized.
73719eba
PE
2011 (STRDUPA, LSTRDUPA, FONT_POINT_SIZE_QUANTUM): Remove; not used.
2012 (LFACEP): Define only if XASSERTS, as it's not needed otherwise.
071048a3 2013
426994c3 2014 * terminal.c (store_terminal_param): Now static.
5489860b 2015
032f1620 2016 * xmenu.c (menu_highlight_callback): Now static.
9d66f88e 2017 (set_frame_menubar): Remove unused local.
d4323972 2018 (xmenu_show): Rename parameter to avoid shadowing.
6d1f7fee
PE
2019 (xmenu_show, xdialog_show, xmenu_show): Make local pointers "const"
2020 since they might point to immutable storage.
281585b0
PE
2021 (next_menubar_widget_id): Declare only if USE_X_TOOLKIT,
2022 since it's unused otherwise.
032f1620 2023
367c19e5 2024 * xdisp.c (produce_glyphless_glyph): Initialize lower_xoff.
53df7c11 2025 Add a FIXME, since the code still doesn't look right. (Bug#8215)
9f36b9fd
PE
2026 (Fcurrent_bidi_paragraph_direction): Simplify slightly; this
2027 avoids a gcc -Wuninitialized diagnostic.
0e086e8f 2028 (display_line, BUILD_COMPOSITE_GLYPH_STRING, draw_glyphs):
44a3a108
PE
2029 (note_mouse_highlight): Mark variables that gcc -Wuninitialized
2030 does not deduce are never used uninitialized.
70739cbe 2031
07b48fa9
PE
2032 * lisp.h (IF_LINT): New macro, copied from ../lib-src/emacsclient.c.
2033
8868a238 2034 * xdisp.c (redisplay_window): Rename local to avoid shadowing.
4554d213
PE
2035 * window.c (window_loop, size_window):
2036 (run_window_configuration_change_hook, enlarge_window): Likewise.
8868a238 2037
7e5cf297 2038 * window.c (display_buffer): Now static.
d6550a9f
PE
2039 (size_window): Mark variables that gcc -Wuninitialized
2040 does not deduce are never used uninitialized.
a586633d
PE
2041 * window.h (check_all_windows): New decl, to forestall
2042 gcc -Wmissing-prototypes diagnostic.
5b555da1 2043 * dispextern.h (bidi_dump_cached_states): Likewise.
7e5cf297 2044
f6095868
PE
2045 * charset.h (CHECK_CHARSET_GET_CHARSET): Rename locals to avoid
2046 shadowing.
2047 * charset.c (map_charset_for_dump, Fchar_charset): Likewise.
726929c4
PE
2048 Include <limits.h>.
2049 (Fsort_charsets): Redo min/max calculation to shorten the code a bit
2050 and to avoid gcc -Wuninitialized warning.
89ef49df
PE
2051 (load_charset_map): Mark variables that gcc -Wuninitialized
2052 does not deduce are never used uninitialized.
53df7c11 2053 (load_charset): Abort instead of using uninitialized var (Bug#8229).
f6095868 2054
f38b440c
PE
2055 * coding.c (coding_set_source, coding_set_destination):
2056 Use "else { /* comment */ }" rather than "else /* comment */;"
2057 for clarity, and to avoid gcc -Wempty-body warning.
2735d060
PE
2058 (Fdefine_coding_system_internal): Don't redeclare 'i' inside
2059 a block, when the outer 'i' will do.
2060 (decode_coding_utf_8, decode_coding_utf_16, detect_coding_emacs_mule):
2061 (emacs_mule_char, decode_coding_emacs_mule, detect_coding_iso_2022):
2062 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5):
2063 (decode_coding_raw_text, decode_coding_charset, get_translation_table):
2064 (Fdecode_sjis_char, Fdefine_coding_system_internal):
2065 Rename locals to avoid shadowing.
2066 * character.h (FETCH_STRING_CHAR_ADVANCE): Likewise.
e2f1bab9
PE
2067 * coding.c (emacs_mule_char, encode_invocation_designation):
2068 Now static, since they're not used elsewhere.
413bb2db 2069 (decode_coding_iso_2022): Add "default: abort ();" as a safety check.
c4a63b12 2070 (decode_coding_object, encode_coding_object, detect_coding_system):
ee05f961
PE
2071 (decode_coding_emacs_mule): Mark variables that gcc
2072 -Wuninitialized does not deduce are never used uninitialized.
160b01f6
PE
2073 (detect_coding_iso_2022): Initialize a local variable that might
2074 be used uninitialized. Leave a FIXME because it's not clear that
53df7c11 2075 this initialization is needed. (Bug#8211)
5f58e762
PE
2076 (ISO_CODE_LF, ISO_CODE_CR, CODING_ISO_FLAG_EUC_TW_SHIFT):
2077 (ONE_MORE_BYTE_NO_CHECK, UTF_BOM, UTF_16_INVALID_P):
2078 (SHIFT_OUT_OK, ENCODE_CONTROL_SEQUENCE_INTRODUCER):
2079 (ENCODE_DIRECTION_R2L, ENCODE_DIRECTION_L2R):
2080 Remove unused macros.
f38b440c 2081
232b38b9 2082 * category.c (hash_get_category_set): Remove unused local var.
9f3b5e69 2083 (copy_category_table): Now static, since it's not used elsewhere.
d0891610 2084 * character.c (string_count_byte8): Likewise.
232b38b9 2085
fb90da1b
PE
2086 * ccl.c (CCL_WRITE_STRING, CCL_ENCODE_CHAR, Fccl_execute_on_string):
2087 (Fregister_code_conversion_map): Rename locals to avoid shadowing.
2088
fb93dbc2
PE
2089 * chartab.c (copy_sub_char_table): Now static, since it's not used
2090 elsewhere.
5c156ace
PE
2091 (sub_char_table_ref_and_range, char_table_ref_and_range):
2092 Rename locals to avoid shadowing.
bbcd0949 2093 (ASET_RANGE, GET_SUB_CHAR_TABLE): Remove unused macros.
fb93dbc2 2094
7d3b3862 2095 * bidi.c (bidi_check_type): Now static, since it's not used elsewhere.
630d6892 2096 (BIDI_BOB): Remove unused macro.
7d3b3862 2097
6be7d3da
PE
2098 * cm.c (cmgoto): Mark variables that gcc -Wuninitialized does not
2099 deduce are never used uninitialized.
c2ed9c8b 2100 * term.c (encode_terminal_code): Likewise.
6be7d3da 2101
75f8807f 2102 * term.c (encode_terminal_code): Now static. Remove unused local.
72abad34 2103
50938595
PE
2104 * tparam.h: New file.
2105 * term.c, tparam.h: Include it.
2106 * deps.mk (term.o, tparam.o): Depend on tparam.h.
2107 * term.c (tputs, tgetent, tgetflag, tgetnum, tparam, tgetstr):
2108 Move these decls to tparam.h, and make them agree with what
2109 is actually in tparam.c. The previous trick of using incompatible
2110 decls in different modules does not conform to the C standard.
2111 All callers of tparam changed to use tparam's actual API.
2112 * tparam.c (tparam1, tparam, tgoto):
2113 Use const pointers where appropriate.
2114
fbceeba2
PE
2115 * cm.c (calccost, cmgoto): Use const pointers where appropriate.
2116 * cm.h (struct cm): Likewise.
2117 * dispextern.h (do_line_insertion_deletion_costs): Likewise.
2118 * scroll.c (ins_del_costs, do_line_insertion_deletion_costs): Likewise.
2119 * term.c (tty_ins_del_lines, calculate_costs, struct fkey_table):
2120 (term_get_fkeys_1, append_glyphless_glyph, produce_glyphless_glyph):
2121 (turn_on_face, init_tty): Likewise.
2122 * termchar.h (struct tty_display_info): Likewise.
fbceeba2 2123
7f3f1250
PE
2124 * term.c (term_mouse_position): Rename local to avoid shadowing.
2125
e6ca6543
PE
2126 * alloc.c (mark_ttys): Move decl from here ...
2127 * lisp.h (mark_ttys): ... to here, so that it's checked against defn.
2128
c40f8d15
AS
21292011-03-11 Andreas Schwab <schwab@linux-m68k.org>
2130
2131 * .gdbinit (pwinx, xbuffer): Fix access to buffer name.
2132
cfe0661d
JB
21332011-03-09 Juanma Barranquero <lekktu@gmail.com>
2134
2135 * search.c (compile_pattern_1): Remove argument regp, unused since
2136 revid:rms@gnu.org-19941211082627-3x1g1wyqkjmwloig.
2137 (compile_pattern): Don't pass it.
2138
0afb4571
J
21392011-03-08 Jan Djärv <jan.h.d@swipnet.se>
2140
2141 * xterm.h (DEFAULT_GDK_DISPLAY): New define.
2142 (GDK_WINDOW_XID, gtk_widget_get_preferred_size): New defines
2143 for ! HAVE_GTK3.
2144 (GTK_WIDGET_TO_X_WIN): Use GDK_WINDOW_XID.
2145
2146 * xmenu.c (menu_position_func): Call gtk_widget_get_preferred_size.
2147
2148 * gtkutil.c: Include gtkx.h if HAVE_GTK3. If ! HAVE_GTK3, define
2149 gdk_window_get_screen, gdk_window_get_geometry,
2150 gdk_x11_window_lookup_for_display and GDK_KEY_g.
2151 (xg_set_screen): Use DEFAULT_GDK_DISPLAY.
2152 (xg_get_pixbuf_from_pixmap): New function.
2153 (xg_get_pixbuf_from_pix_and_mask): Change parameters from GdkPixmap
2154 to Pixmap, take frame as parameter, remove GdkColormap parameter.
2155 Call xg_get_pixbuf_from_pixmap instead of
2156 gdk_pixbuf_get_from_drawable.
2157 (xg_get_image_for_pixmap): Do not make GdkPixmaps, call
2158 xg_get_pixbuf_from_pix_and_mask with Pixmap parameters instead.
2159 (xg_check_special_colors): Use GtkStyleContext and its functions
2160 for HAVE_GTK3.
2161 (xg_prepare_tooltip, xg_hide_tooltip): Call gdk_window_get_screen.
2162 (xg_prepare_tooltip, create_dialog, menubar_map_cb)
2163 (xg_update_frame_menubar, xg_tool_bar_detach_callback)
44f230aa
SM
2164 (xg_tool_bar_attach_callback, xg_update_tool_bar_sizes):
2165 Call gtk_widget_get_preferred_size.
0afb4571
J
2166 (xg_frame_resized): gdk_window_get_geometry only takes 5
2167 parameters.
44f230aa
SM
2168 (xg_win_to_widget, xg_event_is_for_menubar):
2169 Call gdk_x11_window_lookup_for_display.
0afb4571
J
2170 (xg_set_widget_bg): New function.
2171 (delete_cb): New function.
2172 (xg_create_frame_widgets): connect delete-event to delete_cb.
2173 Call xg_set_widget_bg. Only set backgrund pixmap for ! HAVE_GTK3
2174 (xg_set_background_color): Call xg_set_widget_bg.
2175 (xg_set_frame_icon): Call xg_get_pixbuf_from_pix_and_mask.
2176 (xg_create_scroll_bar): vadj is a GtkAdjustment for HAVE_GTK3.
2177 Only call gtk_range_set_update_policy if ! HAVE_GTK3.
2178 (xg_make_tool_item): Only connect xg_tool_bar_item_expose_callback
2179 if ! HAVE_GTK3.
2180 (update_frame_tool_bar): Call gtk_widget_hide.
2181 (xg_initialize): Use GDK_KEY_g.
2182
2183 * xsmfns.c (gdk_set_sm_client_id): Define to gdk_set_sm_client_id
2184 if ! HAVE_GTK3
2185 (x_session_initialize): Call gdk_x11_set_sm_client_id.
2186
2187 * xterm.c (XFillRectangle): Use cairo routines for HAVE_GTK3.
2188 (x_term_init): Disable Xinput(2) with GDK_CORE_DEVICE_EVENTS.
2189 Load ~/emacs.d/gtkrc only for ! HAVE_GTK3.
2190
1c2cc4ef
JB
21912011-03-08 Juanma Barranquero <lekktu@gmail.com>
2192
2193 * w32xfns.c (select_palette): Check success of RealizePalette against
2194 GDI_ERROR, not zero.
2195
33383987 2196See ChangeLog.11 for earlier changes.
aac0c6e3
MR
2197
2198;; Local Variables:
2199;; coding: utf-8
aac0c6e3
MR
2200;; End:
2201
33383987 2202 Copyright (C) 2011 Free Software Foundation, Inc.
aac0c6e3
MR
2203
2204 This file is part of GNU Emacs.
2205
2206 GNU Emacs is free software: you can redistribute it and/or modify
2207 it under the terms of the GNU General Public License as published by
2208 the Free Software Foundation, either version 3 of the License, or
2209 (at your option) any later version.
2210
2211 GNU Emacs is distributed in the hope that it will be useful,
2212 but WITHOUT ANY WARRANTY; without even the implied warranty of
2213 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
2214 GNU General Public License for more details.
2215
2216 You should have received a copy of the GNU General Public License
2217 along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.