Version: 1.5.61 (using KDE 3.5.5, Kubuntu (edgy) 4:3.5.5-0ubuntu3.1) Compiler: Target: i486-linux-gnu OS: Linux (i686) release 2.6.17-10-generic The code generator for C++ doesn't put the namespace declaration before the class declaration or definition for classes included in a package, the result being that the classes end up in the global namespace. For example, for a class B in package A, the declaration should look like: namespace A { class B { }; }; But umbrello only generates class B { };
SVN commit 635340 by okellogg: Constructor: Let WRITE_PACKAGE_NAMESPACE default to true, at least until http://bugs.kde.org/141875 is resolved. BUG:141876 M +1 -0 ChangeLog M +1 -1 umbrello/codegenerators/cppwriter.cpp --- branches/KDE/3.5/kdesdk/umbrello/ChangeLog #635339:635340 @@ -14,6 +14,7 @@ * Ada95 Code Generation Errors for Aggregation (141644) * Unable to delete multiplicity information or lable from an association (141813) +* C++ code generator does not correctly define namespaces (141876) Version 1.5.61 --- branches/KDE/3.5/kdesdk/umbrello/umbrello/codegenerators/cppwriter.cpp #635339:635340 @@ -74,7 +74,7 @@ WRITE_EMPTY_DESTRUCTOR = true; WRITE_VIRTUAL_DESTRUCTORS = true; WRITE_ATTRIBUTE_ACCESSOR_METHODS = true; - WRITE_PACKAGE_NAMESPACE = false; + WRITE_PACKAGE_NAMESPACE = true; // should this go away?? Not currently used.. but might be by new code generator /// to specifically 'tag' virtual classes and fields and methods.