Well, Paul and Jim seem to agree with me that lines longer than 80 chars are too hard to read and understand...
And you'd need to patch 19 files, Paul only 12 (if I counted correctly) Whatever... The list might get reduced, if I'd only check for #pragma columns that are set to 80 or less, or some other 'reasonable' limit? In quite a few files it is set to 79, 90, 100, 160, 200,255, 32767 rather than 80. $ find /usr/include -name *.h|xargs grep '# *pragma columns' /usr/include/acl.h:#pragma columns 80 /usr/include/arpa/inet.h:#pragma columns 80 /usr/include/arpa/nameser.h:#pragma columns 80 /usr/include/assert.h:#pragma columns 80 /usr/include/cobsetjmp.h:#pragma columns 80 /usr/include/common.h:#pragma columns 200 /usr/include/complex.h:#pragma columns 100 /usr/include/compnent.h:#pragma columns 200 /usr/include/cpio.h:#pragma columns 80 /usr/include/crtlns.h:#pragma columns 80 /usr/include/ctype.h:#pragma columns 80 /usr/include/dirent.h:#pragma columns 80 /usr/include/dlaunch.h:#pragma columns 80 /usr/include/errno.h:#pragma columns 80 /usr/include/fcntl.h:#pragma columns 80 /usr/include/fenv.h:#pragma columns 80 /usr/include/float.h:#pragma columns 80 /usr/include/fmtmsg.h:#pragma columns 80 /usr/include/fnmatch.h:#pragma columns 80 /usr/include/fstream.h:#pragma columns 200 /usr/include/ftw.h:#pragma columns 80 /usr/include/generic.h:#pragma columns 200 /usr/include/glob.h:#pragma columns 80 /usr/include/grp.h:#pragma columns 80 /usr/include/gthread.h:#pragma columns 79 /usr/include/histry.h:#pragma columns 80 /usr/include/iconv.h:#pragma columns 80 /usr/include/ieeefp.h:#pragma columns 80 /usr/include/inttypes.h:#pragma columns 80 /usr/include/iomanip.h:#pragma columns 200 /usr/include/iostream.h:#pragma columns 200 /usr/include/iso646.h:#pragma columns 80 /usr/include/kfpconv.h:#pragma columns 79 /usr/include/kfpieee.h:#pragma columns 79 /usr/include/kmem.h:#pragma columns 79 /usr/include/kphandl.h:#pragma columns 79 /usr/include/kpool64.h:#pragma columns 79 /usr/include/ktdmtyp.h:#pragma columns 79 /usr/include/langinfo.h:#pragma columns 80 /usr/include/libgen.h:#pragma columns 80 /usr/include/limits.h:#pragma columns 80 /usr/include/locale.h:#pragma columns 80 /usr/include/math.h:#pragma columns 90 /usr/include/memory.h:#pragma columns 80 /usr/include/mesg.h:#pragma columns 80 /usr/include/monetary.h:#pragma columns 80 /usr/include/ndbm.h:#pragma columns 80 /usr/include/net/af.h:#pragma columns 80 /usr/include/net/if.h:#pragma columns 80 /usr/include/net/if_arp.h:#pragma columns 80 /usr/include/net/netisr.h:#pragma columns 80 /usr/include/net/raw_cb.h:#pragma columns 80 /usr/include/net/route.h:#pragma columns 90 /usr/include/netdb.h:#pragma columns 80 /usr/include/netinet/icmp6.h:#pragma columns 32767 /usr/include/netinet/icmp_var.h:#pragma columns 90 /usr/include/netinet/if_ether.h:#pragma columns 80 /usr/include/netinet/in.h:#pragma columns 90 /usr/include/netinet/in6.h:#pragma columns 255 /usr/include/netinet/in_pcb.h:#pragma columns 80 /usr/include/netinet/in_systm.h:#pragma columns 80 /usr/include/netinet/in_var.h:#pragma columns 80 /usr/include/netinet/ip.h:#pragma columns 80 /usr/include/netinet/ip6.h:#pragma columns 32767 /usr/include/netinet/ip_icmp.h:#pragma columns 90 /usr/include/netinet/ip_var.h:#pragma columns 80 /usr/include/netinet/tcp.h:#pragma columns 80 /usr/include/netinet/tcp_debug.h:#pragma columns 80 /usr/include/netinet/tcp_fsm.h:#pragma columns 80 /usr/include/netinet/tcp_seq.h:#pragma columns 80 /usr/include/netinet/tcp_timer.h:#pragma columns 80 /usr/include/netinet/tcp_var.h:#pragma columns 80 /usr/include/netinet/tcpip.h:#pragma columns 80 /usr/include/netinet/udp.h:#pragma columns 80 /usr/include/netinet/udp_var.h:#pragma columns 80 /usr/include/new.h:#pragma columns 200 /usr/include/nl_types.h:#pragma columns 80 /usr/include/nlist.h:#pragma columns 80 /usr/include/nv.h:#pragma columns 80 /usr/include/pthread.h:#pragma columns 100 /usr/include/put/put_extensions.h:#pragma columns 90 /usr/include/pwd.h:#pragma columns 80 /usr/include/re_comp.h:#pragma columns 80 /usr/include/regex.h:#pragma columns 80 /usr/include/regexp.h:#pragma columns 100 /usr/include/resolv.h:#pragma columns 80 /usr/include/rpc/types.h:#pragma columns 80 /usr/include/rpc/xdr.h:#pragma columns 80 /usr/include/rw/random.h:#pragma columns 200 /usr/include/rw/rwdispatch.h:#pragma columns 200 /usr/include/rw/stddefs.h:#pragma columns 200 /usr/include/rw/stdgen.h:#pragma columns 200 /usr/include/sched.h:#pragma columns 100 /usr/include/search.h:#pragma columns 80 /usr/include/setjmp.h:#pragma columns 80 /usr/include/signal.h:#pragma columns 80 /usr/include/spawn.h:#pragma columns 80 /usr/include/sql.h:#pragma columns 80 /usr/include/stdarg.h:#pragma columns 80 /usr/include/stdbool.h:#pragma columns 80 /usr/include/stdcomp.h:#pragma columns 200 /usr/include/stddef.h:#pragma columns 80 /usr/include/stdint.h:#pragma columns 80 /usr/include/stdio.h:#pragma columns 80 /usr/include/stdiostream.h:#pragma columns 200 /usr/include/stdlib.h:#pragma columns 80 /usr/include/stl.h:#pragma columns 160 /usr/include/stream.h:#pragma columns 200 /usr/include/string.h:#pragma columns 80 /usr/include/strings.h:#pragma columns 80 /usr/include/stropts.h:#pragma columns 80 /usr/include/strstream.h:#pragma columns 200 /usr/include/sys/acl.h:#pragma columns 80 /usr/include/sys/domain.h:#pragma columns 80 /usr/include/sys/ioctl.h:#pragma columns 80 /usr/include/sys/ipc.h:#pragma columns 80 /usr/include/sys/lc_core.h:#pragma columns 80 /usr/include/sys/localedef.h:#pragma columns 80 /usr/include/sys/mbuf.h:#pragma columns 80 /usr/include/sys/method.h:#pragma columns 80 /usr/include/sys/msg.h:#pragma columns 80 /usr/include/sys/param.h:#pragma columns 80 /usr/include/sys/protosw.h:#pragma columns 80 /usr/include/sys/resource.h:#pragma columns 80 /usr/include/sys/sem.h:#pragma columns 80 /usr/include/sys/shm.h:#pragma columns 80 /usr/include/sys/socket.h:#pragma columns 80 /usr/include/sys/socketvar.h:#pragma columns 80 /usr/include/sys/stat.h:#pragma columns 80 /usr/include/sys/statvfs.h:#pragma columns 80 /usr/include/sys/syscall.h:#pragma columns 80 /usr/include/sys/time.h:#pragma columns 80 /usr/include/sys/timeb.h:#pragma columns 80 /usr/include/sys/times.h:#pragma columns 80 /usr/include/sys/types.h:#pragma columns 80 /usr/include/sys/uio.h:#pragma columns 80 /usr/include/sys/un.h:#pragma columns 80 /usr/include/sys/user.h:#pragma columns 80 /usr/include/sys/utsname.h:#pragma columns 80 /usr/include/sys/wait.h:#pragma columns 80 /usr/include/syslog.h:#pragma columns 80 /usr/include/tal.h:#pragma columns 80 /usr/include/tar.h:#pragma columns 80 /usr/include/tdmcpl.h:#pragma columns 200 /usr/include/tdmext.h:#pragma columns 80 /usr/include/tdmsig.h:#pragma columns 80 /usr/include/tdmstd.h:#pragma columns 80 /usr/include/termios.h:#pragma columns 80 /usr/include/tgmath.h:#pragma columns 90 /usr/include/time.h:#pragma columns 80 /usr/include/tnsint.h:#pragma columns 80 /usr/include/ulimit.h:#pragma columns 80 /usr/include/unistd.h:#pragma columns 80 /usr/include/utime.h:#pragma columns 80 /usr/include/varargs.h:#pragma columns 90 /usr/include/wchar.h:#pragma columns 80 /usr/include/wctype.h:#pragma columns 80 /usr/include/wordexp.h:#pragma columns 80 /usr/include/xlocinfo.h:#pragma columns 160 /usr/include/yvals.h:#pragma columns 160 At least these two are not affected at all (as they set it to max): /usr/include/netinet/icmp6.h /usr/include/netinet/ip6.h I'd think those with 160 (2 lines) and 200 ( 2 1/2 line) are save too? Bye, Jojo -----Original Message----- From: Bruno Haible [mailto:[email protected]] Sent: Saturday, October 02, 2010 12:08 PM To: Schmitz, Joachim Cc: Paolo Bonzini; 'bug-gnulib' Subject: Re: Fwd: sed porting trouble Hi Joachim, > The problem is that the -Wcolumns=... doesn't seem to override the pragmas in > the source. Yes, that's clear from the documentation that you pointed us to. > I'd rather see lines of 80 chars or shorter than adding pragmas all over the > place. Not me. > That command of yours gives 348 lines of output... I attached it. Thanks. After massaging it with sed -e 's/^.*h://' -e 's/>.*/>/' -e 's/h".*/h"/' -e 's/ *# */#/' ~/pragma.list \ | sort | uniq | \ | sed -n -e 's/#include <\(.*\)\.h>/\1.h \1.in.h/p' | sed -e 's/\//_/g' I get the list of affected files in gnulib: arpa_inet.in.h ctype.in.h locale.in.h math.in.h netinet_in.in.h regex.h sched.in.h signal.in.h spawn.in.h stdarg.in.h stddef.in.h stdio.in.h stdlib.in.h string.in.h sys_socket.in.h sys_stat.in.h sys_time.in.h sys_wait.in.h time.in.h wchar.in.h Bruno
