EGCS 1.0 Caveats
- EGCS has an integrated libstdc++, but does not have an integrated libg++.
Furthermore old libg++ releases will not work with egc; HJ Lu has made a
libg++-22.214.171.124 available which may work with EGCS.
Note most C++ programs only need libstdc++.
- Note that using -pedantic or -Wreturn-type can cause an explosion in the
amount of memory needed for template-heavy C++ code, such as code that uses
STL. Also note that -Wall includes -Wreturn-type, so if you use -Wall you
will need to specify -Wno-return-type to turn it off.
- Exception handling may not work with shared libraries, particularly
on alphas, hppas, and mips based platforms. Exception handling is known
to work on x86-linux platforms with shared libraries.
- Some versions of the Linux kernel have bugs which prevent them
from being compiled or from running when compiled by EGCS. See
the FAQ (as shipped with EGCS 1.0)
for additional information.
- In general, EGCS is more rigorous about rejecting invalid C++ code
or deprecated C++ constructs than G++ 2.7. As a result it may be necessary
to fix C++ code before it will compile with EGCS.
- G++ is also aggressively tracking the C++ standard; as a result code
which was previously valid (and thus accepted by other compilers and older
versions of G++) may no longer be accepted.
- EGCS 1.0 may not work with Red Hat Linux 5.0 on all targets. EGCS 1.0.x
and later releases should work with Red Hat Linux 5.0.