Hello everyone !
Let's cut to the chase. I got the following code in the header:
#include <list>
class test {
public:
typedef std::list< int > mytype;
mytype::iterator foo( );
};
The implementation file is empty. Now when I do Refactor->Create Implementation on foo, I get this in the implementation file:
mytype::iterator test::foo()
{
}
This does not compile, because the type mytype is not known. It should instead be
test::mytype::iterator test::foo()
{
}
This only seems to happen if the return type of foo is the subtype of a typedef.
Here is my info:
VA_X.dll file version 10.5.1727.0 built 2009.06.12
Licensed to: *****
DevEnv.exe version 8.0.50727.762
msenv.dll version 8.0.50727.762
Font: Courier New 13(Pixels)
Comctl32.dll version 6.0.2900.5512
Windows XP 5.1 Build 2600 S
2 processors (x86)
Platform: Win32
Stable Includes:
C:\\Programme\\Microsoft Visual Studio 8\\VC\\include;
C:\\Programme\\Microsoft Visual Studio 8\\VC\\atlmfc\\include;
C:\\Programme\\Microsoft Visual Studio 8\\VC\\PlatformSDK\\include;
C:\\Programme\\Microsoft Visual Studio 8\\SDK\\v2.0\\include;
C:\\Programme\\Microsoft DirectX SDK (August 2007)\\Include;
C:\\Programme\\Microsoft SDKs\\Windows\\v6.1\\Include;
C:\\Programme\\Intel\\IPP\\5.3.4.087\\ia32\\include;
Other Includes:
Stable Source Directories:
C:\\Programme\\Microsoft Visual Studio 8\\VC\\atlmfc\\src\\mfc;
C:\\Programme\\Microsoft Visual Studio 8\\VC\\atlmfc\\src\\mfcm;
C:\\Programme\\Microsoft Visual Studio 8\\VC\\atlmfc\\src\\atl;
C:\\Programme\\Microsoft Visual Studio 8\\VC\\crt\\src;