• Eli Zaretskii's avatar
    Fix compiler warnings in the MinGW build · cb5af792
    Eli Zaretskii authored
    * configure.ac [mingw32]: Don't add -Wpointer-sign, and add
    -Wno-pointer-sign, to keep the noise level down.
    
    * nt/mingw-cfg.site (gl_cv_warn_c__Wredundant_decls): Disable
    -Wredundant-decls, as that produces a lot of noise due to
    redeclaration of time-related functions by gnulib.
    * nt/runemacs.c (set_user_model_id): Fix argument type of
    'SetCurrentProcessExplicitAppUserModelID'.
    
    * src/image.c (x_create_bitmap_from_file) [HAVE_NTGUI]: Don't
    declare 'dpyinfo', as it is unused.
    (xpm_load): Fix warnings about pointer signedness.
    * src/w32proc.c (IsValidLocale, init_winsock): Remove redundant
    prototypes.
    (sys_spawnve): Avoid warnings about discarding 'const' qualifier.
    (sys_select): Provide prototype.
    (g_b_init_compare_string_w): Move declaration to file scope.
    * src/w32heap.c (dumped_data_commit): Now static.
    (FREEABLE_P): Avoid warnings about pointer comparison with integer.
    (mmap_realloc): Cast to 'char *' for arithmetics on void pointers.
    * src/w32console.c (ctrl_c_handler, sys_tputs, sys_tgetstr)
    (evalcost, cmputc, cmcheckmagic, cmcostinit, cmgoto, Wcm_clear):
    Provide prototypes.
    * src/w32.c (globals_of_w32, conv_sockaddr_to_lisp): Remove
    redundant prototypes.
    (w32_get_internal_run_time, map_w32_filename): Provide prototype.
    (init_environment, sys_ctime): Avoid warnings about discarding
    'const' qualifier.
    Include utimens.h.
    (sys_ctime, sys_chdir, sys_creat, sys_fopen, sys_mkdir)
    (sys_open, sys_rename, sys_rmdir, is_slow_fs, term_winsock)
    (sys_close, sys_dup2, sys_read, sys_write, sys_localtime): Provide
    prototypes.
    (sys_rename_replace): Use %d to avoid compiler warnings.
    (_wsa_errlist): Make the message text 'const char *', to avoid
    compilation warnings.
    (dynlib_reset_last_error): Move prototype to file scope.
    (w32_get_resource): First argument is now 'const char *'.
    * src/w32uniscribe.c (syms_of_w32uniscribe): Provide prototype.
    (otf_features): Second argument is no 'const char *'.
    * src/w32term.c (free_frame_menubar, x_wm_set_size_hint)
    (x_set_window_size): Remove redundant prototypes.
    (XChangeGC, XGetGCValues, w32_draw_underwave)
    (w32_draw_rectangle, w32_shift_glyphs_for_insert, x_mouse_leave)
    (x_calc_absolute_position, x_destroy_window): Now static.
    (menubar_selection_callback): Move prototype to file scope.
    * src/w32font.c (g_b_init_get_glyph_outline_w): Remove redundant
    declaration.
    (w32_to_x_charset): Fix warnings about discarding 'const' qualifier.
    (w32font_full_name): Fix warnings about implicit conversion of
    'float' to 'double'.
    * src/w32reg.c (w32_get_rdb_resource): Fix warnings about
    discarding 'const' qualifier.
    * src/w32menu.c (syms_of_w32menu, globals_of_w32menu)
    (set_frame_menubar): Remove redundant prototypes.
    (menubar_selection_callback, w32_menu_display_help): Provide
    prototypes.
    (simple_dialog_show): Avoid warnings about discarding 'const'
    qualifier.
    * src/w32fns.c (syms_of_w32fns, globals_of_w32fns)
    (free_frame_menubar, w32_strerror, x_set_menu_bar_lines)
    (x_set_tool_bar_lines, x_set_internal_border_width): Remove
    redundant prototypes.
    (current_popup_menu): Remove redundant declaration.
    (colormap_t): Member 'name' is now 'const char *'.
    (add_system_logical_colors_to_map): Fix signed/unsigned warnings.
    (x_decode_color, x_set_border_pixel)
    (x_clear_under_internal_border, x_set_name, hook_w32_key)
    (reset_w32_kbdhook_state, deliver_wm_chars, w32_backtrace): Now
    static.
    (w32_load_cursor, w32_key_to_modifier, map_keypad_keys)
    (w32_msg_worker, w32_last_error): Provide prototypes.
    (funhook, lookup_vk_code): Avoid warnings about missing
    parentheses.
    (x_default_font_parameter, Fw32_notification_notify): Avoid
    warnings about discarding 'const' qualifier.
    (Fx_create_frame): Avoid warnings about empty body of 'else'.
    (x_screen_planes): Ifdef away unused function.
    (Fx_show_tip): Remove unused variables.
    (Fw32_battery_status): Avoid warnings about implicit promotion
    from float to double.
    (Fw32_notification_notify): Initialize 'timeout'.
    * src/profiler.c (profiler_cpu_running) [HAVE_ITIMERSPEC]: Only
    define the TIMER_SETTIME_RUNNING value if it will be used.
    * src/w32notify.c (send_notifications): Ifdef away an empty if
    clause.  Remove unused variable.
    (watch_end, watch_completion): Provide prototypes.
    * src/sound.c (sound_warning) [WINDOWSNT]: Don't define: unused.
    * src/callproc.c (child_setup, getenv_internal_1) [WINDOWSNT]: Fix
    warning with pointer signedness.
    * src/gnutls.c (gnutls_x509_crt_get_signature)
    (gnutls_alert_send_appropriate) [WINDOWSNT]: Don't define, and
    don't load them from the GnuTLS library, as they are no longer
    used.
    * src/process.c (DATAGRAM_CHAN_P) [!DATAGRAM_SOCKETS]: Don't
    define, as it's unused.
    * src/unexw32.c (open_input_file, open_output_file)
    (close_file_data): Remove redundant prototypes.
    (_start): provide prototype.
    (mainCRTStartup): Move prototype to file level.
    (find_section): Use type-cast to shut up compiler warnings.
    (offset_to_section, relocate_offset): Now static.
    (find_section): First argument is now a 'const char *'.
    (offset_to_section): Ifdef away, as it's unused.
    * src/w32heap.h (find_section): Adjust prototype.
    * src/dynlib.c (dynlib_reset_last_error): Provide prototype.
    * src/dired.c (directory_files_internal_w32_unwind): Avoid
    warnings about missing prototypes.
    (is_slow_fs) [WINDOWSNT]: Provide prototype at file level.
    (directory_files_internal) [WINDOWSNT]: Fix warnings about pointer
    signedness.
    * src/fileio.c (Ffile_writable_p, Ffile_regular_p) [WINDOWSNT]:
    Fix warnings about pointer signedness.
    * src/filelock.c (WTMP_FILE) [WINDOWSNT]: Don't define, it's
    unused.
    * src/sysdep.c (_getpid): Remove redundant prototype.
    (sys_subshell) [DOS_NT]: Don't define 'status', it's unused.
    [!MSDOS]: Don't define 'st', it's unused.
    (init_sys_modes) [DOS_NT]: Don't define 'terminal', it's unused.
    (str_collate) [WINDOWSNT]: Avoid warnings about pointer signedness.
    * src/keyboard.c (tty_read_avail_input) [WINDOWSNT]: Don't define
    n_to_read, as it is not used.
    (MAX_ENCODED_BYTES) [WINDOWSNT]: Don't define, as it's unused.
    * src/w32font.h (syms_of_w32font): Remove redundant prototype.
    * src/xfaces.c (x_display_info) [HAVE_NTGUI]: Remove unused macro.
    * src/term.c (init_tty) [DOS_NT]: Ifdef away variables that are
    not used by DOS_NT builds, to avoid compiler warnings.
    * src/menu.c (current_popup_menu) [HAVE_NTGUI]: Remove redundant
    declaration.
    * src/dispnew.c (init_display) [WINDOWSNT]: Use type-cast to shut
    up compiler warnings.
    * src/w32term.h (x_set_window_size, x_get_focus_frame)
    (x_make_frame_visible, x_make_frame_invisible, x_iconify_frame)
    (x_set_frame_alpha, x_activate_menubar, x_bitmap_icon)
    (x_free_frame_resources, x_real_positions)
    (display_x_get_resource): Remove redundant prototypes.
    
    * lib-src/ntlib.c (sys_ctime, sys_fopen, sys_chdir, mkostemp)
    (sys_rename, gettimeofday): Provide prototypes.
    * lib-src/ntlib.h (getuid, geteuid, mkostemp): Remove redundant
    declarations.
    * lib-src/emacsclient.c (w32_getenv): Argument is now 'const char *'.
    (xstrdup, w32_get_resource, w32_window_app, w32_execvp, ttyname)
    (close_winsock, initialize_sockets, w32_set_user_model_id)
    (w32_find_emacs_process, w32_give_focus) [WINDOWSNT]: Add
    prototypes.
    (w32_get_resource) [WINDOWSNT]: Fix a warning about signedness
    difference.
    (w32_set_user_model_id): Update prototype of
    SetCurrentProcessExplicitAppUserModelID to avoid compiler
    warnings.
    (start_daemon_and_retry_set_socket) [WINDOWSNT]: Use type-cast to
    shut up compiler warnings.
    * lib-src/etags.c (MAXPATHLEN) [WINDOWSNT]: Remove unused macro.
    cb5af792
w32.c 264 KB