Description of problem: when tried to fix bug 1037380 ,got following compilation error ------------------------------------------------------------------------------ gcc -I. -I. -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic -I./libwc -DHAVE_CONFIG_H -DAUXBIN_DIR=\"/usr/libexec/w3m\" -DCGIBIN_DIR=\"/usr/libexec/w3m/cgi-bin\" -DHELP_DIR=\"/usr/share/w3m\" -DETC_DIR=\"/etc\" -DCONF_DIR=\"/etc/w3m\" -DRC_DIR=\"~/.w3m\" -DLOCALEDIR=\"/usr/share/locale\" -c -o frame.o frame.c etc.c:638:8: error: conflicting types for 'sys_errlist' char **sys_errlist; ^ In file included from /usr/include/stdio.h:853:0, from fm.h:18, from etc.c:2: /usr/include/bits/sys_errlist.h:27:26: note: previous declaration of 'sys_errlist' was here extern const char *const sys_errlist[]; ^ ------------------------------------------------------------------------------ Version-Release number of selected component (if applicable): w3m-0.5.3-13.fc20.x86_64 How reproducible: always Steps to Reproduce: 1. enable "-Werror=format-security" flag 2. Fix the API where format specifier is needed 3. still it failed to compile with above error Actual results: does not compile Expected results: should compile Additional info: I found the only way to fix is remove code that checks if sys_errlist variable is available or not on your system. We can't patch configure.ac as it needs to use autoreconf which fails for this very old source code. So better if we have working package by removing related code that adds function prepare_sys_errlist() code then lets remove it by patch.
Created attachment 832476 [details] fix conflicting types for 'sys_errlist'
Fixed in w3m-0.5.3-14.fc21