-
Well it has been done that way because it should be done that way, as operator new(GC) calls ::operator new(size) not new T(...). Mixing ::operator new() with delete T is not C++ standard compliant, AFAIR.
So the fix will be:
#if _MSC_VER
2007-03-05 16:09:00 UTC by sebaska
-
Yes, good spot. Fixed for next (pre)release.
2007-03-05 15:56:58 UTC by sebaska
-
When bug #1673456 is fixed, a better fix may be :
#ifdef _SMGC_NO_ARRAY_NEW
::operator delete(base);
#else
::operator delete[](base);
#endif.
2007-03-04 19:42:39 UTC by vriviere
-
This is because there is a bug in the definition of _SMGC_POOR_TEMPLATES.
In two occrences, the define _MSVC is used to detect the version of MSVC++, but it is not actually defined by the compiler ! Instead, the define _MSC_VER should be used.
gc.hpp(49)
#if defined(_MSC_VER) && (_MSVC
2007-03-04 19:35:28 UTC by vriviere
-
Compilation failure
using Visual C++ 6.0 SP6
and Smieciuch 0.6.3-rc3
Compiling...
gcpptest.cpp
F:\Lib\smieciuch-0.6.4-rc3\include\gc.hpp(133) : error C2039: 'delete[]' : is not a member of '`global namespace''
F:\Lib\smieciuch-0.6.4-rc3\include\gc.hpp(127) : while compiling class-template member function 'void __cdecl gc::detail::destructor
2007-03-04 19:05:36 UTC by vriviere
-
gc.hpp(1330) :
error C2906: 'std::less' : explicit specialization requires 'template '
- Bastek -.
2007-03-04 14:45:07 UTC by bastek_
-
Smieciuch++ is a little nice portable precise garbage collection library for C++. Smieciuch defines smart pointer classes gc_ptr & gc_arr which behave like normal plain C/C++ pointers (respectively singular object pointer & array pointer) but you don't have to explicitly free them (and unlike similar shared_ptr from boost library Smieciuch's gc_ptr will have no problem with circular...
2004-06-30 14:31:20 UTC by sebaska
-
Smieciuch++ is a portable precise garbage collector written in nearly pure C++. It implements a smartpointer class template which behaves much like plain pointer, but allows to forget about delete without causing memory leak, as library itself will find & free all the unreachable objects.
Word 'precise' means that library exactly knows what is an unreachable object as well as which...
2004-04-26 22:54:10 UTC by sebaska
-
Smieciuch++ is a portable precise garbage collector written in nearly pure C++. It implements a smartpointer class template which is behaves much like plain pointer, but allows to forget about delete without causing memory, as library will find & free all the unreachable objects.
Word 'precise' means that library exactly knows what is an unreachable object and does not need to guess (as...
2004-04-25 00:34:52 UTC by sebaska
-
So here it comes! Even faster and even better, at the very half way to 1.0 stage! :)
Smieciuch++ is a very portable (allmost fully C++ standard compliant) precise garbage collection library. It's real GC, not yeat another variation of reference counting, so it's fully resistant to reference cycles, and free of other drawbacks of most reference counting impelmentations. Precise means it's able...
2004-03-24 02:07:17 UTC by sebaska