]> code.delx.au - gnu-emacs/blob - src/ChangeLog
Merge from emacs-23; up to 2010-06-08T03:06:47Z!dann@ics.uci.edu.
[gnu-emacs] / src / ChangeLog
1 2011-04-09 Chong Yidong <cyd@stupidchicken.com>
2
3 * ftfont.c (get_adstyle_property, ftfont_pattern_entity): Use
4 unsigned char, to match FcChar8 type definition.
5
6 * xterm.c (handle_one_xevent):
7 * xmenu.c (create_and_show_popup_menu):
8 * xselect.c (x_decline_selection_request)
9 (x_reply_selection_request): Avoid type-punned deref of X events.
10
11 2011-04-09 Eli Zaretskii <eliz@emacstest.gnu.org>
12
13 Fix some uses of `int' instead of EMACS_INT.
14 * search.c (string_match_1, fast_string_match)
15 (fast_c_string_match_ignore_case, fast_string_match_ignore_case)
16 (scan_buffer, find_next_newline_no_quit)
17 (find_before_next_newline, search_command, Freplace_match)
18 (Fmatch_data): Make some `int' variables be EMACS_INT.
19
20 * xdisp.c (display_count_lines): 3rd argument and return value now
21 EMACS_INT. All callers changed.
22 (pint2hrstr): Last argument is now EMACS_INT.
23
24 * coding.c (detect_coding_utf_8, detect_coding_emacs_mule)
25 (detect_coding_iso_2022, detect_coding_sjis, detect_coding_big5)
26 (detect_coding_ccl, detect_coding_charset, decode_coding_utf_8)
27 (decode_coding_utf_16, decode_coding_emacs_mule)
28 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5)
29 (decode_coding_ccl, decode_coding_charset)
30 <consumed_chars, consumed_chars_base>: Declare EMACS_INT.
31 (decode_coding_iso_2022, decode_coding_emacs_mule)
32 (decode_coding_sjis, decode_coding_big5, decode_coding_charset)
33 <char_offset, last_offset>: Declare EMACS_INT.
34 (encode_coding_utf_8, encode_coding_utf_16)
35 (encode_coding_emacs_mule, encode_invocation_designation)
36 (encode_designation_at_bol, encode_coding_iso_2022)
37 (encode_coding_sjis, encode_coding_big5, encode_coding_ccl)
38 (encode_coding_raw_text, encode_coding_charset) <produced_chars>:
39 Declare EMACS_INT.
40 (ASSURE_DESTINATION): Declare more_bytes EMACS_INT.
41 (encode_invocation_designation): Last argument P_NCHARS is now
42 EMACS_INT.
43 (decode_eol): Declare pos_byte, pos, and pos_end EMACS_INT.
44 (produce_chars): from_nchars and to_nchars are now EMACS_INT.
45
46 * coding.h (struct coding_system) <head_ascii>: Declare EMACS_INT.
47 All users changed.
48
49 * ccl.c (Fccl_execute_on_string): Declare some variables
50 EMACS_INT.
51
52 2011-04-08 Samuel Thibault <sthibault@debian.org> (tiny change)
53
54 * term.c (init_tty): Fix incorrect ifdef placement (Bug#8450).
55
56 2011-03-19 Christoph Scholtes <cschol2112@googlemail.com>
57
58 * process.c (Fformat_network_address): Doc fix.
59
60 2011-04-08 T.V. Raman <tv.raman.tv@gmail.com> (tiny change)
61
62 * xml.c (parse_region): Avoid creating spurious whiespace nodes.
63
64 2011-04-08 Chong Yidong <cyd@stupidchicken.com>
65
66 * keyboard.c (read_char): Call Lisp function help-form-show,
67 instead of using internal_with_output_to_temp_buffer.
68 (Qhelp_form_show): New var.
69 (syms_of_keyboard): Use DEFSYM macro.
70
71 * print.c (internal_with_output_to_temp_buffer): Function deleted.
72
73 * lisp.h (internal_with_output_to_temp_buffer): Remove prototype.
74
75 2011-04-06 Chong Yidong <cyd@stupidchicken.com>
76
77 * process.c (Flist_processes): Removed to Lisp.
78 (list_processes_1): Deleted.
79
80 2011-04-06 Eli Zaretskii <eliz@gnu.org>
81
82 * msdos.c (careadlinkat, careadlinkatcwd): MS-DOS replacements.
83
84 * w32.c (careadlinkat, careadlinkatcwd): New always-fail stubs.
85
86 2011-04-06 Paul Eggert <eggert@cs.ucla.edu>
87
88 Fix more problems found by GCC 4.6.0's static checks.
89
90 * xmenu.c (Fx_popup_dialog): Don't assume string is free of formats.
91
92 * menu.c (Fx_popup_menu): Don't assume error_name lacks printf formats.
93
94 * lisp.h (message, message_nolog, fatal): Mark as printf-like.
95
96 * xdisp.c (vmessage): Mark as a printf-like function.
97
98 * term.c (vfatal, maybe_fatal): Mark as printf-like functions.
99
100 * sound.c (sound_warning): Don't crash if arg contains a printf format.
101
102 * image.c (tiff_error_handler, tiff_warning_handler): Mark as
103 printf-like functions.
104 (tiff_load): Add casts to remove these marks before passing them
105 to system-supplied API.
106
107 * eval.c (Fsignal): Remove excess argument to 'fatal'.
108
109 * coding.c (EMIT_ONE_BYTE, EMIT_TWO_BYTES): Use unsigned, not int.
110 This avoids several warnings with gcc -Wstrict-overflow.
111 (DECODE_COMPOSITION_RULE): If the rule is invalid, goto invalid_code
112 directly, rather than having caller test rule sign. This avoids
113 some unnecessary tests.
114 * composite.h (COMPOSITION_ENCODE_RULE_VALID): New macro.
115 (COMPOSITION_ENCODE_RULE): Arguments now must be valid. This
116 affects only one use, in DECODE_COMPOSITION_RULE, which is changed.
117
118 * xfont.c (xfont_text_extents): Remove var that was set but not used.
119 (xfont_open): Avoid unnecessary tests.
120
121 * composite.c (composition_gstring_put_cache): Use unsigned integer.
122
123 * composite.h, composite.c (composition_gstring_put_cache):
124 Use EMACS_INT, not int, for length.
125
126 * composite.h (COMPOSITION_DECODE_REFS): New macro,
127 breaking out part of COMPOSITION_DECODE_RULE.
128 (COMPOSITION_DECODE_RULE): Use it.
129 * composite.c (get_composition_id): Remove unused local vars,
130 by using the new macro.
131
132 * textprop.c (set_text_properties_1): Change while to do-while,
133 since the condition is always true at first.
134
135 * intervals.c (graft_intervals_into_buffer): Mark var as used.
136 (interval_deletion_adjustment): Return unsigned value.
137 All uses changed.
138
139 * process.c (list_processes_1, create_pty, read_process_output):
140 (exec_sentinel): Remove vars that were set but not used.
141 (create_pty): Remove unnecessary "volatile"s.
142 (Fnetwork_interface_info): Avoid possibility of int overflow.
143 (read_process_output): Do adaptive read buffering even if carryover.
144 (read_process_output): Simplify nbytes computation if buffered.
145
146 * bytecode.c (exec_byte_code): Rename local to avoid shadowing.
147
148 * syntax.c (scan_words): Remove var that was set but not used.
149 (update_syntax_table): Use unsigned instead of int.
150
151 * lread.c (lisp_file_lexically_bound_p): Use ints rather than endptrs.
152 (lisp_file_lexically_bound_p, read1): Use unsigned instead of int.
153 (safe_to_load_p): Make the end-of-loop test the inverse of the in-loop.
154
155 * print.c (print_error_message): Avoid int overflow.
156
157 * font.c (font_list_entities): Redo for clarity,
158 so that reader need not know FONT_DPI_INDEX + 1 == FONT_SPACING_INDEX.
159
160 * font.c (font_find_for_lface, Ffont_get_glyphs): Remove unused vars.
161 (font_score): Avoid potential overflow in diff calculation.
162
163 * fns.c (substring_both): Remove var that is set but not used.
164 (sxhash): Redo loop for clarity and to avoid wraparound warning.
165
166 * eval.c (funcall_lambda): Rename local to avoid shadowing.
167
168 * alloc.c (mark_object_loop_halt, mark_object): Use size_t, not int.
169 Otherwise, GCC 4.6.0 optimizes the loop check away since the check
170 can always succeed if overflow has undefined behavior.
171
172 * search.c (boyer_moore, wordify): Remove vars set but not used.
173 (wordify): Omit three unnecessary tests.
174
175 * indent.c (MULTIBYTE_BYTES_WIDTH): Don't compute wide_column.
176 All callers changed. This avoids the need for an unused var.
177
178 * casefiddle.c (casify_region): Remove var that is set but not used.
179
180 * dired.c (file_name_completion): Remove var that is set but not used.
181
182 * fileio.c (Finsert_file_contents): Make EOF condition clearer.
183
184 * fileio.c (Finsert_file_contents): Avoid signed integer overflow.
185 (Finsert_file_contents): Remove unnecessary code checking fd.
186
187 * minibuf.c (read_minibuf_noninteractive): Use size_t for sizes.
188 Check for integer overflow on size calculations.
189
190 * buffer.c (Fprevious_overlay_change): Remove var that is set
191 but not used.
192
193 * keyboard.c (menu_bar_items, read_char_minibuf_menu_prompt):
194 Remove vars that are set but not used.
195 (timer_check_2): Don't assume timer-list and idle-timer-list are lists.
196 (timer_check_2): Mark vars as initialized.
197
198 * gtkutil.c (xg_get_file_with_chooser): Mark var as initialized.
199
200 * image.c (lookup_image): Remove var that is set but not used.
201 (xbm_load): Use parse_p, for gcc -Werror=unused-but-set-variable.
202
203 * fontset.c (Finternal_char_font, Ffontset_info): Remove vars
204 that are set but not used.
205
206 * xfns.c (make_invisible_cursor): Don't return garbage
207 if XCreateBitmapFromData fails (Bug#8410).
208
209 * xselect.c (x_get_local_selection, x_handle_property_notify):
210 Remove vars that are set but not used.
211
212 * xfns.c (x_create_tip_frame): Remove var that is set but not used.
213 (make_invisible_cursor): Initialize a possibly-uninitialized variable.
214
215 * xterm.c (x_scroll_bar_to_input_event) [!USE_GTK]:
216 Remove var that is set but not used.
217 (scroll_bar_windows_size): Now size_t, not int.
218 (x_send_scroll_bar_event): Use size_t, not int, for sizes.
219 Check for overflow.
220
221 * xfaces.c (realize_named_face): Remove vars that are set but not used.
222 (map_tty_color) [!defined MSDOS]: Likewise.
223
224 * term.c (tty_write_glyphs): Use size_t; this avoids overflow warning.
225
226 * coding.c: Remove vars that are set but not used.
227 (DECODE_COMPOSITION_RULE): Remove 2nd arg, which is unused.
228 All callers changed.
229 (decode_coding_utf_8, decode_coding_utf_16 decode_coding_emacs_mule):
230 (decode_coding_iso_2022, encode_coding_sjis, encode_coding_big5):
231 (decode_coding_charset): Remove vars that are set but not used.
232
233 * bytecode.c (Fbyte_code) [!defined BYTE_CODE_SAFE]: Remove var
234 that is set but not used.
235
236 * print.c (print_object): Remove var that is set but not used.
237
238 Replace 2 copies of readlink code with 1 gnulib version (Bug#8401).
239 The gnulib version avoids calling malloc in the usual case,
240 and on 64-bit hosts doesn't have some arbitrary 32-bit limits.
241 * fileio.c (Ffile_symlink_p): Use emacs_readlink.
242 * filelock.c (current_lock_owner): Likewise.
243 * lisp.h (READLINK_BUFSIZE, emacs_readlink): New function.
244 * sysdep.c: Include allocator.h, careadlinkat.h.
245 (emacs_no_realloc_allocator): New static constant.
246 (emacs_readlink): New function.
247 * deps.mk (sysdep.o): Depend on ../lib/allocator.h and on
248 ../lib/careadlinkat.h.
249
250 2011-04-04 Stefan Monnier <monnier@iro.umontreal.ca>
251
252 * keyboard.c (safe_run_hook_funcall): Fix last change (don't stop at the
253 first non-nil return value).
254
255 2011-04-03 Jan Djärv <jan.h.d@swipnet.se>
256
257 * nsterm.m (ns_update_auto_hide_menu_bar): Define MAC_OS_X_VERSION_10_6
258 if not defined (Bug#8403).
259
260 2011-04-02 Juanma Barranquero <lekktu@gmail.com>
261
262 * xdisp.c (display_count_lines): Remove parameter `start',
263 unused since 1998-01-01T02:27:27Z!rms@gnu.org. All callers changed.
264 (get_char_face_and_encoding): Remove parameter `multibyte_p',
265 unused since 2008-05-14T01:40:23Z!handa@m17n.org. All callers changed.
266 (fill_stretch_glyph_string): Remove parameters `row' and `area',
267 unused at least since Kim's GUI unification at 2003-03-16T20:45:46Z!storm@cua.dk
268 and thereabouts. All callers changed.
269 (get_per_char_metric): Remove parameter `f', unused since
270 2008-05-14T01:40:23Z!handa@m17n.org. All callers changed.
271
272 2011-04-02 Jim Meyering <meyering@redhat.com>
273
274 do not dereference NULL upon failed strdup
275 * nsfont.m (ns_descriptor_to_entity): Use xstrdup, not strdup.
276 (ns_get_family): Likewise.
277
278 2011-04-02 Juanma Barranquero <lekktu@gmail.com>
279
280 * eval.c (unwind_to_catch) [DEBUG_GCPRO]: Remove redundant assignment.
281
282 2011-04-02 Jan Djärv <jan.h.d@swipnet.se>
283
284 * nsterm.m (ns_update_auto_hide_menu_bar): Only for OSX 10.6 or
285 later (Bug#8403).
286
287 2011-04-01 Stefan Monnier <monnier@iro.umontreal.ca>
288
289 Add lexical binding.
290
291 * window.c (Ftemp_output_buffer_show): New fun.
292 (Fsave_window_excursion):
293 * print.c (Fwith_output_to_temp_buffer): Move to subr.el.
294
295 * lread.c (lisp_file_lexically_bound_p): New function.
296 (Fload): Bind Qlexical_binding.
297 (readevalloop): Remove `evalfun' arg.
298 Bind Qinternal_interpreter_environment.
299 (Feval_buffer): Bind Qlexical_binding.
300 (defvar_int, defvar_bool, defvar_lisp_nopro, defvar_kboard):
301 Mark as dynamic.
302 (syms_of_lread): Declare `lexical-binding'.
303
304 * lisp.h (struct Lisp_Symbol): New field `declared_special'.
305
306 * keyboard.c (eval_dyn): New fun.
307 (menu_item_eval_property): Use it.
308
309 * image.c (parse_image_spec): Use Ffunctionp.
310
311 * fns.c (concat, mapcar1): Accept byte-code-functions.
312
313 * eval.c (Fsetq): Handle lexical vars.
314 (Fdefun, Fdefmacro, Ffunction): Make closures when needed.
315 (Fdefconst, Fdefvaralias, Fdefvar): Mark as dynamic.
316 (FletX, Flet): Obey lexical binding.
317 (Fcommandp): Handle closures.
318 (Feval): New `lexical' arg.
319 (eval_sub): New function extracted from Feval. Use it almost
320 everywhere where Feval was used. Look up vars in lexical env.
321 Handle closures.
322 (Ffunctionp): Move from subr.el.
323 (Ffuncall): Handle closures.
324 (apply_lambda): Remove `eval_flags'.
325 (funcall_lambda): Handle closures and new byte-code-functions.
326 (Fspecial_variable_p): New function.
327 (syms_of_eval): Initialize the Vinternal_interpreter_environment var,
328 but without exporting it to Lisp.
329
330 * doc.c (Fdocumentation, store_function_docstring):
331 * data.c (Finteractive_form): Handle closures.
332
333 * callint.c (Fcall_interactively): Preserve lexical-binding mode for
334 interactive spec.
335
336 * bytecode.c (Bstack_ref, Bstack_set, Bstack_set2, BdiscardN): New
337 byte-codes.
338 (exec_byte_code): New function extracted from Fbyte_code to handle new
339 calling convention for byte-code-functions. Add new byte-codes.
340
341 * buffer.c (defvar_per_buffer): Set new `declared_special' field.
342
343 * alloc.c (Fmake_symbol): Init new `declared_special' field.
344
345 2011-03-31 Juanma Barranquero <lekktu@gmail.com>
346
347 * xdisp.c (redisplay_internal): Fix prototype.
348
349 2011-03-31 Eli Zaretskii <eliz@gnu.org>
350
351 * xdisp.c (SCROLL_LIMIT): New macro.
352 (try_scrolling): Use it when setting scroll_limit. Limit
353 scrolling to 100 screen lines.
354 (redisplay_window): Even when falling back on "recentering",
355 position point in the window according to scroll-conservatively,
356 scroll-margin, and scroll-*-aggressively variables. (Bug#6671)
357
358 (try_scrolling): When point is above the window, allow searching
359 as far as scroll_max, or one screenful, to compute vertical
360 distance from PT to the scroll margin position. This prevents
361 try_scrolling from unnecessarily failing when
362 scroll-conservatively is set to a value slightly larger than the
363 window height. Clean up the case of PT below the margin at bottom
364 of window: scroll_max can no longer be INT_MAX. When aggressive
365 scrolling is in use, don't let point enter the opposite scroll
366 margin as result of the scroll.
367 (syms_of_xdisp) <scroll-conservatively>: Document the
368 threshold of 100 lines for never-recentering scrolling.
369
370 2011-03-31 Juanma Barranquero <lekktu@gmail.com>
371
372 * dispextern.h (move_it_by_lines):
373 * xdisp.c (move_it_by_lines): Remove parameter `need_y_p', unused
374 since 2000-12-29T14:24:09Z!gerd@gnu.org. All callers changed.
375 (message_log_check_duplicate): Remove parameters `prev_bol' and
376 `this_bol', unused since 1998-01-01T02:27:27Z!rms@gnu.org. All callers changed.
377 (redisplay_internal): Remove parameter `preserve_echo_area',
378 unused since 1999-07-21T21:43:52Z!gerd@gnu.org. All callers changed.
379
380 * indent.c (Fvertical_motion):
381 * window.c (window_scroll_pixel_based, Frecenter):
382 Don't pass `need_y_p' to `move_it_by_lines'.
383
384 2011-03-30 Stefan Monnier <monnier@iro.umontreal.ca>
385
386 * eval.c (struct backtrace): Don't cheat with negative numbers, but do
387 steal a few bits to be more compact.
388 (interactive_p, Fbacktrace, Fbacktrace_frame, mark_backtrace):
389 Remove unneeded casts.
390
391 * bytecode.c (Fbyte_code): CAR and CDR can GC.
392
393 2011-03-30 Zachary Kanfer <zkanfer@gmail.com> (tiny change)
394
395 * keyboard.c (Fexecute_extended_command): Do log the "suggest key
396 binding" message (bug#7967).
397
398 2011-03-30 Paul Eggert <eggert@cs.ucla.edu>
399
400 Fix more problems found by GCC 4.6.0's static checks.
401
402 * unexelf.c (unexec) [! (defined _SYSTYPE_SYSV || defined __sgi)]:
403 Remove unused local var.
404
405 * editfns.c (Fmessage_box): Remove unused local var.
406
407 * xdisp.c (try_window_reusing_current_matrix, x_produce_glyphs):
408 (note_mode_line_or_margin_highlight, note_mouse_highlight):
409 Omit unused local vars.
410 * window.c (shrink_windows): Omit unused local var.
411 * menu.c (digest_single_submenu): Omit unused local var.
412 * dispnew.c (update_window) [PERIODIC_PREEMPTION_CHECKING]:
413 Omit unused local var.
414
415 * keyboard.c (parse_modifiers_uncached, parse_modifiers):
416 Don't assume string length fits in int.
417 (keyremap_step, read_key_sequence): Use size_t for sizes.
418 (read_key_sequence): Don't check last_real_key_start redundantly.
419
420 * callproc.c (Fcall_process, Fcall_process_region): Use SAFE_ALLOCA
421 instead of alloca (Bug#8344).
422
423 * eval.c (Fbacktrace): Don't assume nargs fits in int.
424 (Fbacktrace_frame): Don't assume nframes fits in int.
425
426 * syntax.c (scan_sexps_forward): Avoid pointer wraparound.
427
428 * xterm.c (x_make_frame_visible, same_x_server): Redo to avoid overflow
429 concerns.
430
431 * term.c (produce_glyphless_glyph): Remove unnecessary test.
432
433 * cm.c (calccost): Turn while-do into do-while, for clarity.
434
435 * keyboard.c (syms_of_keyboard): Use the same style as later
436 in this function when indexing through an array. This also
437 works around GCC bug 48267.
438
439 * image.c (tiff_load): Fix off-by-one image count (Bug#8336).
440
441 * xselect.c (x_check_property_data): Return correct size (Bug#8335).
442
443 * chartab.c (sub_char_table_ref_and_range): Redo for slight
444 efficiency gain, and to bypass a gcc -Wstrict-overflow warning.
445
446 * keyboard.c, keyboard.h (num_input_events): Now size_t.
447 This avoids undefined behavior on integer overflow, and is a bit
448 more convenient anyway since it is compared to a size_t variable.
449
450 Variadic C functions now count arguments with size_t, not int.
451 This avoids an unnecessary limitation on 64-bit machines, which
452 caused (substring ...) to crash on large vectors (Bug#8344).
453 * lisp.h (struct Lisp_Subr.function.aMANY): Now takes size_t, not int.
454 (DEFUN_ARGS_MANY, internal_condition_case_n, safe_call): Likewise.
455 All variadic functions and their callers changed accordingly.
456 (struct gcpro.nvars): Now size_t, not int. All uses changed.
457 * data.c (arith_driver, float_arith_driver): Likewise.
458 * editfns.c (general_insert_function): Likewise.
459 * eval.c (struct backtrace.nargs, interactive_p)
460 (internal_condition_case_n, run_hook_with_args, apply_lambda)
461 (funcall_lambda, mark_backtrace): Likewise.
462 * fns.c (concat): Likewise.
463 * frame.c (x_set_frame_parameters): Likewise.
464 * fns.c (get_key_arg): Now accepts and returns size_t, and returns
465 0 if not found, not -1. All callers changed.
466
467 * alloc.c (garbage_collect): Don't assume stack size fits in int.
468 (stack_copy_size): Now size_t, not int.
469 (stack_copy, stack_copy_size): Define only if MAX_SAVE_STACK > 0.
470
471 2011-03-28 Juanma Barranquero <lekktu@gmail.com>
472
473 * coding.c (encode_designation_at_bol): Remove parameter `charbuf_end',
474 unused since 2002-03-01T01:17:24Z!handa@m17n.org and 2008-02-01T16:01:31Z!miles@gnu.org.
475 All callers changed.
476
477 * lisp.h (multibyte_char_to_unibyte):
478 * character.c (multibyte_char_to_unibyte): Remove parameter `rev_tbl',
479 unused since 2002-03-01T01:16:34Z!handa@m17n.org and 2008-02-01T16:01:31Z!miles@gnu.org.
480 * character.h (CHAR_TO_BYTE8):
481 * cmds.c (internal_self_insert):
482 * editfns.c (general_insert_function):
483 * keymap.c (push_key_description):
484 * search.c (Freplace_match):
485 * xdisp.c (message_dolog, set_message_1): All callers changed.
486
487 2011-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
488
489 * keyboard.c (safe_run_hook_funcall): New function.
490 (safe_run_hooks_1, safe_run_hooks_error, safe_run_hooks): On error,
491 don't set the hook to nil, but remove the offending function instead.
492 (Qcommand_hook_internal): Remove, unused.
493 (syms_of_keyboard): Don't initialize Qcommand_hook_internal nor define
494 Vcommand_hook_internal.
495
496 * eval.c (enum run_hooks_condition): Remove.
497 (funcall_nil, funcall_not): New functions.
498 (run_hook_with_args): Call each function through a `funcall' argument.
499 Remove `cond' argument, now redundant.
500 (Frun_hooks, Frun_hook_with_args, Frun_hook_with_args_until_success)
501 (Frun_hook_with_args_until_failure): Adjust accordingly.
502 (run_hook_wrapped_funcall, Frun_hook_wrapped): New functions.
503
504 2011-03-28 Juanma Barranquero <lekktu@gmail.com>
505
506 * dispextern.h (string_buffer_position): Remove declaration.
507
508 * print.c (strout): Remove parameter `multibyte', unused since
509 1999-08-21T19:30:21Z!gerd@gnu.org. All callers changed.
510
511 * search.c (boyer_moore): Remove parameters `len', `pos' and `lim',
512 never used since function introduction in 1998-02-08T21:33:56Z!rms@gnu.org.
513 All callers changed.
514
515 * w32.c (_wsa_errlist): Use braces for struct initializers.
516
517 * xdisp.c (string_buffer_position_lim): Remove parameter `w',
518 never used since function introduction in 2001-03-09T18:41:50Z!gerd@gnu.org.
519 All callers changed.
520 (string_buffer_position): Likewise. Also, make static (it's never
521 used outside xdisp.c).
522 (cursor_row_p): Remove parameter `w', unused since
523 2000-10-17T16:08:57Z!gerd@gnu.org. All callers changed.
524 (decode_mode_spec): Remove parameter `precision', introduced during
525 Gerd Moellmann's rewrite at 1999-07-21T21:43:52Z!gerd@gnu.org, but never used.
526 All callers changed.
527
528 2011-03-27 Jan Djärv <jan.h.d@swipnet.se>
529
530 * nsterm.m (syms_of_nsterm): Use doc: for ns-auto-hide-menu-bar.
531
532 2011-03-27 Anders Lindgren <andlind@gmail.com>
533
534 * nsterm.m (ns_menu_bar_is_hidden): New variable.
535 (ns_constrain_all_frames, ns_menu_bar_should_be_hidden)
536 (ns_update_auto_hide_menu_bar): New functions.
537 (ns_update_begin): Call ns_update_auto_hide_menu_bar.
538 (applicationDidBecomeActive): Call ns_update_auto_hide_menu_bar and
539 ns_constrain_all_frames.
540 (constrainFrameRect): Return at once if ns_menu_bar_should_be_hidden.
541 (syms_of_nsterm): DEFVAR ns-auto-hide-menu-bar, init to Qnil.
542
543 2011-03-27 Jan Djärv <jan.h.d@swipnet.se>
544
545 * nsmenu.m (runDialogAt): Remove argument to timer_check.
546
547 2011-03-27 Glenn Morris <rgm@gnu.org>
548
549 * syssignal.h: Replace RETSIGTYPE with void.
550 * atimer.c, data.c, dispnew.c, emacs.c, floatfns.c, keyboard.c:
551 * keyboard.h, lisp.h, process.c, sysdep.c, xterm.c:
552 Replace SIGTYPE with void everywhere.
553 * s/usg5-4-common.h (SIGTYPE): Remove definition.
554 * s/template.h (SIGTYPE): Remove commented out definition.
555
556 2011-03-26 Eli Zaretskii <eliz@gnu.org>
557
558 * xdisp.c (redisplay_window): Don't check buffer's clip_changed
559 flag as a prerequisite for invoking try_scrolling. (Bug#6671)
560
561 2011-03-26 Juanma Barranquero <lekktu@gmail.com>
562
563 * w32.c (read_unc_volume): Use parameter `henum', instead of
564 global variable `wget_enum_handle'.
565
566 * keymap.c (describe_vector): Remove parameters `indices' and
567 `char_table_depth', unused since 2002-03-01T01:43:26Z!handa@m17n.org.
568 (describe_map, Fdescribe_vector): Adjust calls to `describe_vector'.
569
570 * keyboard.h (timer_check, show_help_echo): Remove unused parameters.
571
572 * keyboard.c (timer_check): Remove parameter `do_it_now',
573 unused since 1996-04-12T06:01:29Z!rms@gnu.org.
574 (show_help_echo): Remove parameter `ok_to_overwrite_keystroke_echo',
575 unused since 2008-04-19T19:30:53Z!monnier@iro.umontreal.ca.
576
577 * keyboard.c (read_char):
578 * w32menu.c (w32_menu_display_help):
579 * xmenu.c (show_help_event, menu_help_callback):
580 Adjust calls to `show_help_echo'.
581
582 * gtkutil.c (xg_maybe_add_timer):
583 * keyboard.c (readable_events):
584 * process.c (wait_reading_process_output):
585 * xmenu.c (x_menu_wait_for_event): Adjust calls to `timer_check'.
586
587 * insdel.c (adjust_markers_gap_motion):
588 Remove; no-op since 1998-01-02T21:29:48Z!rms@gnu.org.
589 (gap_left, gap_right): Don't call it.
590
591 2011-03-25 Chong Yidong <cyd@stupidchicken.com>
592
593 * xdisp.c (handle_fontified_prop): Discard changes to clip_changed
594 incurred during fontification.
595
596 2011-03-25 Juanma Barranquero <lekktu@gmail.com>
597
598 * buffer.c (defvar_per_buffer): Remove unused parameter `doc'.
599 (DEFVAR_PER_BUFFER): Don't pass it.
600
601 * dispnew.c (row_equal_p, add_row_entry): Remove unused parameter `w'.
602 (scrolling_window): Don't pass it.
603
604 2011-03-25 Juanma Barranquero <lekktu@gmail.com>
605
606 * dispextern.h (glyph_matric): Use #if GLYPH_DEBUG, not #ifdef.
607
608 * fileio.c (check_executable) [DOS_NT]: Remove unused variables `len'
609 and `suffix'.
610 (Fset_file_selinux_context) [HAVE_LIBSELINUX]: Move here declaration
611 of variables specific to SELinux and computation of `encoded_absname'.
612
613 * image.c (XPutPixel): Remove unused variable `height'.
614
615 * keyboard.c (make_lispy_event): Remove unused variable `hpos'.
616
617 * unexw32.c (get_section_info): Remove unused variable `section'.
618
619 * w32.c (stat): Remove unused variables `drive_root' and `devtype'.
620 (system_process_attributes): Remove unused variable `sess'.
621 (sys_read): Remove unused variable `err'.
622
623 * w32fns.c (top): Wrap variables with #if GLYPH_DEBUG, not #ifdef.
624 (w32_wnd_proc): Remove unused variable `isdead'.
625 (unwind_create_frame): Use #if GLYPH_DEBUG, not #ifdef.
626 (Fx_server_max_request_size): Remove unused variable `dpyinfo'.
627 (x_create_tip_frame): Remove unused variable `tem'.
628
629 * w32inevt.c (w32_console_read_socket):
630 Remove unused variable `no_events'.
631
632 * w32term.c (x_draw_composite_glyph_string_foreground):
633 Remove unused variable `width'.
634
635 2011-03-24 Juanma Barranquero <lekktu@gmail.com>
636
637 * w32term.c (x_set_glyph_string_clipping):
638 Don't pass uninitialized region to CombineRgn.
639
640 2011-03-23 Juanma Barranquero <lekktu@gmail.com>
641
642 * w32fns.c (x_set_menu_bar_lines): Remove unused variable `olines'.
643 (w32_wnd_proc): Pass NULL to Windows API, not uninitialized buffer.
644 (Fx_close_connection): Remove unused variable `i'.
645
646 * w32font.c (w32font_draw): Return number of glyphs.
647 (w32font_open_internal): Remove unused variable `i'.
648 (w32font_driver): Add missing initializer.
649
650 * w32menu.c (utf8to16): Remove unused variable `utf16'.
651 (fill_in_menu): Remove unused variable `items_added'.
652
653 * w32term.c (last_mouse_press_frame): Remove static global variable.
654 (w32_clip_to_row): Remove unused variable `f'.
655 (x_delete_terminal): Remove unused variable `i'.
656
657 * w32uniscribe.c (uniscribe_shape): Remove unused variable `nclusters'.
658 (NOTHING): Remove unused static global variable.
659 (uniscribe_check_otf): Remove unused variable `table'.
660 (uniscribe_font_driver): Add missing initializers.
661
662 2011-03-23 Julien Danjou <julien@danjou.info>
663
664 * term.c (Fsuspend_tty, Fresume_tty):
665 * minibuf.c (read_minibuf, run_exit_minibuf_hook):
666 * window.c (temp_output_buffer_show):
667 * insdel.c (signal_before_change):
668 * frame.c (Fhandle_switch_frame):
669 * fileio.c (Fdo_auto_save):
670 * emacs.c (Fkill_emacs):
671 * editfns.c (save_excursion_restore):
672 * cmds.c (internal_self_insert):
673 * callint.c (Fcall_interactively):
674 * buffer.c (Fkill_all_local_variables):
675 * keyboard.c (Fcommand_execute, Fsuspend_emacs, safe_run_hooks_1):
676 Use Frun_hooks.
677 (command_loop_1): Use Frun_hooks. Call safe_run_hooks
678 unconditionnaly since it does the check itself.
679
680 2011-03-23 Paul Eggert <eggert@cs.ucla.edu>
681
682 Fix more problems found by GCC 4.5.2's static checks.
683
684 * coding.c (encode_coding_raw_text): Avoid unnecessary test
685 the first time through the loop, since we know p0 < p1 then.
686 This also avoids a gcc -Wstrict-overflow warning.
687
688 * lisp.h (SAFE_ALLOCA, SAFE_ALLOCA_LISP): Avoid 'int' overflow
689 leading to a memory leak, possible in functions like
690 load_charset_map_from_file that can allocate an unbounded number
691 of objects (Bug#8318).
692
693 * xmenu.c (set_frame_menubar): Use EMACS_UINT, not int, for indexes
694 that could (at least in theory) be that large.
695
696 * xdisp.c (message_log_check_duplicate): Return unsigned long, not int.
697 This is less likely to overflow, and avoids undefined behavior if
698 overflow does occur. All callers changed. Use strtoul to scan
699 for the unsigned long integer.
700 (pint2hrstr): Simplify and tune code slightly.
701 This also avoids a (bogus) GCC warning with gcc -Wstrict-overflow.
702
703 * scroll.c (do_scrolling): Work around GCC bug 48228.
704 See <http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48228>.
705
706 * frame.c (Fmodify_frame_parameters): Simplify loop counter.
707 This also avoids a warning with gcc -Wstrict-overflow.
708 (validate_x_resource_name): Simplify count usage.
709 This also avoids a warning with gcc -Wstrict-overflow.
710
711 * fileio.c (Fcopy_file): Report error if fchown or fchmod
712 fail (Bug#8306).
713
714 * emacs.c (Fdaemon_initialized): Do not ignore I/O errors (Bug#8303).
715
716 * process.c (Fmake_network_process): Use socklen_t, not int,
717 where POSIX says socklen_t is required in portable programs.
718 This fixes a porting bug on hosts like 64-bit HP-UX, where
719 socklen_t is wider than int (Bug#8277).
720 (Fmake_network_process, server_accept_connection):
721 (wait_reading_process_output, read_process_output):
722 Likewise.
723
724 * process.c: Rename or move locals to avoid shadowing.
725 (list_processes_1, Fmake_network_process):
726 (read_process_output_error_handler, exec_sentinel_error_handler):
727 Rename or move locals.
728 (Fmake_network_process): Define label "retry_connect" only if needed.
729 (Fnetwork_interface_info): Fix pointer signedness.
730 (process_send_signal): Add cast to avoid pointer signedness problem.
731 (FIRST_PROC_DESC, IF_NON_BLOCKING_CONNECT): Remove unused macros.
732 (create_process): Use 'volatile' to avoid vfork clobbering (Bug#8298).
733
734 Make tparam.h and terminfo.c consistent.
735 * cm.c (tputs, tgoto, BC, UP): Remove extern decls.
736 Include tparam.h instead, since it declares them.
737 * cm.h (PC): Remove extern decl; tparam.h now does this.
738 * deps.mk (cm.o, terminfo.o): Depend on tparam.h.
739 * terminfo.c: Include tparam.h, to check interfaces.
740 (tparm): Make 1st arg a const pointer in decl. Put it at top level.
741 (tparam): Adjust signature to match interface in tparam.h;
742 this removes some undefined behavior. Check that outstring and len
743 are zero, which they always are with Emacs.
744 * tparam.h (PC, BC, UP): New extern decls.
745
746 * xftfont.c (xftfont_shape): Now static, and defined only if needed.
747 (xftfont_open): Rename locals to avoid shadowing.
748
749 * ftfont.c (ftfont_resolve_generic_family): Fix pointer signedness.
750 (ftfont_otf_capability, ftfont_shape): Omit decls if not needed.
751 (OTF_TAG_SYM): Omit macro if not needed.
752 (ftfont_list): Remove unused local.
753 (get_adstyle_property, ftfont_pattern_entity):
754 (ftfont_lookup_cache, ftfont_open, ftfont_anchor_point):
755 Rename locals to avoid shadowing.
756
757 * xfont.c (xfont_list_family): Mark var as initialized.
758
759 * xml.c (make_dom): Now static.
760
761 * composite.c (composition_compute_stop_pos): Rename local to
762 avoid shadowing.
763 (composition_reseat_it): Remove unused locals.
764 (find_automatic_composition, composition_adjust_point): Likewise.
765 (composition_update_it): Mark var as initialized.
766 (find_automatic_composition): Mark vars as initialized,
767 with a FIXME (Bug#8290).
768
769 character.h: Rename locals to avoid shadowing.
770 * character.h (PREV_CHAR_BOUNDARY, FETCH_STRING_CHAR_ADVANCE):
771 (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE, FETCH_CHAR_ADVANCE):
772 (FETCH_CHAR_ADVANCE_NO_CHECK, INC_POS, DEC_POS, BUF_INC_POS):
773 (BUF_DEC_POS): Be more systematic about renaming local temporaries
774 to avoid shadowing.
775
776 * textprop.c (property_change_between_p): Remove; unused.
777
778 * intervals.c (interval_start_pos): Now static.
779
780 * intervals.h (CHECK_TOTAL_LENGTH): Avoid empty "else".
781
782 * atimer.c (start_atimer, append_atimer_lists, set_alarm):
783 Rename locals to avoid shadowing.
784
785 * sound.c (wav_play, au_play, Fplay_sound_internal):
786 Fix pointer signedness.
787 (alsa_choose_format): Remove unused local var.
788 (wav_play): Initialize a variable to 0, to prevent undefined
789 behavior (Bug#8278).
790
791 * region-cache.c (insert_cache_boundary): Redo var to avoid shadowing.
792
793 * region-cache.h (pp_cache): New decl, for gcc -Wmissing-prototypes.
794
795 * callproc.c (Fcall_process): Use 'volatile' to avoid vfork
796 clobbering (Bug#8298).
797 * sysdep.c (sys_subshell): Likewise.
798 Previously, the sys_subshell 'volatile' was incorrectly IF_LINTted out.
799
800 * lisp.h (child_setup): Now NO_RETURN unless DOS_NT.
801 This should get cleaned up, so that child_setup has the
802 same signature on all platforms.
803
804 * callproc.c (call_process_cleanup): Now static.
805 (relocate_fd): Rename locals to avoid shadowing.
806
807 2011-03-22 Chong Yidong <cyd@stupidchicken.com>
808
809 * xterm.c (x_clear_frame): Remove XClearWindow call. This appears
810 not to be necessary, and produces flickering.
811
812 2011-03-20 Glenn Morris <rgm@gnu.org>
813
814 * config.in: Remove file.
815
816 2011-03-20 Juanma Barranquero <lekktu@gmail.com>
817
818 * minibuf.c (Vcompleting_read_function): Don't declare, global variables
819 are now in src/globals.h.
820 (syms_of_minibuf): Remove spurious & from previous change.
821
822 2011-03-20 Leo <sdl.web@gmail.com>
823
824 * minibuf.c (completing-read-function): New variable.
825 (completing-read-default): Rename from completing-read.
826 (completing-read): Call completing-read-function.
827
828 2011-03-19 Juanma Barranquero <lekktu@gmail.com>
829
830 * xfaces.c (Fx_load_color_file):
831 Read color file from absolute filename (bug#8250).
832
833 2011-03-19 Juanma Barranquero <lekktu@gmail.com>
834
835 * makefile.w32-in: Update dependencies.
836
837 2011-03-17 Eli Zaretskii <eliz@gnu.org>
838
839 * makefile.w32-in ($(BLD)/unexw32.$(O)): Depend on $(SRC)/unexec.h.
840
841 2011-03-17 Paul Eggert <eggert@cs.ucla.edu>
842
843 Fix more problems found by GCC 4.5.2's static checks.
844
845 * process.c (make_serial_process_unwind, send_process_trap):
846 (sigchld_handler): Now static.
847
848 * process.c (allocate_pty): Let PTY_ITERATION declare iteration vars.
849 That way, the code declares only the vars that it needs.
850 * s/aix4-2.h (PTY_ITERATION): Declare iteration vars.
851 * s/cygwin.h (PTY_ITERATION): Likewise.
852 * s/darwin.h (PTY_ITERATION): Likewise.
853 * s/gnu-linux.h (PTY_ITERATION): Likewise.
854
855 * s/irix6-5.h (PTY_OPEN): Declare stb, to loosen coupling.
856 * process.c (allocate_pty): Don't declare stb unless it's needed.
857
858 * bytecode.c (MAYBE_GC): Rewrite so as not to use empty "else".
859 (CONSTANTLIM): Remove; unused.
860 (METER_CODE, Bscan_buffer, Bread_char, Bset_mark):
861 Define only if needed.
862
863 * unexelf.c (unexec): Name an expression,
864 to avoid gcc -Wbad-function-cast warning.
865 Use a different way to cause a compilation error if anyone uses
866 n rather than nn, a way that does not involve shadowing.
867 (ELF_BSS_SECTION_NAME, OLD_PROGRAM_H): Remove; unused.
868
869 * deps.mk (unexalpha.o): Remove; unused.
870
871 New file unexec.h, the (simple) interface for unexec (Bug#8267).
872 * unexec.h: New file.
873 * deps.mk (emacs.o, unexaix.o, unexcw.o, unexcoff.o, unexelf.o):
874 (unexhp9k800.o, unexmacosx.o, unexsol.o, unexw32.o):
875 Depend on unexec.h.
876 * emacs.c [!defined CANNOT_DUMP]: Include unexec.h.
877 * unexaix.c, unexcoff.c, unexcw.c, unexelf.c, unexhp9k800.c:
878 * unexmacosx.c, unexsol.c, unexw32.c: Include unexec.h.
879 Change as necessary to match prototype in unexec.h.
880
881 * syntax.c (Fforward_comment, scan_lists): Rename locals to avoid
882 shadowing.
883 (back_comment, skip_chars): Mark vars as initialized.
884
885 * character.h (FETCH_STRING_CHAR_ADVANCE_NO_CHECK, BUF_INC_POS):
886 Rename locals to avoid shadowing.
887
888 * lread.c (read1): Rewrite so as not to use empty "else".
889 (Fload, readevalloop, read1): Rename locals to avoid shadowing.
890
891 * print.c (Fredirect_debugging_output): Fix pointer signedess.
892
893 * lisp.h (debug_output_compilation_hack): Add decl here, to avoid
894 warning when compiling print.c.
895
896 * font.c (font_unparse_fcname): Abort in an "impossible" situation
897 instead of using an uninitialized var.
898 (font_sort_entities): Mark var as initialized.
899
900 * character.h (FETCH_CHAR_ADVANCE): Rename locals to avoid shadowing.
901
902 * font.c (font_unparse_xlfd): Don't mix pointers to variables with
903 pointers to constants.
904 (font_parse_fcname): Remove unused vars.
905 (font_delete_unmatched): Now static.
906 (font_get_spec): Remove; unused.
907 (font_style_to_value, font_prop_validate_style, font_unparse_fcname):
908 (font_update_drivers, Ffont_get_glyphs, font_add_log):
909 Rename or move locals to avoid shadowing.
910
911 * fns.c (require_nesting_list, require_unwind): Now static.
912 (Ffillarray): Rename locals to avoid shadowing.
913
914 * floatfns.c (domain_error2): Define only if needed.
915 (Ffrexp, Fldexp): Rename locals to avoid shadowing.
916
917 * alloc.c (mark_backtrace): Move decl from here ...
918 * lisp.h: ... to here, so that it can be checked.
919
920 * eval.c (call_debugger, do_debug_on_call, grow_specpdl): Now static.
921 (Fdefvar): Rewrite so as not to use empty "else".
922 (lisp_indirect_variable): Name an expression,
923 to avoid gcc -Wbad-function-cast warning.
924 (Fdefvar): Rename locals to avoid shadowing.
925
926 * callint.c (quotify_arg, quotify_args): Now static.
927 (Fcall_interactively): Rename locals to avoid shadowing.
928 Use const pointer when appropriate.
929
930 * lisp.h (get_system_name, get_operating_system_release):
931 Move decls here, to check interfaces.
932 * process.c (get_operating_system_release): Move decl to lisp.h.
933 * xrdb.c (get_system_name): Likewise.
934 * editfns.c (init_editfns, Fuser_login_name, Fuser_uid):
935 (Fuser_real_uid, Fuser_full_name): Remove unnecessary casts,
936 some of which prompt warnings from gcc -Wbad-function-cast.
937 (Fformat_time_string, Fencode_time, Finsert_char):
938 (Ftranslate_region_internal, Fformat):
939 Rename or remove local vars to avoid shadowing.
940 (Ftranslate_region_internal): Mark var as initialized.
941
942 * doc.c (Fdocumentation, Fsnarf_documentation): Move locals to
943 avoid shadowing.
944
945 * lisp.h (eassert): Check that the argument compiles, even if
946 ENABLE_CHECKING is not defined.
947
948 * data.c (Findirect_variable): Name an expression, to avoid
949 gcc -Wbad-function-cast warning.
950 (default_value, arithcompare, arith_driver, arith_error): Now static.
951 (store_symval_forwarding): Rename local to avoid shadowing.
952 (Fmake_variable_buffer_local, Fmake_local_variable):
953 Mark variables as initialized.
954 (do_blv_forwarding, do_symval_forwarding): Remove; unused.
955
956 * alloc.c (check_cons_list): Do not define unless GC_CHECK_CONS_LIST.
957 (Fmake_vector, Fvector, Fmake_byte_code, Fgarbage_collect):
958 Rename locals to avoid shadowing.
959 (mark_stack): Move local variables into the #ifdef region where
960 they're used.
961 (BLOCK_INPUT_ALLOC, UNBLOCK_INPUT_ALLOC): Define only if
962 ! defined SYSTEM_MALLOC && ! defined SYNC_INPUT, as they are not
963 needed otherwise.
964 (CHECK_ALLOCATED): Define only if GC_CHECK_MARKED_OBJECTS.
965 (GC_STRING_CHARS): Remove; not used.
966 (Fmemory_limit): Cast sbrk's returned value to char *.
967
968 * lisp.h (check_cons_list): Declare if GC_CHECK_CONS_LIST; this
969 avoids undefined behavior in theory.
970
971 * regex.c (IF_LINT): Add defn, for benefit of ../lib-src.
972
973 Use functions, not macros, for up- and down-casing (Bug#8254).
974 * buffer.h (DOWNCASE_TABLE, UPCASE_TABLE, DOWNCASE, UPPERCASEP):
975 (NOCASEP, LOWERCASEP, UPCASE, UPCASE1): Remove. All callers changed
976 to use the following functions instead of these macros.
977 (downcase): Adjust to lack of DOWNCASE_TABLE. Return int, not
978 EMACS_INT, since callers assume the returned value fits in int.
979 (upcase1): Likewise, for UPCASE_TABLE.
980 (uppercasep, lowercasep, upcase): New static inline functions.
981 * editfns.c (Fchar_equal): Remove no-longer-needed workaround for
982 the race-condition problem in the old DOWNCASE.
983
984 * regex.c (CHARSET_LOOKUP_RANGE_TABLE_RAW, POP_FAILURE_REG_OR_COUNT):
985 Rename locals to avoid shadowing.
986 (regex_compile, re_match_2_internal): Move locals to avoid shadowing.
987 (regex_compile, re_search_2, re_match_2_internal):
988 Remove unused local vars.
989 (FREE_VAR): Rewrite so as not to use empty "else",
990 which gcc can warn about.
991 (regex_compile, re_match_2_internal): Mark locals as initialized.
992 (RETALLOC_IF): Define only if needed.
993 (WORDCHAR_P): Likewise. This one is never needed, but is used
994 only in a comment talking about a compiler bug, so put inside
995 the #if 0 of that comment.
996 (CHARSET_LOOKUP_BITMAP, FAIL_STACK_FULL, RESET_FAIL_STACK):
997 (PUSH_FAILURE_ELT, BUF_PUSH_3, STOP_ADDR_VSTRING):
998 Remove; unused.
999
1000 * search.c (boyer_moore): Rename locals to avoid shadowing.
1001 * character.h (FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE):
1002 (PREV_CHAR_BOUNDARY): Likewise.
1003
1004 * search.c (simple_search): Remove unused var.
1005
1006 * dired.c (compile_pattern): Move decl from here ...
1007 * lisp.h: ... to here, so that it can be checked.
1008 (struct re_registers): New forward decl.
1009
1010 * character.h (INC_POS, DEC_POS): Rename locals to avoid shadowing.
1011
1012 * indent.c (MULTIBYTE_BYTES_WIDTH): New args bytes, width.
1013 All uses changed.
1014 (MULTIBYTE_BYTES_WIDTH, scan_for_column, compute_motion):
1015 Rename locals to avoid shadowing.
1016 (Fvertical_motion): Mark locals as initialized.
1017
1018 * casefiddle.c (casify_object, casify_region): Now static.
1019 (casify_region): Mark local as initialized.
1020
1021 * cmds.c (internal_self_insert): Rename local to avoid shadowing.
1022
1023 * lisp.h (GCPRO2_VAR, GCPRO3_VAR, GCPRO4_VAR, GCPRO5_VAR, GCPRO6_VAR):
1024 New macros, so that the caller can use some names other than
1025 gcpro1, gcpro2, etc.
1026 (GCPRO2, GCPRO3, GCPRO4, GCPRO5, GCPRO6): Reimplement in terms
1027 of the new macros.
1028 (GCPRO1_VAR, UNGCPRO_VAR): Change the meaning of the second
1029 argument, for consistency with GCPRO2_VAR, etc: it is now the
1030 prefix of the variable, not the variable itself. All uses
1031 changed.
1032 * dired.c (directory_files_internal, file_name_completion):
1033 Rename locals to avoid shadowing.
1034
1035 Fix a race condition diagnosed by gcc -Wsequence-point (Bug#8254).
1036 An expression of the form (DOWNCASE (x) == DOWNCASE (y)), found in
1037 dired.c's scmp function, had undefined behavior.
1038 * lisp.h (DOWNCASE_TABLE, UPCASE_TABLE, DOWNCASE, UPPERCASEP):
1039 (NOCASEP, LOWERCASEP, UPCASE, UPCASE1): Move from here ...
1040 * buffer.h: ... to here, because these macros use current_buffer,
1041 and the new implementation with inline functions needs to have
1042 current_buffer in scope now, rather than later when the macros
1043 are used.
1044 (downcase, upcase1): New static inline functions.
1045 (DOWNCASE, UPCASE1): Reimplement using these functions.
1046 This avoids undefined behavior in expressions like
1047 DOWNCASE (x) == DOWNCASE (y), which previously suffered
1048 from race conditions in accessing the global variables
1049 case_temp1 and case_temp2.
1050 * casetab.c (case_temp1, case_temp2): Remove; no longer needed.
1051 * lisp.h (case_temp1, case_temp2): Remove their decls.
1052 * character.h (ASCII_CHAR_P): Move from here ...
1053 * lisp.h: ... to here, so that the inline functions mentioned
1054 above can use them.
1055
1056 * dired.c (directory_files_internal_unwind): Now static.
1057
1058 * fileio.c (file_name_as_directory, directory_file_name):
1059 (barf_or_query_if_file_exists, auto_save_error, auto_save_1):
1060 Now static.
1061 (file_name_as_directory): Use const pointers when appropriate.
1062 (Fexpand_file_name): Likewise. In particular, newdir might
1063 point at constant storage, so make it a const pointer.
1064 (Fmake_directory_internal, Fread_file_name): Remove unused vars.
1065 (Ffile_selinux_context, Fset_file_selinux_context): Fix pointer
1066 signedness issues.
1067 (Fset_file_times, Finsert_file_contents, auto_save_error):
1068 Rename locals to avoid shadowing.
1069
1070 * minibuf.c (choose_minibuf_frame_1): Now static.
1071 (Ftry_completion, Fall_completions): Rename or remove locals
1072 to avoid shadowing.
1073
1074 * marker.c (bytepos_to_charpos): Remove; unused.
1075
1076 * lisp.h (verify_bytepos, count_markers): New decls,
1077 so that gcc does not warn that these functions aren't declared.
1078
1079 * insdel.c (check_markers, make_gap_larger, make_gap_smaller):
1080 (reset_var_on_error, Fcombine_after_change_execute_1): Now static.
1081 (CHECK_MARKERS): Redo to avoid gcc -Wempty-body diagnostic.
1082 (copy_text): Remove unused local var.
1083
1084 * filelock.c (within_one_second): Now static.
1085 (lock_file_1): Rename local to avoid shadowing.
1086
1087 * buffer.c (fix_overlays_before): Mark locals as initialized.
1088 (fix_start_end_in_overlays): Likewise. This function should be
1089 simplified by using pointers-to-pointers, but that's a different
1090 matter.
1091 (switch_to_buffer_1): Now static.
1092 (Fkill_buffer, record_buffer, Fbury_buffer, Fset_buffer_multibyte):
1093 (report_overlay_modification): Rename locals to avoid shadowing.
1094
1095 * sysdep.c (system_process_attributes): Rename vars to avoid shadowing.
1096 Fix pointer signedness issue.
1097 (sys_subshell): Mark local as volatile if checking for lint,
1098 to suppress a gcc -Wclobbered warning that does not seem to be right.
1099 (MAXPATHLEN): Define only if needed.
1100
1101 * process.c (serial_open, serial_configure): Move decls from here ...
1102 * systty.h: ... to here, so that they can be checked.
1103
1104 * fns.c (get_random, seed_random): Move extern decls from here ...
1105 * lisp.h: ... to here, so that they can be checked.
1106
1107 * sysdep.c (reset_io): Now static.
1108 (wait_for_termination_signal): Remove; unused.
1109
1110 * keymap.c (keymap_parent, keymap_memberp, map_keymap_internal):
1111 (copy_keymap_item, append_key, push_text_char_description):
1112 Now static.
1113 (Fwhere_is_internal): Don't test CONSP (sequences) unnecessarily.
1114 (DENSE_TABLE_SIZE): Remove; unused.
1115 (get_keymap, access_keymap, Fdefine_key, Fwhere_is_internal):
1116 (describe_map_tree):
1117 Rename locals to avoid shadowing.
1118
1119 * keyboard.c: Declare functions static if they are not used elsewhere.
1120 (echo_char, echo_dash, cmd_error, top_level_2):
1121 (poll_for_input, handle_async_input): Now static.
1122 (read_char, kbd_buffer_get_event, make_lispy_position):
1123 (make_lispy_event, make_lispy_movement, apply_modifiers):
1124 (decode_keyboard_code, tty_read_avail_input, menu_bar_items):
1125 (parse_tool_bar_item, read_key_sequence, Fread_key_sequence):
1126 (Fread_key_sequence_vector): Rename locals to avoid shadowing.
1127 (read_key_sequence, read_char): Mark locals as initialized.
1128 (Fexit_recursive_edit, Fabort_recursive_edit): Mark with NO_RETURN.
1129
1130 * keyboard.h (make_ctrl_char): New decl.
1131 (mark_kboards): Move decl here ...
1132 * alloc.c (mark_kboards): ... from here.
1133
1134 * lisp.h (force_auto_save_soon): New decl.
1135
1136 * emacs.c (init_cmdargs): Rename local to avoid shadowing.
1137 (DEFINE_DUMMY_FUNCTION): New macro.
1138 (__do_global_ctors, __do_global_ctors_aux, __do_global_dtors, __main):
1139 Use it.
1140 (main): Add casts to avoid warnings
1141 if GCC considers string literals to be constants.
1142
1143 * lisp.h (fatal_error_signal): Add decl, since it's exported.
1144
1145 * dbusbind.c: Pointer signedness fixes.
1146 (xd_signature, xd_append_arg, xd_initialize):
1147 (Fdbus_call_method, Fdbus_call_method_asynchronously):
1148 (Fdbus_method_return_internal, Fdbus_method_error_internal):
1149 (Fdbus_send_signal, xd_read_message_1, Fdbus_register_service):
1150 (Fdbus_register_signal): Use SSDATA when the context wants char *.
1151
1152 * dbusbind.c (Fdbus_init_bus): Add cast to avoid warning
1153 if GCC considers string literals to be constants.
1154 (Fdbus_register_service, Fdbus_register_method): Remove unused vars.
1155
1156 2011-03-16 Stefan Monnier <monnier@iro.umontreal.ca>
1157
1158 * print.c (PRINT_CIRCLE_CANDIDATE_P): New macro.
1159 (print_preprocess, print_object): New macro to fix last change.
1160
1161 * print.c (print_preprocess): Don't forget font objects.
1162
1163 2011-03-16 Juanma Barranquero <lekktu@gmail.com>
1164
1165 * emacs.c (USAGE3): Doc fixes.
1166
1167 2011-03-15 Andreas Schwab <schwab@linux-m68k.org>
1168
1169 * coding.c (detect_coding_iso_2022): Reorganize code to clarify
1170 structure.
1171
1172 2011-03-14 Juanma Barranquero <lekktu@gmail.com>
1173
1174 * lisp.h (VWindow_system, Qfile_name_history):
1175 * keyboard.h (lispy_function_keys) [WINDOWSNT]:
1176 * w32term.h (w32_system_caret_hwnd, w32_system_caret_height)
1177 (w32_system_caret_x, w32_system_caret_y): Declare extern.
1178
1179 * w32select.c: Don't #include "keyboard.h".
1180 (run_protected): Add extern declaration for waiting_for_input.
1181
1182 * w32.c (Qlocal, noninteractive1, inhibit_window_system):
1183 * w32console.c (detect_input_pending, read_input_pending)
1184 (encode_terminal_code):
1185 * w32fns.c (quit_char, lispy_function_keys, Qtooltip)
1186 (w32_system_caret_hwnd, w32_system_caret_height, w32_system_caret_x)
1187 (w32_system_caret_y, Qfile_name_history):
1188 * w32font.c (w32font_driver, QCantialias, QCotf, QClang):
1189 * w32inevt.c (reinvoke_input_signal, lispy_function_keys):
1190 * w32menu.c (Qmenu_bar, QCtoggle, QCradio, Qoverriding_local_map)
1191 (Qoverriding_terminal_local_map, Qmenu_bar_update_hook):
1192 * w32proc.c (Qlocal, report_file_error):
1193 * w32term.c (Vwindow_system, updating_frame):
1194 * w32uniscribe.c (initialized, uniscribe_font_driver):
1195 Remove unneeded extern declarations.
1196
1197 2011-03-14 Chong Yidong <cyd@stupidchicken.com>
1198
1199 * buffer.c (Fmake_indirect_buffer): Fix incorrect assertions.
1200
1201 2011-03-13 Chong Yidong <cyd@stupidchicken.com>
1202
1203 * buffer.h (BUF_BEGV, BUF_BEGV_BYTE, BUF_ZV, BUF_ZV_BYTE, BUF_PT)
1204 (BUF_PT_BYTE): Rewrite to handle indirect buffers (Bug#8219).
1205 These macros can no longer be used for assignment.
1206
1207 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer):
1208 Assign struct members directly, instead of using BUF_BEGV etc.
1209 (record_buffer_markers, fetch_buffer_markers): New functions for
1210 recording and fetching special buffer markers.
1211 (set_buffer_internal_1, set_buffer_temp): Use them.
1212
1213 * lread.c (unreadchar): Use SET_BUF_PT_BOTH.
1214
1215 * insdel.c (adjust_point): Use SET_BUF_PT_BOTH.
1216
1217 * intervals.c (temp_set_point_both): Use SET_BUF_PT_BOTH.
1218 (get_local_map): Use SET_BUF_BEGV_BOTH and SET_BUF_ZV_BOTH.
1219
1220 * xdisp.c (hscroll_window_tree):
1221 (reconsider_clip_changes): Use PT instead of BUF_PT.
1222
1223 2011-03-13 Eli Zaretskii <eliz@gnu.org>
1224
1225 * makefile.w32-in ($(BLD)/editfns.$(O)): Depend on
1226 $(EMACS_ROOT)/lib/intprops.h.
1227
1228 2011-03-13 Paul Eggert <eggert@cs.ucla.edu>
1229
1230 Fix more problems found by GCC 4.5.2's static checks.
1231
1232 * gtkutil.c (xg_get_pixbuf_from_pixmap): Add cast from char *
1233 to unsigned char * to avoid compiler diagnostic.
1234 (xg_free_frame_widgets): Make it clear that a local variable is
1235 needed only if USE_GTK_TOOLTIP.
1236 (gdk_window_get_screen): Make it clear that this macro is needed
1237 only if USE_GTK_TOOLTIP.
1238 (int_gtk_range_get_value): New function, which avoids a diagnostic
1239 from gcc -Wbad-function-cast.
1240 (xg_set_toolkit_scroll_bar_thumb): Use it.
1241 (xg_tool_bar_callback, xg_tool_item_stale_p): Rewrite to avoid
1242 diagnostic from gcc -Wbad-function-cast.
1243 (get_utf8_string, xg_get_file_with_chooser):
1244 Rename locals to avoid shadowing.
1245 (create_dialog): Move locals to avoid shadowing.
1246
1247 * xgselect.c (xg_select): Remove unused var.
1248
1249 * image.c (four_corners_best): Mark locals as initialized.
1250 (gif_load): Initialize transparent_p to zero (Bug#8238).
1251 Mark another local as initialized.
1252 (my_png_error, my_error_exit): Mark with NO_RETURN.
1253
1254 * image.c (clear_image_cache): Now static.
1255 (DIM, HAVE_STDLIB_H_1): Remove unused macros.
1256 (xpm_load): Redo to avoid "discards qualifiers" gcc warning.
1257 (x_edge_detection): Remove unnecessary cast that
1258 gcc -Wbad-function-cast diagnoses.
1259 (gif_load): Fix pointer signedness.
1260 (clear_image_cache, xbm_read_bitmap_data, x_detect_edges):
1261 (jpeg_load, gif_load): Rename locals to avoid shadowing.
1262
1263 2011-03-12 Paul Eggert <eggert@cs.ucla.edu>
1264
1265 Improve quality of tests for time stamp overflow.
1266 For example, without this patch (encode-time 0 0 0 1 1
1267 1152921504606846976) returns the obviously-bogus value (-948597
1268 62170) on my RHEL 5.5 x86-64 host. With the patch, it correctly
1269 reports time overflow. See
1270 <http://lists.gnu.org/archive/html/emacs-devel/2011-03/msg00470.html>.
1271 * deps.mk (editfns.o): Depend on ../lib/intprops.h.
1272 * editfns.c: Include limits.h and intprops.h.
1273 (TIME_T_MIN, TIME_T_MAX): New macros.
1274 (time_overflow): Move earlier, to before first use.
1275 (hi_time, lo_time): New functions, for an accurate test for
1276 out-of-range times.
1277 (Fcurrent_time, Fget_internal_run_time, make_time): Use them.
1278 (Fget_internal_run_time): Don't assume time_t fits in int.
1279 (make_time): Use list2 instead of Fcons twice.
1280 (Fdecode_time): More accurate test for out-of-range times.
1281 (check_tm_member): New function.
1282 (Fencode_time): Use it, to test for out-of-range times.
1283 (lisp_time_argument): Don't rely on undefined left-shift and
1284 right-shift behavior when checking for time stamp overflow.
1285
1286 * editfns.c (time_overflow): New function, refactoring common code.
1287 (Fformat_time_string, Fdecode_time, Fencode_time):
1288 (Fcurrent_time_string): Use it.
1289
1290 Move 'make_time' to be next to its inverse 'lisp_time_argument'.
1291 * dired.c (make_time): Move to ...
1292 * editfns.c (make_time): ... here.
1293 * systime.h: Note the move.
1294
1295 2011-03-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1296
1297 * fringe.c (update_window_fringes): Remove unused variables.
1298
1299 * unexmacosx.c (copy_data_segment): Also copy __got section.
1300 (Bug#8223)
1301
1302 2011-03-12 Eli Zaretskii <eliz@gnu.org>
1303
1304 * termcap.c [MSDOS]: Include "msdos.h".
1305 (find_capability, tgetnum, tgetflag, tgetstr, tputs, tgetent):
1306 Constify `char *' arguments and their references according to
1307 prototypes in tparam.h.
1308
1309 * deps.mk (termcap.o): Depend on tparam.h and msdos.h.
1310
1311 * msdos.c (XMenuAddPane): 3rd argument is `const char *' now.
1312 Adapt all references accordingly.
1313
1314 * msdos.h (XMenuAddPane): 3rd argument is `const char *' now.
1315
1316 2011-03-11 Tom Tromey <tromey@redhat.com>
1317
1318 * buffer.c (syms_of_buffer): Remove obsolete comment.
1319
1320 2011-03-11 Eli Zaretskii <eliz@gnu.org>
1321
1322 * termhooks.h (encode_terminal_code): Declare prototype.
1323
1324 * msdos.c (encode_terminal_code): Don't declare prototype.
1325
1326 * term.c (encode_terminal_code): Now external again, used by
1327 w32console.c and msdos.c.
1328
1329 * makefile.w32-in ($(BLD)/term.$(O), ($(BLD)/tparam.$(O)):
1330 Depend on $(SRC)/tparam.h, see 2011-03-11T07:24:21Z!eggert@cs.ucla.edu.
1331
1332 2011-03-11 Paul Eggert <eggert@cs.ucla.edu>
1333
1334 Fix some minor problems found by GCC 4.5.2's static checks.
1335
1336 * fringe.c (update_window_fringes): Mark locals as initialized
1337 (Bug#8227).
1338 (destroy_fringe_bitmap, init_fringe_bitmap): Now static.
1339
1340 * alloc.c (mark_fringe_data): Move decl from here ...
1341 * lisp.h (mark_fringe_data) [HAVE_WINDOW_SYSTEM]: ... to here,
1342 to check its interface.
1343 (init_fringe_once): Do not declare unless HAVE_WINDOW_SYSTEM.
1344
1345 * fontset.c (free_realized_fontset): Now static.
1346 (Fset_fontset_font): Rename local to avoid shadowing.
1347 (fontset_font): Mark local as initialized.
1348 (FONTSET_SPEC, FONTSET_REPERTORY, RFONT_DEF_REPERTORY): Remove; unused.
1349
1350 * xrdb.c: Include "xterm.h", to check x_load_resources's interface.
1351
1352 * xselect.c (x_disown_buffer_selections): Remove; not used.
1353 (TRACE3) [!defined TRACE_SELECTION]: Remove; not used.
1354 (x_own_selection, Fx_disown_selection_internal): Rename locals
1355 to avoid shadowing.
1356 (x_handle_dnd_message): Remove local to avoid shadowing.
1357
1358 * lisp.h (GCPRO1_VAR, UNGCPRO_VAR): New macros,
1359 so that the caller can use some name other than gcpro1.
1360 (GCPRO1, UNGCPRO): Reimplement in terms of the new macros.
1361 * xfns.c (Fx_create_frame, x_create_tip_frame, Fx_show_tip):
1362 (Fx_backspace_delete_keys_p):
1363 Use them to avoid shadowing, and rename vars to avoid shadowing.
1364 (x_decode_color, x_set_name, x_window): Now static.
1365 (Fx_create_frame): Add braces to silence GCC warning.
1366 (Fx_file_dialog, Fx_select_font): Fix pointer signedness.
1367 (x_real_positions, xg_set_icon_from_xpm_data, x_create_tip_frame):
1368 Remove unused locals.
1369 (Fx_create_frame, x_create_tip_frame, Fx_show_tip):
1370 (Fx_backspace_delete_keys_p): Rename locals to avoid shadowing.
1371 Some of these renamings use the new GCPRO1_VAR and UNGCPRO_VAR
1372 macros.
1373
1374 * xterm.h (x_mouse_leave): New decl.
1375
1376 * xterm.c (x_copy_dpy_color, x_focus_on_frame, x_unfocus_frame):
1377 Remove unused functions.
1378 (x_shift_glyphs_for_insert, XTflash, XTring_bell):
1379 (x_calc_absolute_position): Now static.
1380 (XTread_socket): Don't define label "out" unless it's used.
1381 Don't declare local "event" unless it's used.
1382 (x_iconify_frame, x_free_frame_resources): Don't declare locals
1383 unless they are used.
1384 (XEMBED_VERSION, xembed_set_info): Don't define unless needed.
1385 (x_fatal_error_signal): Remove; not used.
1386 (x_draw_image_foreground, redo_mouse_highlight, XTmouse_position):
1387 (x_scroll_bar_report_motion, handle_one_xevent, x_draw_bar_cursor):
1388 (x_error_catcher, x_connection_closed, x_error_handler):
1389 (x_error_quitter, xembed_send_message, x_iconify_frame):
1390 (my_log_handler): Rename locals to avoid shadowing.
1391 (x_delete_glyphs, x_ins_del_lines): Mark with NO_RETURN.
1392 (x_connection_closed): Tell GCC not to suggest NO_RETURN.
1393
1394 * xfaces.c (clear_face_cache, Fx_list_fonts, Fface_font):
1395 Rename or move locals to avoid shadowing.
1396 (tty_defined_color, merge_face_heights): Now static.
1397 (free_realized_faces_for_fontset): Remove; not used.
1398 (Fx_list_fonts): Mark variable that gcc -Wuninitialized
1399 does not deduce is never used uninitialized.
1400 (STRDUPA, LSTRDUPA, FONT_POINT_SIZE_QUANTUM): Remove; not used.
1401 (LFACEP): Define only if XASSERTS, as it's not needed otherwise.
1402
1403 * terminal.c (store_terminal_param): Now static.
1404
1405 * xmenu.c (menu_highlight_callback): Now static.
1406 (set_frame_menubar): Remove unused local.
1407 (xmenu_show): Rename parameter to avoid shadowing.
1408 (xmenu_show, xdialog_show, xmenu_show): Make local pointers "const"
1409 since they might point to immutable storage.
1410 (next_menubar_widget_id): Declare only if USE_X_TOOLKIT,
1411 since it's unused otherwise.
1412
1413 * xdisp.c (produce_glyphless_glyph): Initialize lower_xoff.
1414 Add a FIXME, since the code still doesn't look right. (Bug#8215)
1415 (Fcurrent_bidi_paragraph_direction): Simplify slightly; this
1416 avoids a gcc -Wuninitialized diagnostic.
1417 (display_line, BUILD_COMPOSITE_GLYPH_STRING, draw_glyphs):
1418 (note_mouse_highlight): Mark variables that gcc -Wuninitialized
1419 does not deduce are never used uninitialized.
1420
1421 * lisp.h (IF_LINT): New macro, copied from ../lib-src/emacsclient.c.
1422
1423 * xdisp.c (redisplay_window): Rename local to avoid shadowing.
1424 * window.c (window_loop, size_window):
1425 (run_window_configuration_change_hook, enlarge_window): Likewise.
1426
1427 * window.c (display_buffer): Now static.
1428 (size_window): Mark variables that gcc -Wuninitialized
1429 does not deduce are never used uninitialized.
1430 * window.h (check_all_windows): New decl, to forestall
1431 gcc -Wmissing-prototypes diagnostic.
1432 * dispextern.h (bidi_dump_cached_states): Likewise.
1433
1434 * charset.h (CHECK_CHARSET_GET_CHARSET): Rename locals to avoid
1435 shadowing.
1436 * charset.c (map_charset_for_dump, Fchar_charset): Likewise.
1437 Include <limits.h>.
1438 (Fsort_charsets): Redo min/max calculation to shorten the code a bit
1439 and to avoid gcc -Wuninitialized warning.
1440 (load_charset_map): Mark variables that gcc -Wuninitialized
1441 does not deduce are never used uninitialized.
1442 (load_charset): Abort instead of using uninitialized var (Bug#8229).
1443
1444 * coding.c (coding_set_source, coding_set_destination):
1445 Use "else { /* comment */ }" rather than "else /* comment */;"
1446 for clarity, and to avoid gcc -Wempty-body warning.
1447 (Fdefine_coding_system_internal): Don't redeclare 'i' inside
1448 a block, when the outer 'i' will do.
1449 (decode_coding_utf_8, decode_coding_utf_16, detect_coding_emacs_mule):
1450 (emacs_mule_char, decode_coding_emacs_mule, detect_coding_iso_2022):
1451 (decode_coding_iso_2022, decode_coding_sjis, decode_coding_big5):
1452 (decode_coding_raw_text, decode_coding_charset, get_translation_table):
1453 (Fdecode_sjis_char, Fdefine_coding_system_internal):
1454 Rename locals to avoid shadowing.
1455 * character.h (FETCH_STRING_CHAR_ADVANCE): Likewise.
1456 * coding.c (emacs_mule_char, encode_invocation_designation):
1457 Now static, since they're not used elsewhere.
1458 (decode_coding_iso_2022): Add "default: abort ();" as a safety check.
1459 (decode_coding_object, encode_coding_object, detect_coding_system):
1460 (decode_coding_emacs_mule): Mark variables that gcc
1461 -Wuninitialized does not deduce are never used uninitialized.
1462 (detect_coding_iso_2022): Initialize a local variable that might
1463 be used uninitialized. Leave a FIXME because it's not clear that
1464 this initialization is needed. (Bug#8211)
1465 (ISO_CODE_LF, ISO_CODE_CR, CODING_ISO_FLAG_EUC_TW_SHIFT):
1466 (ONE_MORE_BYTE_NO_CHECK, UTF_BOM, UTF_16_INVALID_P):
1467 (SHIFT_OUT_OK, ENCODE_CONTROL_SEQUENCE_INTRODUCER):
1468 (ENCODE_DIRECTION_R2L, ENCODE_DIRECTION_L2R):
1469 Remove unused macros.
1470
1471 * category.c (hash_get_category_set): Remove unused local var.
1472 (copy_category_table): Now static, since it's not used elsewhere.
1473 * character.c (string_count_byte8): Likewise.
1474
1475 * ccl.c (CCL_WRITE_STRING, CCL_ENCODE_CHAR, Fccl_execute_on_string):
1476 (Fregister_code_conversion_map): Rename locals to avoid shadowing.
1477
1478 * chartab.c (copy_sub_char_table): Now static, since it's not used
1479 elsewhere.
1480 (sub_char_table_ref_and_range, char_table_ref_and_range):
1481 Rename locals to avoid shadowing.
1482 (ASET_RANGE, GET_SUB_CHAR_TABLE): Remove unused macros.
1483
1484 * bidi.c (bidi_check_type): Now static, since it's not used elsewhere.
1485 (BIDI_BOB): Remove unused macro.
1486
1487 * cm.c (cmgoto): Mark variables that gcc -Wuninitialized does not
1488 deduce are never used uninitialized.
1489 * term.c (encode_terminal_code): Likewise.
1490
1491 * term.c (encode_terminal_code): Now static. Remove unused local.
1492
1493 * tparam.h: New file.
1494 * term.c, tparam.h: Include it.
1495 * deps.mk (term.o, tparam.o): Depend on tparam.h.
1496 * term.c (tputs, tgetent, tgetflag, tgetnum, tparam, tgetstr):
1497 Move these decls to tparam.h, and make them agree with what
1498 is actually in tparam.c. The previous trick of using incompatible
1499 decls in different modules does not conform to the C standard.
1500 All callers of tparam changed to use tparam's actual API.
1501 * tparam.c (tparam1, tparam, tgoto):
1502 Use const pointers where appropriate.
1503
1504 * cm.c (calccost, cmgoto): Use const pointers where appropriate.
1505 * cm.h (struct cm): Likewise.
1506 * dispextern.h (do_line_insertion_deletion_costs): Likewise.
1507 * scroll.c (ins_del_costs, do_line_insertion_deletion_costs): Likewise.
1508 * term.c (tty_ins_del_lines, calculate_costs, struct fkey_table):
1509 (term_get_fkeys_1, append_glyphless_glyph, produce_glyphless_glyph):
1510 (turn_on_face, init_tty): Likewise.
1511 * termchar.h (struct tty_display_info): Likewise.
1512
1513 * term.c (term_mouse_position): Rename local to avoid shadowing.
1514
1515 * alloc.c (mark_ttys): Move decl from here ...
1516 * lisp.h (mark_ttys): ... to here, so that it's checked against defn.
1517
1518 2011-03-11 Andreas Schwab <schwab@linux-m68k.org>
1519
1520 * .gdbinit (pwinx, xbuffer): Fix access to buffer name.
1521
1522 2011-03-09 Juanma Barranquero <lekktu@gmail.com>
1523
1524 * search.c (compile_pattern_1): Remove argument regp, unused since
1525 revid:rms@gnu.org-19941211082627-3x1g1wyqkjmwloig.
1526 (compile_pattern): Don't pass it.
1527
1528 2011-03-08 Jan Djärv <jan.h.d@swipnet.se>
1529
1530 * xterm.h (DEFAULT_GDK_DISPLAY): New define.
1531 (GDK_WINDOW_XID, gtk_widget_get_preferred_size): New defines
1532 for ! HAVE_GTK3.
1533 (GTK_WIDGET_TO_X_WIN): Use GDK_WINDOW_XID.
1534
1535 * xmenu.c (menu_position_func): Call gtk_widget_get_preferred_size.
1536
1537 * gtkutil.c: Include gtkx.h if HAVE_GTK3. If ! HAVE_GTK3, define
1538 gdk_window_get_screen, gdk_window_get_geometry,
1539 gdk_x11_window_lookup_for_display and GDK_KEY_g.
1540 (xg_set_screen): Use DEFAULT_GDK_DISPLAY.
1541 (xg_get_pixbuf_from_pixmap): New function.
1542 (xg_get_pixbuf_from_pix_and_mask): Change parameters from GdkPixmap
1543 to Pixmap, take frame as parameter, remove GdkColormap parameter.
1544 Call xg_get_pixbuf_from_pixmap instead of
1545 gdk_pixbuf_get_from_drawable.
1546 (xg_get_image_for_pixmap): Do not make GdkPixmaps, call
1547 xg_get_pixbuf_from_pix_and_mask with Pixmap parameters instead.
1548 (xg_check_special_colors): Use GtkStyleContext and its functions
1549 for HAVE_GTK3.
1550 (xg_prepare_tooltip, xg_hide_tooltip): Call gdk_window_get_screen.
1551 (xg_prepare_tooltip, create_dialog, menubar_map_cb)
1552 (xg_update_frame_menubar, xg_tool_bar_detach_callback)
1553 (xg_tool_bar_attach_callback, xg_update_tool_bar_sizes):
1554 Call gtk_widget_get_preferred_size.
1555 (xg_frame_resized): gdk_window_get_geometry only takes 5
1556 parameters.
1557 (xg_win_to_widget, xg_event_is_for_menubar):
1558 Call gdk_x11_window_lookup_for_display.
1559 (xg_set_widget_bg): New function.
1560 (delete_cb): New function.
1561 (xg_create_frame_widgets): connect delete-event to delete_cb.
1562 Call xg_set_widget_bg. Only set backgrund pixmap for ! HAVE_GTK3
1563 (xg_set_background_color): Call xg_set_widget_bg.
1564 (xg_set_frame_icon): Call xg_get_pixbuf_from_pix_and_mask.
1565 (xg_create_scroll_bar): vadj is a GtkAdjustment for HAVE_GTK3.
1566 Only call gtk_range_set_update_policy if ! HAVE_GTK3.
1567 (xg_make_tool_item): Only connect xg_tool_bar_item_expose_callback
1568 if ! HAVE_GTK3.
1569 (update_frame_tool_bar): Call gtk_widget_hide.
1570 (xg_initialize): Use GDK_KEY_g.
1571
1572 * xsmfns.c (gdk_set_sm_client_id): Define to gdk_set_sm_client_id
1573 if ! HAVE_GTK3
1574 (x_session_initialize): Call gdk_x11_set_sm_client_id.
1575
1576 * xterm.c (XFillRectangle): Use cairo routines for HAVE_GTK3.
1577 (x_term_init): Disable Xinput(2) with GDK_CORE_DEVICE_EVENTS.
1578 Load ~/emacs.d/gtkrc only for ! HAVE_GTK3.
1579
1580 2011-03-08 Juanma Barranquero <lekktu@gmail.com>
1581
1582 * w32xfns.c (select_palette): Check success of RealizePalette against
1583 GDI_ERROR, not zero.
1584
1585 See ChangeLog.11 for earlier changes.
1586
1587 ;; Local Variables:
1588 ;; coding: utf-8
1589 ;; End:
1590
1591 Copyright (C) 2011 Free Software Foundation, Inc.
1592
1593 This file is part of GNU Emacs.
1594
1595 GNU Emacs is free software: you can redistribute it and/or modify
1596 it under the terms of the GNU General Public License as published by
1597 the Free Software Foundation, either version 3 of the License, or
1598 (at your option) any later version.
1599
1600 GNU Emacs is distributed in the hope that it will be useful,
1601 but WITHOUT ANY WARRANTY; without even the implied warranty of
1602 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1603 GNU General Public License for more details.
1604
1605 You should have received a copy of the GNU General Public License
1606 along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.