At the moment, at least, it seems to be necessary to use the Sun CC compiler rather than g++ when compiling Orbix applications, but information on other available C++ compilers is provided here for general use.
Strengths: Supports most template features and has a good version of the standard library, including SGI STL, which is one of the best STL versions. Free. Source code is available for both the compiler and the library.
Weaknesses: Doesn't support namespaces (it will accept but ignore a using namespace declaration). Poor optimization. Produces bloated executable files.
/usr/local/egcs/bin/g++According to the egcs project home page, "egcs is an experimental step in the development of GCC, the GNU C compiler" (but it also compiles C++). It is free.
When using STL components with this compiler you frequently get compile-time warning messages
C4786: symbol greater than 255 charactersThis refers to internally-generated symbols that are used in the debugger. Such symbols longer than 255 characters are truncated, which may cause confusion when debugging, but otherwise they are not a problem. To shut off the annoying warning messages, include the following line in your source program:
#pragma warning (disable : 4786)
string
class).