This is the mail archive of the
mailing list for the GDB project.
Re: [C++] System Requirements
- From: Michael Veksler <mveksler at tx dot technion dot ac dot il>
- To: Ben Longbons <brlongbons at gmail dot com>, Andrew Pinski <pinskia at gmail dot com>
- Cc: GDB Development <gdb at sourceware dot org>
- Date: Wed, 18 Dec 2013 14:46:55 +0200
- Subject: Re: [C++] System Requirements
- Authentication-results: sourceware.org; auth=none
- References: <CA+XNFZO6-rhG_mnRtg_B_y6R3FaFRWzb_ED4G=Yf1gdNs4d+gw at mail dot gmail dot com> <CA+XNFZO14xGBFNF5oy1y4Ec+r8+5DGzM1ZkgNaY2qqbUC1aGkQ at mail dot gmail dot com> <52ADA077 dot 7020406 at tx dot technion dot ac dot il> <CA+=Sn1kScX30t-Rt7sCeWCP0HSzJ_bd4-tNe4cTxJH+s9gizmQ at mail dot gmail dot com> <CA+XNFZMFV=+a4RqesLevBAqBs+0z0Cbyo05tSWGEtVpXvuRfFw at mail dot gmail dot com>
On 17/12/13 06:02, Ben Longbons wrote:
On Mon, Dec 16, 2013 at 6:29 PM, Andrew Pinski <email@example.com> wrote:
I think we should support anything 3.0 and above. Since we won't be
using STL or templates that much.
Really? I can see quite a few cases where gdb will either have to use
the STL or reinvent it; the big one is vec.h but it's far from alone.
I know there are reasons to avoid or reimplement specific *parts* of
the STL, but I haven't seen justification to avoid it in general.
And I think that it is quite dangerous to try to support building gdb
on a platform that its developers do not regularly use. gcc 4.4 is
common; 4. is rising, and 4.1 looks supportable, just not by me.
I can't even build gcc 4.2 or earlier on any of my systems, though I
admit I haven't deeply investigated what makes them different from 4.3
Anyway, this sounds like a topic for the not-yet written thread [C++]
Style Guide ... the only thing I've heard is that gdb is *not* going
to follow gcc, because it has different requirements, such as
exceptions (which, incidentally, must happen before anything else in
But back on topic ... I started this thread intending to ask "which
versions of GCC do we *need* to support?", not "which versions of GCC
can we afford to support?" ... I never expected anyone to defend
versions before 3.4
A lower GCC version requirement means that gdb maintainers will have
to spend more time trying to work around the quirks of older GCC
versions and trying to badly reimplement features that are already in
later GCC versions.
Andrew was right, and I was wrong. I confused between the pain
I had when I supported gcc-2.95 (or was it egcs?) with the smaller
pain of supporting gcc-3.2/gcc-3.3. It was too long ago to
remember all the gory details.
Nevertheless, supporting pre-gcc-3.4 compilers is still a pain.
Not only because language semantics is different (two-phase
name lookup in templates vs. one) but because you can't easily
build old compilers on modern machines. And if you don't test
your code with a pre-gcc-3.4 then your code won't work with