About Store Forum Documentation Contact



Post Reply 
Templates.h:1003: undefined reference to `EE::CacheElmPtr<EE::Mesh, EE::_Meshes>::cle
Author Message
cat555 Offline
Member

Post: #1
Templates.h:1003: undefined reference to `EE::CacheElmPtr<EE::Mesh, EE::_Meshes>::cle
Hi, after today's update (EE2), i'm getting this kind of errors:

Code:
build/Debug/GNU-Linux-x86/Player.o: In function `EE::CacheElmPtr<EE::Game::ObjParams, EE::Game::_Objs>::~CacheElmPtr()':
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Misc/Templates.h:1003: undefined reference to `EE::CacheElmPtr<EE::Game::ObjParams, EE::Game::_Objs>::clear()'
build/Debug/GNU-Linux-x86/Options.o: In function `EE::CacheElmPtr<EE::Image, EE::_Images>::~CacheElmPtr()':
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Misc/Templates.h:1003: undefined reference to `EE::CacheElmPtr<EE::Image, EE::_Images>::clear()'
build/Debug/GNU-Linux-x86/Main.o: In function `Init()':
/home/cvieira/gamedev/Esenthel/Projects/_Build_/Bloody Massacre/Source/Main.cpp:125: undefined reference to `EE::CacheElmPtr<EE::Image, EE::_Images>::operator=(EE::UID const&)'
build/Debug/GNU-Linux-x86/Light.o: In function `LightBulb::init()':
/home/cvieira/gamedev/Esenthel/Projects/_Build_/Bloody Massacre/Source/Light.cpp:12: undefined reference to `EE::CacheElmPtr<EE::Image, EE::_Images>::operator=(EE::UID const&)'
/home/cvieira/gamedev/Esenthel/Projects/_Build_/Bloody Massacre/Source/Light.cpp:13: undefined reference to `EE::CacheElmPtr<EE::Image, EE::_Images>::operator=(EE::UID const&)'
build/Debug/GNU-Linux-x86/Item.o: In function `Item::setParams()':
/home/cvieira/gamedev/Esenthel/Projects/_Build_/Bloody Massacre/Source/Item.cpp:22: undefined reference to `EE::CacheElmPtr<EE::Image, EE::_Images>::operator=(EE::UID const&)'
build/Debug/GNU-Linux-x86/Item.o: In function `Item::create(EE::Game::ObjParams&)':
/home/cvieira/gamedev/Esenthel/Projects/_Build_/Bloody Massacre/Source/Item.cpp:28: undefined reference to `EE::CacheElmPtr<EE::Game::ObjParams, EE::Game::_Objs>::operator=(EE::CacheElmPtr<EE::Game::ObjParams, EE::Game::_Objs> const&)'
build/Debug/GNU-Linux-x86/Item.o: In function `Item::load(EE::File&)':
/home/cvieira/gamedev/Esenthel/Projects/_Build_/Bloody Massacre/Source/Item.cpp:44: undefined reference to `EE::CacheElmPtr<EE::Game::ObjParams, EE::Game::_Objs>::operator=(EE::UID const&)'
build/Debug/GNU-Linux-x86/Inventory Gui.o: In function `InventoryGui::create()':
/home/cvieira/gamedev/Esenthel/Projects/_Build_/Bloody Massacre/Source/Inventory Gui.cpp:24: undefined reference to `EE::CacheElmPtr<EE::Image, EE::_Images>::operator=(EE::UID const&)'
build/Debug/GNU-Linux-x86/Character.o: In function `Chr::create(EE::Game::ObjParams&)':
/home/cvieira/gamedev/Esenthel/Projects/_Build_/Bloody Massacre/Source/Character.cpp:21: undefined reference to `EE::CacheElmPtr<EE::Game::ObjParams, EE::Game::_Objs>::operator=(EE::CacheElmPtr<EE::Game::ObjParams, EE::Game::_Objs> const&)'
build/Debug/GNU-Linux-x86/Character.o: In function `Chr::load(EE::File&)':
/home/cvieira/gamedev/Esenthel/Projects/_Build_/Bloody Massacre/Source/Character.cpp:52: undefined reference to `EE::CacheElmPtr<EE::Game::ObjParams, EE::Game::_Objs>::operator=(EE::UID const&)'
build/Debug/GNU-Linux-x86/Blood.o: In function `EE::CacheElmPtr<EE::Mesh, EE::_Meshes>::~CacheElmPtr()':
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Misc/Templates.h:1003: undefined reference to `EE::CacheElmPtr<EE::Mesh, EE::_Meshes>::clear()'
collect2: error: ld returned 1 exit status

The above result was taken after trying to build "Bloody Massacre" tutorial.
(This post was last modified: 02-17-2014 04:46 PM by cat555.)
02-17-2014 04:42 PM
Find all posts by this user Quote this message in a reply
Esenthel Offline
Administrator

Post: #2
RE: Templates.h:1003: undefined reference to `EE::CacheElmPtr<EE::Mesh, EE::_Meshes>::cle
Hi, I'll check this soon, in the meantime, could you try doing "Build/Clean" and then try compiling again? thanks
02-17-2014 08:29 PM
Find all posts by this user Quote this message in a reply
cat555 Offline
Member

Post: #3
RE: Templates.h:1003: undefined reference to `EE::CacheElmPtr<EE::Mesh, EE::_Meshes>::cle
Hi Esenthel, I've already tried that before posting here, with no success :(
02-17-2014 10:11 PM
Find all posts by this user Quote this message in a reply
Esenthel Offline
Administrator

Post: #4
RE: Templates.h:1003: undefined reference to `EE::CacheElmPtr<EE::Mesh, EE::_Meshes>::cle
Hi,

I've just tried compiling on Linux the BM demo and it works fine.

As for the errors that you're getting:

"/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Misc/Templates.h:1003: undefined reference to `EE::CacheElmPtr<EE::Game::ObjParams, EE::Game::_Objs>::clear()'"
you can see that these methods are actually defined in templates.h
as inline template methods.

Nothing was changed related to that in latest updates.
02-17-2014 10:23 PM
Find all posts by this user Quote this message in a reply
cat555 Offline
Member

Post: #5
RE: Templates.h:1003: undefined reference to `EE::CacheElmPtr<EE::Mesh, EE::_Meshes>::cle
So it's strange since nothing has changed my side either.

One thing that I've noticed is that the EE update of today does not have Any entry in version history thread. It's possible that any file got corrupted in my EE installation?

I guess that I have to make a fresh install to see if it works.

I'll post the result here.

Thanks
02-17-2014 11:05 PM
Find all posts by this user Quote this message in a reply
Esenthel Offline
Administrator

Post: #6
RE: Templates.h:1003: undefined reference to `EE::CacheElmPtr<EE::Mesh, EE::_Meshes>::cle
The update was a minor fix related to recompiling server app with different options, nothing else was changed.
Trying to redownload is a good idea, if that won't help you can open the BM project in NetBeans (F8 key) and try to investigate the problem there.
02-17-2014 11:33 PM
Find all posts by this user Quote this message in a reply
cat555 Offline
Member

Post: #7
RE: Templates.h:1003: undefined reference to `EE::CacheElmPtr<EE::Mesh, EE::_Meshes>::cle
Hi Esenthel,

I've made a clean install of EE, and tried to build "Bloody Massacre" again... the result is different, and is this one:

Code:
´╗┐make: Entering directory `/home/cvieira/gamedev/Esenthel/Projects/_Build_/Bloody Massacre'
Precompiling Headers..
test -s stdafx.h.gch || g++ -m64 -fshort-wchar -fpermissive -ffast-math -ffriend-injection -Wno-int-to-pointer-cast -Wno-invalid-offsetof -g -std=c++11 -DDEBUG   -c -m64 -fshort-wchar -fpermissive -ffast-math -ffriend-injection -Wno-int-to-pointer-cast -Wno-invalid-offsetof -g -std=c++11 -DDEBUG -I.  stdafx.h
In file included from /home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/EsenthelEngine.h:280:0,
                 from stdafx.h:1:
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Misc/Templates.h:923:75: error: prototype for 'EE::CacheCounted<TYPE, CACHE>& EE::CacheCounted<TYPE, CACHE>::del()' does not match any in class 'EE::CacheCounted<TYPE, CACHE>'
template<typename TYPE, Cache<TYPE> &CACHE>   CacheCounted<TYPE,CACHE>&   CacheCounted<TYPE,CACHE>::del           (               ) {       CACHE.del           (         ); return T;}
                                                                           ^
In file included from /home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/EsenthelEngine.h:60:0,
                 from stdafx.h:1:
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Memory/Cache.h:143:18: error: candidate is: EE::CacheCounted<TYPE, CACHE>& EE::CacheCounted<TYPE, CACHE>::del()
    CacheCounted& del(); // delete manually
                  ^
