-#ifdef __GNUC__
-# if __GNUC__ == 2
-# if __GNUC_MINOR__ < 8
-
- // g++-2.7.x
-# define STL_ALGORITHM <algorithm>
-# define STL_FUNCTIONAL <functional>
-# define STL_IOMANIP <iomanip.h>
-# define STL_IOSTREAM <iostream.h>
-# define STL_ITERATOR <iterator.h>
-# define STL_FSTREAM <fstream.h>
-# define STL_STDEXCEPT <stdexcept>
-# define STL_STRING <string>
-# define STL_STRSTREAM <strstream.h>
-
-# define SG_NEED_AUTO_PTR
-# define SG_NO_DEFAULT_TEMPLATE_ARGS
-# define SG_INCOMPLETE_FUNCTIONAL
-# define SG_NO_ARROW_OPERATOR
-
-# elif __GNUC_MINOR__ >= 8
-
- // g++-2.8.x and egcs-1.x
-# define SG_EXPLICIT_FUNCTION_TMPL_ARGS
-# define SG_NEED_AUTO_PTR
-# define SG_MEMBER_TEMPLATES
-# define SG_NAMESPACES
-# define SG_HAVE_STD
-# define SG_HAVE_STREAMBUF
-# define SG_CLASS_PARTIAL_SPECIALIZATION
-
-# define STL_ALGORITHM <algorithm>
-# define STL_FUNCTIONAL <functional>
-# define STL_IOMANIP <iomanip>
-# define STL_IOSTREAM <iostream>
-# define STL_ITERATOR <iterator>
-# define STL_FSTREAM <fstream>
-# define STL_STDEXCEPT <stdexcept>
-# define STL_STRING <string>
-# define STL_STRSTREAM <strstream>
-
-# endif
-# elif __GNUC__ == 3
- // g++-3.0.x
-# define SG_EXPLICIT_FUNCTION_TMPL_ARGS
-# define SG_NEED_AUTO_PTR
-# define SG_MEMBER_TEMPLATES
-# define SG_NAMESPACES
-# define SG_HAVE_STD
-# define SG_HAVE_STREAMBUF
-# define SG_CLASS_PARTIAL_SPECIALIZATION
-# define SG_HAVE_STD_INCLUDES
-
-# define STL_ALGORITHM <algorithm>
-# define STL_FUNCTIONAL <functional>
-# define STL_IOMANIP <iomanip>
-# define STL_IOSTREAM <iostream>
-# define STL_ITERATOR <iterator>
-# define STL_FSTREAM <fstream>
-# define STL_STDEXCEPT <stdexcept>
-# define STL_STRING <string>
-# define STL_STRSTREAM <strstream>