Bug #14068 2008-06-22 18:37
kazeyoukai
#include'ing a global "using namespace" doesn't register
This issue comes primarily from using the OGRE library. The standard ExampleApplication.h looks like this:
ExampleApplication.h:
#ifndef __ExampleApplication_H__
#define __ExampleApplication_H__
#include "Ogre.h"
#include "OgreConfigFile.h"
#include "ExampleFrameListener.h"
#if OGRE_PLATFORM == OGRE_PLATFORM_APPLE
#include <CoreFoundation/CoreFoundation.h>
/*some code...*/
using namespace Ogre;
/*lots more code...*/
#endif
Now, the default project template (and most tutorials and so forth) define a main.cpp as such:
main.cpp:
#include <ExampleApplication.h>
//Tutorial/sample code....
This should mean that the entire file should have all members of the Ogre workspace visible to it, as is indeed verified by successful compilation. However, CodeCompletions seems to not pick up on this. If one types:
Vector3::
Which ought to bring up members of the Ogre::Vector3 class, nothing happens. It doesn't even bring up suggestions for "Vector" once it's typed.
However, typing:
Ogre::Vector3::
Works in all aspects.
So, while it's a terrible style, CodeCompletion still ought to recognize a global "using" statement, even from a file which #include's one.
- Category
- Plugin::CodeCompletion
- Group
- Status
- Closed
- Close date
- 2010-10-15 13:18
- Assigned to
- loaden
History
We can't solved this issue. It's so hard!