In file included from /home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/EsenthelEngine.h:280:0,
                 from stdafx.h:1:
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Misc/Templates.h:925:75: error: prototype for 'EE::CacheCounted<TYPE, CACHE>& EE::CacheCounted<TYPE, CACHE>::caseSensitive(Bool)' does not match any in class 'EE::CacheCounted<TYPE, CACHE>'
template<typename TYPE, Cache<TYPE> &CACHE>   CacheCounted<TYPE,CACHE>&   CacheCounted<TYPE,CACHE>::caseSensitive (Bool  sensitive) {       CACHE.caseSensitive (sensitive); return T;}
                                                                           ^
In file included from /home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/EsenthelEngine.h:60:0,
                 from stdafx.h:1:
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Memory/Cache.h:93:18: error: candidate is: EE::CacheCounted<TYPE, CACHE>& EE::CacheCounted<TYPE, CACHE>::caseSensitive(Bool)
    CacheCounted& caseSensitive (Bool  sensitive); // set if cache should use case sensitive paths for accessing resources, default=false
                  ^
In file included from /home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/EsenthelEngine.h:280:0,
                 from stdafx.h:1:
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Misc/Templates.h:926:75: error: prototype for 'EE::CacheCounted<TYPE, CACHE>& EE::CacheCounted<TYPE, CACHE>::delayRemove(Flt)' does not match any in class 'EE::CacheCounted<TYPE, CACHE>'
template<typename TYPE, Cache<TYPE> &CACHE>   CacheCounted<TYPE,CACHE>&   CacheCounted<TYPE,CACHE>::delayRemove   (Flt   time     ) {       CACHE.delayRemove   (time     ); return T;}
                                                                           ^
In file included from /home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/EsenthelEngine.h:60:0,
                 from stdafx.h:1:
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Memory/Cache.h:94:18: error: candidate is: EE::CacheCounted<TYPE, CACHE>& EE::CacheCounted<TYPE, CACHE>::delayRemove(Flt)
    CacheCounted& delayRemove   (Flt   time     ); // set amount of time (in seconds) after which unused elements are removed from cache (<=0 value specifies immediate unloading), default=0
                  ^
In file included from /home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/EsenthelEngine.h:280:0,
                 from stdafx.h:1:
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Misc/Templates.h:927:75: error: prototype for 'EE::CacheCounted<TYPE, CACHE>& EE::CacheCounted<TYPE, CACHE>::delayRemoveNow()' does not match any in class 'EE::CacheCounted<TYPE, CACHE>'
template<typename TYPE, Cache<TYPE> &CACHE>   CacheCounted<TYPE,CACHE>&   CacheCounted<TYPE,CACHE>::delayRemoveNow(               ) {       CACHE.delayRemoveNow(         ); return T;}
                                                                           ^
In file included from /home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/EsenthelEngine.h:60:0,
                 from stdafx.h:1:
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Memory/Cache.h:95:18: error: candidate is: EE::CacheCounted<TYPE, CACHE>& EE::CacheCounted<TYPE, CACHE>::delayRemoveNow()
    CacheCounted& delayRemoveNow(               ); // immediately remove all elements marked for delay removal at a later time to free as much memory as possible
                  ^
In file included from /home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/EsenthelEngine.h:280:0,
                 from stdafx.h:1:
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Misc/Templates.h:928:75: error: prototype for 'EE::CacheCounted<TYPE, CACHE>& EE::CacheCounted<TYPE, CACHE>::delayRemoveInc()' does not match any in class 'EE::CacheCounted<TYPE, CACHE>'
template<typename TYPE, Cache<TYPE> &CACHE>   CacheCounted<TYPE,CACHE>&   CacheCounted<TYPE,CACHE>::delayRemoveInc(               ) {       CACHE.delayRemoveInc(         ); return T;}
                                                                           ^
In file included from /home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/EsenthelEngine.h:60:0,
                 from stdafx.h:1:
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Memory/Cache.h:96:18: error: candidate is: EE::CacheCounted<TYPE, CACHE>& EE::CacheCounted<TYPE, CACHE>::delayRemoveInc()
    CacheCounted& delayRemoveInc(               ); // increase the cache "delay remove" counter thanks to which elements will not be immediately removed when they're no longer referenced, 'delayRemoveDec' should be called after this method
                  ^
In file included from /home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/EsenthelEngine.h:280:0,
                 from stdafx.h:1:
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Misc/Templates.h:929:75: error: prototype for 'EE::CacheCounted<TYPE, CACHE>& EE::CacheCounted<TYPE, CACHE>::delayRemoveDec()' does not match any in class 'EE::CacheCounted<TYPE, CACHE>'
template<typename TYPE, Cache<TYPE> &CACHE>   CacheCounted<TYPE,CACHE>&   CacheCounted<TYPE,CACHE>::delayRemoveDec(               ) {       CACHE.delayRemoveDec(         ); return T;}
                                                                           ^
In file included from /home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/EsenthelEngine.h:60:0,
                 from stdafx.h:1:
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Memory/Cache.h:97:18: error: candidate is: EE::CacheCounted<TYPE, CACHE>& EE::CacheCounted<TYPE, CACHE>::delayRemoveDec()
    CacheCounted& delayRemoveDec(               ); // decrease the cache "delay remove" counter thanks to which elements will not be immediately removed when they're no longer referenced, this should be called after 'delayRemoveInc', once the counter goes back to zero then all non referenced elements will be removed
                  ^
In file included from /home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/EsenthelEngine.h:280:0,
                 from stdafx.h:1:
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Misc/Templates.h:938:73: error: prototype for 'EE::CacheElmPtr<TYPE, CACHE> EE::CacheCounted<TYPE, CACHE>::ptrFind(const EE::Str&, CChar*) const' does not match any in class 'EE::CacheCounted<TYPE, CACHE>'
template<typename TYPE, Cache<TYPE> &CACHE>   CacheElmPtr<TYPE,CACHE>   CacheCounted<TYPE,CACHE>::ptrFind   (C Str &file, CChar *path)C {return _Cache::Dummy(CACHE._find   (file, path, true));}
                                                                         ^
In file included from /home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/EsenthelEngine.h:60:0,
                 from stdafx.h:1:
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Memory/Cache.h:109:28: error: candidates are: EE::CacheElmPtr<TYPE, CACHE> EE::CacheCounted<TYPE, CACHE>::ptrFind(const EE::UID&, CChar*) const
    CacheElmPtr<TYPE,CACHE> ptrFind   (C UID &id  , CChar *path=NULL)C; // find    object by its file name id, don't load if not found, NULL on fail
                            ^
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Memory/Cache.h:108:28: error:                 EE::CacheElmPtr<TYPE, CACHE> EE::CacheCounted<TYPE, CACHE>::ptrFind(const EE::Str&, CChar*) const
    CacheElmPtr<TYPE,CACHE> ptrFind   (C Str &file, CChar *path=NULL)C; // find    object by its file name   , don't load if not found, NULL on fail
                            ^
In file included from /home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/EsenthelEngine.h:280:0,
                 from stdafx.h:1:
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Misc/Templates.h:939:73: error: prototype for 'EE::CacheElmPtr<TYPE, CACHE> EE::CacheCounted<TYPE, CACHE>::ptrFind(const EE::UID&, CChar*) const' does not match any in class 'EE::CacheCounted<TYPE, CACHE>'
template<typename TYPE, Cache<TYPE> &CACHE>   CacheElmPtr<TYPE,CACHE>   CacheCounted<TYPE,CACHE>::ptrFind   (C UID &id  , CChar *path)C {return _Cache::Dummy(CACHE._find   (id  , path, true));}
                                                                         ^
In file included from /home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/EsenthelEngine.h:60:0,
                 from stdafx.h:1:
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Memory/Cache.h:109:28: error: candidates are: EE::CacheElmPtr<TYPE, CACHE> EE::CacheCounted<TYPE, CACHE>::ptrFind(const EE::UID&, CChar*) const
    CacheElmPtr<TYPE,CACHE> ptrFind   (C UID &id  , CChar *path=NULL)C; // find    object by its file name id, don't load if not found, NULL on fail
                            ^
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Memory/Cache.h:108:28: error:                 EE::CacheElmPtr<TYPE, CACHE> EE::CacheCounted<TYPE, CACHE>::ptrFind(const EE::Str&, CChar*) const
    CacheElmPtr<TYPE,CACHE> ptrFind   (C Str &file, CChar *path=NULL)C; // find    object by its file name   , don't load if not found, NULL on fail
                            ^
In file included from /home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/EsenthelEngine.h:280:0,
                 from stdafx.h:1:
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Misc/Templates.h:940:73: error: prototype for 'EE::CacheElmPtr<TYPE, CACHE> EE::CacheCounted<TYPE, CACHE>::ptrGet(const EE::Str&, CChar*)' does not match any in class 'EE::CacheCounted<TYPE, CACHE>'
template<typename TYPE, Cache<TYPE> &CACHE>   CacheElmPtr<TYPE,CACHE>   CacheCounted<TYPE,CACHE>::ptrGet    (C Str &file, CChar *path)  {return _Cache::Dummy(CACHE._get    (file, path, true));}
                                                                         ^
