Skip to content

Commit 59ea6b1

Browse files
author
Ralf W. Grosse-Kunstleve
committed
MIPSpro 7.3.1.3 adjustments
[SVN r14102]
1 parent 7c312d3 commit 59ea6b1

2 files changed

Lines changed: 10 additions & 4 deletions

File tree

include/boost/python/object/class.hpp

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,7 @@ struct BOOST_PYTHON_DECL class_base : private noncopyable
3939
void add_property(char const* name, ref const& fget);
4040
void add_property(char const* name, ref const& fget, ref const& fset);
4141
void setattr(char const* name, ref const&);
42+
void enable_pickle_support();
4243
private:
4344
ref m_object;
4445
};

include/boost/python/type_id.hpp

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,9 @@ namespace boost { namespace python {
1919
// for this compiler at least, cross-shared-library type_info
2020
// comparisons don't work, so use typeid(x).name() instead. It's not
2121
// yet clear what the best default strategy is.
22-
# if defined(__GNUC__) && __GNUC__ >= 3 || defined(_AIX)
22+
# if (defined(__GNUC__) && __GNUC__ >= 3) \
23+
|| defined(_AIX) \
24+
|| ( defined(__sgi) && defined(__host_mips))
2325
# define BOOST_PYTHON_TYPE_ID_NAME
2426
# endif
2527

@@ -28,7 +30,7 @@ namespace boost { namespace python {
2830
// which works across shared libraries.
2931
struct type_info : private totally_ordered<type_info>
3032
{
31-
type_info(std::type_info const& = typeid(void));
33+
inline type_info(std::type_info const& = typeid(void));
3234

3335
inline bool operator<(type_info const& rhs) const;
3436
inline bool operator==(type_info const& rhs) const;
@@ -59,8 +61,8 @@ inline type_info type_id(boost::type<T>* = 0)
5961
);
6062
}
6163

62-
# if defined(_AIX) && defined(__EDG_VERSION__) && __EDG_VERSION__ <= 245
63-
// KCC on this platform seems to mistakenly distinguish "int" from
64+
# if defined(__EDG_VERSION__) && __EDG_VERSION__ < 245
65+
// Older EDG-based compilers seems to mistakenly distinguish "int" from
6466
// "signed int", etc., but only in typeid() expressions. However
6567
// though int == signed int, the "signed" decoration is propagated
6668
// down into template instantiations. Explicit specialization stops
@@ -76,6 +78,9 @@ inline type_info type_id<T>(boost::type<T>*) \
7678
BOOST_PYTHON_SIGNED_INTEGRAL_TYPE_ID(short)
7779
BOOST_PYTHON_SIGNED_INTEGRAL_TYPE_ID(int)
7880
BOOST_PYTHON_SIGNED_INTEGRAL_TYPE_ID(long)
81+
# ifdef BOOST_HAS_LONG_LONG
82+
BOOST_PYTHON_SIGNED_INTEGRAL_TYPE_ID(long long)
83+
# endif
7984
# undef BOOST_PYTHON_SIGNED_INTEGRAL_TYPE_ID
8085
# endif
8186

0 commit comments

Comments
 (0)