Using 1640 VS2003SP1
I'm noticing that the namespace is improperly being added for functions that return the Type of a class they are a member of.
Example*
namespace Foo
{
class Test
{
Test test();
};
}
When I create implementation from top to bottom I get this:
namespace Foo
{
Foo::Test Test::test()
{
}
}
I believe that technically that implementation is returning Foo::Foo::Test. This may resolve on most compilers but it appears wrong. However I haven't reviewed the ISO spec on namespace resolution to verify that. It seems that VAX knows whether it is in a namespace block when it creates an implementation, it could check all types being added and if they are in said namespace do not append the explicit namespace.
Thoughts?