In file included from /home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/EsenthelEngine.h:60:0,
                 from stdafx.h:1:
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Memory/Cache.h:111:28: error: candidates are: EE::CacheElmPtr<TYPE, CACHE> EE::CacheCounted<TYPE, CACHE>::ptrGet(const EE::UID&, CChar*)
    CacheElmPtr<TYPE,CACHE> ptrGet    (C UID &id  , CChar *path=NULL) ; // get     object by its file name id,       load if not found, NULL on fail
                            ^
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Memory/Cache.h:110:28: error:                 EE::CacheElmPtr<TYPE, CACHE> EE::CacheCounted<TYPE, CACHE>::ptrGet(const EE::Str&, CChar*)
    CacheElmPtr<TYPE,CACHE> ptrGet    (C Str &file, CChar *path=NULL) ; // get     object by its file name   ,       load if not found, NULL on fail
                            ^
In file included from /home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/EsenthelEngine.h:280:0,
                 from stdafx.h:1:
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Misc/Templates.h:941:73: error: prototype for 'EE::CacheElmPtr<TYPE, CACHE> EE::CacheCounted<TYPE, CACHE>::ptrGet(const EE::UID&, CChar*)' does not match any in class 'EE::CacheCounted<TYPE, CACHE>'
template<typename TYPE, Cache<TYPE> &CACHE>   CacheElmPtr<TYPE,CACHE>   CacheCounted<TYPE,CACHE>::ptrGet    (C UID &id  , CChar *path)  {return _Cache::Dummy(CACHE._get    (id  , path, true));}
                                                                         ^
In file included from /home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/EsenthelEngine.h:60:0,
                 from stdafx.h:1:
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Memory/Cache.h:111:28: error: candidates are: EE::CacheElmPtr<TYPE, CACHE> EE::CacheCounted<TYPE, CACHE>::ptrGet(const EE::UID&, CChar*)
    CacheElmPtr<TYPE,CACHE> ptrGet    (C UID &id  , CChar *path=NULL) ; // get     object by its file name id,       load if not found, NULL on fail
                            ^
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Memory/Cache.h:110:28: error:                 EE::CacheElmPtr<TYPE, CACHE> EE::CacheCounted<TYPE, CACHE>::ptrGet(const EE::Str&, CChar*)
    CacheElmPtr<TYPE,CACHE> ptrGet    (C Str &file, CChar *path=NULL) ; // get     object by its file name   ,       load if not found, NULL on fail
                            ^
In file included from /home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/EsenthelEngine.h:280:0,
                 from stdafx.h:1:
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Misc/Templates.h:942:73: error: prototype for 'EE::CacheElmPtr<TYPE, CACHE> EE::CacheCounted<TYPE, CACHE>::ptrRequire(const EE::Str&, CChar*)' does not match any in class 'EE::CacheCounted<TYPE, CACHE>'
template<typename TYPE, Cache<TYPE> &CACHE>   CacheElmPtr<TYPE,CACHE>   CacheCounted<TYPE,CACHE>::ptrRequire(C Str &file, CChar *path)  {return _Cache::Dummy(CACHE._require(file, path, true));}
                                                                         ^
In file included from /home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/EsenthelEngine.h:60:0,
                 from stdafx.h:1:
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Memory/Cache.h:113:28: error: candidates are: EE::CacheElmPtr<TYPE, CACHE> EE::CacheCounted<TYPE, CACHE>::ptrRequire(const EE::UID&, CChar*)
    CacheElmPtr<TYPE,CACHE> ptrRequire(C UID &id  , CChar *path=NULL) ; // require object by its file name id,       load if not found, Exit on fail (unless different CACHE_MODE selected)
                            ^
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Memory/Cache.h:112:28: error:                 EE::CacheElmPtr<TYPE, CACHE> EE::CacheCounted<TYPE, CACHE>::ptrRequire(const EE::Str&, CChar*)
    CacheElmPtr<TYPE,CACHE> ptrRequire(C Str &file, CChar *path=NULL) ; // require object by its file name   ,       load if not found, Exit on fail (unless different CACHE_MODE selected)
                            ^
In file included from /home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/EsenthelEngine.h:280:0,
                 from stdafx.h:1:
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Misc/Templates.h:943:73: error: prototype for 'EE::CacheElmPtr<TYPE, CACHE> EE::CacheCounted<TYPE, CACHE>::ptrRequire(const EE::UID&, CChar*)' does not match any in class 'EE::CacheCounted<TYPE, CACHE>'
template<typename TYPE, Cache<TYPE> &CACHE>   CacheElmPtr<TYPE,CACHE>   CacheCounted<TYPE,CACHE>::ptrRequire(C UID &id  , CChar *path)  {return _Cache::Dummy(CACHE._require(id  , path, true));}
                                                                         ^
In file included from /home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/EsenthelEngine.h:60:0,
                 from stdafx.h:1:
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Memory/Cache.h:113:28: error: candidates are: EE::CacheElmPtr<TYPE, CACHE> EE::CacheCounted<TYPE, CACHE>::ptrRequire(const EE::UID&, CChar*)
    CacheElmPtr<TYPE,CACHE> ptrRequire(C UID &id  , CChar *path=NULL) ; // require object by its file name id,       load if not found, Exit on fail (unless different CACHE_MODE selected)
                            ^
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Memory/Cache.h:112:28: error:                 EE::CacheElmPtr<TYPE, CACHE> EE::CacheCounted<TYPE, CACHE>::ptrRequire(const EE::Str&, CChar*)
    CacheElmPtr<TYPE,CACHE> ptrRequire(C Str &file, CChar *path=NULL) ; // require object by its file name   ,       load if not found, Exit on fail (unless different CACHE_MODE selected)
                            ^
In file included from /home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/EsenthelEngine.h:280:0,
                 from stdafx.h:1:
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Misc/Templates.h:965:88: error: prototype for 'EE::CacheCounted<TYPE, CACHE>& EE::CacheCounted<TYPE, CACHE>::replaceClass()' does not match any in class 'EE::CacheCounted<TYPE, CACHE>'
template<typename TYPE, Cache<TYPE> &CACHE> T1(DERIVED)   CacheCounted<TYPE,CACHE>&    CacheCounted<TYPE,CACHE>::replaceClass() {CACHE.template replaceClass<DERIVED>(); return T;}
                                                                                        ^
In file included from /home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/EsenthelEngine.h:60:0,
                 from stdafx.h:1:
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Memory/Cache.h:141:30: error: candidate is: template<class TYPE, EE::Cache<TYPE>& CACHE> template<class DERIVED> EE::CacheCounted<TYPE, CACHE>& EE::CacheCounted<TYPE, CACHE>::replaceClass()
    T1(DERIVED) CacheCounted& replaceClass(); // replace the type of class stored in the container, all elements are automatically removed before changing the type of the class, the new type must be derived from the base 'TYPE' (if you're receiving a compilation error pointing to this method this means that the new class isn't derived from the base class)
                              ^
In file included from /home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/EsenthelEngine.h:280:0,
                 from stdafx.h:1:
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Misc/Templates.h:978:74: error: prototype for 'EE::CacheElmPtr<TYPE, CACHE>& EE::CacheElmPtr<TYPE, CACHE>::clear()' does not match any in class 'EE::CacheElmPtr<TYPE, CACHE>'
template<typename TYPE, Cache<TYPE> &CACHE>   CacheElmPtr<TYPE,CACHE>&   CacheElmPtr<TYPE,CACHE>::clear    (                   ) {            CACHE._decRef(T._data);               T._data=      NULL ;  return T;}
                                                                          ^
In file included from /home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/EsenthelEngine.h:60:0,
                 from stdafx.h:1:
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Memory/Cache.h:176:17: error: candidate is: EE::CacheElmPtr<TYPE, CACHE>& EE::CacheElmPtr<TYPE, CACHE>::clear()
    CacheElmPtr& clear    (                   ); // clear the pointer to  NULL , this automatically decreases the reference count of current data
                 ^
In file included from /home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/EsenthelEngine.h:280:0,
                 from stdafx.h:1:
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Misc/Templates.h:979:74: error: prototype for 'EE::CacheElmPtr<TYPE, CACHE>& EE::CacheElmPtr<TYPE, CACHE>::operator=(TYPE*)' does not match any in class 'EE::CacheElmPtr<TYPE, CACHE>'
template<typename TYPE, Cache<TYPE> &CACHE>   CacheElmPtr<TYPE,CACHE>&   CacheElmPtr<TYPE,CACHE>::operator=(  TYPE        *data) {if(T!=data){CACHE._decRef(T._data); CACHE._incRef(T._data=      data);} return T;}
                                                                          ^
