Andreas Rückert wrote:
(...)
I'll send you the module in a p-mail.
Hi,

it is very hard to review your changes since the module sources you have sent me are pre-revision 210 - when the whole repository was recovered.

Please update your sources from the repository or tell me explicitly which files were changed by you and I will look specifically at those.

Thanks in advance and regards,

Luis

PS: I'll proceed with the assumption that only the following files were changed:
argouml-cpp/build.xml
argouml-cpp/src/org/argouml/language/cpp/reveng/CppImport.java
Added argouml-cpp/lib/anarres-cpp.jar

Some more changes in argouml/src/argouml-build and argouml/src/argouml-app that I won't review since these will be done in a different way...
Concerning jcpp integration into ArgoUML I think it should be possible for modules to declare additional jars that must be loaded or, if it isn't we should create an issue for the ArgoUML module loader to support
it.

That's what I tried. Declared the jcpp jar in the module's manifest, but since
there isn't even a ext/lib directory, or so, and all the other jars are in the 
lib
dir, it's very likely, that this feature is simply not implemented in Argo.

As Tom stated we need to include anarres-cpp.jar in the argo-cpp jar. This means that the Ant's jar target must be changed to include copying the anarres-cpp.jar from argouml-cpp/lib/ into argouml-cpp/build/lib/ and the argouml-cpp/src/org/manifest.mf must include lib/anarres-cpp.jar in the "Class-Path" entry.
Or should I create an attachment to issue 2947, or so?
I think a branch of argouml-cpp is the ideal way to proceed for now in things related to the preprocessor new development since we're approaching 0.26. But, anything that is necessary in the existing reveng code could go directly to trunk - the reveng is still pre-alpha and mainly the result of a spike, so any improvements coming from your work or needs related to it are welcome.

In my view, the current RE simply doesn't work for most existing projects.
Almost anyone declares the classes in the header files, and since the include
statements are ignored, but the parser requires to know every type in the cpp
file, RE of any real-world app will fail. So (in my eyes), the current code is 
not
really worth to be preserved for the 0.26 release. (...)
In my view, the existing RE with the preprocessor will simply fail to work with most existing C++ projects. It will simply remove one - the first - of the limitations of the following list (available in CppImport): + "preprocessed files only, i.e., works on full translation units;" + "very few C++ constructs are supported, e.g., enums, unions, templates, etc, aren't;"
           + "no support for non-member variables and functions;"
           + "no integration with the C++ generator => RTE won't work!;"
           + "no operator overload support;"
           + "very immature, certainly this list needs to grow!";

But, I think that the current code and probably the code with the preprocessor integrated will be worth including in the 0.26 release. Mostly as a pre-alpha show-off of what we are doing already to recruit developers to help removing more limitations from that list ;-).
(...)
Let me just send you the module at this point, ok? Check it, and I think it 
should
go into the trunk. We should add GUI stuff for the include directories and c++
RE should be a lot better. That's why I'd like to see it in 0.26.

Given the changes being minor I would agree. I'm a bit afraid that the changes concerning GUI will delay 0.26, but, this is argouml-core and if it is squeezed there I'm also in favor of extending argouml-cpp to take advantage of it.
Ciao,
Andreas
Regards,

Luis

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to