import gc6.1alpha5
This commit is contained in:
		@@ -159,12 +159,18 @@ enum GCPlacement {UseGC,
 | 
			
		||||
class gc {public:
 | 
			
		||||
    inline void* operator new( size_t size );
 | 
			
		||||
    inline void* operator new( size_t size, GCPlacement gcp );
 | 
			
		||||
    inline void* operator new( size_t size, void *p );
 | 
			
		||||
    	/* Must be redefined here, since the other overloadings	*/
 | 
			
		||||
    	/* hide the global definition.				*/
 | 
			
		||||
    inline void operator delete( void* obj );
 | 
			
		||||
    inline void operator delete( void*, void* );
 | 
			
		||||
 | 
			
		||||
#ifdef GC_OPERATOR_NEW_ARRAY
 | 
			
		||||
    inline void* operator new[]( size_t size );
 | 
			
		||||
    inline void* operator new[]( size_t size, GCPlacement gcp );
 | 
			
		||||
    inline void* operator new[]( size_t size, void *p );
 | 
			
		||||
    inline void operator delete[]( void* obj );
 | 
			
		||||
    inline void gc::operator delete[]( void*, void* );
 | 
			
		||||
#endif /* GC_OPERATOR_NEW_ARRAY */
 | 
			
		||||
    };    
 | 
			
		||||
    /*
 | 
			
		||||
@@ -211,7 +217,6 @@ inline void* operator new(
 | 
			
		||||
    classes derived from "gc_cleanup" or containing members derived
 | 
			
		||||
    from "gc_cleanup". */
 | 
			
		||||
 | 
			
		||||
#ifdef GC_OPERATOR_NEW_ARRAY
 | 
			
		||||
 | 
			
		||||
#ifdef _MSC_VER
 | 
			
		||||
 /** This ensures that the system default operator new[] doesn't get
 | 
			
		||||
@@ -220,42 +225,24 @@ inline void* operator new(
 | 
			
		||||
  *  There seems to be really redirect new in this environment without
 | 
			
		||||
  *  including this everywhere. 
 | 
			
		||||
  */
 | 
			
		||||
 inline void *operator new[]( size_t size )
 | 
			
		||||
 {
 | 
			
		||||
    return GC_MALLOC_UNCOLLECTABLE( size );
 | 
			
		||||
 }
 | 
			
		||||
 void *operator new[]( size_t size );
 | 
			
		||||
 
 | 
			
		||||
 void operator delete[](void* obj);
 | 
			
		||||
 | 
			
		||||
 inline void operator delete[](void* obj)
 | 
			
		||||
 {
 | 
			
		||||
    GC_FREE(obj);
 | 
			
		||||
 };
 | 
			
		||||
 void* operator new( size_t size);
 | 
			
		||||
 | 
			
		||||
 inline void* operator new( size_t size)
 | 
			
		||||
 {
 | 
			
		||||
    return GC_MALLOC_UNCOLLECTABLE( size);
 | 
			
		||||
 };   
 | 
			
		||||
 void operator delete(void* obj);
 | 
			
		||||
 | 
			
		||||
 inline void operator delete(void* obj)
 | 
			
		||||
 {
 | 
			
		||||
    GC_FREE(obj);
 | 
			
		||||
 };
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
// This new operator is used by VC++ in case of Debug builds !
 | 
			
		||||
  inline void* operator new( size_t size,
 | 
			
		||||
 // This new operator is used by VC++ in case of Debug builds !
 | 
			
		||||
 void* operator new(  size_t size,
 | 
			
		||||
		      int ,//nBlockUse,
 | 
			
		||||
		      const char * szFileName,
 | 
			
		||||
		      int nLine
 | 
			
		||||
		      ) {
 | 
			
		||||
# ifndef GC_DEBUG
 | 
			
		||||
     return GC_malloc_uncollectable( size );
 | 
			
		||||
# else
 | 
			
		||||
     return GC_debug_malloc_uncollectable(size, szFileName, nLine);
 | 
			
		||||
# endif
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
		      int nLine );
 | 
			
		||||
#endif /* _MSC_VER */
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
#ifdef GC_OPERATOR_NEW_ARRAY
 | 
			
		||||
 | 
			
		||||
inline void* operator new[](
 | 
			
		||||
    size_t size, 
 | 
			
		||||
    GCPlacement gcp,
 | 
			
		||||
@@ -283,9 +270,13 @@ inline void* gc::operator new( size_t size, GCPlacement gcp ) {
 | 
			
		||||
    else
 | 
			
		||||
        return GC_MALLOC_UNCOLLECTABLE( size );}
 | 
			
		||||
 | 
			
		||||
inline void* gc::operator new( size_t size, void *p ) {
 | 
			
		||||
    return p;}
 | 
			
		||||
 | 
			
		||||
inline void gc::operator delete( void* obj ) {
 | 
			
		||||
    GC_FREE( obj );}
 | 
			
		||||
    
 | 
			
		||||
inline void gc::operator delete( void*, void* ) {}
 | 
			
		||||
 | 
			
		||||
#ifdef GC_OPERATOR_NEW_ARRAY
 | 
			
		||||
 | 
			
		||||
@@ -295,8 +286,13 @@ inline void* gc::operator new[]( size_t size ) {
 | 
			
		||||
inline void* gc::operator new[]( size_t size, GCPlacement gcp ) {
 | 
			
		||||
    return gc::operator new( size, gcp );}
 | 
			
		||||
 | 
			
		||||
inline void* gc::operator new[]( size_t size, void *p ) {
 | 
			
		||||
    return p;}
 | 
			
		||||
 | 
			
		||||
inline void gc::operator delete[]( void* obj ) {
 | 
			
		||||
    gc::operator delete( obj );}
 | 
			
		||||
 | 
			
		||||
inline void gc::operator delete[]( void*, void* ) {}
 | 
			
		||||
    
 | 
			
		||||
#endif /* GC_OPERATOR_NEW_ARRAY */
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user