All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jeff King <peff@peff.net>
To: "Nguyễn Thái Ngọc Duy" <pclouds@gmail.com>
Cc: git@vger.kernel.org, larsxschneider@gmail.com,
	Junio C Hamano <gitster@pobox.com>
Subject: Re: [PATCH] Makefile: detect compiler and enable more warnings in DEVELOPER=1
Date: Sun, 18 Mar 2018 05:26:30 -0400	[thread overview]
Message-ID: <20180318092629.GB29208@sigill.intra.peff.net> (raw)
In-Reply-To: <20180318081834.16081-1-pclouds@gmail.com>

On Sun, Mar 18, 2018 at 09:18:34AM +0100, Nguyễn Thái Ngọc Duy wrote:

> The set of extra warnings we enable when DEVELOPER has to be
> conservative because we can't assume any compiler version the
> developer may use. Detect the compiler version so we know when it's
> safe to enable -Wextra and maybe more.

Hrm, I was planning to expand my patch into a series. In particular, in
my experiments some of those warnings do not need to be disabled under
-Wextra (I tested going back to gcc 5 and clang 4.0).

I think it's worth splitting up the boilerplate changes from the
decisions on individual warnings, because I suspect we'll need to revise
the latter going forward.

I also noticed that all of those options seem to go back at least to
gcc-5. It makes me wonder how much we even need this version-detecting
framework. There are one or two "clang vs gcc" things I've found, but I
haven't found a case where old versions of gcc don't support a
particular option.

IOW, could we get away with just adding these to the DEVELOPER knob and
assuming that people who use it have a reasonably modern gcc or clang
setup? That's more or less what the existing knobs do.

But I didn't follow whether there was any earlier discussion on specific
problems.

>  -dumpversion does not work correctly for clang. So I use "-v" instead
>  which seems to produce the same output for both gcc and clang (with a
>  minor difference in freebsd where it says "FreeBSD clang" instead of
>  just "clang"). Not sure if it helps your "cc on debian" case though

Heh. At first I was confused, as it seems to work for me:

  $ clang-4.0 -dumpversion
  4.2.1

But then I tried this:

  $ clang-5.0 -dumpversion
  4.2.1

Whoops. It returns the same value up through clang 7.

-Peff

  parent reply	other threads:[~2018-03-18  9:26 UTC|newest]

Thread overview: 47+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-03-03  1:46 [PATCH] travis-ci: enable more warnings on travis linux-gcc job Nguyễn Thái Ngọc Duy
2018-03-16 19:33 ` [PATCH v2] " Nguyễn Thái Ngọc Duy
2018-03-16 21:22   ` Jeff King
2018-03-17  8:01     ` Duy Nguyen
2018-03-17 14:29       ` Lars Schneider
2018-03-17 14:59         ` Duy Nguyen
2018-03-17 16:08           ` Jeff King
2018-03-17 16:12             ` Jeff King
2018-03-17 23:50             ` Junio C Hamano
2018-03-18  8:18             ` [PATCH] Makefile: detect compiler and enable more warnings in DEVELOPER=1 Nguyễn Thái Ngọc Duy
2018-03-18  9:06               ` Eric Sunshine
2018-03-18  9:17                 ` Duy Nguyen
2018-03-18  9:20                   ` Jeff King
2018-03-18  9:24                   ` Eric Sunshine
2018-03-18  9:28                 ` Jeff King
2018-03-18  9:37                   ` Eric Sunshine
2018-03-18  9:26               ` Jeff King [this message]
2018-03-18  9:45                 ` Duy Nguyen
2018-03-18 15:55               ` Duy Nguyen
2018-03-18 18:56                 ` Ramsay Jones
2018-03-19 16:30                   ` Duy Nguyen
2018-03-20  5:32                 ` Jeff King
2018-03-24 12:53               ` [PATCH v2] " Nguyễn Thái Ngọc Duy
2018-03-25  0:40                 ` Eric Sunshine
2018-03-26 22:02                 ` Junio C Hamano
2018-03-27 15:03                   ` Duy Nguyen
2018-03-27 16:52                     ` Junio C Hamano
2018-03-29 15:03                 ` [PATCH v3 0/3] Enable more compiler warnings for devs Nguyễn Thái Ngọc Duy
2018-03-29 15:03                   ` [PATCH v3 1/3] connect.c: mark die_initial_contact() NORETURN Nguyễn Thái Ngọc Duy
2018-03-29 15:03                   ` [PATCH v3 2/3] Makefile: detect compiler and enable more warnings in DEVELOPER=1 Nguyễn Thái Ngọc Duy
2018-03-29 15:03                   ` [PATCH v3 3/3] Makefile: add EAGER_DEVELOPER mode Nguyễn Thái Ngọc Duy
2018-03-31 16:40                   ` [PATCH 4/3] Makefile: untangle DEVELOPER and -Werror Ævar Arnfjörð Bjarmason
2018-03-31 18:36                     ` Duy Nguyen
2018-04-03  9:19                       ` Ævar Arnfjörð Bjarmason
2018-04-03 15:17                         ` Duy Nguyen
2018-04-06 21:42                           ` Jeff King
2018-04-07  9:52                             ` Duy Nguyen
2018-04-07 12:36                               ` Ævar Arnfjörð Bjarmason
2018-04-07 17:03                                 ` Duy Nguyen
2018-04-07 18:38                                   ` Ævar Arnfjörð Bjarmason
2018-04-14 19:19                   ` [PATCH v4 0/4] Make DEVELOPER more more flexible with DEVOPTS Ævar Arnfjörð Bjarmason
2018-04-16  4:57                     ` Junio C Hamano
2018-04-14 19:19                   ` [PATCH v4 1/4] connect.c: mark die_initial_contact() NORETURN Ævar Arnfjörð Bjarmason
2018-04-14 19:19                   ` [PATCH v4 2/4] Makefile: detect compiler and enable more warnings in DEVELOPER=1 Ævar Arnfjörð Bjarmason
2018-04-14 19:19                   ` [PATCH v4 3/4] Makefile: add a DEVOPTS to suppress -Werror under DEVELOPER Ævar Arnfjörð Bjarmason
2018-04-14 19:19                   ` [PATCH v4 4/4] Makefile: add a DEVOPTS to get all of -Wextra Ævar Arnfjörð Bjarmason
2018-03-17 15:16         ` [PATCH v2] travis-ci: enable more warnings on travis linux-gcc job Jeff King

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=20180318092629.GB29208@sigill.intra.peff.net \
    --to=peff@peff.net \
    --cc=git@vger.kernel.org \
    --cc=gitster@pobox.com \
    --cc=larsxschneider@gmail.com \
    --cc=pclouds@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.
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.