Various g++ fixes

svn path=/trunk/; revision=69518
This commit is contained in:
Ged Murphy 2015-10-12 20:33:33 +00:00
parent bea3c348a8
commit b4667495f4
4 changed files with 14 additions and 33 deletions

View file

@ -137,7 +137,6 @@ class CElementTraits :
{ {
}; };
template<typename E, class ETraits = CElementTraits<E>> template<typename E, class ETraits = CElementTraits<E>>
class CAtlList class CAtlList
{ {
@ -209,13 +208,12 @@ private:
template<typename E, class ETraits> template<typename E, class ETraits>
CAtlList< E, ETraits >::CAtlList(_In_ UINT nBlockSize) : CAtlList< E, ETraits >::CAtlList(_In_ UINT nBlockSize) :
m_NumElements(0), m_Blocks(NULL),
m_BlockSize(nBlockSize),
m_HeadNode(NULL), m_HeadNode(NULL),
m_TailNode(NULL), m_TailNode(NULL),
m_FreeNode(NULL), m_FreeNode(NULL),
m_Blocks(NULL), m_NumElements(0)
m_BlockSize(nBlockSize)
{ {
ATLASSERT(nBlockSize > 0); ATLASSERT(nBlockSize > 0);
} }

View file

@ -4,12 +4,6 @@
#pragma once #pragma once
#include "atlcore.h" #include "atlcore.h"
// HACK HACK! This must be placed in another global ATL header!!
// Placement new operator
void *operator new (size_t, void *buf)
{
return buf;
}
namespace ATL namespace ATL
{ {

View file

@ -102,20 +102,9 @@ public:
wchar_t achNil[2]; wchar_t achNil[2];
}; };
template< typename BaseType = char >
class ChTraitsBase
{
public:
typedef char XCHAR;
typedef LPSTR PXSTR;
typedef LPCSTR PCXSTR;
typedef wchar_t YCHAR;
typedef LPWSTR PYSTR;
typedef LPCWSTR PCYSTR;
};
template<> template< typename BaseType = wchar_t >
class ChTraitsBase< wchar_t > class ChTraitsBase
{ {
public: public:
typedef wchar_t XCHAR; typedef wchar_t XCHAR;
@ -126,8 +115,6 @@ public:
typedef LPCSTR PCYSTR; typedef LPCSTR PCYSTR;
}; };
template< typename BaseType, bool t_bMFCDLL = false> template< typename BaseType, bool t_bMFCDLL = false>
class CSimpleStringT class CSimpleStringT
{ {
@ -156,12 +143,6 @@ public:
Attach(pNewData); Attach(pNewData);
} }
CSimpleStringT(_In_ const CSimpleStringT<BaseType, !t_bMFCDLL>& strSrc)
{
CStringData* pSrcData = strSrc.GetData();
CStringData* pNewData = CloneData(pSrcData);
Attach(pNewData);
}
CSimpleStringT& operator=(_In_opt_z_ PCXSTR pszSrc) CSimpleStringT& operator=(_In_opt_z_ PCXSTR pszSrc)
{ {

View file

@ -98,7 +98,15 @@ private:
}; };
template <typename _BaseType = char, class StringIterator = ChTraitsOS<_BaseType>> template< typename _CharType = wchar_t >
class ChTraitsOS :
public ChTraitsBase < _CharType >
{
};
template <typename _BaseType = wchar_t, class StringIterator = ChTraitsOS<_BaseType>>
class StrTraitATL : class StrTraitATL :
public StringIterator public StringIterator
{ {