Re: Experiences with HP aC++ or Sun Studio C++?
On 9 mai, 17:03, mlimber <mlim...@gmail.com> wrote:
On May 9, 8:29 am, James Kanze <james.ka...@gmail.com> wrote:
I've not experience with anything later than SunStudio 11,
but with that, while the compiler is fairly good (although
not quite as good as g++), both of the libraries available
with it are, to put it mildly, junk, with any number of
serious errors which need work arounds.
Thanks for the reply (to you and all). I presume you mean the
standard C and C++ libraries. Can you elaborate with an
example or two?
The default library in Sun CC is a fairly ancient version of the
Rogue Wave library, implemented before the compiler supported
template members. So to begin with, it doesn't have any of the
template member functions. It was also implemented before the
compiler supported the f<T>() syntax, so functions whose types
cannot otherwise be deduced have an additional T* argument. In
some cases, it also writes to memory that doesn't belong to it:
in particular, ostrstring with a user buffer will always write
one past the end of the buffer. And the iostream implementation
is simply horrible from a performance point of view: something
like out << i makes three or for system calls, even if the
stream is fully buffered.
The alternative is STL port. (Again, not the latest version.)
I've used it considerably less (since most of the code I write
has to link with third party libraries using the default
library), but each time I've used it, I've encountered some
problem or another.
Is there free alternative that is better? What do you use
instead?
We use g++ whenever possible: the compiler is somewhat better,
and the library is a couple of orders or magnitude better. And
since the long term planning has everything ported to Linux,
using g++ under Solaris simplifies the port. Most of the time,
however, third party libraries mean that we must use Sun CC with
its default library, problems or not, so we develop work-arounds
for them, and use it.
--
James Kanze (GABI Software) email:james.kanze@gmail.com
Conseils en informatique orient=E9e objet/
Beratung in objektorientierter Datenverarbeitung
9 place S=E9mard, 78210 St.-Cyr-l'=C9cole, France, +33 (0)1 30 23 00 34