public inbox for gcc-patches@gcc.gnu.org
 help / color / mirror / Atom feed
From: Jeff Law <law@redhat.com>
To: Richard Biener <richard.guenther@gmail.com>,
	       Bernd Schmidt <bschmidt@redhat.com>,
	       Mikhail Maltsev <maltsevm@gmail.com>,
	       gcc-patches mailing list <gcc-patches@gcc.gnu.org>
Subject: Re: [PATCH 1/9] ENABLE_CHECKING refactoring
Date: Wed, 21 Oct 2015 16:28:00 -0000	[thread overview]
Message-ID: <5627BBE0.7020405@redhat.com> (raw)
In-Reply-To: <07C9C78B-3504-4A1D-9FAA-3B13FC348DE7@gmail.com>

On 10/21/2015 10:18 AM, Richard Biener wrote:
> On October 21, 2015 6:04:38 PM GMT+02:00, Bernd Schmidt <bschmidt@redhat.com> wrote:
>> On 10/21/2015 05:56 PM, Jeff Law wrote:
>>> The problem is the existing ENABLE_CHECKING conditions.
>>>
>>> Anything which is #ifdef ENABLE_CHECKING will have its behavior
>> changed
>>> if we change things so that ENABLE_CHECKING is always defined with a
>> value.
>>>
>>> So if we wanted to continue to use ENABLE_CHECKING, but with a value,
>>> then every #ifdef has to be fixed all-at-once.
>>
>> But why change it to have a value? Just keep it as-is, and use
>> flag_checking for runtime tests.
>
> The goal is to get rid of conditional compilation.
Precisely.  I've been watching some other projects going down this path 
and seeing good results.  I strongly believe it'll help drive down the 
development/maintenance costs for GCC.

I might even claim it's already helping.  While we're still seeing 
syntax errors in the conditionally compiled code, it doesn't feel like 
we're seeing it as often as in the past.  That's purely anecdotal based 
on what I've seen fly by over the last couple years.


Jeff


  reply	other threads:[~2015-10-21 16:23 UTC|newest]

Thread overview: 77+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-10-05 23:27 Mikhail Maltsev
2015-10-05 23:29 ` [PATCH 2/9] ENABLE_CHECKING refactoring: libcpp Mikhail Maltsev
2015-10-06 12:40   ` Bernd Schmidt
2015-10-12 20:57     ` Jeff Law
2015-10-19  1:18       ` Mikhail Maltsev
2015-10-21 22:29         ` Jeff Law
2015-10-21 21:19     ` Jeff Law
2015-10-05 23:30 ` [PATCH 3/9] ENABLE_CHECKING refactoring: Java and Ada Mikhail Maltsev
2015-10-22 19:25   ` Jeff Law
2015-10-05 23:31 ` [PATCH 4/9] ENABLE_CHECKING refactoring: Fortran Mikhail Maltsev
2015-10-23 22:38   ` Jeff Law
2015-10-05 23:32 ` [PATCH 5/9] ENABLE_CHECKING refactoring: pool allocators Mikhail Maltsev
2015-10-06 12:41   ` Bernd Schmidt
2015-10-06 12:45     ` Richard Biener
2015-10-19  0:47       ` Mikhail Maltsev
2015-10-21 11:02         ` Richard Biener
2015-10-26  2:07           ` Mikhail Maltsev
2015-10-26  9:48             ` Richard Biener
2015-10-26 10:57               ` Mikhail Maltsev
2015-10-05 23:34 ` [PATCH 6/9] ENABLE_CHECKING refactoring: generators Mikhail Maltsev
2015-10-06 12:57   ` Richard Biener
2015-10-19  0:09     ` Mikhail Maltsev
2015-10-21 10:57       ` Richard Biener
2015-10-28 16:32         ` Jeff Law
2015-10-29 16:31       ` Jeff Law
2015-10-05 23:39 ` [PATCH 7/9] ENABLE_CHECKING refactoring: middle-end, LTO FE Mikhail Maltsev
2015-10-06 12:46   ` Bernd Schmidt
2015-10-06 12:59     ` Richard Biener
2015-10-19  0:56       ` Mikhail Maltsev
2015-10-19 12:19         ` Bernd Schmidt
2015-10-26 17:04           ` Jeff Law
2015-10-26 17:15             ` Bernd Schmidt
2015-10-26 19:05               ` Jeff Law
2015-10-28  1:17                 ` Jeff Law
2015-10-28  2:12                   ` Trevor Saunders
2015-10-06 12:59     ` Richard Biener
2015-10-05 23:40 ` [PATCH 8/9] ENABLE_CHECKING refactoring: target-specific parts Mikhail Maltsev
2015-10-06 12:48   ` Bernd Schmidt
2015-10-29 19:43     ` Jeff Law
2015-10-29 21:23   ` Jeff Law
2015-10-30  4:13   ` Jeff Law
2015-10-30  4:20     ` Jeff Law
2015-10-06 12:53 ` [PATCH 1/9] ENABLE_CHECKING refactoring Richard Biener
2015-10-12 20:48 ` Jeff Law
2015-10-13 21:33 ` Jeff Law
2015-10-18  8:25   ` Mikhail Maltsev
2015-10-19 11:14     ` Bernd Schmidt
2015-10-19 13:54       ` Mikhail Maltsev
2015-10-21 15:59         ` Jeff Law
2015-10-21 16:06           ` Bernd Schmidt
2015-10-21 16:18             ` Richard Biener
2015-10-21 16:28               ` Jeff Law [this message]
2015-11-07 22:42                 ` Gerald Pfeifer
2015-10-21 16:19             ` Jeff Law
2015-10-21 16:22               ` Bernd Schmidt
2015-10-21 16:44                 ` Jakub Jelinek
2015-10-22  7:58                   ` Richard Biener
2015-10-21 20:06                 ` Jeff Law
2015-10-20 16:14     ` Jeff Law
2015-10-21 21:17     ` Jeff Law
2015-11-01 14:58 ` [PATCH 9/9] ENABLE_CHECKING refactoring: C family front ends Mikhail Maltsev
2015-11-02 23:34   ` Jeff Law
2015-11-04 14:41     ` Mikhail Maltsev
2015-11-01 20:19 ` [PATCH 10/9] ENABLE_CHECKING refactoring: remove remaining occurrences Mikhail Maltsev
2015-11-02 23:35   ` Jeff Law
2015-11-04 15:03     ` Mikhail Maltsev
2016-02-23 15:21       ` Richard Biener
2016-02-24 14:17         ` Martin Liška
2016-02-24 14:27           ` Michael Matz
2016-02-24 14:53             ` Martin Liška
2016-02-24 15:43               ` Pierre-Marie de Rodat
2016-02-25  9:24                 ` Richard Biener
2016-02-25 10:14                   ` Pierre-Marie de Rodat
2016-02-25 10:15                     ` Martin Liška
2016-02-25 10:16                       ` Pierre-Marie de Rodat
2016-02-25  9:24           ` Richard Biener
     [not found]   ` <C5BB0125-FB5F-46C6-B16D-74C3D0F07C10@gmail.com>
2015-11-08 15:37     ` Mikhail Maltsev

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=5627BBE0.7020405@redhat.com \
    --to=law@redhat.com \
    --cc=bschmidt@redhat.com \
    --cc=gcc-patches@gcc.gnu.org \
    --cc=maltsevm@gmail.com \
    --cc=richard.guenther@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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).