This commit was manufactured by cvs2svn to create tag

'Version_1_17_0'.

[SVN r8293]
This commit is contained in:
nobody
2000-11-22 09:04:29 +00:00
parent f729d1b593
commit eba27da72f

View File

@@ -334,7 +334,7 @@ template <typename T> struct is_pointer<T*> { static const bool value = true; };
//* is a type T a reference type - is_reference<T>
template <typename T> struct is_reference { static const bool value = false; };
template <typename T> struct is_reference<T&> { static const bool value = true; };
#if defined(__BORLANDC__) && (__BORLANDC__ <= 0x551)
#if defined(__BORLANDC__) && (__BORLANDC__ <= 0x550)
// these are illegal specialisations; cv-qualifies applied to
// references have no effect according to [8.3.2p1],
// C++ Builder requires them though as it treats cv-qualified
@@ -487,21 +487,17 @@ struct is_convertible<void, void>
};
//
// get the alignment of some arbitrary type:
namespace detail{
// hack for MWCW:
template <class T>
class alignment_of_hack
{
char c;
T t;
alignment_of_hack();
};
}
template <class T>
class alignment_of
{
struct padded
{
char c;
T t;
padded();
};
public:
static const unsigned value = sizeof(detail::alignment_of_hack<T>) - sizeof(T);
static const unsigned value = sizeof(padded) - sizeof(T);
};
//
// references have to be treated specially, assume
@@ -613,4 +609,3 @@ public: