Re: [C++] System Requirements
Andrew Pinski <[email protected]>
| Newsgroups | gmane.comp.gdb.devel |
|---|---|
| Message-ID | <CA+=Sn1kScX30t-Rt7sCeWCP0HSzJ_bd4-tNe4cTxJH+s9gizmQ@mail.gmail.com> |
On Sun, Dec 15, 2013 at 4:28 AM, Michael Veksler <[email protected]> wrote: > 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++ These above 4 are incorrect as the new libstdc++ came in with 3.0 and that is when namespace support came in. > 5. Templates have significantly different semantics, and define a one-pass > parsing (unlike 2 pass in ISO C++). It is still one pass parsing, just the semantics is done at two different times. I think we should support anything 3.0 and above. Since we won't be using STL or templates that much. Thanks, Andrew Pinski > > Avoid gcc-3.2 > > Michael