This is the mail archive of the
gdb@sourceware.org
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>, gdb at sourceware dot org
- Date: Sun, 15 Dec 2013 14:28:39 +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>
On 14/12/13 02:40, Ben Longbons wrote:
<snip>
NetBSD 6.1.1 (2013-08-22): gcc 4.8.1
NetBSD 5.1 (2010-11-19): gcc 3.3.6
OpenBSD 5.4 (2013-11-01): gcc 4.2.1
OpenBSD 4.7 (2010-05-19): gcc 3.3.5
I recommend to avoid gcc versions prior to gcc-3.4. Over a decade ago I
had to port code from gcc-3.2 to gcc-3.4
without losing support for gcc-3.2. Even though the code was much
smaller than gdb it was a pain to support
both versions in parallel:
1. gcc-3.2 has an old C++ parser and supports a dialect of C++ which
predates ISO C++.
2. gcc-3.2 does not have namespace
3. Requires STL as a separate library
4. Containers of the STL libraries do not understand allocators, and
can't be taught to due to limitations in old C++
5. Templates have significantly different semantics, and define a
one-pass parsing (unlike 2 pass in ISO C++).
Avoid gcc-3.2
Michael