FC++ compiler support

FC++ is written in Standard C++, and therefore should work with any compliant C++ compiler. Fully compliant C++ compilers are getting easier to find, but, we still maintain this page, which documents how the FC++ library works with different compilers.

If you have tried using FC++ with a compiler other than the ones listed here, please mail us with information about your experience (regardless of whether it was successful or not).

Note: all information in the table applies to the current release (v1.5) of the FC++ library. (You can see some old info here.)

Compiler version FC++ status Other notes
g++-2.95.2, g++-2.95.4 It mostly works There are a few bugs in g++-2.95.x that we have work-arounds for. First, bugs in the compiler prevent portions of FC++ from being put into namespace fcpp. As a result, those portions are just dumped into the global namespace. Second, g++ has a non-conforming <iterator> library, which we correct for. Finally, this version of g++ can't handle the new "lambda" extensions, so don't #define FCPP_ENABLE_LAMBDA. The config.h file automatically detects this compiler version and sets up the fixes, so FC++ (sans lambda) works "out of the box" with this compiler anyway.
g++-3.0.4, g++-3.1.1, g++-3.2.2 It all works
g++-3.3 Some works This version of g++ has a bug with template specializations which is sometimes triggered by FC++ code.
Intel C++ 7.0 (icc) It all works
Comeau C++ It all works Works even with "-A --strict"
MSVC++ 7.1 It mostly works We did not have time to do thorough testing with this compiler, but the testing we did suggests it mostly works.

Last updated on Aug 7, 2003 by Brian McNamara