In file included from /home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/EsenthelEngine.h:60:0,
                 from stdafx.h:1:
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Memory/Cache.h:190:17: error: candidates are: EE::CacheElmPtr<TYPE, CACHE>& EE::CacheElmPtr<TYPE, CACHE>::operator=(const EE::UID&)
    CacheElmPtr& operator=(C UID  &id                    ); // require object by its file name id,       load if not found, Exit on fail (unless different CACHE_MODE selected), works exactly the same as 'require' method, however without the option of specifying additional 'path'
                 ^
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Memory/Cache.h:189:17: error:                 EE::CacheElmPtr<TYPE, CACHE>& EE::CacheElmPtr<TYPE, CACHE>::operator=(CChar8*)
    CacheElmPtr& operator=(CChar8 *file                  ); // require object by its file name   ,       load if not found, Exit on fail (unless different CACHE_MODE selected), works exactly the same as 'require' method, however without the option of specifying additional 'path'
                 ^
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Memory/Cache.h:188:17: error:                 EE::CacheElmPtr<TYPE, CACHE>& EE::CacheElmPtr<TYPE, CACHE>::operator=(CChar*)
    CacheElmPtr& operator=(CChar  *file                  ); // require object by its file name   ,       load if not found, Exit on fail (unless different CACHE_MODE selected), works exactly the same as 'require' method, however without the option of specifying additional 'path'
                 ^
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Memory/Cache.h:187:17: error:                 EE::CacheElmPtr<TYPE, CACHE>& EE::CacheElmPtr<TYPE, CACHE>::operator=(const EE::Str8&)
    CacheElmPtr& operator=(C Str8 &file                  ); // require object by its file name   ,       load if not found, Exit on fail (unless different CACHE_MODE selected), works exactly the same as 'require' method, however without the option of specifying additional 'path'
                 ^
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Memory/Cache.h:186:17: error:                 EE::CacheElmPtr<TYPE, CACHE>& EE::CacheElmPtr<TYPE, CACHE>::operator=(const EE::Str&)
    CacheElmPtr& operator=(C Str  &file                  ); // require object by its file name   ,       load if not found, Exit on fail (unless different CACHE_MODE selected), works exactly the same as 'require' method, however without the option of specifying additional 'path'
                 ^
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Memory/Cache.h:177:17: error:                 EE::CacheElmPtr<TYPE, CACHE>& EE::CacheElmPtr<TYPE, CACHE>::operator=(int)
    CacheElmPtr& operator=(int                ); // clear the pointer to  NULL , this automatically decreases the reference count of current data, this simulates "T=NULL"
                 ^
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Memory/Cache.h:175:17: error:                 EE::CacheElmPtr<TYPE, CACHE>& EE::CacheElmPtr<TYPE, CACHE>::operator=(const EE::CacheElmPtr<TYPE, CACHE>&)
    CacheElmPtr& operator=(C CacheElmPtr &eptr); // set       pointer to 'eptr', this automatically decreases the reference count of current data and increases the reference count of the new data
                 ^
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Memory/Cache.h:174:17: error:                 EE::CacheElmPtr<TYPE, CACHE>& EE::CacheElmPtr<TYPE, CACHE>::operator=(TYPE*)
    CacheElmPtr& operator=(  TYPE        *data); // set       pointer to 'data', this automatically decreases the reference count of current data and increases the reference count of the new data
                 ^
In file included from /home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/EsenthelEngine.h:280:0,
                 from stdafx.h:1:
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Misc/Templates.h:980:74: error: prototype for 'EE::CacheElmPtr<TYPE, CACHE>& EE::CacheElmPtr<TYPE, CACHE>::operator=(const EE::CacheElmPtr<TYPE, CACHE>&)' does not match any in class 'EE::CacheElmPtr<TYPE, CACHE>'
template<typename TYPE, Cache<TYPE> &CACHE>   CacheElmPtr<TYPE,CACHE>&   CacheElmPtr<TYPE,CACHE>::operator=(C CacheElmPtr &eptr) {if(T!=eptr){CACHE._decRef(T._data); CACHE._incRef(T._data=eptr._data);} return T;}
                                                                          ^
In file included from /home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/EsenthelEngine.h:60:0,
                 from stdafx.h:1:
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Memory/Cache.h:190:17: error: candidates are: EE::CacheElmPtr<TYPE, CACHE>& EE::CacheElmPtr<TYPE, CACHE>::operator=(const EE::UID&)
    CacheElmPtr& operator=(C UID  &id                    ); // require object by its file name id,       load if not found, Exit on fail (unless different CACHE_MODE selected), works exactly the same as 'require' method, however without the option of specifying additional 'path'
                 ^
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Memory/Cache.h:189:17: error:                 EE::CacheElmPtr<TYPE, CACHE>& EE::CacheElmPtr<TYPE, CACHE>::operator=(CChar8*)
    CacheElmPtr& operator=(CChar8 *file                  ); // require object by its file name   ,       load if not found, Exit on fail (unless different CACHE_MODE selected), works exactly the same as 'require' method, however without the option of specifying additional 'path'
                 ^
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Memory/Cache.h:188:17: error:                 EE::CacheElmPtr<TYPE, CACHE>& EE::CacheElmPtr<TYPE, CACHE>::operator=(CChar*)
    CacheElmPtr& operator=(CChar  *file                  ); // require object by its file name   ,       load if not found, Exit on fail (unless different CACHE_MODE selected), works exactly the same as 'require' method, however without the option of specifying additional 'path'
                 ^
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Memory/Cache.h:187:17: error:                 EE::CacheElmPtr<TYPE, CACHE>& EE::CacheElmPtr<TYPE, CACHE>::operator=(const EE::Str8&)
    CacheElmPtr& operator=(C Str8 &file                  ); // require object by its file name   ,       load if not found, Exit on fail (unless different CACHE_MODE selected), works exactly the same as 'require' method, however without the option of specifying additional 'path'
                 ^
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Memory/Cache.h:186:17: error:                 EE::CacheElmPtr<TYPE, CACHE>& EE::CacheElmPtr<TYPE, CACHE>::operator=(const EE::Str&)
    CacheElmPtr& operator=(C Str  &file                  ); // require object by its file name   ,       load if not found, Exit on fail (unless different CACHE_MODE selected), works exactly the same as 'require' method, however without the option of specifying additional 'path'
                 ^
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Memory/Cache.h:177:17: error:                 EE::CacheElmPtr<TYPE, CACHE>& EE::CacheElmPtr<TYPE, CACHE>::operator=(int)
    CacheElmPtr& operator=(int                ); // clear the pointer to  NULL , this automatically decreases the reference count of current data, this simulates "T=NULL"
                 ^
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Memory/Cache.h:175:17: error:                 EE::CacheElmPtr<TYPE, CACHE>& EE::CacheElmPtr<TYPE, CACHE>::operator=(const EE::CacheElmPtr<TYPE, CACHE>&)
    CacheElmPtr& operator=(C CacheElmPtr &eptr); // set       pointer to 'eptr', this automatically decreases the reference count of current data and increases the reference count of the new data
                 ^
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Memory/Cache.h:174:17: error:                 EE::CacheElmPtr<TYPE, CACHE>& EE::CacheElmPtr<TYPE, CACHE>::operator=(TYPE*)
    CacheElmPtr& operator=(  TYPE        *data); // set       pointer to 'data', this automatically decreases the reference count of current data and increases the reference count of the new data
                 ^
In file included from /home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/EsenthelEngine.h:280:0,
                 from stdafx.h:1:
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Misc/Templates.h:981:74: error: prototype for 'EE::CacheElmPtr<TYPE, CACHE>& EE::CacheElmPtr<TYPE, CACHE>::operator=(int)' does not match any in class 'EE::CacheElmPtr<TYPE, CACHE>'
template<typename TYPE, Cache<TYPE> &CACHE>   CacheElmPtr<TYPE,CACHE>&   CacheElmPtr<TYPE,CACHE>::operator=(  int              ) {clear();                                                                return T;}
                                                                          ^
In file included from /home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/EsenthelEngine.h:60:0,
                 from stdafx.h:1:
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Memory/Cache.h:190:17: error: candidates are: EE::CacheElmPtr<TYPE, CACHE>& EE::CacheElmPtr<TYPE, CACHE>::operator=(const EE::UID&)
    CacheElmPtr& operator=(C UID  &id                    ); // require object by its file name id,       load if not found, Exit on fail (unless different CACHE_MODE selected), works exactly the same as 'require' method, however without the option of specifying additional 'path'
                 ^
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Memory/Cache.h:189:17: error:                 EE::CacheElmPtr<TYPE, CACHE>& EE::CacheElmPtr<TYPE, CACHE>::operator=(CChar8*)
    CacheElmPtr& operator=(CChar8 *file                  ); // require object by its file name   ,       load if not found, Exit on fail (unless different CACHE_MODE selected), works exactly the same as 'require' method, however without the option of specifying additional 'path'
                 ^
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Memory/Cache.h:188:17: error:                 EE::CacheElmPtr<TYPE, CACHE>& EE::CacheElmPtr<TYPE, CACHE>::operator=(CChar*)
    CacheElmPtr& operator=(CChar  *file                  ); // require object by its file name   ,       load if not found, Exit on fail (unless different CACHE_MODE selected), works exactly the same as 'require' method, however without the option of specifying additional 'path'
                 ^
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Memory/Cache.h:187:17: error:                 EE::CacheElmPtr<TYPE, CACHE>& EE::CacheElmPtr<TYPE, CACHE>::operator=(const EE::Str8&)
    CacheElmPtr& operator=(C Str8 &file                  ); // require object by its file name   ,       load if not found, Exit on fail (unless different CACHE_MODE selected), works exactly the same as 'require' method, however without the option of specifying additional 'path'
                 ^
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Memory/Cache.h:186:17: error:                 EE::CacheElmPtr<TYPE, CACHE>& EE::CacheElmPtr<TYPE, CACHE>::operator=(const EE::Str&)
    CacheElmPtr& operator=(C Str  &file                  ); // require object by its file name   ,       load if not found, Exit on fail (unless different CACHE_MODE selected), works exactly the same as 'require' method, however without the option of specifying additional 'path'
                 ^
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Memory/Cache.h:177:17: error:                 EE::CacheElmPtr<TYPE, CACHE>& EE::CacheElmPtr<TYPE, CACHE>::operator=(int)
    CacheElmPtr& operator=(int                ); // clear the pointer to  NULL , this automatically decreases the reference count of current data, this simulates "T=NULL"
                 ^
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Memory/Cache.h:175:17: error:                 EE::CacheElmPtr<TYPE, CACHE>& EE::CacheElmPtr<TYPE, CACHE>::operator=(const EE::CacheElmPtr<TYPE, CACHE>&)
    CacheElmPtr& operator=(C CacheElmPtr &eptr); // set       pointer to 'eptr', this automatically decreases the reference count of current data and increases the reference count of the new data
                 ^
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Memory/Cache.h:174:17: error:                 EE::CacheElmPtr<TYPE, CACHE>& EE::CacheElmPtr<TYPE, CACHE>::operator=(TYPE*)
    CacheElmPtr& operator=(  TYPE        *data); // set       pointer to 'data', this automatically decreases the reference count of current data and increases the reference count of the new data
                 ^
In file included from /home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/EsenthelEngine.h:280:0,
                 from stdafx.h:1:
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Misc/Templates.h:983:74: error: prototype for 'EE::CacheElmPtr<TYPE, CACHE>& EE::CacheElmPtr<TYPE, CACHE>::find(const EE::Str&, CChar*)' does not match any in class 'EE::CacheElmPtr<TYPE, CACHE>'
template<typename TYPE, Cache<TYPE> &CACHE>   CacheElmPtr<TYPE,CACHE>&   CacheElmPtr<TYPE,CACHE>::find     (C Str  &file, CChar *path) {TYPE *old=T._data; T._data=(TYPE*)CACHE._find   (    file , path, true); CACHE._decRef(old); return T;}
                                                                          ^
In file included from /home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/EsenthelEngine.h:60:0,
                 from stdafx.h:1:
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Memory/Cache.h:181:17: error: candidates are: EE::CacheElmPtr<TYPE, CACHE>& EE::CacheElmPtr<TYPE, CACHE>::find(const EE::UID&, CChar*)
    CacheElmPtr& find     (C UID  &id  , CChar *path=NULL); // find    object by its file name id, don't load if not found, NULL on fail
                 ^
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Memory/Cache.h:180:17: error:                 EE::CacheElmPtr<TYPE, CACHE>& EE::CacheElmPtr<TYPE, CACHE>::find(const EE::Str&, CChar*)
    CacheElmPtr& find     (C Str  &file, CChar *path=NULL); // find    object by its file name   , don't load if not found, NULL on fail
                 ^
In file included from /home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/EsenthelEngine.h:280:0,
                 from stdafx.h:1:
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Misc/Templates.h:984:74: error: prototype for 'EE::CacheElmPtr<TYPE, CACHE>& EE::CacheElmPtr<TYPE, CACHE>::find(const EE::UID&, CChar*)' does not match any in class 'EE::CacheElmPtr<TYPE, CACHE>'
template<typename TYPE, Cache<TYPE> &CACHE>   CacheElmPtr<TYPE,CACHE>&   CacheElmPtr<TYPE,CACHE>::find     (C UID  &id  , CChar *path) {TYPE *old=T._data; T._data=(TYPE*)CACHE._find   (    id   , path, true); CACHE._decRef(old); return T;}
                                                                          ^
In file included from /home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/EsenthelEngine.h:60:0,
                 from stdafx.h:1:
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Memory/Cache.h:181:17: error: candidates are: EE::CacheElmPtr<TYPE, CACHE>& EE::CacheElmPtr<TYPE, CACHE>::find(const EE::UID&, CChar*)
    CacheElmPtr& find     (C UID  &id  , CChar *path=NULL); // find    object by its file name id, don't load if not found, NULL on fail
                 ^
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Memory/Cache.h:180:17: error:                 EE::CacheElmPtr<TYPE, CACHE>& EE::CacheElmPtr<TYPE, CACHE>::find(const EE::Str&, CChar*)
    CacheElmPtr& find     (C Str  &file, CChar *path=NULL); // find    object by its file name   , don't load if not found, NULL on fail
                 ^
In file included from /home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/EsenthelEngine.h:280:0,
                 from stdafx.h:1:
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Misc/Templates.h:985:74: error: prototype for 'EE::CacheElmPtr<TYPE, CACHE>& EE::CacheElmPtr<TYPE, CACHE>::get(const EE::Str&, CChar*)' does not match any in class 'EE::CacheElmPtr<TYPE, CACHE>'
template<typename TYPE, Cache<TYPE> &CACHE>   CacheElmPtr<TYPE,CACHE>&   CacheElmPtr<TYPE,CACHE>::get      (C Str  &file, CChar *path) {TYPE *old=T._data; T._data=(TYPE*)CACHE._get    (    file , path, true); CACHE._decRef(old); return T;}
                                                                          ^
In file included from /home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/EsenthelEngine.h:60:0,
                 from stdafx.h:1:
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Memory/Cache.h:183:17: error: candidates are: EE::CacheElmPtr<TYPE, CACHE>& EE::CacheElmPtr<TYPE, CACHE>::get(const EE::UID&, CChar*)
    CacheElmPtr& get      (C UID  &id  , CChar *path=NULL); // get     object by its file name id,       load if not found, NULL on fail
                 ^
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Memory/Cache.h:182:17: error:                 EE::CacheElmPtr<TYPE, CACHE>& EE::CacheElmPtr<TYPE, CACHE>::get(const EE::Str&, CChar*)
    CacheElmPtr& get      (C Str  &file, CChar *path=NULL); // get     object by its file name   ,       load if not found, NULL on fail
                 ^
In file included from /home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/EsenthelEngine.h:280:0,
                 from stdafx.h:1:
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Misc/Templates.h:986:74: error: prototype for 'EE::CacheElmPtr<TYPE, CACHE>& EE::CacheElmPtr<TYPE, CACHE>::get(const EE::UID&, CChar*)' does not match any in class 'EE::CacheElmPtr<TYPE, CACHE>'
template<typename TYPE, Cache<TYPE> &CACHE>   CacheElmPtr<TYPE,CACHE>&   CacheElmPtr<TYPE,CACHE>::get      (C UID  &id  , CChar *path) {TYPE *old=T._data; T._data=(TYPE*)CACHE._get    (    id   , path, true); CACHE._decRef(old); return T;}
                                                                          ^
In file included from /home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/EsenthelEngine.h:60:0,
                 from stdafx.h:1:
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Memory/Cache.h:183:17: error: candidates are: EE::CacheElmPtr<TYPE, CACHE>& EE::CacheElmPtr<TYPE, CACHE>::get(const EE::UID&, CChar*)
    CacheElmPtr& get      (C UID  &id  , CChar *path=NULL); // get     object by its file name id,       load if not found, NULL on fail
                 ^
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Memory/Cache.h:182:17: error:                 EE::CacheElmPtr<TYPE, CACHE>& EE::CacheElmPtr<TYPE, CACHE>::get(const EE::Str&, CChar*)
    CacheElmPtr& get      (C Str  &file, CChar *path=NULL); // get     object by its file name   ,       load if not found, NULL on fail
                 ^
In file included from /home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/EsenthelEngine.h:280:0,
                 from stdafx.h:1:
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Misc/Templates.h:987:74: error: prototype for 'EE::CacheElmPtr<TYPE, CACHE>& EE::CacheElmPtr<TYPE, CACHE>::require(const EE::Str&, CChar*)' does not match any in class 'EE::CacheElmPtr<TYPE, CACHE>'
template<typename TYPE, Cache<TYPE> &CACHE>   CacheElmPtr<TYPE,CACHE>&   CacheElmPtr<TYPE,CACHE>::require  (C Str  &file, CChar *path) {TYPE *old=T._data; T._data=(TYPE*)CACHE._require(    file , path, true); CACHE._decRef(old); return T;}
                                                                          ^
In file included from /home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/EsenthelEngine.h:60:0,
                 from stdafx.h:1:
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Memory/Cache.h:185:17: error: candidates are: EE::CacheElmPtr<TYPE, CACHE>& EE::CacheElmPtr<TYPE, CACHE>::require(const EE::UID&, CChar*)
    CacheElmPtr& require  (C UID  &id  , CChar *path=NULL); // require object by its file name id,       load if not found, Exit on fail (unless different CACHE_MODE selected)
                 ^
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Memory/Cache.h:184:17: error:                 EE::CacheElmPtr<TYPE, CACHE>& EE::CacheElmPtr<TYPE, CACHE>::require(const EE::Str&, CChar*)
    CacheElmPtr& require  (C Str  &file, CChar *path=NULL); // require object by its file name   ,       load if not found, Exit on fail (unless different CACHE_MODE selected)
                 ^
In file included from /home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/EsenthelEngine.h:280:0,
                 from stdafx.h:1:
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Misc/Templates.h:988:74: error: prototype for 'EE::CacheElmPtr<TYPE, CACHE>& EE::CacheElmPtr<TYPE, CACHE>::require(const EE::UID&, CChar*)' does not match any in class 'EE::CacheElmPtr<TYPE, CACHE>'
template<typename TYPE, Cache<TYPE> &CACHE>   CacheElmPtr<TYPE,CACHE>&   CacheElmPtr<TYPE,CACHE>::require  (C UID  &id  , CChar *path) {TYPE *old=T._data; T._data=(TYPE*)CACHE._require(    id   , path, true); CACHE._decRef(old); return T;}
                                                                          ^
In file included from /home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/EsenthelEngine.h:60:0,
                 from stdafx.h:1:
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Memory/Cache.h:185:17: error: candidates are: EE::CacheElmPtr<TYPE, CACHE>& EE::CacheElmPtr<TYPE, CACHE>::require(const EE::UID&, CChar*)
    CacheElmPtr& require  (C UID  &id  , CChar *path=NULL); // require object by its file name id,       load if not found, Exit on fail (unless different CACHE_MODE selected)
                 ^
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Memory/Cache.h:184:17: error:                 EE::CacheElmPtr<TYPE, CACHE>& EE::CacheElmPtr<TYPE, CACHE>::require(const EE::Str&, CChar*)
    CacheElmPtr& require  (C Str  &file, CChar *path=NULL); // require object by its file name   ,       load if not found, Exit on fail (unless different CACHE_MODE selected)
                 ^
In file included from /home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/EsenthelEngine.h:280:0,
                 from stdafx.h:1:
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Misc/Templates.h:989:74: error: prototype for 'EE::CacheElmPtr<TYPE, CACHE>& EE::CacheElmPtr<TYPE, CACHE>::operator=(const EE::Str&)' does not match any in class 'EE::CacheElmPtr<TYPE, CACHE>'
template<typename TYPE, Cache<TYPE> &CACHE>   CacheElmPtr<TYPE,CACHE>&   CacheElmPtr<TYPE,CACHE>::operator=(C Str  &file             ) {TYPE *old=T._data; T._data=(TYPE*)CACHE._require(    file , NULL, true); CACHE._decRef(old); return T;}
                                                                          ^
In file included from /home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/EsenthelEngine.h:60:0,
                 from stdafx.h:1:
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Memory/Cache.h:190:17: error: candidates are: EE::CacheElmPtr<TYPE, CACHE>& EE::CacheElmPtr<TYPE, CACHE>::operator=(const EE::UID&)
    CacheElmPtr& operator=(C UID  &id                    ); // require object by its file name id,       load if not found, Exit on fail (unless different CACHE_MODE selected), works exactly the same as 'require' method, however without the option of specifying additional 'path'
                 ^
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Memory/Cache.h:189:17: error:                 EE::CacheElmPtr<TYPE, CACHE>& EE::CacheElmPtr<TYPE, CACHE>::operator=(CChar8*)
    CacheElmPtr& operator=(CChar8 *file                  ); // require object by its file name   ,       load if not found, Exit on fail (unless different CACHE_MODE selected), works exactly the same as 'require' method, however without the option of specifying additional 'path'
                 ^
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Memory/Cache.h:188:17: error:                 EE::CacheElmPtr<TYPE, CACHE>& EE::CacheElmPtr<TYPE, CACHE>::operator=(CChar*)
    CacheElmPtr& operator=(CChar  *file                  ); // require object by its file name   ,       load if not found, Exit on fail (unless different CACHE_MODE selected), works exactly the same as 'require' method, however without the option of specifying additional 'path'
                 ^
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Memory/Cache.h:187:17: error:                 EE::CacheElmPtr<TYPE, CACHE>& EE::CacheElmPtr<TYPE, CACHE>::operator=(const EE::Str8&)
    CacheElmPtr& operator=(C Str8 &file                  ); // require object by its file name   ,       load if not found, Exit on fail (unless different CACHE_MODE selected), works exactly the same as 'require' method, however without the option of specifying additional 'path'
                 ^
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Memory/Cache.h:186:17: error:                 EE::CacheElmPtr<TYPE, CACHE>& EE::CacheElmPtr<TYPE, CACHE>::operator=(const EE::Str&)
    CacheElmPtr& operator=(C Str  &file                  ); // require object by its file name   ,       load if not found, Exit on fail (unless different CACHE_MODE selected), works exactly the same as 'require' method, however without the option of specifying additional 'path'
                 ^
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Memory/Cache.h:177:17: error:                 EE::CacheElmPtr<TYPE, CACHE>& EE::CacheElmPtr<TYPE, CACHE>::operator=(int)
    CacheElmPtr& operator=(int                ); // clear the pointer to  NULL , this automatically decreases the reference count of current data, this simulates "T=NULL"
                 ^
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Memory/Cache.h:175:17: error:                 EE::CacheElmPtr<TYPE, CACHE>& EE::CacheElmPtr<TYPE, CACHE>::operator=(const EE::CacheElmPtr<TYPE, CACHE>&)
    CacheElmPtr& operator=(C CacheElmPtr &eptr); // set       pointer to 'eptr', this automatically decreases the reference count of current data and increases the reference count of the new data
                 ^
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Memory/Cache.h:174:17: error:                 EE::CacheElmPtr<TYPE, CACHE>& EE::CacheElmPtr<TYPE, CACHE>::operator=(TYPE*)
    CacheElmPtr& operator=(  TYPE        *data); // set       pointer to 'data', this automatically decreases the reference count of current data and increases the reference count of the new data
                 ^
In file included from /home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/EsenthelEngine.h:280:0,
                 from stdafx.h:1:
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Misc/Templates.h:990:74: error: prototype for 'EE::CacheElmPtr<TYPE, CACHE>& EE::CacheElmPtr<TYPE, CACHE>::operator=(const EE::Str8&)' does not match any in class 'EE::CacheElmPtr<TYPE, CACHE>'
template<typename TYPE, Cache<TYPE> &CACHE>   CacheElmPtr<TYPE,CACHE>&   CacheElmPtr<TYPE,CACHE>::operator=(C Str8 &file             ) {TYPE *old=T._data; T._data=(TYPE*)CACHE._require(Str(file), NULL, true); CACHE._decRef(old); return T;}
                                                                          ^
In file included from /home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/EsenthelEngine.h:60:0,
                 from stdafx.h:1:
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Memory/Cache.h:190:17: error: candidates are: EE::CacheElmPtr<TYPE, CACHE>& EE::CacheElmPtr<TYPE, CACHE>::operator=(const EE::UID&)
    CacheElmPtr& operator=(C UID  &id                    ); // require object by its file name id,       load if not found, Exit on fail (unless different CACHE_MODE selected), works exactly the same as 'require' method, however without the option of specifying additional 'path'
                 ^
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Memory/Cache.h:189:17: error:                 EE::CacheElmPtr<TYPE, CACHE>& EE::CacheElmPtr<TYPE, CACHE>::operator=(CChar8*)
    CacheElmPtr& operator=(CChar8 *file                  ); // require object by its file name   ,       load if not found, Exit on fail (unless different CACHE_MODE selected), works exactly the same as 'require' method, however without the option of specifying additional 'path'
                 ^
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Memory/Cache.h:188:17: error:                 EE::CacheElmPtr<TYPE, CACHE>& EE::CacheElmPtr<TYPE, CACHE>::operator=(CChar*)
    CacheElmPtr& operator=(CChar  *file                  ); // require object by its file name   ,       load if not found, Exit on fail (unless different CACHE_MODE selected), works exactly the same as 'require' method, however without the option of specifying additional 'path'
                 ^
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Memory/Cache.h:187:17: error:                 EE::CacheElmPtr<TYPE, CACHE>& EE::CacheElmPtr<TYPE, CACHE>::operator=(const EE::Str8&)
    CacheElmPtr& operator=(C Str8 &file                  ); // require object by its file name   ,       load if not found, Exit on fail (unless different CACHE_MODE selected), works exactly the same as 'require' method, however without the option of specifying additional 'path'
                 ^
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Memory/Cache.h:186:17: error:                 EE::CacheElmPtr<TYPE, CACHE>& EE::CacheElmPtr<TYPE, CACHE>::operator=(const EE::Str&)
    CacheElmPtr& operator=(C Str  &file                  ); // require object by its file name   ,       load if not found, Exit on fail (unless different CACHE_MODE selected), works exactly the same as 'require' method, however without the option of specifying additional 'path'
                 ^
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Memory/Cache.h:177:17: error:                 EE::CacheElmPtr<TYPE, CACHE>& EE::CacheElmPtr<TYPE, CACHE>::operator=(int)
    CacheElmPtr& operator=(int                ); // clear the pointer to  NULL , this automatically decreases the reference count of current data, this simulates "T=NULL"
                 ^
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Memory/Cache.h:175:17: error:                 EE::CacheElmPtr<TYPE, CACHE>& EE::CacheElmPtr<TYPE, CACHE>::operator=(const EE::CacheElmPtr<TYPE, CACHE>&)
    CacheElmPtr& operator=(C CacheElmPtr &eptr); // set       pointer to 'eptr', this automatically decreases the reference count of current data and increases the reference count of the new data
                 ^
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Memory/Cache.h:174:17: error:                 EE::CacheElmPtr<TYPE, CACHE>& EE::CacheElmPtr<TYPE, CACHE>::operator=(TYPE*)
    CacheElmPtr& operator=(  TYPE        *data); // set       pointer to 'data', this automatically decreases the reference count of current data and increases the reference count of the new data
                 ^
In file included from /home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/EsenthelEngine.h:280:0,
                 from stdafx.h:1:
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Misc/Templates.h:991:74: error: prototype for 'EE::CacheElmPtr<TYPE, CACHE>& EE::CacheElmPtr<TYPE, CACHE>::operator=(CChar*)' does not match any in class 'EE::CacheElmPtr<TYPE, CACHE>'
template<typename TYPE, Cache<TYPE> &CACHE>   CacheElmPtr<TYPE,CACHE>&   CacheElmPtr<TYPE,CACHE>::operator=(CChar  *file             ) {TYPE *old=T._data; T._data=(TYPE*)CACHE._require(    file , NULL, true); CACHE._decRef(old); return T;}
                                                                          ^
In file included from /home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/EsenthelEngine.h:60:0,
                 from stdafx.h:1:
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Memory/Cache.h:190:17: error: candidates are: EE::CacheElmPtr<TYPE, CACHE>& EE::CacheElmPtr<TYPE, CACHE>::operator=(const EE::UID&)
    CacheElmPtr& operator=(C UID  &id                    ); // require object by its file name id,       load if not found, Exit on fail (unless different CACHE_MODE selected), works exactly the same as 'require' method, however without the option of specifying additional 'path'
                 ^
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Memory/Cache.h:189:17: error:                 EE::CacheElmPtr<TYPE, CACHE>& EE::CacheElmPtr<TYPE, CACHE>::operator=(CChar8*)
    CacheElmPtr& operator=(CChar8 *file                  ); // require object by its file name   ,       load if not found, Exit on fail (unless different CACHE_MODE selected), works exactly the same as 'require' method, however without the option of specifying additional 'path'
                 ^
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Memory/Cache.h:188:17: error:                 EE::CacheElmPtr<TYPE, CACHE>& EE::CacheElmPtr<TYPE, CACHE>::operator=(CChar*)
    CacheElmPtr& operator=(CChar  *file                  ); // require object by its file name   ,       load if not found, Exit on fail (unless different CACHE_MODE selected), works exactly the same as 'require' method, however without the option of specifying additional 'path'
                 ^
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Memory/Cache.h:187:17: error:                 EE::CacheElmPtr<TYPE, CACHE>& EE::CacheElmPtr<TYPE, CACHE>::operator=(const EE::Str8&)
    CacheElmPtr& operator=(C Str8 &file                  ); // require object by its file name   ,       load if not found, Exit on fail (unless different CACHE_MODE selected), works exactly the same as 'require' method, however without the option of specifying additional 'path'
                 ^
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Memory/Cache.h:186:17: error:                 EE::CacheElmPtr<TYPE, CACHE>& EE::CacheElmPtr<TYPE, CACHE>::operator=(const EE::Str&)
    CacheElmPtr& operator=(C Str  &file                  ); // require object by its file name   ,       load if not found, Exit on fail (unless different CACHE_MODE selected), works exactly the same as 'require' method, however without the option of specifying additional 'path'
                 ^
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Memory/Cache.h:177:17: error:                 EE::CacheElmPtr<TYPE, CACHE>& EE::CacheElmPtr<TYPE, CACHE>::operator=(int)
    CacheElmPtr& operator=(int                ); // clear the pointer to  NULL , this automatically decreases the reference count of current data, this simulates "T=NULL"
                 ^
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Memory/Cache.h:175:17: error:                 EE::CacheElmPtr<TYPE, CACHE>& EE::CacheElmPtr<TYPE, CACHE>::operator=(const EE::CacheElmPtr<TYPE, CACHE>&)
    CacheElmPtr& operator=(C CacheElmPtr &eptr); // set       pointer to 'eptr', this automatically decreases the reference count of current data and increases the reference count of the new data
                 ^
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Memory/Cache.h:174:17: error:                 EE::CacheElmPtr<TYPE, CACHE>& EE::CacheElmPtr<TYPE, CACHE>::operator=(TYPE*)
    CacheElmPtr& operator=(  TYPE        *data); // set       pointer to 'data', this automatically decreases the reference count of current data and increases the reference count of the new data
                 ^
In file included from /home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/EsenthelEngine.h:280:0,
                 from stdafx.h:1:
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Misc/Templates.h:992:74: error: prototype for 'EE::CacheElmPtr<TYPE, CACHE>& EE::CacheElmPtr<TYPE, CACHE>::operator=(CChar8*)' does not match any in class 'EE::CacheElmPtr<TYPE, CACHE>'
template<typename TYPE, Cache<TYPE> &CACHE>   CacheElmPtr<TYPE,CACHE>&   CacheElmPtr<TYPE,CACHE>::operator=(CChar8 *file             ) {TYPE *old=T._data; T._data=(TYPE*)CACHE._require(Str(file), NULL, true); CACHE._decRef(old); return T;}
                                                                          ^
In file included from /home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/EsenthelEngine.h:60:0,
                 from stdafx.h:1:
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Memory/Cache.h:190:17: error: candidates are: EE::CacheElmPtr<TYPE, CACHE>& EE::CacheElmPtr<TYPE, CACHE>::operator=(const EE::UID&)
    CacheElmPtr& operator=(C UID  &id                    ); // require object by its file name id,       load if not found, Exit on fail (unless different CACHE_MODE selected), works exactly the same as 'require' method, however without the option of specifying additional 'path'
                 ^
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Memory/Cache.h:189:17: error:                 EE::CacheElmPtr<TYPE, CACHE>& EE::CacheElmPtr<TYPE, CACHE>::operator=(CChar8*)
    CacheElmPtr& operator=(CChar8 *file                  ); // require object by its file name   ,       load if not found, Exit on fail (unless different CACHE_MODE selected), works exactly the same as 'require' method, however without the option of specifying additional 'path'
                 ^
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Memory/Cache.h:188:17: error:                 EE::CacheElmPtr<TYPE, CACHE>& EE::CacheElmPtr<TYPE, CACHE>::operator=(CChar*)
    CacheElmPtr& operator=(CChar  *file                  ); // require object by its file name   ,       load if not found, Exit on fail (unless different CACHE_MODE selected), works exactly the same as 'require' method, however without the option of specifying additional 'path'
                 ^
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Memory/Cache.h:187:17: error:                 EE::CacheElmPtr<TYPE, CACHE>& EE::CacheElmPtr<TYPE, CACHE>::operator=(const EE::Str8&)
    CacheElmPtr& operator=(C Str8 &file                  ); // require object by its file name   ,       load if not found, Exit on fail (unless different CACHE_MODE selected), works exactly the same as 'require' method, however without the option of specifying additional 'path'
                 ^
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Memory/Cache.h:186:17: error:                 EE::CacheElmPtr<TYPE, CACHE>& EE::CacheElmPtr<TYPE, CACHE>::operator=(const EE::Str&)
    CacheElmPtr& operator=(C Str  &file                  ); // require object by its file name   ,       load if not found, Exit on fail (unless different CACHE_MODE selected), works exactly the same as 'require' method, however without the option of specifying additional 'path'
                 ^
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Memory/Cache.h:177:17: error:                 EE::CacheElmPtr<TYPE, CACHE>& EE::CacheElmPtr<TYPE, CACHE>::operator=(int)
    CacheElmPtr& operator=(int                ); // clear the pointer to  NULL , this automatically decreases the reference count of current data, this simulates "T=NULL"
                 ^
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Memory/Cache.h:175:17: error:                 EE::CacheElmPtr<TYPE, CACHE>& EE::CacheElmPtr<TYPE, CACHE>::operator=(const EE::CacheElmPtr<TYPE, CACHE>&)
    CacheElmPtr& operator=(C CacheElmPtr &eptr); // set       pointer to 'eptr', this automatically decreases the reference count of current data and increases the reference count of the new data
                 ^
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Memory/Cache.h:174:17: error:                 EE::CacheElmPtr<TYPE, CACHE>& EE::CacheElmPtr<TYPE, CACHE>::operator=(TYPE*)
    CacheElmPtr& operator=(  TYPE        *data); // set       pointer to 'data', this automatically decreases the reference count of current data and increases the reference count of the new data
                 ^
