OK, so I've tried adjusting for static reference and reference counter, but I'm still coming up with the following error;
E:\Programming\Projects\Core Engine System\System.h, line 45,error: field `m_window' has incomplete type
This is where the object of type "Window" exists as a member of the "System" class.
And yes, System is a class, rather than a namespace. This was done to try and make the user experience simpler by having any startup that needs doing (i.e.; any Init()-style functions) hidden from the user. They just have to get a reference to the System class, then use the System object to get references to other objects (in my case, Window, Input, File, Thread, etc.)
[Edited by - webwraith on August 17, 2008 3:24:56 PM]