Fix bustage on Sun Workshop compiler (nebiros tinderbox). r=darin

git-svn-id: svn://10.0.0.236/trunk@142524 18797224-902f-48f8-a5cc-f745e15eee43
This commit is contained in:
dbaron%dbaron.org 2003-05-16 00:52:17 +00:00
parent e3e216450f
commit 86a9892e4c

View File

@ -78,7 +78,12 @@ class nsAutoPtr
*/
private:
void** begin_assignment();
void**
begin_assignment()
{
assign(0);
return NS_REINTERPRET_CAST(void**, &mRawPtr);
}
void
assign( T* newPtr )
@ -230,14 +235,6 @@ class nsAutoPtr
}
};
template <class T>
void**
nsAutoPtr<T>::begin_assignment()
{
assign(0);
return NS_REINTERPRET_CAST(void**, &mRawPtr);
}
#ifdef CANT_RESOLVE_CPP_CONST_AMBIGUITY
// This is the broken version for IRIX, which can't handle the version below.
@ -521,7 +518,12 @@ class nsAutoArrayPtr
*/
private:
void** begin_assignment();
void**
begin_assignment()
{
assign(0);
return NS_REINTERPRET_CAST(void**, &mRawPtr);
}
void
assign( T* newPtr )
@ -673,14 +675,6 @@ class nsAutoArrayPtr
}
};
template <class T>
void**
nsAutoArrayPtr<T>::begin_assignment()
{
assign(0);
return NS_REINTERPRET_CAST(void**, &mRawPtr);
}
#ifdef CANT_RESOLVE_CPP_CONST_AMBIGUITY
// This is the broken version for IRIX, which can't handle the version below.
@ -965,8 +959,21 @@ class nsRefPtr
*/
private:
void assign_with_AddRef( T* );
void** begin_assignment();
void
assign_with_AddRef( T* rawPtr )
{
if ( rawPtr )
rawPtr->AddRef();
assign_assuming_AddRef(rawPtr);
}
void**
begin_assignment()
{
assign_assuming_AddRef(0);
return NS_REINTERPRET_CAST(void**, &mRawPtr);
}
void
assign_assuming_AddRef( T* newPtr )
@ -1130,23 +1137,6 @@ class nsRefPtr
}
};
template <class T>
void
nsRefPtr<T>::assign_with_AddRef( T* rawPtr )
{
if ( rawPtr )
rawPtr->AddRef();
assign_assuming_AddRef(rawPtr);
}
template <class T>
void**
nsRefPtr<T>::begin_assignment()
{
assign_assuming_AddRef(0);
return NS_REINTERPRET_CAST(void**, &mRawPtr);
}
#ifdef CANT_RESOLVE_CPP_CONST_AMBIGUITY
// This is the broken version for IRIX, which can't handle the version below.