In file included from /home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/EsenthelEngine.h:280:0,
                 from stdafx.h:1:
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Misc/Templates.h:993:74: error: prototype for 'EE::CacheElmPtr<TYPE, CACHE>& EE::CacheElmPtr<TYPE, CACHE>::operator=(const EE::UID&)' does not match any in class 'EE::CacheElmPtr<TYPE, CACHE>'
template<typename TYPE, Cache<TYPE> &CACHE>   CacheElmPtr<TYPE,CACHE>&   CacheElmPtr<TYPE,CACHE>::operator=(C UID  &id               ) {TYPE *old=T._data; T._data=(TYPE*)CACHE._require(    id   , NULL, true); CACHE._decRef(old); return T;}
                                                                          ^
In file included from /home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/EsenthelEngine.h:60:0,
                 from stdafx.h:1:
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Memory/Cache.h:190:17: error: candidates are: EE::CacheElmPtr<TYPE, CACHE>& EE::CacheElmPtr<TYPE, CACHE>::operator=(const EE::UID&)
    CacheElmPtr& operator=(C UID  &id                    ); // require object by its file name id,       load if not found, Exit on fail (unless different CACHE_MODE selected), works exactly the same as 'require' method, however without the option of specifying additional 'path'
                 ^
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Memory/Cache.h:189:17: error:                 EE::CacheElmPtr<TYPE, CACHE>& EE::CacheElmPtr<TYPE, CACHE>::operator=(CChar8*)
    CacheElmPtr& operator=(CChar8 *file                  ); // require object by its file name   ,       load if not found, Exit on fail (unless different CACHE_MODE selected), works exactly the same as 'require' method, however without the option of specifying additional 'path'
                 ^
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Memory/Cache.h:188:17: error:                 EE::CacheElmPtr<TYPE, CACHE>& EE::CacheElmPtr<TYPE, CACHE>::operator=(CChar*)
    CacheElmPtr& operator=(CChar  *file                  ); // require object by its file name   ,       load if not found, Exit on fail (unless different CACHE_MODE selected), works exactly the same as 'require' method, however without the option of specifying additional 'path'
                 ^
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Memory/Cache.h:187:17: error:                 EE::CacheElmPtr<TYPE, CACHE>& EE::CacheElmPtr<TYPE, CACHE>::operator=(const EE::Str8&)
    CacheElmPtr& operator=(C Str8 &file                  ); // require object by its file name   ,       load if not found, Exit on fail (unless different CACHE_MODE selected), works exactly the same as 'require' method, however without the option of specifying additional 'path'
                 ^
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Memory/Cache.h:186:17: error:                 EE::CacheElmPtr<TYPE, CACHE>& EE::CacheElmPtr<TYPE, CACHE>::operator=(const EE::Str&)
    CacheElmPtr& operator=(C Str  &file                  ); // require object by its file name   ,       load if not found, Exit on fail (unless different CACHE_MODE selected), works exactly the same as 'require' method, however without the option of specifying additional 'path'
                 ^
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Memory/Cache.h:177:17: error:                 EE::CacheElmPtr<TYPE, CACHE>& EE::CacheElmPtr<TYPE, CACHE>::operator=(int)
    CacheElmPtr& operator=(int                ); // clear the pointer to  NULL , this automatically decreases the reference count of current data, this simulates "T=NULL"
                 ^
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Memory/Cache.h:175:17: error:                 EE::CacheElmPtr<TYPE, CACHE>& EE::CacheElmPtr<TYPE, CACHE>::operator=(const EE::CacheElmPtr<TYPE, CACHE>&)
    CacheElmPtr& operator=(C CacheElmPtr &eptr); // set       pointer to 'eptr', this automatically decreases the reference count of current data and increases the reference count of the new data
                 ^
/home/cvieira/gamedev/Esenthel/Bin/EsenthelEngine/Memory/Cache.h:174:17: error:                 EE::CacheElmPtr<TYPE, CACHE>& EE::CacheElmPtr<TYPE, CACHE>::operator=(TYPE*)
    CacheElmPtr& operator=(  TYPE        *data); // set       pointer to 'data', this automatically decreases the reference count of current data and increases the reference count of the new data
                 ^
make: *** [.build-pre] Error 1
make: Leaving directory `/home/cvieira/gamedev/Esenthel/Projects/_Build_/Bloody Massacre'
(This post was last modified: 02-18-2014 11:30 AM by cat555.)
02-18-2014 11:29 AM
Find all posts by this user Quote this message in a reply
cat555 Offline
Member

Post: #8
RE: Templates.h:1003: undefined reference to `EE::CacheElmPtr<EE::Mesh, EE::_Meshes>::cle
Hi Esenthel,

I've been analyzing this and i think an update to my compiler is the cause of this... it was updated to 4.8.2-15 and then the problems started...

I'm using update-alternatives to switch to use 4.7 compiler, and now it works Ok with this version.

It seems that there are some issues to resolve in latest update of compiler version 4.8...

Sorry and thanks for your time!

Regards,
02-18-2014 01:26 PM
Find all posts by this user Quote this message in a reply
93i Offline
Member

Post: #9
RE: Templates.h:1003: undefined reference to `EE::CacheElmPtr<EE::Mesh, EE::_Meshes>::cle
argh, same problem here, unfortunately my distro does not provide a way to downgrade (plus i need 4.8 for work)

Sorry, but the Linux build is really useless how it is now... Too picky on versions. Running on Ubuntu does not mean running on Linux.

Could you please at least fix the compiler problem? Sooner or later even Ubuntu will change to gcc 4.8
04-11-2014 06:43 AM
Find all posts by this user Quote this message in a reply
cat555 Offline
Member

Post: #10
RE: Templates.h:1003: undefined reference to `EE::CacheElmPtr<EE::Mesh, EE::_Meshes>::cle
Have you tried to use update-alternatives already?
04-11-2014 09:21 AM
Find all posts by this user Quote this message in a reply
93i Offline
Member

Post: #11
RE: Templates.h:1003: undefined reference to `EE::CacheElmPtr<EE::Mesh, EE::_Meshes>::cle
update-alternatives is a debian/ubuntu thing not available on arch linux
04-12-2014 05:29 AM
Find all posts by this user Quote this message in a reply
cat555 Offline
Member

Post: #12
RE: Templates.h:1003: undefined reference to `EE::CacheElmPtr<EE::Mesh, EE::_Meshes>::cle
Yes, it's just a debian/ubuntu thing... in that case, why don't you grab the source package and install it manually yourself? I know it's not the best option, but it will work as an workaround...
04-12-2014 07:58 AM
Find all posts by this user Quote this message in a reply
93i Offline
Member

Post: #13
RE: Templates.h:1003: undefined reference to `EE::CacheElmPtr<EE::Mesh, EE::_Meshes>::cle
Because i need 4.8 and its enhanced c++11 features for the work that actually earns my income. Game development is just a hobby for me. Fact still remains, sooner or later 4.8 will be on Ubuntu, so why not fix now then later? It can't be too much of a deal, it's either something where 4.8 get more strict (aka it was an error in the source in the first place) or 4.8 needs some command line param to prevent the error, i really think it should not be a big of a deal to fix it on esenthel side... and if it is... well... better abandon Linux port, because it's failing now and it will totally fail in future when 4.8 is standard.
04-12-2014 05:06 PM
Find all posts by this user Quote this message in a reply
Esenthel Offline
Administrator

Post: #14
RE: Templates.h:1003: undefined reference to `EE::CacheElmPtr<EE::Mesh, EE::_Meshes>::cle
I don't see any bug in the headers so can't really fix something that's not broken. If you see what's wrong then please let me know.
04-12-2014 06:47 PM
Find all posts by this user Quote this message in a reply
Post Reply