Topic: which compiler currently most closely follows the C++draft standard?
Author: Wattie@ibm.net (Andy Watson)
Date: 1997/06/30 Raw View
I'm told that the new release of IBMs Visual Age C++ V4.0 for NT and
OS/2 will be using the Dinkumware C++ compiler. This is supposed to be
as ANSI compatible as you can get.
----------------------------------------------
Andy Watson
Software Engineer
Wattie@IBM.Net
---
[ comp.std.c++ is moderated. To submit articles: try just posting with ]
[ your news-reader. If that fails, use mailto:std-c++@ncar.ucar.edu ]
[ FAQ: http://reality.sgi.com/employees/austern_mti/std-c++/faq.html ]
[ Policy: http://reality.sgi.com/employees/austern_mti/std-c++/policy.html ]
[ Comments? mailto:std-c++-request@ncar.ucar.edu ]
Author: "Kevin S. Van Horn" <kevin.s.vanhorn@iname.com>
Date: 1997/06/30 Raw View
David Chase <chase@world.std.com> wrote in article
<3.0.1.32.19970628234522.00b46d80@world.std.com>...
> Of the bunch, I would recommend either G++ or EDG-based compilers
> (SGI and Tera use EDG, not sure who else does) for ability to
> track the standard and general usability.
I would strongly recommend *against* g++ for anyone who is worried about
standards compliance. g++ does not handle exceptions, except if you
compile unoptimized with the -g (debug info) flag. It doesn't handle
namespaces. It pretends to handle templates, but it has so many
limitations and bugs in this department that any serious use of templates
can be excruciatingly painful (I speak from personal experience here). I
don't know of any STL implementation ported to g++ that allows one to
compile all of ObjectSpace's example programs for STL.
On the other hand, I have started using one EDG-based compiler, KAI C++,
and have been pretty pleased with it so far. To give you an idea of what's
important to me, I'm a big fan of generic programming, which really
stress-tests compilers on their handling of templates.
-----------------------------
Kevin S. Van Horn
KSVH Software and Consulting
kevin.s.vanhorn@iname.com
---
[ comp.std.c++ is moderated. To submit articles: Try just posting with your
newsreader. If that fails, use mailto:std-c++@ncar.ucar.edu
comp.std.c++ FAQ: http://reality.sgi.com/austern/std-c++/faq.html
Moderation policy: http://reality.sgi.com/austern/std-c++/policy.html
Comments? mailto:std-c++-request@ncar.ucar.edu
]
Author: Wattie@ibm.net (Andy Watson)
Date: 1997/07/02 Raw View
Change the using to licensing.
On Tue, 1 Jly 1997 13:53:43, Wattie@ibm.net (Andy Watson) wrote:
> I'm told that the new release of IBMs Visual Age C++ V4.0 for NT and
> OS/2 will be using [licensing] the Dinkumware C++ compiler. This is supposed
> to be as ANSI compatible as you can get.
----------------------------------------------
Andy Watson
Software Engineer
Wattie@IBM.Net
---
[ comp.std.c++ is moderated. To submit articles: try just posting with ]
[ your news-reader. If that fails, use mailto:std-c++@ncar.ucar.edu ]
[ FAQ: http://reality.sgi.com/employees/austern_mti/std-c++/faq.html ]
[ Policy: http://reality.sgi.com/employees/austern_mti/std-c++/policy.html ]
[ Comments? mailto:std-c++-request@ncar.ucar.edu ]
Author: James Kanze <james-albert.kanze@vx.cit.alcatel.fr>
Date: 1997/07/03 Raw View
"Kevin S. Van Horn" <kevin.s.vanhorn@iname.com> writes:
|> David Chase <chase@world.std.com> wrote in article
|> <3.0.1.32.19970628234522.00b46d80@world.std.com>...
|> > Of the bunch, I would recommend either G++ or EDG-based compilers
|> > (SGI and Tera use EDG, not sure who else does) for ability to
|> > track the standard and general usability.
|>
|> I would strongly recommend *against* g++ for anyone who is worried about
|> standards compliance.
I don't think that David Chase was worried about compliance to a not yet
existant standard as much as portability. Both g++ and EDG are
available on a wide variety of platforms. (I think Comeau will deliver
for just about anything, and his compiler is EDG based.) His major
point in the rest of his posting was not that other compilers were bad,
but that they were different: code which worked with one didn't work
with another. Despite its weaknesses, g++ will give practically the
same results on almost all Unix machines (provided you don't use
exceptions, which are not implemented everywhere, and are only pre-beta
where they are implemented).
The choice of a compiler will depend largely on what is important to
you. If widespread portability is the only, or the major, requirement,
then g++ or Comeau are the major contenders. Comeau is based on the
EDG front-end, so is almost certainly the better compiler. On the other
hand, g++ has a debugger and libraries; I think that with Comeau, you're
on your own for these. As you say, if you are pushing the limit with
regards to templates, or absolutely must have exceptions, then Comeau is
the obvious choice. On the other hand, if, like me, your main
orientation involves extensive inheritance, your use of generics is
limited to RefCntPtr and a few simple containers, and you are not yet
sure enough of your mastery of exception safety to dare using it in
production code, g++ is an excellent compiler.
Of course, there are other considerations as well. Maintainance and
your corporate relationship to a supplier play an important role, for
example. And if you are using third party software which is delivered
in object form, you will choose a compiler for which they deliver.
(Interestingly, I think that in our project, it would be easier for us
to use an Ada compiler than to use g++. We make extensive use of third
party libraries, which are delivered as object files for the HP
compiler. Using the external language binding feature of Ada, it might
just be possible to link them, but using g++, it certainly wouldn't be.
I wonder if Cygnus, or other third party compiler suppliers, have
considered the possibility of supporting extern "native C++", in
addition to extern "C" and extern "C++".)
--
James Kanze home: kanze@gabi-soft.fr +33 (0)1 39 55 85 62
office: kanze@vx.cit.alcatel.fr +33 (0)1 69 63 14 54
GABI Software, Sarl., 22 rue Jacques-Lemercier, F-78000 Versailles France
-- Conseils en informatique industrielle --
---
[ comp.std.c++ is moderated. To submit articles: try just posting with ]
[ your news-reader. If that fails, use mailto:std-c++@ncar.ucar.edu ]
[ FAQ: http://reality.sgi.com/employees/austern_mti/std-c++/faq.html ]
[ Policy: http://reality.sgi.com/employees/austern_mti/std-c++/policy.html ]
[ Comments? mailto:std-c++-request@ncar.ucar.edu ]