Hei all !

I have an BIG application consisting of tens of files i developed in VC++ 6.0 that compiled and ran great. Now i installed the VC++ .NET instead and it gives me compiler error

C2879 -
error C2879: 'DataCoach::globalMemFile' : only an existing namespace can be given an alternative name by a namespace alias definition


The following cxode which compiled great before under VC++:
[ccode]
//DataCoach_globalMemFile.h follows

class DataCoach::globalMemFile: public CMemFile
{

} //the class is not empty but here is for simpl. reasons

//...

//DataCoach_globalMemFile.cpp follows

#include "DataCoach_globalMemFile.h"

namespace globalMemFile = DataCoach::globalMemFile;

//...
[/ccode]

I might suspect some warning level raised which causes the warning in previous versions become an error. I am well aware of the C++ standard, but this issue is quite complicated just to lookup in the standard specification, so I am asking you gurues - Is this code legal ? Should it be ? Under which standard it should be legal ? Is Microsoft again inventing its own "language extensions" ....

Basically all i care is Bjarne Strustrup's C++ cpecs, not Microsofts, but here it would require to swap approx. 1000 lines of code because of this, so i basically need to REMOVE the error without changing the code - if it compiled before it just as well might compile now , rite ?

Thanks a lot,
i hope others will benefit from this too..

Amn.