From: Paul Eggert <eggert@cs.ucla.edu>
To: "Andreas Röhler" <andreas.roehler@online.de>,
emacs-devel@gnu.org, "Juanma Barranquero" <lekktu@gmail.com>
Subject: Re: Fixing compilation and byte-compilation warnings before 25.1
Date: Fri, 13 Nov 2015 08:22:03 -0800 [thread overview]
Message-ID: <56460E2B.10603@cs.ucla.edu> (raw)
In-Reply-To: <m2d1vd7vhx.fsf@Vulcan.attlocal.net>
On 11/13/2015 07:46 AM, John Wiegley wrote:
> The policy should be: We never have warnings in our build on GNU Linux
That's a good goal, but the devil's in the details and the details
aren't written down. Here's a first cut at the current situation;
comments welcome. I suppose something like this should go into a text
file somewhere....
I run "./configure --enable-gcc-warnings" on Fedora x86-64 with the
latest GCC, and rewrite the code to fix all C-level warnings that this
uncovers. This doesn't fix all warnings for older GCC versions, or for
non-GCC compilers, or for x86 or sparc, or for code that is #ifdeffed
out or not compiled on my plastform, etc. Some of these are not worth
the hassle (e.g., older compilers) as the cost of code-clutter is not
worth the benefit of possibly finding bugs with older compilers. Others
are worth doing (e.g., non-x86-64 platforms, non-Fedora distros) but I
lack the time and/or system access and it'd be nice if someone would
volunteer.
I also occasionally run valgrind on Emacs executables (actually,
temacs), and try to fix the warnings it generates. This is considerably
harder to do, but is a real nice thing to have on our checklist. (Right
now, for example, there are a couple of memory-allocation bugs that I
really would rather be fixing than writing administrative text like
this. :-)
It'd be nice if someone would volunteer to clean up Elisp warnings (and
thanks, Juanma, for volunteering to help). For these I see the following
classes:
* Warnings where people install changes to .el files but don't bother to
fix the warnings. I hope these are rare. We really need to get out of
the habit of doing this.
* Warnings where people change module X but don't clean up the warnings
that this causes to modules other than X. It's a hassle for developers
to catch these ('make compile-always' is little-known and expensive).
Perhaps our autobuild process could catch these and send email to the
developer whose changes to X causes warnings in Y.
* Warnings where people change the byte-compiler to generate new, useful
warnings, but don't clean up all the .el files accordingly. Here it can
be a bit much to expect the developer to clean up everyone else's code.
But it'd be nice if volunteers could strive to get these fixed while
preparing for a release.
* Warnings generated because code is intended to be portable to XEmacs
or to older GNU Emacs, and so uses deprecated interfaces on purpose. As
far as I know there's no convenient way to say "I know FOO is
deprecated, I want to use it anyway, don't issue a warning" in code that
will also work in older Emacs. This should get fixed.
next prev parent reply other threads:[~2015-11-13 16:22 UTC|newest]
Thread overview: 29+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-11-13 1:47 Fixing compilation and byte-compilation warnings before 25.1 John Wiegley
2015-11-13 12:18 ` Juanma Barranquero
2015-11-13 14:40 ` Andreas Röhler
2015-11-13 15:37 ` Artur Malabarba
2015-11-14 8:34 ` Andreas Röhler
2015-11-13 15:46 ` John Wiegley
2015-11-13 16:22 ` Paul Eggert [this message]
2015-11-13 23:00 ` John Wiegley
2015-11-14 5:54 ` daniel sutton
2015-11-14 10:58 ` Michael Heerdegen
2015-11-14 18:22 ` daniel sutton
2015-11-15 12:41 ` Michael Heerdegen
2015-11-16 14:15 ` daniel sutton
2015-11-16 23:24 ` Artur Malabarba
2015-11-15 16:07 ` sea-level rise of byte-compilation warnings [was: Fixing...byte-compilation warnings...] Drew Adams
2015-11-15 16:42 ` daniel sutton
2015-11-15 17:38 ` Drew Adams
2015-11-15 17:47 ` daniel sutton
2015-11-15 22:39 ` Drew Adams
2015-11-16 23:48 ` Artur Malabarba
2015-11-16 23:52 ` Drew Adams
2015-11-17 0:09 ` Artur Malabarba
2015-11-17 15:45 ` Drew Adams
2015-11-17 3:59 ` Ivan Andrus
2015-11-14 15:23 ` Fixing compilation and byte-compilation warnings before 25.1 Andy Moreton
2015-11-14 10:55 ` Stephen Leake
2015-11-14 16:00 ` John Wiegley
2015-11-14 18:01 ` Stephen Leake
2015-11-15 9:08 ` David Engster
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=56460E2B.10603@cs.ucla.edu \
--to=eggert@cs.ucla.edu \
--cc=andreas.roehler@online.de \
--cc=emacs-devel@gnu.org \
--cc=lekktu@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/emacs.git
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.